<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" version="2.0">
  <channel>
    <title>Kate Gregory's Blog - Consulting Life</title>
    <link>http://www.gregcons.com/KateBlog/</link>
    <description>Really Good Donut</description>
    <language>en-us</language>
    <copyright>Kate Gregory</copyright>
    <lastBuildDate>Mon, 02 Dec 2024 12:55:33 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.3.9074.18820</generator>
    <managingEditor>kate@gregcons.com</managingEditor>
    <webMaster>kate@gregcons.com</webMaster>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=791030e7-2ec0-45d7-b5a8-f05d1c8dccca</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=791030e7-2ec0-45d7-b5a8-f05d1c8dccca</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <title>My CppNorth Keynote is Published</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=791030e7-2ec0-45d7-b5a8-f05d1c8dccca</guid>
      <link>http://www.gregcons.com/KateBlog/MyCppNorthKeynoteIsPublished.aspx</link>
      <pubDate>Mon, 02 Dec 2024 12:55:33 GMT</pubDate>
      <description>&lt;p&gt;
I love it when my videos get uploaded, because it means some new people get to see
a talk. In this case, &lt;a href="https://www.youtube.com/watch?v=LArOT95LTJU&amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;index=1"&gt;The
Aging Programmer at CppNorth&lt;/a&gt;. This is the first and longest version of the talk:
when I gave it in Europe I had to take out 30 minutes of content.
&lt;/p&gt;
&lt;p&gt;
The reactions to the talk have surprised me. Of course I wanted it to land well and
to give people something to think about. I did not expect so very many people to tell
me that it made them cry or nearly cry. If you watch it at work, keep that in mind.
&lt;/p&gt;
&lt;p&gt;
If you're in your 20s or 30s, you might think this talk is not for you. But it is!
There are things you can do at that age that will enable you to keep programming into
your 60s, 70s, and beyond. As I say in the talk, it's not too soon! Watch to find
out why.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=791030e7-2ec0-45d7-b5a8-f05d1c8dccca" /&gt;</description>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=9203f42f-b44b-4b2e-947f-ec45d21b6de4</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9203f42f-b44b-4b2e-947f-ec45d21b6de4</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div>One of the first web sites I remembered the URL of when I wanted to use it was
imdb.com. "Internet Movie Data Base" and that's what it was. You could look up shows
to see who was in them. It's a simple need and one that doesn't go away. "Where do
I know that actor from?" Look up the show you're watching, find the character, from
there the name of the actor, from there everything else they've been in ... and ah,
that itch goes away and you can keep watching the show.
</div>
        <div>
          <br />
        </div>
        <div>When I think about other web sites I started using around the same time, they're
all gone, or if not gone exactly, I've replaced them with something else. Who searches
on AltaVista any more? The Environment Canada weather site, once a marvelous relic
of old HTML design but a great way to see forecasts and radar, has been updated to
uselessness. But imdb is still there and still usable for the same thing it was always
designed for.
</div>
        <div>
          <br />
        </div>
        <div>So it was with a mild thrill that I discovered (thanks to a Google News Alert
on my own name) that I am now <a href="https://www.imdb.com/find/?q=kate%20gregory&amp;s=tt&amp;ttype=pe&amp;ref_=fn_pe">listed </a>there.
Apparently they've loaded up a pile of podcasts. <a href="https://www.dotnetrocks.com/">.NET
Rocks</a>, <a href="https://adspthepodcast.com/">ADSP</a>, and others that have nothing
to do with me but had one guest named Kate and one named Gregory. Still quite a few
podcasts I've been on that aren't indexed there, but it's a start!
</div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9203f42f-b44b-4b2e-947f-ec45d21b6de4" />
      </body>
      <title>I'm in IMDB</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9203f42f-b44b-4b2e-947f-ec45d21b6de4</guid>
      <link>http://www.gregcons.com/KateBlog/ImInIMDB.aspx</link>
      <pubDate>Fri, 04 Oct 2024 17:32:19 GMT</pubDate>
      <description>&lt;div&gt;One of the first web sites I remembered the URL of when I wanted to use it was
imdb.com. "Internet Movie Data Base" and that's what it was. You could look up shows
to see who was in them. It's a simple need and one that doesn't go away. "Where do
I know that actor from?" Look up the show you're watching, find the character, from
there the name of the actor, from there everything else they've been in ... and ah,
that itch goes away and you can keep watching the show.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;When I think about other web sites I started using around the same time, they're
all gone, or if not gone exactly, I've replaced them with something else. Who searches
on AltaVista any more? The Environment Canada weather site, once a marvelous relic
of old HTML design but a great way to see forecasts and radar, has been updated to
uselessness. But imdb is still there and still usable for the same thing it was always
designed for.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;So it was with a mild thrill that I discovered (thanks to a Google News Alert
on my own name) that I am now &lt;a href="https://www.imdb.com/find/?q=kate%20gregory&amp;amp;s=tt&amp;amp;ttype=pe&amp;amp;ref_=fn_pe"&gt;listed &lt;/a&gt;there.
Apparently they've loaded up a pile of podcasts. &lt;a href="https://www.dotnetrocks.com/"&gt;.NET
Rocks&lt;/a&gt;, &lt;a href="https://adspthepodcast.com/"&gt;ADSP&lt;/a&gt;, and others that have nothing
to do with me but had one guest named Kate and one named Gregory. Still quite a few
podcasts I've been on that aren't indexed there, but it's a start!
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9203f42f-b44b-4b2e-947f-ec45d21b6de4" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=ff1a45ef-28fe-469c-8da4-929425cfb622</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ff1a45ef-28fe-469c-8da4-929425cfb622</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
It's been 7 years since I was at <a href="https://meetingcpp.com/2024/">Meeting C++</a> and
I'm really looking forward to it. There are great keynotes planned and the <a href="https://meetingcpp.com/2024/Schedule.html">schedule</a> as
a whole is full of talks I want to hear! I'm doing <a href="https://meetingcpp.com/2024/Talks/items/The_Aging_Programmer.html">The
Aging Programmer</a> and hope it lands as well in Berlin as it has elsewhere. As always,
I find it hard to believe there are too many C++ conferences for me to be at all of
them, and I'm making an effort to try to mix things up from year to year and not just
go to "the usual places" every time. It's good to see some speakers I haven't seen
for a while, and be introduced to ideas I haven't been following.
</p>
        <p>
There's still time to get your tickets! I hope to see you there.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ff1a45ef-28fe-469c-8da4-929425cfb622" />
      </body>
      <title>Speaking at Meeting C++</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ff1a45ef-28fe-469c-8da4-929425cfb622</guid>
      <link>http://www.gregcons.com/KateBlog/SpeakingAtMeetingC.aspx</link>
      <pubDate>Mon, 30 Sep 2024 18:54:39 GMT</pubDate>
      <description>&lt;p&gt;
It's been 7 years since I was at &lt;a href="https://meetingcpp.com/2024/"&gt;Meeting C++&lt;/a&gt; and
I'm really looking forward to it. There are great keynotes planned and the &lt;a href="https://meetingcpp.com/2024/Schedule.html"&gt;schedule&lt;/a&gt; as
a whole is full of talks I want to hear! I'm doing &lt;a href="https://meetingcpp.com/2024/Talks/items/The_Aging_Programmer.html"&gt;The
Aging Programmer&lt;/a&gt; and hope it lands as well in Berlin as it has elsewhere. As always,
I find it hard to believe there are too many C++ conferences for me to be at all of
them, and I'm making an effort to try to mix things up from year to year and not just
go to "the usual places" every time. It's good to see some speakers I haven't seen
for a while, and be introduced to ideas I haven't been following.
&lt;/p&gt;
&lt;p&gt;
There's still time to get your tickets! I hope to see you there.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ff1a45ef-28fe-469c-8da4-929425cfb622" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=ec821310-05f4-4980-ba29-44aff4b337f5</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ec821310-05f4-4980-ba29-44aff4b337f5</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
We work on the conference for a year, maybe more than a year, because we start thinking
about "next year" before we've even had this year. Then it starts, and it's wonderful,
and suddenly it's the last day.
</p>
        <p>
          <img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20240724_090812 resized.jpg" />
        </p>
        <p>
We kicked off the day with a wonderful keynote by April Wensel about compassion and
how bringing warmth and caring into your software development practices makes better
code, not just happier people. Then I went to Tina Ulbrich's Throwing Tools at Ranges
which had a lot of numbers and data for those who worry ranges bring performance issues.
</p>
        <p>
A CppNorth tradition is that we don't provide lunch every single day, wanting to send
attendees out into Toronto to experience the downtown neighbourhood. Day 3 was the
"go out" day for lunch and from what I heard in the afternoon, people liked it, as
they have other years. After lunch I went to Where There Is A Loop There is an Algorithm
by Peter Lorimer and Fatemeh Jafargholi. I really liked how Fatemeh connected something
I said about memorable catchphrases like "better safe than sorry" to algorithms and
their names. 
</p>
        <p>
Then another Conor Hoekstra "so many languages" talk, Composition Intuition II. It
was a careening ride between "heh, I can actually follow this, that is kind of neat"
and "what?!?". Conor takes some of the mystery out of jargon words you hear other
people use and helps to bring concepts from esoteric languages ("this one was written
for winning code golf challenges") into our regular lives.
</p>
        <p>
Then came perhaps the most anticipated break of the conference: The Canadian Snacks
Break!
</p>
        <p>
          <img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_155021.jpg" />
        </p>
        <p>
          <img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_155034.jpg" />
        </p>
        <p>
Butter tarts, nanaimo bars, maple cookies, and little bags of Hickory Sticks! You
won't forget where you are at this conference!
</p>
        <p>
We wrapped up with a keynote from Tony Van Eerd that appeared for a while to have
only one slide (but actually had 86) and a lot of philosophy and thinking. To do a
good job of abstraction, you need to think about what a thing is, and what the properties
of a thing are, and Tony led us through that very skilfully. Definitely one to chew
on on the way home.
</p>
        <p>
And with that I was on the way home. Into the GO station that literally connects to
the Microsoft building:
</p>
        <p>
          <img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_182530.jpg" />
        </p>
        <p>
And on the train, with one well-timed selfie-with-the-venue:
</p>
        <p>
          <img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_185058.jpg" />
        </p>
        <p>
See you all next year! You can even <a href="https://store.cppnorth.ca/">buy your
tickets right now</a> for a huge discount to use this year's budget, if you like!
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ec821310-05f4-4980-ba29-44aff4b337f5" />
      </body>
      <title>CppNorth Day 3</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ec821310-05f4-4980-ba29-44aff4b337f5</guid>
      <link>http://www.gregcons.com/KateBlog/CppNorthDay3.aspx</link>
      <pubDate>Fri, 26 Jul 2024 11:58:57 GMT</pubDate>
      <description>&lt;p&gt;
We work on the conference for a year, maybe more than a year, because we start thinking
about "next year" before we've even had this year. Then it starts, and it's wonderful,
and suddenly it's the last day.
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20240724_090812 resized.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
We kicked off the day with a wonderful keynote by April Wensel about compassion and
how bringing warmth and caring into your software development practices makes better
code, not just happier people. Then I went to Tina Ulbrich's Throwing Tools at Ranges
which had a lot of numbers and data for those who worry ranges bring performance issues.
&lt;/p&gt;
&lt;p&gt;
A CppNorth tradition is that we don't provide lunch every single day, wanting to send
attendees out into Toronto to experience the downtown neighbourhood. Day 3 was the
"go out" day for lunch and from what I heard in the afternoon, people liked it, as
they have other years. After lunch I went to Where There Is A Loop There is an Algorithm
by Peter Lorimer and Fatemeh Jafargholi. I really liked how Fatemeh connected something
I said about memorable catchphrases like "better safe than sorry" to algorithms and
their names. 
&lt;/p&gt;
&lt;p&gt;
Then another Conor Hoekstra "so many languages" talk, Composition Intuition II. It
was a careening ride between "heh, I can actually follow this, that is kind of neat"
and "what?!?". Conor takes some of the mystery out of jargon words you hear other
people use and helps to bring concepts from esoteric languages ("this one was written
for winning code golf challenges") into our regular lives.
&lt;/p&gt;
&lt;p&gt;
Then came perhaps the most anticipated break of the conference: The Canadian Snacks
Break!
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_155021.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_155034.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
Butter tarts, nanaimo bars, maple cookies, and little bags of Hickory Sticks! You
won't forget where you are at this conference!
&lt;/p&gt;
&lt;p&gt;
We wrapped up with a keynote from Tony Van Eerd that appeared for a while to have
only one slide (but actually had 86) and a lot of philosophy and thinking. To do a
good job of abstraction, you need to think about what a thing is, and what the properties
of a thing are, and Tony led us through that very skilfully. Definitely one to chew
on on the way home.
&lt;/p&gt;
&lt;p&gt;
And with that I was on the way home. Into the GO station that literally connects to
the Microsoft building:
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_182530.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
And on the train, with one well-timed selfie-with-the-venue:
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" width="600" src="http://www.gregcons.com/KateBlog/content/binary/20240724_185058.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
See you all next year! You can even &lt;a href="https://store.cppnorth.ca/"&gt;buy your
tickets right now&lt;/a&gt; for a huge discount to use this year's budget, if you like!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ec821310-05f4-4980-ba29-44aff4b337f5" /&gt;</description>
      <category>C++</category>
      <category>Canadian Colour</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=5786df23-8acd-4c8b-94c4-9a3b9f1b23e3</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5786df23-8acd-4c8b-94c4-9a3b9f1b23e3</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I really enjoy speaking at NDC Techtown in Norway. The airport is pleasant and easy
to navigate, the trains are reliable, and it's a quick walk from the train station
to the hotel, which is right at the venue. Plus the other speakers are always amazing,
so I have a jam-packed two days of sessions to attend. Many years ago I decided to
only speak at conferences where I would want to watch sessions, and it improved my
life tremendously!
</p>
        <p>
This year I'll do <a href="https://ndctechtown.com/agenda/the-aging-programmer-0hbv/0ijumjrizso">The
Aging Programmer</a>. This is a new talk that should be helpful for even the youngest
programmers amongst us, because when it comes to planning for a happy old age doing
what you enjoy, it's never too late, and it's also never too soon.
</p>
        <p>
See you there! You've got three more days to order <a href="https://ndctechtown.com/tickets">Early
Bird tickets</a>!
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5786df23-8acd-4c8b-94c4-9a3b9f1b23e3" />
      </body>
      <title>Speaking at NDC Techtown</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5786df23-8acd-4c8b-94c4-9a3b9f1b23e3</guid>
      <link>http://www.gregcons.com/KateBlog/SpeakingAtNDCTechtown.aspx</link>
      <pubDate>Tue, 21 May 2024 15:07:23 GMT</pubDate>
      <description>&lt;p&gt;
I really enjoy speaking at NDC Techtown in Norway. The airport is pleasant and easy
to navigate, the trains are reliable, and it's a quick walk from the train station
to the hotel, which is right at the venue. Plus the other speakers are always amazing,
so I have a jam-packed two days of sessions to attend. Many years ago I decided to
only speak at conferences where I would want to watch sessions, and it improved my
life tremendously!
&lt;/p&gt;
&lt;p&gt;
This year I'll do &lt;a href="https://ndctechtown.com/agenda/the-aging-programmer-0hbv/0ijumjrizso"&gt;The
Aging Programmer&lt;/a&gt;. This is a new talk that should be helpful for even the youngest
programmers amongst us, because when it comes to planning for a happy old age doing
what you enjoy, it's never too late, and it's also never too soon.
&lt;/p&gt;
&lt;p&gt;
See you there! You've got three more days to order &lt;a href="https://ndctechtown.com/tickets"&gt;Early
Bird tickets&lt;/a&gt;!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5786df23-8acd-4c8b-94c4-9a3b9f1b23e3" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=691f7ece-30ad-4371-8444-617ee562448a</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=691f7ece-30ad-4371-8444-617ee562448a</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I am really starting to look forward to <a href="https://cppnorth.ca/">CppNorth</a>.
We're in a new venue this year, the Microsoft Canada offices! They have a lovely suite
of presentation rooms that they make available to community groups like ours. The
program is chosen, and we're working on the schedule. In the meantime you can see
the <a href="https://cppnorth.ca/speakers.html">speakers and their talks</a>. If you're
ready, <a href="https://store.cppnorth.ca/">register </a>now! You can also <a href="https://book.passkey.com/go/0724CPPN001">book
a room</a> at the conference hotel, the Royal York. It's an easy walk from Union Station
to both the conference and the hotel as you can see from this map showing all three. 
</p>
        <p>
          <img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/map[1].jpg" />
        </p>
        <p>
For those who would fly to Toronto, there's a train called the UP between Union Station
and YYZ. You should plan to come a little early so you can do some sightseeing before
the conference. There's a see-and-do channel on the conference discord that will give
you some great ideas.
</p>
        <p>
I'm honoured to do the opening keynote again. This year's topic: The Aging Programmer.
Eyes, wrists, memory, stamina ... so many things we rely on can get weaker as we age.
That doesn't mean you can't keep going if you want to. I'll talk about it.
</p>
        <p>
See you there!
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=691f7ece-30ad-4371-8444-617ee562448a" />
      </body>
      <title>Speaking at CppNorth</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=691f7ece-30ad-4371-8444-617ee562448a</guid>
      <link>http://www.gregcons.com/KateBlog/SpeakingAtCppNorth.aspx</link>
      <pubDate>Mon, 13 May 2024 20:39:01 GMT</pubDate>
      <description>&lt;p&gt;
I am really starting to look forward to &lt;a href="https://cppnorth.ca/"&gt;CppNorth&lt;/a&gt;.
We're in a new venue this year, the Microsoft Canada offices! They have a lovely suite
of presentation rooms that they make available to community groups like ours. The
program is chosen, and we're working on the schedule. In the meantime you can see
the &lt;a href="https://cppnorth.ca/speakers.html"&gt;speakers and their talks&lt;/a&gt;. If you're
ready, &lt;a href="https://store.cppnorth.ca/"&gt;register &lt;/a&gt;now! You can also &lt;a href="https://book.passkey.com/go/0724CPPN001"&gt;book
a room&lt;/a&gt; at the conference hotel, the Royal York. It's an easy walk from Union Station
to both the conference and the hotel as you can see from this map showing all three. 
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/map[1].jpg"&gt; 
&lt;/p&gt;
&lt;p&gt;
For those who would fly to Toronto, there's a train called the UP between Union Station
and YYZ. You should plan to come a little early so you can do some sightseeing before
the conference. There's a see-and-do channel on the conference discord that will give
you some great ideas.
&lt;/p&gt;
&lt;p&gt;
I'm honoured to do the opening keynote again. This year's topic: The Aging Programmer.
Eyes, wrists, memory, stamina ... so many things we rely on can get weaker as we age.
That doesn't mean you can't keep going if you want to. I'll talk about it.
&lt;/p&gt;
&lt;p&gt;
See you there!
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=691f7ece-30ad-4371-8444-617ee562448a" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=94d6e3d6-397a-4daf-a728-59f28c2ecc22</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=94d6e3d6-397a-4daf-a728-59f28c2ecc22</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
On January 8th, 2004, I got an email from the MVP Lead for Visual C++ at Microsoft,
asking if I would like to be an <a href="https://mvp.microsoft.com/mvp">MVP</a>. After
checking to see what that meant, I said yes, and was <a href="https://mvp.microsoft.com/en-US/MVP/profile/3728e166-3c9a-e411-93f2-9cb65495d3c4">accepted
into the program</a>. I was renewed every year, and at some point after half a year,
making just over 20 years coming up at the end of June. I'm still the only MVP called
Kate.<br /></p>
        <p>
I went out for MVP Summit that first year, and some RD stuff at the same time. Here's
a production still from "Red Chair Green Wall" - the plan had been to greenscreen
in some image related to where we each were from, but then in the end, we didn't.
I'm including it to show how much younger I was then!
</p>
        <img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/PDR_0896 cropped.jpg" />
        <p>
I've decided not to renew this year. Usually, people making this announcement do so
because they're no longer doing the sorts of things MVPs do. But I'm still <a href="https://www.pluralsight.com/authors/kate-gregory">teaching</a>, <a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE">speaking</a>, <a href="https://www.includecpp.org/discord/">helping
folks</a> online, writing the occasional <a href="https://www.amazon.ca/Beautiful-Core-Guidelines-Writing-Clean-ebook/dp/B09HTH1X38/ref=sr_1_1?crid=WHHM32N4P7RP&amp;dib=eyJ2IjoiMSJ9.C3Jaj_ifD-jxyo7L_YziGZDj0FpzcqdXy1GX_aqn9nYJSiS1Y-OMXfYz89fqW8Mc4u0vrGzaQuiocGp8kdD4Wl0sBM9603U4ZLSiWJ8m3S8nMiAklpNoAoqzaNZqImwBBEkX1qNeNoWtunWemNQCWnlxm12vNImIjYfHCqlVymNayOrKw99Ql2ww06PGVU_J6QyF8mkZdPHmx2ySl5rZW1oQTej-tk7G52fktHy8Ev0mY7j0yJ4kPQEjehjhVDb7hCGI8BWarlZM975kU1j6nd7hGC1ST0PmSLhJHvf8d9c.dT9xhL55W3lPy970ojOJ4oUkm8qyyakOBQl4Hs4NWpo&amp;dib_tag=se&amp;keywords=beautiful+c%2B%2B&amp;qid=1715280640&amp;sprefix=beautiful+c%2B%2B%2Caps%2C132&amp;sr=8-1">book</a>,
helping to run a <a href="https://cppnorth.ca/">conference</a>, and all the technical
things as well. What's changed isn't so much me, it's the program. I always valued
my connection to the Visual C++ team very highly. These days, the team maintains those
connections with developers whether they are MVPs or not. Events like <a href="https://devblogs.microsoft.com/visualstudio/pure-virtual-cpp-2024-sessions-announced/">Pure
Virtual C++</a>, among other things, can keep me informed as well or better than the
program can. The MVP program is all Azure this and AI that and exciting details and
announcements about conferences that just aren't relevant to me. I'm sure they are
useful and exciting tools and events, for someone. I am focused on my little piece
of the world and don't need more information on the stuff I've decided to ignore.
</p>
        <p>
Joining the program was definitely life changing. I had some wonderful times, learned
things I really needed to learn in as quick and enjoyable a way as you can imagine,
met terrific people and raised my professional profile. I would do it all again in
a heartbeat. I'm just not going to keep doing it, because for me personally the benefits
are dwindling.
</p>
        <p>
I'm truly grateful to John Perry, for bringing me into the program, to Karen Young
for inspiration and funny stories, to Sasha Krsmanovic for everything, to Sim Chaudhry
for cheer and support, and to Betsy Weber for being the last one standing. Most of
all, I'm grateful to my fellow C++ MVPs, and the Canadian MVPs from all technologies,
for being great people to spend time with and learn from. There are too many to mention
-- I hope you all know you really made a difference.
</p>
        <p>
          <br />
        </p>
        <img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/20240509_145826.jpg" />
        <p>
Sure, I could have cropped it a little tighter, but then you wouldn't see the picture
in the background of me with Bill Gates :-) What a marvelous pair of decades!
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=94d6e3d6-397a-4daf-a728-59f28c2ecc22" />
      </body>
      <title>Retiring as an MVP</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=94d6e3d6-397a-4daf-a728-59f28c2ecc22</guid>
      <link>http://www.gregcons.com/KateBlog/RetiringAsAnMVP.aspx</link>
      <pubDate>Thu, 09 May 2024 19:02:29 GMT</pubDate>
      <description>&lt;p&gt;
On January 8th, 2004, I got an email from the MVP Lead for Visual C++ at Microsoft,
asking if I would like to be an &lt;a href="https://mvp.microsoft.com/mvp"&gt;MVP&lt;/a&gt;. After
checking to see what that meant, I said yes, and was &lt;a href="https://mvp.microsoft.com/en-US/MVP/profile/3728e166-3c9a-e411-93f2-9cb65495d3c4"&gt;accepted
into the program&lt;/a&gt;. I was renewed every year, and at some point after half a year,
making just over 20 years coming up at the end of June. I'm still the only MVP called
Kate.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
I went out for MVP Summit that first year, and some RD stuff at the same time. Here's
a production still from "Red Chair Green Wall" - the plan had been to greenscreen
in some image related to where we each were from, but then in the end, we didn't.
I'm including it to show how much younger I was then!
&lt;/p&gt;
&lt;img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/PDR_0896 cropped.jpg"&gt; 
&lt;p&gt;
I've decided not to renew this year. Usually, people making this announcement do so
because they're no longer doing the sorts of things MVPs do. But I'm still &lt;a href="https://www.pluralsight.com/authors/kate-gregory"&gt;teaching&lt;/a&gt;, &lt;a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE"&gt;speaking&lt;/a&gt;, &lt;a href="https://www.includecpp.org/discord/"&gt;helping
folks&lt;/a&gt; online, writing the occasional &lt;a href="https://www.amazon.ca/Beautiful-Core-Guidelines-Writing-Clean-ebook/dp/B09HTH1X38/ref=sr_1_1?crid=WHHM32N4P7RP&amp;amp;dib=eyJ2IjoiMSJ9.C3Jaj_ifD-jxyo7L_YziGZDj0FpzcqdXy1GX_aqn9nYJSiS1Y-OMXfYz89fqW8Mc4u0vrGzaQuiocGp8kdD4Wl0sBM9603U4ZLSiWJ8m3S8nMiAklpNoAoqzaNZqImwBBEkX1qNeNoWtunWemNQCWnlxm12vNImIjYfHCqlVymNayOrKw99Ql2ww06PGVU_J6QyF8mkZdPHmx2ySl5rZW1oQTej-tk7G52fktHy8Ev0mY7j0yJ4kPQEjehjhVDb7hCGI8BWarlZM975kU1j6nd7hGC1ST0PmSLhJHvf8d9c.dT9xhL55W3lPy970ojOJ4oUkm8qyyakOBQl4Hs4NWpo&amp;amp;dib_tag=se&amp;amp;keywords=beautiful+c%2B%2B&amp;amp;qid=1715280640&amp;amp;sprefix=beautiful+c%2B%2B%2Caps%2C132&amp;amp;sr=8-1"&gt;book&lt;/a&gt;,
helping to run a &lt;a href="https://cppnorth.ca/"&gt;conference&lt;/a&gt;, and all the technical
things as well. What's changed isn't so much me, it's the program. I always valued
my connection to the Visual C++ team very highly. These days, the team maintains those
connections with developers whether they are MVPs or not. Events like &lt;a href="https://devblogs.microsoft.com/visualstudio/pure-virtual-cpp-2024-sessions-announced/"&gt;Pure
Virtual C++&lt;/a&gt;, among other things, can keep me informed as well or better than the
program can. The MVP program is all Azure this and AI that and exciting details and
announcements about conferences that just aren't relevant to me. I'm sure they are
useful and exciting tools and events, for someone. I am focused on my little piece
of the world and don't need more information on the stuff I've decided to ignore.
&lt;/p&gt;
&lt;p&gt;
Joining the program was definitely life changing. I had some wonderful times, learned
things I really needed to learn in as quick and enjoyable a way as you can imagine,
met terrific people and raised my professional profile. I would do it all again in
a heartbeat. I'm just not going to keep doing it, because for me personally the benefits
are dwindling.
&lt;/p&gt;
&lt;p&gt;
I'm truly grateful to John Perry, for bringing me into the program, to Karen Young
for inspiration and funny stories, to Sasha Krsmanovic for everything, to Sim Chaudhry
for cheer and support, and to Betsy Weber for being the last one standing. Most of
all, I'm grateful to my fellow C++ MVPs, and the Canadian MVPs from all technologies,
for being great people to spend time with and learn from. There are too many to mention
-- I hope you all know you really made a difference.
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;img border="0" width="800" src="http://www.gregcons.com/KateBlog/content/binary/20240509_145826.jpg"&gt; 
&lt;p&gt;
Sure, I could have cropped it a little tighter, but then you wouldn't see the picture
in the background of me with Bill Gates :-) What a marvelous pair of decades!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=94d6e3d6-397a-4daf-a728-59f28c2ecc22" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>MVP</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=7daa847e-f267-46cb-af37-b9abea7d52b9</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7daa847e-f267-46cb-af37-b9abea7d52b9</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div>I'm doing some work on getting older as a programmer. As part of that, I'd like
to know what programmers have on their minds when it comes to aging. Our ability to
type is a big deal. What else?
</div>
        <div>
          <br />
        </div>
        <div>I've put a survey at <a href="https://forms.gle/gv3Zet5k6mhwcm7q6">https://forms.gle/gv3Zet5k6mhwcm7q6</a>.
Please take it, and please ask other developers you know to take it too. It doesn't
matter what programming language you use. You can even answer if you're not a programmer
-- perhaps you're retired, or you do a different job -- there's a question about whether
you program at the moment.
</div>
        <div>
          <br />
        </div>
        <div>I'd like to hear from a wide variety of ages and genders so please share this
widely. Thanks!
</div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <div>
          <br />
        </div>
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7daa847e-f267-46cb-af37-b9abea7d52b9" />
      </body>
      <title>Please take my aging survey</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7daa847e-f267-46cb-af37-b9abea7d52b9</guid>
      <link>http://www.gregcons.com/KateBlog/PleaseTakeMyAgingSurvey.aspx</link>
      <pubDate>Sun, 31 Mar 2024 18:25:35 GMT</pubDate>
      <description>&lt;div&gt;I'm doing some work on getting older as a programmer. As part of that, I'd like
to know what programmers have on their minds when it comes to aging. Our ability to
type is a big deal. What else?
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;I've put a survey at &lt;a href="https://forms.gle/gv3Zet5k6mhwcm7q6"&gt;https://forms.gle/gv3Zet5k6mhwcm7q6&lt;/a&gt;.
Please take it, and please ask other developers you know to take it too. It doesn't
matter what programming language you use. You can even answer if you're not a programmer
-- perhaps you're retired, or you do a different job -- there's a question about whether
you program at the moment.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;I'd like to hear from a wide variety of ages and genders so please share this
widely. Thanks!
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7daa847e-f267-46cb-af37-b9abea7d52b9" /&gt;</description>
      <category>Consulting Life</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=311d3f02-627c-47f3-9be7-55cdb65a95f6</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=311d3f02-627c-47f3-9be7-55cdb65a95f6</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
During CppNorth, I took a few minutes away from the conference to do an interview
for Pluralsight. The host was my dear friend Julie Lerman and we had a great time.
We talked about <a href="https://www.pluralsight.com/authors/kate-gregory?exp=3">my
courses</a>, <a href="https://www.includecpp.org/discord/">#include &lt;C++&gt;</a>, <a href="https://cppnorth.ca/">CppNorth</a>, <a href="https://github.com/carbon-language/carbon-lang#readme">Carbon</a>,
and a lot more.
</p>
        <p>
I thought you might like to see a few "production stills" of how I set up the space
to do the recording. It's always a challenge in a hotel room to get good light, keep
the bed out of frame, and be reasonably near an available power plug. I did it!
</p>
        <p>
          <img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20230716_191618.jpg" width="600" />
        </p>
        <p>
Yes, I have my ring light clipped to a lampshade. And I brought the light, my good
mike, and my mike stand to Toronto with me in my suitcase. Getting the laptop up high
enough and at the right angle involved a little foraging in the room :-)
</p>
        <p>
          <img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20230716_191637.jpg" width="600" />
        </p>
        <p>
This was the view from my chair. (That desktop background is the view out of the Bridge
of Sighs, in Venice.)<br /></p>
        <p>
And here's the <a href="https://www.youtube.com/watch?v=duXXXtCLIuA">final video</a>.It's
about seventeen minutes; please do share the link with others.
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=311d3f02-627c-47f3-9be7-55cdb65a95f6" />
      </body>
      <title>My Pluralsight Spotlight interview</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=311d3f02-627c-47f3-9be7-55cdb65a95f6</guid>
      <link>http://www.gregcons.com/KateBlog/MyPluralsightSpotlightInterview.aspx</link>
      <pubDate>Thu, 31 Aug 2023 15:04:11 GMT</pubDate>
      <description>&lt;p&gt;
During CppNorth, I took a few minutes away from the conference to do an interview
for Pluralsight. The host was my dear friend Julie Lerman and we had a great time.
We talked about &lt;a href="https://www.pluralsight.com/authors/kate-gregory?exp=3"&gt;my
courses&lt;/a&gt;, &lt;a href="https://www.includecpp.org/discord/"&gt;#include &amp;lt;C++&amp;gt;&lt;/a&gt;, &lt;a href="https://cppnorth.ca/"&gt;CppNorth&lt;/a&gt;, &lt;a href="https://github.com/carbon-language/carbon-lang#readme"&gt;Carbon&lt;/a&gt;,
and a lot more.
&lt;/p&gt;
&lt;p&gt;
I thought you might like to see a few "production stills" of how I set up the space
to do the recording. It's always a challenge in a hotel room to get good light, keep
the bed out of frame, and be reasonably near an available power plug. I did it!
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20230716_191618.jpg" width="600"&gt;
&lt;/p&gt;
&lt;p&gt;
Yes, I have my ring light clipped to a lampshade. And I brought the light, my good
mike, and my mike stand to Toronto with me in my suitcase. Getting the laptop up high
enough and at the right angle involved a little foraging in the room :-)
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" src="http://www.gregcons.com/KateBlog/content/binary/20230716_191637.jpg" width="600"&gt;
&lt;/p&gt;
&lt;p&gt;
This was the view from my chair. (That desktop background is the view out of the Bridge
of Sighs, in Venice.)&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
And here's the &lt;a href="https://www.youtube.com/watch?v=duXXXtCLIuA"&gt;final video&lt;/a&gt;.It's
about seventeen minutes; please do share the link with others.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=311d3f02-627c-47f3-9be7-55cdb65a95f6" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=893800fa-cb20-40c7-8856-e27b8a87f74c</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=893800fa-cb20-40c7-8856-e27b8a87f74c</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
The recordings from ACCU have been appearing over the last few weeks and now both
of my talks are up:
</p>
        <ul>
          <li>
            <a href="https://www.youtube.com/watch?v=_AmjHjYUx6c&amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;index=2">C++
And Beyond: Discussion</a> is a panel discussion with Vittorio Romeo, Kevlin Henney,
Nico Josuttis, and me, moderated by Bryce Lelbach. The fun starts just six minutes
in when Nico declares C++ "fundamentally broken." Still, there is some positive and
hopeful content. We should think about the languages we use and what we want from
them. C++ is a language that changes, which has consequences, both good and bad.</li>
          <li>
            <a href="https://www.youtube.com/watch?v=RHFYV0f7Mb4&amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;index=1">Become
a Better Programmer by Using Words and Ideas From Casual Gaming</a> is my closing
keynote. Not a lot of syntax in here, but a new way of looking at some of the things
you do at work, and how to approach those, that you may find helpful.</li>
        </ul>
        <p>
Going to conferences in person has many advantages, and I'm glad we're solidly back
to doing that. But for the ones you can't attend, you can at least watch the sessions,
and I highly recommend that you do.
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=893800fa-cb20-40c7-8856-e27b8a87f74c" />
      </body>
      <title>The ACCU recordings are live</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=893800fa-cb20-40c7-8856-e27b8a87f74c</guid>
      <link>http://www.gregcons.com/KateBlog/TheACCURecordingsAreLive.aspx</link>
      <pubDate>Sun, 27 Aug 2023 15:57:22 GMT</pubDate>
      <description>&lt;p&gt;
The recordings from ACCU have been appearing over the last few weeks and now both
of my talks are up:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=_AmjHjYUx6c&amp;amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;amp;index=2"&gt;C++
And Beyond: Discussion&lt;/a&gt; is a panel discussion with Vittorio Romeo, Kevlin Henney,
Nico Josuttis, and me, moderated by Bryce Lelbach. The fun starts just six minutes
in when Nico declares C++ "fundamentally broken." Still, there is some positive and
hopeful content. We should think about the languages we use and what we want from
them. C++ is a language that changes, which has consequences, both good and bad.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.youtube.com/watch?v=RHFYV0f7Mb4&amp;amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;amp;index=1"&gt;Become
a Better Programmer by Using Words and Ideas From Casual Gaming&lt;/a&gt; is my closing
keynote. Not a lot of syntax in here, but a new way of looking at some of the things
you do at work, and how to approach those, that you may find helpful.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Going to conferences in person has many advantages, and I'm glad we're solidly back
to doing that. But for the ones you can't attend, you can at least watch the sessions,
and I highly recommend that you do.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=893800fa-cb20-40c7-8856-e27b8a87f74c" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=5a355e88-e615-4e78-97a6-5f91be4b20e6</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5a355e88-e615-4e78-97a6-5f91be4b20e6</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
The <a href="https://www.qt.io/qt-world-summit-2023#agenda">agenda </a>for the Qt
World Summit has now been released.
</p>
        <p>
I'll be doing a half-hour version of a talk I've given only once before, "Am I a Good
Programmer?" Many people have told me this is something they worry about pretty often.So
at the end of November, we can discuss it together.<br /></p>
        <p>
          <img border="0" src="http://www.gregcons.com/KateBlog/content/binary/QtWS23 Kate.png" width="800" />
        </p>
        <p>
I've been lucky enough to speak in Berlin at several different conferences and I'm
looking forward to being back there again. Would you like to join me? You can even
get a discount of 10% if you use the code QtWS23_Kate -- <a href="https://www.qt.io/qt-world-summit-2023">register
here</a>. 
<br /></p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5a355e88-e615-4e78-97a6-5f91be4b20e6" />
      </body>
      <title>My Qt World Summit keynote</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5a355e88-e615-4e78-97a6-5f91be4b20e6</guid>
      <link>http://www.gregcons.com/KateBlog/MyQtWorldSummitKeynote.aspx</link>
      <pubDate>Fri, 18 Aug 2023 16:32:58 GMT</pubDate>
      <description>&lt;p&gt;
The &lt;a href="https://www.qt.io/qt-world-summit-2023#agenda"&gt;agenda &lt;/a&gt;for the Qt
World Summit has now been released.
&lt;/p&gt;
&lt;p&gt;
I'll be doing a half-hour version of a talk I've given only once before, "Am I a Good
Programmer?" Many people have told me this is something they worry about pretty often.So
at the end of November, we can discuss it together.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img border="0" src="http://www.gregcons.com/KateBlog/content/binary/QtWS23 Kate.png" width="800"&gt;
&lt;/p&gt;
&lt;p&gt;
I've been lucky enough to speak in Berlin at several different conferences and I'm
looking forward to being back there again. Would you like to join me? You can even
get a discount of 10% if you use the code QtWS23_Kate -- &lt;a href="https://www.qt.io/qt-world-summit-2023"&gt;register
here&lt;/a&gt;. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5a355e88-e615-4e78-97a6-5f91be4b20e6" /&gt;</description>
      <category>C++</category>
      <category>Client Development</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=cd25bb40-bdf6-488a-a803-420fe2a53d93</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=cd25bb40-bdf6-488a-a803-420fe2a53d93</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Day 3 began with a terrific keynote from Jessica Kerr, <a href="https://cppnorth.digital-medium.co.uk/session/keynote-jessica-kerr/">I
can write the code. But getting something done is another matter</a>. I was so thrilled
when she agreed to come and do a keynote, and this one didn't disappoint. I took pictures
of several slides, always a good sign. 
</p>
        <p>
After a break it was time for Tony Van Eerd with <a href="https://cppnorth.digital-medium.co.uk/session/value-oriented-programming-part-v-return-of-the-values/">Value
Oriented Programming Part V: Return of the Values</a>. There was plenty of pop culture
here but also some darn good advice about making good abstractions, and what's good
about them. Then out for lunch again ... I deliberately chose something different
on my second trip to the market.
</p>
        <p>
The afternoon started with Conor Hoekstra and <a href="https://cppnorth.digital-medium.co.uk/session/new-algorithms-in-c23/">New
Algorithms in C++23</a>. Conor makes these things look easy -- perhaps they actually
are? Then the closing keynote, from Timur Doumler, called <a href="https://cppnorth.digital-medium.co.uk/session/closing-keynote-timur-doumler/">Contracts,
Testing, and the Pursuit of Well Defined Behaviour</a>. We sure have plenty of undefined
behaviour to deal with:
</p>
        <div>
          <img src="http://www.gregcons.com/KateBlog/content/binary/20230719_155116 cropped small.jpg" border="0" />
        </div>
        <div>
          <br />
        </div>
        <div>I enjoyed this keynote too -- they were all good. 
<br /></div>
        <div>
          <br />
        </div>
        <div>And then it was time to say goodbye to this lovely venue and this lovely conference
for another year.
</div>
        <div>
          <br />
        </div>
        <img src="http://www.gregcons.com/KateBlog/content/binary/20230718_145354 small.jpg" border="0" />
        <div>
          <br />
        </div>
        <div>Being all on a single floor this year made it super easy to meet people, have
chats, enjoy the breaks, and so on. One thing I noticed this year was that some people
brought their children. This was just lovely! Parents are quite capable of knowing
if their child can sit quietly and be in a session, and it was great to see that in
action. I hope bringing children to conferences is something I see more often in the
future. 
<br /></div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=cd25bb40-bdf6-488a-a803-420fe2a53d93" />
      </body>
      <title>CppNorth Day 3</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=cd25bb40-bdf6-488a-a803-420fe2a53d93</guid>
      <link>http://www.gregcons.com/KateBlog/CppNorthDay3.aspx</link>
      <pubDate>Thu, 20 Jul 2023 20:26:00 GMT</pubDate>
      <description>&lt;p&gt;
Day 3 began with a terrific keynote from Jessica Kerr, &lt;a href="https://cppnorth.digital-medium.co.uk/session/keynote-jessica-kerr/"&gt;I
can write the code. But getting something done is another matter&lt;/a&gt;. I was so thrilled
when she agreed to come and do a keynote, and this one didn't disappoint. I took pictures
of several slides, always a good sign. 
&lt;/p&gt;
&lt;p&gt;
After a break it was time for Tony Van Eerd with &lt;a href="https://cppnorth.digital-medium.co.uk/session/value-oriented-programming-part-v-return-of-the-values/"&gt;Value
Oriented Programming Part V: Return of the Values&lt;/a&gt;. There was plenty of pop culture
here but also some darn good advice about making good abstractions, and what's good
about them. Then out for lunch again ... I deliberately chose something different
on my second trip to the market.
&lt;/p&gt;
&lt;p&gt;
The afternoon started with Conor Hoekstra and &lt;a href="https://cppnorth.digital-medium.co.uk/session/new-algorithms-in-c23/"&gt;New
Algorithms in C++23&lt;/a&gt;. Conor makes these things look easy -- perhaps they actually
are? Then the closing keynote, from Timur Doumler, called &lt;a href="https://cppnorth.digital-medium.co.uk/session/closing-keynote-timur-doumler/"&gt;Contracts,
Testing, and the Pursuit of Well Defined Behaviour&lt;/a&gt;. We sure have plenty of undefined
behaviour to deal with:
&lt;/p&gt;
&lt;div&gt;&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20230719_155116 cropped small.jpg" border="0"&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;I enjoyed this keynote too -- they were all good. 
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;And then it was time to say goodbye to this lovely venue and this lovely conference
for another year.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20230718_145354 small.jpg" border="0"&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Being all on a single floor this year made it super easy to meet people, have
chats, enjoy the breaks, and so on. One thing I noticed this year was that some people
brought their children. This was just lovely! Parents are quite capable of knowing
if their child can sit quietly and be in a session, and it was great to see that in
action. I hope bringing children to conferences is something I see more often in the
future. 
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=cd25bb40-bdf6-488a-a803-420fe2a53d93" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=c5def4a3-aada-411a-bd8d-4fe315db9e67</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c5def4a3-aada-411a-bd8d-4fe315db9e67</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Another amazing day in Toronto! Let's talk about what sessions I went to so far.
</p>
        <p>
I started with Patrice Roy's <a href="https://cppnorth.digital-medium.co.uk/session/moving-an-existing-project-to-c-20-for-fun-beauty-and-results/">Moving
an Existing Project to C++ 20 for Fun, Beauty… and Results!</a>. The first part set
up a problem and showed some C++17 code to handle it. I was a little impatient during
this part, because it was a lot of code and I would have done some of it differently
(because I am doing C++20 which is the point of the talk) but I did notice that it
was carefully written to be fast and readable. Then the fun started as things got
shorter, simpler, and (proven with some measuring) faster using C++20 goodies. 
</p>
        <p>
Next was Ben Deane with <a href="https://cppnorth.digital-medium.co.uk/session/calendrical-c-stdchrono-history-mathematics-and-the-computus/">Calendrical
C++: std::chrono, History, Mathematics and the Computus</a>. This very entertaining
talk took a problem few of us really face in code (when is Easter next year?) and
used it to show off what chrono can do with dates. Probably my favourite slide was
the one to show when Thanksgiving is. When you get to it, you'll see why.
</p>
        <p>
The first break of Day 1 was the "Canada Snacks" -- see <a href="https://cppnorth.ca/menu.html">the
published menu</a> for details. I've never put a blackberry on a Nanaimo bar, but
they certainly were delicious.
</p>
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/20230717_143259 crpped small.jpg" border="0" />
        </p>
        <p>
I enjoyed <a href="https://cppnorth.digital-medium.co.uk/session/and-then-some/">And
Then() Some(T)</a> by Victor Ciura a lot, even though I had to duck out early. If
you would say no to "are you using higher order functions today?" this is the talk
for you. Because you almost certainly are, and knowing that will make a lot of things
easier to understand.
</p>
        <p>
For the last talk of Day 1 I had planned to attend Rud Merriam's <a href="https://cppnorth.digital-medium.co.uk/session/a-journey-into-range-views-and-pipelines-and-some-functional-programming/">A
Journey into Ranges, Views, Pipelines, and Currying</a> but some last minute schedule
juggling as speakers ran into travel problems put it up against Timur Doumler with <a href="https://cppnorth.digital-medium.co.uk/session/cpp-and-safety/">C++
and Safety</a>. Safety is a timely topic, so I'll wait for the video to watch Rud's
talk. Timur did an interesting review of what the word "safety" even refers to, why
governments are starting to have an opinion, and whether C++ can ever be proven safe
-- and why you should care.
</p>
        <p>
We wrapped up the day with the conference dinner, a nice mix of old friends and new,
speakers and not, and good food. I enjoyed the conversations a lot!
</p>
        <p>
Day 2 started with a keynote from Ben Deane, <a href="https://cppnorth.digital-medium.co.uk/session/keynote-ben-deane/">Optimizing
for Change</a>. Some excellent advice in this talk even if I did find the dark background
a bit of a challenge on some of the code slides.
</p>
        <p>
I had an online meeting I couldn't miss, so I didn't go to another morning session.
After my call I walked over to the St Lawrence Market to get some lunch. I wish more
conferences were fully in the towns where they are held, and made it simple for attendees
to walk out and experience a little sunshine and access a wider variety of food options.
</p>
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/20230718_123257 cropped small.jpg" border="0" />
        </p>
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/20230718_123434 small.jpg" border="0" />
        </p>
        <p>
The afternoon had more tough choices, but I went to <a href="https://cppnorth.digital-medium.co.uk/session/why-good-code-is-relative/">Why
Good Code is Relative</a> by Daniel Withopf. A good summary of why you can't "just
write it the fast way" and some solid code samples about how to actually follow advice
like "avoid heap allocations."
</p>
        <p>
Then I went to <a href="https://cppnorth.digital-medium.co.uk/session/get-into-retroactive-static-reflection/">Get()
into Retroactive Static Reflection</a> by Vincent Tourangeau. This was a slideless
talk, bopping around in a lot of surprisingly-readable code that showed how to get
properties, introspection, and a lot of other things you think C++ doesn't have --
and all with C++11. I know I'll be watching the video when it's out because there
were a few moments where I wanted to rewind and see something again! 
</p>
        <p>
For my last session of Day 2 I went to <a href="https://cppnorth.digital-medium.co.uk/session/writing-cpp-to-be-read/">Writing
C++ to Be Read </a> by Vincent Zalzal. I really enjoyed this talk! It's the sort of
talk I would give, but Vincent included a number of excellent points I had not made
or heard before. He also had fantastic slides, with highlights to point out the parts
he wanted to draw attention to, and good examples. 
</p>
        <p>
That left the Lightning Talks. Wow, these were so good! As always, some were funny,
some showed something we needed to learn, and some were highly personal. I've seen
a lot of lightning talks and I always get a lot from them. But I don't remember lightning
talks from student volunteers and members of the organizing committee anywhere else.
Worth staying up for!
</p>
        <p>
Next, one more day!
</p>
        <p>
Kate
</p>
        <br />
        <br />
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=c5def4a3-aada-411a-bd8d-4fe315db9e67" />
      </body>
      <title>CppNorth Day 2</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=c5def4a3-aada-411a-bd8d-4fe315db9e67</guid>
      <link>http://www.gregcons.com/KateBlog/CppNorthDay2.aspx</link>
      <pubDate>Tue, 18 Jul 2023 11:03:11 GMT</pubDate>
      <description>&lt;p&gt;
Another amazing day in Toronto! Let's talk about what sessions I went to so far.
&lt;/p&gt;
&lt;p&gt;
I started with Patrice Roy's &lt;a href="https://cppnorth.digital-medium.co.uk/session/moving-an-existing-project-to-c-20-for-fun-beauty-and-results/"&gt;Moving
an Existing Project to C++ 20 for Fun, Beauty… and Results!&lt;/a&gt;. The first part set
up a problem and showed some C++17 code to handle it. I was a little impatient during
this part, because it was a lot of code and I would have done some of it differently
(because I am doing C++20 which is the point of the talk) but I did notice that it
was carefully written to be fast and readable. Then the fun started as things got
shorter, simpler, and (proven with some measuring) faster using C++20 goodies. 
&lt;/p&gt;
&lt;p&gt;
Next was Ben Deane with &lt;a href="https://cppnorth.digital-medium.co.uk/session/calendrical-c-stdchrono-history-mathematics-and-the-computus/"&gt;Calendrical
C++: std::chrono, History, Mathematics and the Computus&lt;/a&gt;. This very entertaining
talk took a problem few of us really face in code (when is Easter next year?) and
used it to show off what chrono can do with dates. Probably my favourite slide was
the one to show when Thanksgiving is. When you get to it, you'll see why.
&lt;/p&gt;
&lt;p&gt;
The first break of Day 1 was the "Canada Snacks" -- see &lt;a href="https://cppnorth.ca/menu.html"&gt;the
published menu&lt;/a&gt; for details. I've never put a blackberry on a Nanaimo bar, but
they certainly were delicious.
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20230717_143259 crpped small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
I enjoyed &lt;a href="https://cppnorth.digital-medium.co.uk/session/and-then-some/"&gt;And
Then() Some(T)&lt;/a&gt; by Victor Ciura a lot, even though I had to duck out early. If
you would say no to "are you using higher order functions today?" this is the talk
for you. Because you almost certainly are, and knowing that will make a lot of things
easier to understand.
&lt;/p&gt;
&lt;p&gt;
For the last talk of Day 1 I had planned to attend Rud Merriam's &lt;a href="https://cppnorth.digital-medium.co.uk/session/a-journey-into-range-views-and-pipelines-and-some-functional-programming/"&gt;A
Journey into Ranges, Views, Pipelines, and Currying&lt;/a&gt; but some last minute schedule
juggling as speakers ran into travel problems put it up against Timur Doumler with &lt;a href="https://cppnorth.digital-medium.co.uk/session/cpp-and-safety/"&gt;C++
and Safety&lt;/a&gt;. Safety is a timely topic, so I'll wait for the video to watch Rud's
talk. Timur did an interesting review of what the word "safety" even refers to, why
governments are starting to have an opinion, and whether C++ can ever be proven safe
-- and why you should care.
&lt;/p&gt;
&lt;p&gt;
We wrapped up the day with the conference dinner, a nice mix of old friends and new,
speakers and not, and good food. I enjoyed the conversations a lot!
&lt;/p&gt;
&lt;p&gt;
Day 2 started with a keynote from Ben Deane, &lt;a href="https://cppnorth.digital-medium.co.uk/session/keynote-ben-deane/"&gt;Optimizing
for Change&lt;/a&gt;. Some excellent advice in this talk even if I did find the dark background
a bit of a challenge on some of the code slides.
&lt;/p&gt;
&lt;p&gt;
I had an online meeting I couldn't miss, so I didn't go to another morning session.
After my call I walked over to the St Lawrence Market to get some lunch. I wish more
conferences were fully in the towns where they are held, and made it simple for attendees
to walk out and experience a little sunshine and access a wider variety of food options.
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20230718_123257 cropped small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20230718_123434 small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
The afternoon had more tough choices, but I went to &lt;a href="https://cppnorth.digital-medium.co.uk/session/why-good-code-is-relative/"&gt;Why
Good Code is Relative&lt;/a&gt; by Daniel Withopf. A good summary of why you can't "just
write it the fast way" and some solid code samples about how to actually follow advice
like "avoid heap allocations."
&lt;/p&gt;
&lt;p&gt;
Then I went to &lt;a href="https://cppnorth.digital-medium.co.uk/session/get-into-retroactive-static-reflection/"&gt;Get()
into Retroactive Static Reflection&lt;/a&gt; by Vincent Tourangeau. This was a slideless
talk, bopping around in a lot of surprisingly-readable code that showed how to get
properties, introspection, and a lot of other things you think C++ doesn't have --
and all with C++11. I know I'll be watching the video when it's out because there
were a few moments where I wanted to rewind and see something again! 
&lt;/p&gt;
&lt;p&gt;
For my last session of Day 2 I went to &lt;a href="https://cppnorth.digital-medium.co.uk/session/writing-cpp-to-be-read/"&gt;Writing
C++ to Be Read &lt;/a&gt; by Vincent Zalzal. I really enjoyed this talk! It's the sort of
talk I would give, but Vincent included a number of excellent points I had not made
or heard before. He also had fantastic slides, with highlights to point out the parts
he wanted to draw attention to, and good examples. 
&lt;/p&gt;
&lt;p&gt;
That left the Lightning Talks. Wow, these were so good! As always, some were funny,
some showed something we needed to learn, and some were highly personal. I've seen
a lot of lightning talks and I always get a lot from them. But I don't remember lightning
talks from student volunteers and members of the organizing committee anywhere else.
Worth staying up for!
&lt;/p&gt;
&lt;p&gt;
Next, one more day!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;br&gt;
&lt;br&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=c5def4a3-aada-411a-bd8d-4fe315db9e67" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=d0495e3d-c4f2-4fe5-b18d-cf192a7138ee</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d0495e3d-c4f2-4fe5-b18d-cf192a7138ee</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
So great that the second year of <a href="https://cppnorth.ca/">CppNorth </a>has really
happened, and started so darn well, too!
</p>
        <p>
We started planning year two even before year one had happened, with a "next year"
folder, and never really stopped. If you thought it was challenging to plan and host
a conference with a pandemic still underway, that's nothing compared to doing the
same thing during -- what are we calling it? -- an "economic downturn"? Getting attendees
and sponsors took a lot of work, and luckily a pile of people who aren't me did that
work. 
</p>
        <p>
Me, I showed up on Day 1 and did a keynote. I really enjoyed it, too. I'll post again
when the video is up ... if you're an attendee you should be able to get the slides
any time now.
</p>
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/F1Pum_gXsAAm47q cropped.jpg" width="800" border="0" />
        </p>
        <p>
This is 90 minutes of "stuff I've learned" like "Take Notes in Meetings" and "Always
Take a Moment to Check" (aka Shift Left but for people) and the like. Many people
told me it was helpful, which is very reassuring.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d0495e3d-c4f2-4fe5-b18d-cf192a7138ee" />
      </body>
      <title>CppNorth Day 1</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d0495e3d-c4f2-4fe5-b18d-cf192a7138ee</guid>
      <link>http://www.gregcons.com/KateBlog/CppNorthDay1.aspx</link>
      <pubDate>Mon, 17 Jul 2023 15:34:57 GMT</pubDate>
      <description>&lt;p&gt;
So great that the second year of &lt;a href="https://cppnorth.ca/"&gt;CppNorth &lt;/a&gt;has really
happened, and started so darn well, too!
&lt;/p&gt;
&lt;p&gt;
We started planning year two even before year one had happened, with a "next year"
folder, and never really stopped. If you thought it was challenging to plan and host
a conference with a pandemic still underway, that's nothing compared to doing the
same thing during -- what are we calling it? -- an "economic downturn"? Getting attendees
and sponsors took a lot of work, and luckily a pile of people who aren't me did that
work. 
&lt;/p&gt;
&lt;p&gt;
Me, I showed up on Day 1 and did a keynote. I really enjoyed it, too. I'll post again
when the video is up ... if you're an attendee you should be able to get the slides
any time now.
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/F1Pum_gXsAAm47q cropped.jpg" width="800" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
This is 90 minutes of "stuff I've learned" like "Take Notes in Meetings" and "Always
Take a Moment to Check" (aka Shift Left but for people) and the like. Many people
told me it was helpful, which is very reassuring.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d0495e3d-c4f2-4fe5-b18d-cf192a7138ee" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=debcb2c0-34c6-4277-8a04-2c330908f408</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=debcb2c0-34c6-4277-8a04-2c330908f408</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I had a lot on my plate when the MVP renewals appeared July 6th, but I'm delighted
to number myself among this illustrious group again. I'm never worried that I haven't
done enough for the C++ community, but I do sometimes worry if the C++ community is
the target audience for the program any more. Still, I suppose it must be, since they
renewed me. 
<br /></p>
        <p>
I updated <a href="https://mvp.microsoft.com/en-us/PublicProfile/9511?fullName=Kate%20Gregory">my
profile on the MVP site</a> a little.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=debcb2c0-34c6-4277-8a04-2c330908f408" />
      </body>
      <title>Renewed as an MVP again</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=debcb2c0-34c6-4277-8a04-2c330908f408</guid>
      <link>http://www.gregcons.com/KateBlog/RenewedAsAnMVPAgain.aspx</link>
      <pubDate>Sat, 15 Jul 2023 14:10:05 GMT</pubDate>
      <description>&lt;p&gt;
I had a lot on my plate when the MVP renewals appeared July 6th, but I'm delighted
to number myself among this illustrious group again. I'm never worried that I haven't
done enough for the C++ community, but I do sometimes worry if the C++ community is
the target audience for the program any more. Still, I suppose it must be, since they
renewed me. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
I updated &lt;a href="https://mvp.microsoft.com/en-us/PublicProfile/9511?fullName=Kate%20Gregory"&gt;my
profile on the MVP site&lt;/a&gt; a little.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=debcb2c0-34c6-4277-8a04-2c330908f408" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>MVP</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=11752bb4-3671-4b56-a785-c6d501155fff</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=11752bb4-3671-4b56-a785-c6d501155fff</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Time for an update on the conferences I'm doing in 2023.
</p>
        <p>
In April I did the closing keynote at <a href="https://www.accuconference.org/keynote-speakers/">ACCU</a>, <a href="https://conference.accu.org/en/accu2023/public/events/76">Grinding,
Farming, and Alliances How words and ideas from casual gaming can make you a better
programmer</a>. My idea here is that certain things you are fine with in games, like
"daily housekeeping", don't feel the same in your job. If you could feel better about
them, you might be happier or more successful. Also, games pull on strengths like
altruism and responsibility to get you to do things -- can your job do the same? Can
your harness that to be more successful (however you define success) or happier at
work? This talk was recorded and I expect it on the <a href="https://www.youtube.com/@ACCUConf">ACCU
Youtube channel</a> some time in June.
</p>
        <p>
Next up will be "my own" conference, which is to say the one dearest to me as well
as geographically nearest, <a href="https://cppnorth.ca/">CppNorth</a>. There's still
time to register for this: it will be in Toronto at the King Edward Hotel. July 17th
and 18th are <a href="https://cppnorth.ca/workshops.html">preconference workshops</a>,
and the 19th, 20th, and 21st are three jam packed days of <a href="https://cppnorth.digital-medium.co.uk/23-preview">sessions</a> with
evening activities Sunday, Monday, and Tuesday. If you live in and around Toronto
this is your chance to see famous speakers (and discover some new ones) without having
to fly a long way. I recommend you get a hotel room though, so you can truly immerse
yourself in the conference while you're attending. My keynote is Steps To Wisdom:
some tips I want to share with you that I earned through hard experience.<br /></p>
        <p>
In September I'll be returning to <a href="https://ndctechtown.com/">NDC Techtown</a>,
this time to deliver the closing keynote on Day 1. These days I choose conferences
based on many factors and small friendly ones like CppNorth and NDC Techtown really
appeal to me. Both attract very good speakers and I expect to learn things -- I know
I did last year!
</p>
        <p>
In November I'll be doing something I haven't done before -- I recommend doing something
new at least once a year no matter how old you get. In this case it's <a href="https://www.qt.io/qt-world-summit-2023">Qt
World Summit</a> in Berlin, where I will have a small keynote. I look forward to new
people and new ideas from this experience, and hope to reach some people who haven't
heard me speak before.
</p>
        <p>
It's not too soon to think about the 2024 season, for me anyway. If you'd like me
to speak at your conference, you can see many of my previous talks on <a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE">my
YouTube playlist</a>. Please check my <a href="http://www.gregcons.com/SpeakerKit.aspx">Speaker
Kit</a> for the details of my preferences.
</p>
        <p>
See you at a conference, I hope!
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=11752bb4-3671-4b56-a785-c6d501155fff" />
      </body>
      <title>Conference Season is Underway</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=11752bb4-3671-4b56-a785-c6d501155fff</guid>
      <link>http://www.gregcons.com/KateBlog/ConferenceSeasonIsUnderway.aspx</link>
      <pubDate>Fri, 16 Jun 2023 20:00:49 GMT</pubDate>
      <description>&lt;p&gt;
Time for an update on the conferences I'm doing in 2023.
&lt;/p&gt;
&lt;p&gt;
In April I did the closing keynote at &lt;a href="https://www.accuconference.org/keynote-speakers/"&gt;ACCU&lt;/a&gt;, &lt;a href="https://conference.accu.org/en/accu2023/public/events/76"&gt;Grinding,
Farming, and Alliances How words and ideas from casual gaming can make you a better
programmer&lt;/a&gt;. My idea here is that certain things you are fine with in games, like
"daily housekeeping", don't feel the same in your job. If you could feel better about
them, you might be happier or more successful. Also, games pull on strengths like
altruism and responsibility to get you to do things -- can your job do the same? Can
your harness that to be more successful (however you define success) or happier at
work? This talk was recorded and I expect it on the &lt;a href="https://www.youtube.com/@ACCUConf"&gt;ACCU
Youtube channel&lt;/a&gt; some time in June.
&lt;/p&gt;
&lt;p&gt;
Next up will be "my own" conference, which is to say the one dearest to me as well
as geographically nearest, &lt;a href="https://cppnorth.ca/"&gt;CppNorth&lt;/a&gt;. There's still
time to register for this: it will be in Toronto at the King Edward Hotel. July 17th
and 18th are &lt;a href="https://cppnorth.ca/workshops.html"&gt;preconference workshops&lt;/a&gt;,
and the 19th, 20th, and 21st are three jam packed days of &lt;a href="https://cppnorth.digital-medium.co.uk/23-preview"&gt;sessions&lt;/a&gt; with
evening activities Sunday, Monday, and Tuesday. If you live in and around Toronto
this is your chance to see famous speakers (and discover some new ones) without having
to fly a long way. I recommend you get a hotel room though, so you can truly immerse
yourself in the conference while you're attending. My keynote is Steps To Wisdom:
some tips I want to share with you that I earned through hard experience.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
In September I'll be returning to &lt;a href="https://ndctechtown.com/"&gt;NDC Techtown&lt;/a&gt;,
this time to deliver the closing keynote on Day 1. These days I choose conferences
based on many factors and small friendly ones like CppNorth and NDC Techtown really
appeal to me. Both attract very good speakers and I expect to learn things -- I know
I did last year!
&lt;/p&gt;
&lt;p&gt;
In November I'll be doing something I haven't done before -- I recommend doing something
new at least once a year no matter how old you get. In this case it's &lt;a href="https://www.qt.io/qt-world-summit-2023"&gt;Qt
World Summit&lt;/a&gt; in Berlin, where I will have a small keynote. I look forward to new
people and new ideas from this experience, and hope to reach some people who haven't
heard me speak before.
&lt;/p&gt;
&lt;p&gt;
It's not too soon to think about the 2024 season, for me anyway. If you'd like me
to speak at your conference, you can see many of my previous talks on &lt;a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE"&gt;my
YouTube playlist&lt;/a&gt;. Please check my &lt;a href="http://www.gregcons.com/SpeakerKit.aspx"&gt;Speaker
Kit&lt;/a&gt; for the details of my preferences.
&lt;/p&gt;
&lt;p&gt;
See you at a conference, I hope!
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=11752bb4-3671-4b56-a785-c6d501155fff" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=4077a8c4-22f0-4250-aefb-2d2fed4f7250</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4077a8c4-22f0-4250-aefb-2d2fed4f7250</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I’ve been thinking lately about a lesson I saw taught in a martial arts class over
a decade ago. A young student was misbehaving. I knew this kid from field trips and
other school activities, and he was doing typical things for him – not paying attention,
calling out funny responses from the back row, making faces and showing off, that
sort of thing. He was always a little difficult to manage but this particular day
he was worse than usual. One of the instructors stopped the class and took the boy
aside from the group. He picked up a lightweight rattan sword. They use these for
practice – they’re very light, and they are made of several light sticks bundled together.
They make a loud clattery noise when they hit, and use up most of the energy doing
that, so they don’t hurt. They weigh very little. 
</p>
        <p>
The instructor got the student to sit or kneel, and hold his hands out straight in
front of him at shoulder height. Then he held out the sword and asked the student
to take it with both hands, holding the sword and his arms all parallel to the floor.
Simple. You could do the same thing yourself right now with a ruler or a pencil or
anything else rigid and lightweight. It’s trivial to hold your arms extended, elbows
locked, hands a fixed distance apart (because they’re holding something that doesn’t
bend or stretch.) Easy, right? By now everyone was watching to see what the actual
punishment was going to be. Would the instructor now hit the student, or demand they
do something difficult? (It was common in that class to assign pushups for misbehaviour,
and I adopted the habit myself, giving my kids pushups in the grocery store if they
were driving me crazy.) But no, the instructor just stepped back and said “just hold
that as long as you can.” The kid grinned. Everyone else looked puzzled. It was trivially
easy to do. 
</p>
        <p>
But if you try this yourself, you’ll soon discover that very quickly it gets harder.
It starts to really hurt after just a few minutes. If you’re stubborn and you grit
your teeth, you can keep going. This student was very stubborn. After a while though,
his arms would occasionally droop down. “Either put it down or keep it up! Shoulder
height! Arms straight!” the instructor would call and the student would try again
and manage to get back into position. Eventually he was clearly in distress. The instructor
told him “you can put it down whenever you want” but it was quite a while before he
did. His muscles were clearly very sore. 
</p>
        <p>
On that day, the instructor didn’t explicitly close the loop. He seemed content to
have found a way to get through to this student that classes were not his to disrupt
and there were things the instructors could do that the student didn’t like. But years
later, I saw a larger lesson in the choice of that particular exercise. Lifting that
light sword (or the pencil or ruler you tried this with) is nothing. It’s really nothing
at all. No effort. Anyone can do it. And at first, holding it is nothing also. If
you had never lifted a pencil before, and you met someone who was struggling after
holding one for many minutes, and you tried lifting a pencil yourself, you would be
really puzzled. “Why are you complaining? This is super easy. There’s nothing to it!
Anyone can do it!” The student’s misbehaviour was like this. Each little thing – the
funny comment, the silly face, doing the move backwards – was in itself nothing. Easy
to deal with or ignore. Not a problem. But enough of them add up. Just like the time
holding the light weight. It becomes hard. It becomes painful. It becomes unbearable. 
</p>
        <p>
I really urge you to try this. How long can you hold the pencil or ruler out before
you start to feel an effort? Before it hurts? Before you physically cannot do it any
longer? Try predicting these times and then doing it. 
</p>
        <p>
The world is full of things that are trivial and nothing if you only experience them
once, or once a decade, for a few minutes. It can be nearly impossible to imagine
that these trivial things could ever add up to something painful. In 1970 (yes! 50
years ago!) a university professor coined the term <a href="https://en.wikipedia.org/wiki/Microaggression">microaggression </a>for
tiny moments of “you don’t belong” aimed at racial minorities, disabled people, women
in male-dominated industries, gay people, and so on. People who haven’t experienced
a steady diet of “you don’t belong”, however mild, often literally cannot imagine
how it could add up to something painful. Sure, maybe you wince for a moment when
someone assumes a group of developers are all male, or all straight, but it’s no big
deal, right, and I’m sure the women know that when we say “men” we mean everyone,
and the gay people know that when we say “wife” we mean wife, husband, partner, whatever.
On its own, one tiny moment of “the only people I have to consider are X” is a little
needle for people who aren’t X, but it’s such a tiny needle, who would complain, who
would object, there was no nasty intent. Think about holding your arms out for 10
or 15 minutes and then think again about exclusionary language, policies that assume
only married people have children, asking people “where are you from”, telling someone
“you don’t look like a software developer”, making jokes about people’s weight or
appearance, and all those tiny tiny little things that are nothing once, but that
truly genuinely add up over time to real pain. 
<br /></p>
        <p>
And then ask yourself: if it really doesn’t matter whether you say “men” or “people”,
then why is it so important you keep saying “men”? That sounds like it actually does
matter after all. If it’s no big deal and of course we all know that there are people
who differ from you in some way, why are you not prepared to do the work of talking
as though such people exist, instead asking them to do all the work of translating
your literal words into what you probably meant, or would have meant if you had thought
about it? How can you lessen some of the pain and effort other people have to put
in all day, every day, day after day? It will be no big deal to you, right? 
<br /></p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=4077a8c4-22f0-4250-aefb-2d2fed4f7250" />
      </body>
      <title>How Long Could You Really Do That For?</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=4077a8c4-22f0-4250-aefb-2d2fed4f7250</guid>
      <link>http://www.gregcons.com/KateBlog/HowLongCouldYouReallyDoThatFor.aspx</link>
      <pubDate>Mon, 08 Mar 2021 17:44:25 GMT</pubDate>
      <description>&lt;p&gt;
I’ve been thinking lately about a lesson I saw taught in a martial arts class over
a decade ago. A young student was misbehaving. I knew this kid from field trips and
other school activities, and he was doing typical things for him – not paying attention,
calling out funny responses from the back row, making faces and showing off, that
sort of thing. He was always a little difficult to manage but this particular day
he was worse than usual. One of the instructors stopped the class and took the boy
aside from the group. He picked up a lightweight rattan sword. They use these for
practice – they’re very light, and they are made of several light sticks bundled together.
They make a loud clattery noise when they hit, and use up most of the energy doing
that, so they don’t hurt. They weigh very little. 
&lt;/p&gt;
&lt;p&gt;
The instructor got the student to sit or kneel, and hold his hands out straight in
front of him at shoulder height. Then he held out the sword and asked the student
to take it with both hands, holding the sword and his arms all parallel to the floor.
Simple. You could do the same thing yourself right now with a ruler or a pencil or
anything else rigid and lightweight. It’s trivial to hold your arms extended, elbows
locked, hands a fixed distance apart (because they’re holding something that doesn’t
bend or stretch.) Easy, right? By now everyone was watching to see what the actual
punishment was going to be. Would the instructor now hit the student, or demand they
do something difficult? (It was common in that class to assign pushups for misbehaviour,
and I adopted the habit myself, giving my kids pushups in the grocery store if they
were driving me crazy.) But no, the instructor just stepped back and said “just hold
that as long as you can.” The kid grinned. Everyone else looked puzzled. It was trivially
easy to do. 
&lt;/p&gt;
&lt;p&gt;
But if you try this yourself, you’ll soon discover that very quickly it gets harder.
It starts to really hurt after just a few minutes. If you’re stubborn and you grit
your teeth, you can keep going. This student was very stubborn. After a while though,
his arms would occasionally droop down. “Either put it down or keep it up! Shoulder
height! Arms straight!” the instructor would call and the student would try again
and manage to get back into position. Eventually he was clearly in distress. The instructor
told him “you can put it down whenever you want” but it was quite a while before he
did. His muscles were clearly very sore. 
&lt;/p&gt;
&lt;p&gt;
On that day, the instructor didn’t explicitly close the loop. He seemed content to
have found a way to get through to this student that classes were not his to disrupt
and there were things the instructors could do that the student didn’t like. But years
later, I saw a larger lesson in the choice of that particular exercise. Lifting that
light sword (or the pencil or ruler you tried this with) is nothing. It’s really nothing
at all. No effort. Anyone can do it. And at first, holding it is nothing also. If
you had never lifted a pencil before, and you met someone who was struggling after
holding one for many minutes, and you tried lifting a pencil yourself, you would be
really puzzled. “Why are you complaining? This is super easy. There’s nothing to it!
Anyone can do it!” The student’s misbehaviour was like this. Each little thing – the
funny comment, the silly face, doing the move backwards – was in itself nothing. Easy
to deal with or ignore. Not a problem. But enough of them add up. Just like the time
holding the light weight. It becomes hard. It becomes painful. It becomes unbearable. 
&lt;/p&gt;
&lt;p&gt;
I really urge you to try this. How long can you hold the pencil or ruler out before
you start to feel an effort? Before it hurts? Before you physically cannot do it any
longer? Try predicting these times and then doing it. 
&lt;/p&gt;
&lt;p&gt;
The world is full of things that are trivial and nothing if you only experience them
once, or once a decade, for a few minutes. It can be nearly impossible to imagine
that these trivial things could ever add up to something painful. In 1970 (yes! 50
years ago!) a university professor coined the term &lt;a href="https://en.wikipedia.org/wiki/Microaggression"&gt;microaggression &lt;/a&gt;for
tiny moments of “you don’t belong” aimed at racial minorities, disabled people, women
in male-dominated industries, gay people, and so on. People who haven’t experienced
a steady diet of “you don’t belong”, however mild, often literally cannot imagine
how it could add up to something painful. Sure, maybe you wince for a moment when
someone assumes a group of developers are all male, or all straight, but it’s no big
deal, right, and I’m sure the women know that when we say “men” we mean everyone,
and the gay people know that when we say “wife” we mean wife, husband, partner, whatever.
On its own, one tiny moment of “the only people I have to consider are X” is a little
needle for people who aren’t X, but it’s such a tiny needle, who would complain, who
would object, there was no nasty intent. Think about holding your arms out for 10
or 15 minutes and then think again about exclusionary language, policies that assume
only married people have children, asking people “where are you from”, telling someone
“you don’t look like a software developer”, making jokes about people’s weight or
appearance, and all those tiny tiny little things that are nothing once, but that
truly genuinely add up over time to real pain. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
And then ask yourself: if it really doesn’t matter whether you say “men” or “people”,
then why is it so important you keep saying “men”? That sounds like it actually does
matter after all. If it’s no big deal and of course we all know that there are people
who differ from you in some way, why are you not prepared to do the work of talking
as though such people exist, instead asking them to do all the work of translating
your literal words into what you probably meant, or would have meant if you had thought
about it? How can you lessen some of the pain and effort other people have to put
in all day, every day, day after day? It will be no big deal to you, right? 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=4077a8c4-22f0-4250-aefb-2d2fed4f7250" /&gt;</description>
      <category>Consulting Life</category>
      <category>Mentoring</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=69b59f66-563f-4178-bbd5-47ff9c53ca36</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=69b59f66-563f-4178-bbd5-47ff9c53ca36</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
A lot of people say often "if you're comfortable, you're not learning", "the only
way to grow is to get out of your comfort zone", "don't expect to enjoy changing yourself"
and the like.
</p>
        <p>
And you know what? This is wrong. Sure, sometimes when you're doing a new thing you
don't know how to do, it feels weird and scary and you're a little embarrassed and
a little lost. But not all learning is like that. Sometimes learning a new thing is
joyful and exhilarating and marvelous. Sometimes you have a teacher who is reassuring
and supportive, sometimes you're just discovering connections and trying things that
work and it's just fantastic. Don't tell those people they're not learning! <b>Learning
can be one of the most pleasant and wonderful things we do.</b> I try to live my life
that way both while I'm learning and while I'm teaching.
</p>
        <p>
I think it's some sort of leftover Calvinist thing: we're not supposed to like work,
we're not supposed to find joy in good things, we're supposed to push ourselves and
do them even though they're horrible. Think of sayings like "No pain, no gain", "Feel
the burn", or "They call it work for a reason." Sure, some stuff is difficult and
you don't really want to do it but you do it anyway because it's important, or you
said you would, or someone's paying you, or you know you want the end result of it.
But some stuff is fun and joyful and delightful and you do it with happiness and it's
still important, still something you said you'd do, you still get paid, and you still
get the end result. I remember teaching someone some stretching exercises and they
said with complete surprise "I like doing these! I thought exercise was supposed to
be horrible!"
</p>
        <p>
How would it change your learning if you let yourself enjoy it? If you let go of the
idea that learning only happens in discomfort? If you could feel yourself improving
at whatever you're learning and enjoy that?
</p>
        <p>
But that's not the worst of it. Yes, people are missing out on a ton of joy that they
could tap by just sitting up and thinking "hey, I really like my work. learning this
stuff is super fun. Wow, what a great time I'm having." But on top of that, there
are a pile of "teachers" who basically make you feel bad, and if you object they say
you're resisting learning. Fitness instructors who literally make the fat people cry
while exercising, because "that's the only way they will change what they've been
doing." Activists and influencers and everyone who wants to change your opinion starting
with upsetting you and keeping you upset. "hey, don't blame me. If you're comfortable,
you're not learning." "If you're happy, you're not growing." First, that's not true.
And second, it doesn't then follow that if you make me uncomfortable or unhappy I
magically grow and learn. You need to focus on teaching, leading, inspiring, educating,
showing, demonstrating, and modelling.
</p>
        <p>
Yes, I may feel clumsy as I learn a new technical skill, lost as I try to understand
new facts, embarrassed as I realize things I did wrong in the past. When those come
as a side effect of learning, I need to embrace them because discomfort can be part
of learning and growing. But there isn't some short cut where you tell me I'm horrible,
say things to upset me, and claim that upsetting me is proof you're a great teacher. <b>It's
not.</b> There is no need for you to actively try to put me in a bad place. Sure,
I may need to be ok with feeling bad as part of learning. But yelling at me, telling
me I am not good enough, speaking roughly to me -- these aren't teaching skills. They're
psychological tricks and I am not ok with them. Perhaps you truly believe it's important
to cry in order to learn. Well, you're wrong. 
</p>
        <p>
I'm not saying everyone has to centre my happiness to teach me. What I am saying is
that some teachers (and I have names) claim they don't care if they upset others,
but that's a lie: they do care. Step 1 is to upset the learners. It's their trick
to get people to listen, or to let themselves feel important, or to say they have
changed a person by making them feel bad. If you meet a teacher like this, whether
it's a fitness trainer, a culture improver at your workplace, a twitter influencer,
a tech trainer, or a conference speaker, walk away. You can find someone to learn
from who won't emotionally manipulate you as part of the process. You can learn in
comfort, or in the discomfort that comes from realizing you have a lot to learn; you're
not obliged to learn in artificial discomfort imposed by someone who thinks it makes
them a better teacher to do that to you.
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=69b59f66-563f-4178-bbd5-47ff9c53ca36" />
      </body>
      <title>Teaching by making people uncomfortable</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=69b59f66-563f-4178-bbd5-47ff9c53ca36</guid>
      <link>http://www.gregcons.com/KateBlog/TeachingByMakingPeopleUncomfortable.aspx</link>
      <pubDate>Sat, 20 Feb 2021 16:08:23 GMT</pubDate>
      <description>&lt;p&gt;
A lot of people say often "if you're comfortable, you're not learning", "the only
way to grow is to get out of your comfort zone", "don't expect to enjoy changing yourself"
and the like.
&lt;/p&gt;
&lt;p&gt;
And you know what? This is wrong. Sure, sometimes when you're doing a new thing you
don't know how to do, it feels weird and scary and you're a little embarrassed and
a little lost. But not all learning is like that. Sometimes learning a new thing is
joyful and exhilarating and marvelous. Sometimes you have a teacher who is reassuring
and supportive, sometimes you're just discovering connections and trying things that
work and it's just fantastic. Don't tell those people they're not learning! &lt;b&gt;Learning
can be one of the most pleasant and wonderful things we do.&lt;/b&gt; I try to live my life
that way both while I'm learning and while I'm teaching.
&lt;/p&gt;
&lt;p&gt;
I think it's some sort of leftover Calvinist thing: we're not supposed to like work,
we're not supposed to find joy in good things, we're supposed to push ourselves and
do them even though they're horrible. Think of sayings like "No pain, no gain", "Feel
the burn", or "They call it work for a reason." Sure, some stuff is difficult and
you don't really want to do it but you do it anyway because it's important, or you
said you would, or someone's paying you, or you know you want the end result of it.
But some stuff is fun and joyful and delightful and you do it with happiness and it's
still important, still something you said you'd do, you still get paid, and you still
get the end result. I remember teaching someone some stretching exercises and they
said with complete surprise "I like doing these! I thought exercise was supposed to
be horrible!"
&lt;/p&gt;
&lt;p&gt;
How would it change your learning if you let yourself enjoy it? If you let go of the
idea that learning only happens in discomfort? If you could feel yourself improving
at whatever you're learning and enjoy that?
&lt;/p&gt;
&lt;p&gt;
But that's not the worst of it. Yes, people are missing out on a ton of joy that they
could tap by just sitting up and thinking "hey, I really like my work. learning this
stuff is super fun. Wow, what a great time I'm having." But on top of that, there
are a pile of "teachers" who basically make you feel bad, and if you object they say
you're resisting learning. Fitness instructors who literally make the fat people cry
while exercising, because "that's the only way they will change what they've been
doing." Activists and influencers and everyone who wants to change your opinion starting
with upsetting you and keeping you upset. "hey, don't blame me. If you're comfortable,
you're not learning." "If you're happy, you're not growing." First, that's not true.
And second, it doesn't then follow that if you make me uncomfortable or unhappy I
magically grow and learn. You need to focus on teaching, leading, inspiring, educating,
showing, demonstrating, and modelling.
&lt;/p&gt;
&lt;p&gt;
Yes, I may feel clumsy as I learn a new technical skill, lost as I try to understand
new facts, embarrassed as I realize things I did wrong in the past. When those come
as a side effect of learning, I need to embrace them because discomfort can be part
of learning and growing. But there isn't some short cut where you tell me I'm horrible,
say things to upset me, and claim that upsetting me is proof you're a great teacher. &lt;b&gt;It's
not.&lt;/b&gt; There is no need for you to actively try to put me in a bad place. Sure,
I may need to be ok with feeling bad as part of learning. But yelling at me, telling
me I am not good enough, speaking roughly to me -- these aren't teaching skills. They're
psychological tricks and I am not ok with them. Perhaps you truly believe it's important
to cry in order to learn. Well, you're wrong. 
&lt;/p&gt;
&lt;p&gt;
I'm not saying everyone has to centre my happiness to teach me. What I am saying is
that some teachers (and I have names) claim they don't care if they upset others,
but that's a lie: they do care. Step 1 is to upset the learners. It's their trick
to get people to listen, or to let themselves feel important, or to say they have
changed a person by making them feel bad. If you meet a teacher like this, whether
it's a fitness trainer, a culture improver at your workplace, a twitter influencer,
a tech trainer, or a conference speaker, walk away. You can find someone to learn
from who won't emotionally manipulate you as part of the process. You can learn in
comfort, or in the discomfort that comes from realizing you have a lot to learn; you're
not obliged to learn in artificial discomfort imposed by someone who thinks it makes
them a better teacher to do that to you.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=69b59f66-563f-4178-bbd5-47ff9c53ca36" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=6a18a224-fae6-43a0-be15-4dae9909abc7</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6a18a224-fae6-43a0-be15-4dae9909abc7</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/podcast-art-300x300.jpg" border="0" />
          <img src="http://www.gregcons.com/KateBlog/content/binary/untitled[1].png" width="300" border="0" />
        </p>
        <p>
A little while ago, I recorded a chat with Adam Bell for the <a href="https://corecursive.com/">CoRecursive
podcast</a>. <a href="https://corecursive.com/memento-mori-with-kate-gregory/">My
episode</a> is now published, and it's good. There's a <a href="https://corecursive.com/056-memento-mori-with-kate-gregory/">transcript</a>,
which needs some help (C++ apparently sounds like syphilis to machine transcription),
but will give you an idea of the topics we covered so you can decide to listen. It's
definitely a conversation to listen to, with tone of voice and laughter and such being
more important than in say, how to write generic lambdas or some other technical topic.
</p>
        <p>
We basically elaborated on the 5 tips I covered in a <a href="https://www.youtube.com/watch?v=ARosL9xrozk&amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;index=20&amp;t=0s">lightning
talk at Meeting C++ 2017</a>, while I was still receiving treatment but knew that
it was working and I wasn't dying after all. So the focus is on how to do your work
and manage your time more than on anything specifically C++-related. We also talked
a little about <a href="https://www.includecpp.org/">#include &lt;C++&gt;</a> and
the culture of this industry, and what I (with some friends) am trying to do about
that.
</p>
        <p>
Take a listen, and I hope you enjoy it.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6a18a224-fae6-43a0-be15-4dae9909abc7" />
      </body>
      <title>My CoRecursive episode is live</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6a18a224-fae6-43a0-be15-4dae9909abc7</guid>
      <link>http://www.gregcons.com/KateBlog/MyCoRecursiveEpisodeIsLive.aspx</link>
      <pubDate>Wed, 02 Sep 2020 12:26:16 GMT</pubDate>
      <description>&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/podcast-art-300x300.jpg" border="0"&gt; &lt;img src="http://www.gregcons.com/KateBlog/content/binary/untitled[1].png" width="300" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
A little while ago, I recorded a chat with Adam Bell for the &lt;a href="https://corecursive.com/"&gt;CoRecursive
podcast&lt;/a&gt;. &lt;a href="https://corecursive.com/memento-mori-with-kate-gregory/"&gt;My
episode&lt;/a&gt; is now published, and it's good. There's a &lt;a href="https://corecursive.com/056-memento-mori-with-kate-gregory/"&gt;transcript&lt;/a&gt;,
which needs some help (C++ apparently sounds like syphilis to machine transcription),
but will give you an idea of the topics we covered so you can decide to listen. It's
definitely a conversation to listen to, with tone of voice and laughter and such being
more important than in say, how to write generic lambdas or some other technical topic.
&lt;/p&gt;
&lt;p&gt;
We basically elaborated on the 5 tips I covered in a &lt;a href="https://www.youtube.com/watch?v=ARosL9xrozk&amp;amp;list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE&amp;amp;index=20&amp;amp;t=0s"&gt;lightning
talk at Meeting C++ 2017&lt;/a&gt;, while I was still receiving treatment but knew that
it was working and I wasn't dying after all. So the focus is on how to do your work
and manage your time more than on anything specifically C++-related. We also talked
a little about &lt;a href="https://www.includecpp.org/"&gt;#include &amp;lt;C++&amp;gt;&lt;/a&gt; and
the culture of this industry, and what I (with some friends) am trying to do about
that.
&lt;/p&gt;
&lt;p&gt;
Take a listen, and I hope you enjoy it.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6a18a224-fae6-43a0-be15-4dae9909abc7" /&gt;</description>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=8fb90aca-fa32-4b7a-bf62-74b1d6ed7ce1</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=8fb90aca-fa32-4b7a-bf62-74b1d6ed7ce1</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div>This year is very strange, but conferences are still happening. And they aren't
all free, either. Perhaps there's a conference you'd like to go to, and being online
makes it almost feasible for you, but you can't afford the conference fee? If you're
a member of an under-represented group in C++, you might win a scholarship to <a href="https://cpponsea.uk/">C++
on Sea</a> in July or <a href="https://cppeurope.com/">CppEurope</a> in just two weeks.
(I'm speaking at C++ on Sea, so if you win, you'll hear my talk.) The scholarships
are arranged by <a href="https://www.includecpp.org">#include &lt;C++&gt;</a> and <a href="https://www.includecpp.org/conferences/scholarships/">the
application process</a> is pretty easy. Please let us know a little about your background:
perhaps you're part of a gender minority,  a racial minority, or in some way
you feel that there are less people like you in C++ than there are in the world. If
you work somewhere that pays to send you to conferences, this isn't the program for
you: this is for people who maybe aren't working, or who are working somewhere that
sends other team members to conferences, but not you. Your application should show
us that, so we can decide to send you.
</div>
        <div>
          <br />
        </div>
        <div>More details, including a list of conferences we've sent applicants to in the
past, and testimonials from recipients, are on <a href="https://www.includecpp.org/conferences/scholarships/">the
scholarship page</a>. 
<br /></div>
        <div>
          <br />
        </div>
        <div>Want to contribute? We're ok for these two conferences. But when face to face
conferences start again, we'll be raising money for admissions, plane tickets, hotel
rooms, and all the other costs that keep people away from the life changing and career
changing benefits of conferences. Remember our site for when that is necessary.
</div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=8fb90aca-fa32-4b7a-bf62-74b1d6ed7ce1" />
      </body>
      <title>Scholarships for Online C++ Conferences</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=8fb90aca-fa32-4b7a-bf62-74b1d6ed7ce1</guid>
      <link>http://www.gregcons.com/KateBlog/ScholarshipsForOnlineCConferences.aspx</link>
      <pubDate>Tue, 09 Jun 2020 22:22:16 GMT</pubDate>
      <description>&lt;div&gt;This year is very strange, but conferences are still happening. And they aren't
all free, either. Perhaps there's a conference you'd like to go to, and being online
makes it almost feasible for you, but you can't afford the conference fee? If you're
a member of an under-represented group in C++, you might win a scholarship to &lt;a href="https://cpponsea.uk/"&gt;C++
on Sea&lt;/a&gt; in July or &lt;a href="https://cppeurope.com/"&gt;CppEurope&lt;/a&gt; in just two weeks.
(I'm speaking at C++ on Sea, so if you win, you'll hear my talk.) The scholarships
are arranged by &lt;a href="https://www.includecpp.org"&gt;#include &amp;lt;C++&amp;gt;&lt;/a&gt; and &lt;a href="https://www.includecpp.org/conferences/scholarships/"&gt;the
application process&lt;/a&gt; is pretty easy. Please let us know a little about your background:
perhaps you're part of a gender minority,&amp;nbsp; a racial minority, or in some way
you feel that there are less people like you in C++ than there are in the world. If
you work somewhere that pays to send you to conferences, this isn't the program for
you: this is for people who maybe aren't working, or who are working somewhere that
sends other team members to conferences, but not you. Your application should show
us that, so we can decide to send you.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;More details, including a list of conferences we've sent applicants to in the
past, and testimonials from recipients, are on &lt;a href="https://www.includecpp.org/conferences/scholarships/"&gt;the
scholarship page&lt;/a&gt;. 
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Want to contribute? We're ok for these two conferences. But when face to face
conferences start again, we'll be raising money for admissions, plane tickets, hotel
rooms, and all the other costs that keep people away from the life changing and career
changing benefits of conferences. Remember our site for when that is necessary.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=8fb90aca-fa32-4b7a-bf62-74b1d6ed7ce1" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=9bf21940-cf06-4e9e-afb8-e1d73371212f</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9bf21940-cf06-4e9e-afb8-e1d73371212f</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Lately a lot of people have been asking me for help as they write C++ code. I’m usually
happy and able to help. There are times, though, when I either cannot help, or choose
not to help. I thought it might be helpful to explain some of these a little. It’s
quite likely that other members of the community have a similar set of guidelines
in their heads for when they do and don’t help people with code.
</p>
        <p>
Warning: this is long. I think it's worth reading it all. You want a <strong>TL;DR</strong>?
It’s this: <strong>if you want free mentoring and consulting from successful people,
you can have it!</strong> All you need to do is ask. But if you expect your helpers
to do most of the work in helping you, and to take instruction and direction from
you, you’re going to get a lot less help than if you know how to be helped effectively.
</p>
        <p>
The first choice is where and how you ask. People often email me, message me on LinkedIn,
DM me on Twitter, DM me on the <a href="https://www.includecpp.org/">#include &lt;C++&gt;</a> Discord,
and so on hoping to get personalized, instant, one-on-one help from me. That’s not
a good use of my time. I prefer to help in places where others will see the question
and the answer. That helps more people. It also enables more people to help – so it
produces better advice as well as helping those people learn and grow. Often, I learn
from the times when other people chime in. So I encourage you to post on StackOverflow
(if you have the sort of just-one-question, just-one-right-answer problem that fits
there), or on the <a href="https://www.includecpp.org/discord/">#include &lt;C++&gt;
Discord</a>, or some other public place where a number of people can see the question
and the answer over time.
</p>
        <p>
The rest of the issues have to do with how much work the person expects me to do,
or how much they save me. Think about how you ask the very first thing you ask. Compare
“here is a zip of all the files in my project can you tell me what’s wrong with it?”
to “here is a link to an online compiler (Godbolt, wandbox, etc) showing a compiler
error on line 43 that I don’t understand. Can you tell me how to fix that error?”
Expecting someone to install things, trawl through multiple files, guess your question,
and then solve your problem and explain it all to you is really too much. At least
tell people what your problem is! Often people ask for help saying something like
“it’s not working” or “what’s wrong with this?” and I don’t even know if it’s a compiler
error or a runtime error or running fine but calculating the wrong answer. So before
you post on the discord, for example, try to have a single crisp question, not just
“help, it’s not working.” 
</p>
        <ul>
          <li>
Show us your code, and your errors. And not as screenshots! You can copy the code
into an online compiler like Godbolt or Wandbox, or if it’s less than 20 lines or
so, paste it into the chat window – but please learn how to <a href="https://support.discord.com/hc/en-us/articles/210298617-Markdown-Text-101-Chat-Formatting-Bold-Italic-Underline-">format
it as code</a> when you do that. Copy and paste the errors as text. That makes them
much easier to read, and lets us copy and paste parts of them while explaining things
to you. If you can’t show your real code because of how big it is or because it’s
work-related, create a tiny example that shows the same problem and show us that. <a href="https://stackoverflow.com/help/minimal-reproducible-example">Stack
Overflow has some tips</a> on how to do that.  Whatever you do, do not free-type
some code into the chat window that you think is the same as your problem, and then
whenever people point out missing semi colons or undeclared variables, reply “oh yeah,
that’s not really my code it’s just something I typed to give you the general idea.”
Compilers (and runtimes) are picky and asking for help with something that’s vaguely
like your real code (but not really) is pointless.</li>
        </ul>
        <p>
Now let’s assume you manage to get a conversation going with someone who is trying
to help you. They solved that compiler error, for example, but now you have another
one. As part of this process, I often make suggestions to people that they reject.
I think they believe the suggestions are to make things easier for themselves in the
long run, because they say things like “I can do that once it’s working.” I then have
to spend a lot of effort explaining that I want them to do these things so that I
can help them get it working. These suggestions include:
</p>
        <ul>
          <li>
Write good variable (and function) names. If your variables are all called i, n, c,
r, s, and so on – I don’t know what they represent. If I ask you to change those to
words like next, rate, total, and so on, or to words you think of yourself, that’s
because I can’t understand your code (I don’t know the problem you’re trying to solve)
without some help. Good names aren’t a someday thing that you paint over working code
once it’s all good. They are how you make code other people can read. And you’re asking
me to read this code. Make it readable.</li>
          <li>
Use a debugger. When I ask “have you looked in the debugger to see the value of a
before the loop?” an answer of “I don’t know how to use the debugger and I don’t have
time to learn that today” is a great way to end our conversation. Real programmers
use the debugger. We don’t have some magical compiler-simulator in our heads that
can read code and tell you if it compiles or not, and we don’t have a magical runtime-simulator
either. Sure, maybe I can tell at a glance that a is 0 before the loop and that’s
why it’s not working, but in that case I would tell you so. It’s more likely that
I want you to quickly check and see if it’s 0 or not. When you refuse to debug, you’re
making it so much harder to help you. You need to learn to use whatever debugger is
available to you, and you will probably save enough time today to make up for the
time it takes to learn it.</li>
          <li>
Add some tests. You don’t have to go learn a whole unit testing framework. But if
you’re writing a function to do whatever, work out by hand what it does for simple
values, and write a test harness that passes it those simple values. Then you can
debug the test harness and see what the function returns and confirm whether or not
it works for simple values. Whether you’re reversing a string in place, calculating
the Fibonacci sequence, calculating sums of things, whatever, you should be able to
think up simple test cases and test your code with them. And eventually, you should
be writing tests as you write your code. It’s a good habit you can build now.</li>
          <li>
Break up big things. You don’t have to embrace full OO or write functional programs,
but don’t give me 1000 lines of code and ask me to load it into my head. Write some
functions. Heck, throw in some comments and some blank lines. Show the structure of
your code so it’s not a wall of text.</li>
        </ul>
Some other good behaviours that will take you a long way:<p></p><ul><li>
Try the substitutions people tell you to try. A lot of times, people who are having
a hard time don’t want to learn a new thing. I run into that situation all the time
myself. I’m already frustrated and I’ve spent longer than I meant to and I can’t understand
any of it, I don’t want you to tell me to go learn yet another thing right now. I
have gained some wisdom over the years though, and it includes this: sometimes jettisoning
all that half-understood not-really-working mess and doing something simpler is the
best way forward. If someone tells you that vector would be better here, and offers
you a few lines of code to use, just digging in your heels and refusing to try it
isn’t going to lead you into learning. If you’ve got a problem because you’re trying
to manage memory yourself by hand but you forgot about copying and so on, then using
a smart pointer, or dropping the pointers altogether and using an object on the stack,
is going to make a whole pile of work just fall away. The person advising you to try
this knows how much effort it will save. You don’t, that’s why you came for help.
It’s really frustrating to see a beginner insist on doing something the hard way (for
no benefit), do it wrong, and refuse to accept any help other than “here is the precise
and exact code to do that thing the hard way.” I don’t want to do things the hard
way any more: why would I type out all the code for you?</li><li>
Try things that don’t matter to you, if the person who is helping you tells you that
your code is harder to read the way you have it. Things like initializing member variables
in a constructor with the : syntax, not between the braces, or adding some using statements
– these may not matter to you, but making things too hard for a busy helper may mean
that helper is too busy to help today. Or ever. I don’t want to teach you bad habits,
I don’t want to teach you to “pretty things up” only once it’s working, and I don’t
want to exhaust myself reading difficult code to spare you the trouble of doing the
right thing. Also, when a person asks for advice but never takes any of it because
they’re sure it’s not actually relevant to their problem, eventually the advice-giver
will stop giving it. It’s pointless.</li><li>
Write your own code. If I tell you “the problem is that you’re not initializing x”
don’t ask me to edit your code for you or paste in the new version of the function
or whatever. You need to understand what you’re doing and that comes from writing
the code yourself. If you don’t understand how to fix a problem that someone has told
you about, ask them “how do I fix that?” If you can’t understand their answer, say
“I don’t know what [whatever] is, can you explain it or show me?” Don’t just ask “what
would that line of code look like?” That feels like you’re asking me to even do the
typing for you.</li><li>
Work with whoever is talking to you. Maybe when you first ask, one person has a couple
of thoughts, and those are good, but while you’re changing your code to see if that
works, someone else chimes in. That’s great. It’s a group chat. Don’t tell them that
you’re working with the first person or anything like that to reject their help. Consider
all the suggestions you get. If you’re talking to someone and then they stop, that’s
cool too. Many people pop into chat for 5 or 10 minutes waiting for a conference call
to start, or while they’re eating lunch, and don’t stay long. People get called away
from their keyboards. Don’t start pinging the person trying to bring them back or
ask if they have any more thoughts or saying you’re still stuck. You can tell the
room or channel as a whole that you’re still stuck. Maybe someone else will have some
ideas. Your problem may end up solved over an hour or so with three different people.
That’s a win! 
</li></ul><p>
I know, that’s a lot of advice. Thing is, you can get a lot of help from strangers
on the internet, if you ask the right way. If you ask the wrong way, most people will
just shrug and say “looks like you have a problem” and move along. They won’t even
tell you why they’re not helping you! To get the marvelous free help, and to truly
join the community, you have to put in a little effort. Trust me, it’s worth it!
</p><p>
Kate<br /></p><img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9bf21940-cf06-4e9e-afb8-e1d73371212f" /></body>
      <title>How to ask for C++ coding help</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9bf21940-cf06-4e9e-afb8-e1d73371212f</guid>
      <link>http://www.gregcons.com/KateBlog/HowToAskForCCodingHelp.aspx</link>
      <pubDate>Thu, 28 May 2020 20:26:40 GMT</pubDate>
      <description>&lt;p&gt;
Lately a lot of people have been asking me for help as they write C++ code. I’m usually
happy and able to help. There are times, though, when I either cannot help, or choose
not to help. I thought it might be helpful to explain some of these a little. It’s
quite likely that other members of the community have a similar set of guidelines
in their heads for when they do and don’t help people with code.
&lt;/p&gt;
&lt;p&gt;
Warning: this is long. I think it's worth reading it all. You want a &lt;strong&gt;TL;DR&lt;/strong&gt;?
It’s this: &lt;strong&gt;if you want free mentoring and consulting from successful people,
you can have it!&lt;/strong&gt; All you need to do is ask. But if you expect your helpers
to do most of the work in helping you, and to take instruction and direction from
you, you’re going to get a lot less help than if you know how to be helped effectively.
&lt;/p&gt;
&lt;p&gt;
The first choice is where and how you ask. People often email me, message me on LinkedIn,
DM me on Twitter, DM me on the &lt;a href="https://www.includecpp.org/"&gt;#include &amp;lt;C++&amp;gt;&lt;/a&gt; Discord,
and so on hoping to get personalized, instant, one-on-one help from me. That’s not
a good use of my time. I prefer to help in places where others will see the question
and the answer. That helps more people. It also enables more people to help – so it
produces better advice as well as helping those people learn and grow. Often, I learn
from the times when other people chime in. So I encourage you to post on StackOverflow
(if you have the sort of just-one-question, just-one-right-answer problem that fits
there), or on the &lt;a href="https://www.includecpp.org/discord/"&gt;#include &amp;lt;C++&amp;gt;
Discord&lt;/a&gt;, or some other public place where a number of people can see the question
and the answer over time.
&lt;/p&gt;
&lt;p&gt;
The rest of the issues have to do with how much work the person expects me to do,
or how much they save me. Think about how you ask the very first thing you ask. Compare
“here is a zip of all the files in my project can you tell me what’s wrong with it?”
to “here is a link to an online compiler (Godbolt, wandbox, etc) showing a compiler
error on line 43 that I don’t understand. Can you tell me how to fix that error?”
Expecting someone to install things, trawl through multiple files, guess your question,
and then solve your problem and explain it all to you is really too much. At least
tell people what your problem is! Often people ask for help saying something like
“it’s not working” or “what’s wrong with this?” and I don’t even know if it’s a compiler
error or a runtime error or running fine but calculating the wrong answer. So before
you post on the discord, for example, try to have a single crisp question, not just
“help, it’s not working.” 
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Show us your code, and your errors. And not as screenshots! You can copy the code
into an online compiler like Godbolt or Wandbox, or if it’s less than 20 lines or
so, paste it into the chat window – but please learn how to &lt;a href="https://support.discord.com/hc/en-us/articles/210298617-Markdown-Text-101-Chat-Formatting-Bold-Italic-Underline-"&gt;format
it as code&lt;/a&gt; when you do that. Copy and paste the errors as text. That makes them
much easier to read, and lets us copy and paste parts of them while explaining things
to you. If you can’t show your real code because of how big it is or because it’s
work-related, create a tiny example that shows the same problem and show us that. &lt;a href="https://stackoverflow.com/help/minimal-reproducible-example"&gt;Stack
Overflow has some tips&lt;/a&gt; on how to do that.&amp;nbsp; Whatever you do, do not free-type
some code into the chat window that you think is the same as your problem, and then
whenever people point out missing semi colons or undeclared variables, reply “oh yeah,
that’s not really my code it’s just something I typed to give you the general idea.”
Compilers (and runtimes) are picky and asking for help with something that’s vaguely
like your real code (but not really) is pointless.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Now let’s assume you manage to get a conversation going with someone who is trying
to help you. They solved that compiler error, for example, but now you have another
one. As part of this process, I often make suggestions to people that they reject.
I think they believe the suggestions are to make things easier for themselves in the
long run, because they say things like “I can do that once it’s working.” I then have
to spend a lot of effort explaining that I want them to do these things so that I
can help them get it working. These suggestions include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Write good variable (and function) names. If your variables are all called i, n, c,
r, s, and so on – I don’t know what they represent. If I ask you to change those to
words like next, rate, total, and so on, or to words you think of yourself, that’s
because I can’t understand your code (I don’t know the problem you’re trying to solve)
without some help. Good names aren’t a someday thing that you paint over working code
once it’s all good. They are how you make code other people can read. And you’re asking
me to read this code. Make it readable.&lt;/li&gt;
&lt;li&gt;
Use a debugger. When I ask “have you looked in the debugger to see the value of a
before the loop?” an answer of “I don’t know how to use the debugger and I don’t have
time to learn that today” is a great way to end our conversation. Real programmers
use the debugger. We don’t have some magical compiler-simulator in our heads that
can read code and tell you if it compiles or not, and we don’t have a magical runtime-simulator
either. Sure, maybe I can tell at a glance that a is 0 before the loop and that’s
why it’s not working, but in that case I would tell you so. It’s more likely that
I want you to quickly check and see if it’s 0 or not. When you refuse to debug, you’re
making it so much harder to help you. You need to learn to use whatever debugger is
available to you, and you will probably save enough time today to make up for the
time it takes to learn it.&lt;/li&gt;
&lt;li&gt;
Add some tests. You don’t have to go learn a whole unit testing framework. But if
you’re writing a function to do whatever, work out by hand what it does for simple
values, and write a test harness that passes it those simple values. Then you can
debug the test harness and see what the function returns and confirm whether or not
it works for simple values. Whether you’re reversing a string in place, calculating
the Fibonacci sequence, calculating sums of things, whatever, you should be able to
think up simple test cases and test your code with them. And eventually, you should
be writing tests as you write your code. It’s a good habit you can build now.&lt;/li&gt;
&lt;li&gt;
Break up big things. You don’t have to embrace full OO or write functional programs,
but don’t give me 1000 lines of code and ask me to load it into my head. Write some
functions. Heck, throw in some comments and some blank lines. Show the structure of
your code so it’s not a wall of text.&lt;/li&gt;
&lt;/ul&gt;
Some other good behaviours that will take you a long way:&lt;p&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Try the substitutions people tell you to try. A lot of times, people who are having
a hard time don’t want to learn a new thing. I run into that situation all the time
myself. I’m already frustrated and I’ve spent longer than I meant to and I can’t understand
any of it, I don’t want you to tell me to go learn yet another thing right now. I
have gained some wisdom over the years though, and it includes this: sometimes jettisoning
all that half-understood not-really-working mess and doing something simpler is the
best way forward. If someone tells you that vector would be better here, and offers
you a few lines of code to use, just digging in your heels and refusing to try it
isn’t going to lead you into learning. If you’ve got a problem because you’re trying
to manage memory yourself by hand but you forgot about copying and so on, then using
a smart pointer, or dropping the pointers altogether and using an object on the stack,
is going to make a whole pile of work just fall away. The person advising you to try
this knows how much effort it will save. You don’t, that’s why you came for help.
It’s really frustrating to see a beginner insist on doing something the hard way (for
no benefit), do it wrong, and refuse to accept any help other than “here is the precise
and exact code to do that thing the hard way.” I don’t want to do things the hard
way any more: why would I type out all the code for you?&lt;/li&gt;
&lt;li&gt;
Try things that don’t matter to you, if the person who is helping you tells you that
your code is harder to read the way you have it. Things like initializing member variables
in a constructor with the : syntax, not between the braces, or adding some using statements
– these may not matter to you, but making things too hard for a busy helper may mean
that helper is too busy to help today. Or ever. I don’t want to teach you bad habits,
I don’t want to teach you to “pretty things up” only once it’s working, and I don’t
want to exhaust myself reading difficult code to spare you the trouble of doing the
right thing. Also, when a person asks for advice but never takes any of it because
they’re sure it’s not actually relevant to their problem, eventually the advice-giver
will stop giving it. It’s pointless.&lt;/li&gt;
&lt;li&gt;
Write your own code. If I tell you “the problem is that you’re not initializing x”
don’t ask me to edit your code for you or paste in the new version of the function
or whatever. You need to understand what you’re doing and that comes from writing
the code yourself. If you don’t understand how to fix a problem that someone has told
you about, ask them “how do I fix that?” If you can’t understand their answer, say
“I don’t know what [whatever] is, can you explain it or show me?” Don’t just ask “what
would that line of code look like?” That feels like you’re asking me to even do the
typing for you.&lt;/li&gt;
&lt;li&gt;
Work with whoever is talking to you. Maybe when you first ask, one person has a couple
of thoughts, and those are good, but while you’re changing your code to see if that
works, someone else chimes in. That’s great. It’s a group chat. Don’t tell them that
you’re working with the first person or anything like that to reject their help. Consider
all the suggestions you get. If you’re talking to someone and then they stop, that’s
cool too. Many people pop into chat for 5 or 10 minutes waiting for a conference call
to start, or while they’re eating lunch, and don’t stay long. People get called away
from their keyboards. Don’t start pinging the person trying to bring them back or
ask if they have any more thoughts or saying you’re still stuck. You can tell the
room or channel as a whole that you’re still stuck. Maybe someone else will have some
ideas. Your problem may end up solved over an hour or so with three different people.
That’s a win! 
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
I know, that’s a lot of advice. Thing is, you can get a lot of help from strangers
on the internet, if you ask the right way. If you ask the wrong way, most people will
just shrug and say “looks like you have a problem” and move along. They won’t even
tell you why they’re not helping you! To get the marvelous free help, and to truly
join the community, you have to put in a little effort. Trust me, it’s worth it!
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9bf21940-cf06-4e9e-afb8-e1d73371212f" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Mentoring</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=43d7b240-f1ed-44bb-a88a-b96c992b2e6b</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=43d7b240-f1ed-44bb-a88a-b96c992b2e6b</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Since late February, when I returned from a personal trip to Singapore, my travel
and conference world has been shrinking in around me. Conference after conference
has been cancelled (or postponed to next year which is the same thing), moved online,
or put off to perhaps later this year. Of course, the rest of my world has also been
shrinking: for the last 8 weeks I've left the house only a handful of times, and seen
almost no-one. I'm sure it's the same for you. So it was quite a surprise to remember
that my last conference wasn't actually that long ago: the <a href="https://www.youtube.com/watch?v=jpHcrswve78">video
of it</a> has just gone live.
</p>
        <p>
This is a shortened version of Emotional Code for students, who don't all know C++
and don't all have a lot of experience with other people's code. I hope you like it.
I've also updated my <a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE">playlist</a>,
which has all the talk recordings I know about. If you're looking for conference substitutes
around now, perhaps there's a talk of mine you haven't yet seen? Take a look at it
now.
</p>
        <p>
Looking forward to in-person conferences and live audio feedback once again,<br /></p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=43d7b240-f1ed-44bb-a88a-b96c992b2e6b" />
      </body>
      <title>My CUSEC talk is uploaded</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=43d7b240-f1ed-44bb-a88a-b96c992b2e6b</guid>
      <link>http://www.gregcons.com/KateBlog/MyCUSECTalkIsUploaded.aspx</link>
      <pubDate>Wed, 06 May 2020 17:24:13 GMT</pubDate>
      <description>&lt;p&gt;
Since late February, when I returned from a personal trip to Singapore, my travel
and conference world has been shrinking in around me. Conference after conference
has been cancelled (or postponed to next year which is the same thing), moved online,
or put off to perhaps later this year. Of course, the rest of my world has also been
shrinking: for the last 8 weeks I've left the house only a handful of times, and seen
almost no-one. I'm sure it's the same for you. So it was quite a surprise to remember
that my last conference wasn't actually that long ago: the &lt;a href="https://www.youtube.com/watch?v=jpHcrswve78"&gt;video
of it&lt;/a&gt; has just gone live.
&lt;/p&gt;
&lt;p&gt;
This is a shortened version of Emotional Code for students, who don't all know C++
and don't all have a lot of experience with other people's code. I hope you like it.
I've also updated my &lt;a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE"&gt;playlist&lt;/a&gt;,
which has all the talk recordings I know about. If you're looking for conference substitutes
around now, perhaps there's a talk of mine you haven't yet seen? Take a look at it
now.
&lt;/p&gt;
&lt;p&gt;
Looking forward to in-person conferences and live audio feedback once again,&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=43d7b240-f1ed-44bb-a88a-b96c992b2e6b" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=d52b489d-f022-498f-a790-23314fbf7648</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d52b489d-f022-498f-a790-23314fbf7648</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
This week I travelled to Montreal to deliver a keynote at <a href="http://2020.cusec.net/">CUSEC
2020</a>, the Canadian University Software Engineering Conference. Everything was
nicely arranged and I happily took the train from Oshawa to Montreal, then a short
all-inside walk to the hotel where I checked in, told the organizers I was there,
and settled in for an early night. I got a light dinner from room service but oddly
could only eat half of it. Ah well, I thought, they fed us really well on the train,
I'm probably just full. No big deal. I went to sleep.
</p>
        <p>
About 10:30 I woke up and realized I needed to throw up. So I did. And did. And did.
All night. For an extended part of the night it was every 45 minutes. It was bad.
And then it got worse. Now I am not telling you this to gross you out or to overshare,
but to get you, as a possible speaker or conference organizer, to consider this possibility
if you have not done so before (I had not.) I felt perfectly normal when I left home,
and even when I first arrived in town. Whatever food poisoning or virus got me, it
hit fast and hard. When the sun finally dragged itself up over the Montreal horizon
and into my eyes, I was exhausted, having not slept all night, and pretty sure I was
not done throwing up (which it turns out I was not.) I got on Slack with my organizers
and told them I could handle being tired but actually vomiting while on stage was
a bridge too far for me. Could we switch with someone scheduled for Day 2?
</p>
        <p>
Of course we could. They did that lovely duck trick, where above the water it all
looks smooth and simple and you have no idea what amount of paddling and ruddering
is happening underwater. Someone else did an opening keynote; my keynote moved to
11 am Day 2. A much needed bottle of ginger ale appeared at my door. I spent the day
in bed and slowly returned to normal. I slept that night and did the keynote the next
day, and very much enjoyed the rest of the conference. I didn't shake hands with anyone
in case I was contagious. When the AV people started touching my laptop I gave them
hand sanitizer. 
<br /></p>
        <p>
So, if this happened to you, would you be able to come up with a plan B? Do you travel
with anti-nausea meds? (I do, for airsickness, and took some to help me sleep during
the day since they sedate me. They had no hope of working during the worst of it,
but they still had value.) Do you have a little bottle of hand sanitizer with you
all the time? (I do, and always will.) Do you know how to reach your organizers with
some urgency when you can't leave your room? Organizers, I hope you would all react
as smoothly and quickly as my CUSEC hosts did. Ellen and Afreen were ultra professional,
as was everyone else I dealt with.
</p>
        <p>
You don't want to think about it, I know. But -- you should, anyway. It doesn't take
long to have a disaster recovery plan. Swapping two keynotes was the obvious choice,
and it worked because the keynoters were staying for the whole conference not just
popping in for their morning. A little prior preparation can predict proper performance,
or something like that.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d52b489d-f022-498f-a790-23314fbf7648" />
      </body>
      <title>Dealing with Disaster</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d52b489d-f022-498f-a790-23314fbf7648</guid>
      <link>http://www.gregcons.com/KateBlog/DealingWithDisaster.aspx</link>
      <pubDate>Sun, 19 Jan 2020 18:57:59 GMT</pubDate>
      <description>&lt;p&gt;
This week I travelled to Montreal to deliver a keynote at &lt;a href="http://2020.cusec.net/"&gt;CUSEC
2020&lt;/a&gt;, the Canadian University Software Engineering Conference. Everything was
nicely arranged and I happily took the train from Oshawa to Montreal, then a short
all-inside walk to the hotel where I checked in, told the organizers I was there,
and settled in for an early night. I got a light dinner from room service but oddly
could only eat half of it. Ah well, I thought, they fed us really well on the train,
I'm probably just full. No big deal. I went to sleep.
&lt;/p&gt;
&lt;p&gt;
About 10:30 I woke up and realized I needed to throw up. So I did. And did. And did.
All night. For an extended part of the night it was every 45 minutes. It was bad.
And then it got worse. Now I am not telling you this to gross you out or to overshare,
but to get you, as a possible speaker or conference organizer, to consider this possibility
if you have not done so before (I had not.) I felt perfectly normal when I left home,
and even when I first arrived in town. Whatever food poisoning or virus got me, it
hit fast and hard. When the sun finally dragged itself up over the Montreal horizon
and into my eyes, I was exhausted, having not slept all night, and pretty sure I was
not done throwing up (which it turns out I was not.) I got on Slack with my organizers
and told them I could handle being tired but actually vomiting while on stage was
a bridge too far for me. Could we switch with someone scheduled for Day 2?
&lt;/p&gt;
&lt;p&gt;
Of course we could. They did that lovely duck trick, where above the water it all
looks smooth and simple and you have no idea what amount of paddling and ruddering
is happening underwater. Someone else did an opening keynote; my keynote moved to
11 am Day 2. A much needed bottle of ginger ale appeared at my door. I spent the day
in bed and slowly returned to normal. I slept that night and did the keynote the next
day, and very much enjoyed the rest of the conference. I didn't shake hands with anyone
in case I was contagious. When the AV people started touching my laptop I gave them
hand sanitizer. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
So, if this happened to you, would you be able to come up with a plan B? Do you travel
with anti-nausea meds? (I do, for airsickness, and took some to help me sleep during
the day since they sedate me. They had no hope of working during the worst of it,
but they still had value.) Do you have a little bottle of hand sanitizer with you
all the time? (I do, and always will.) Do you know how to reach your organizers with
some urgency when you can't leave your room? Organizers, I hope you would all react
as smoothly and quickly as my CUSEC hosts did. Ellen and Afreen were ultra professional,
as was everyone else I dealt with.
&lt;/p&gt;
&lt;p&gt;
You don't want to think about it, I know. But -- you should, anyway. It doesn't take
long to have a disaster recovery plan. Swapping two keynotes was the obvious choice,
and it worked because the keynoters were staying for the whole conference not just
popping in for their morning. A little prior preparation can predict proper performance,
or something like that.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d52b489d-f022-498f-a790-23314fbf7648" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=36437e5e-52fa-4b00-9400-6218e508bdee</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=36437e5e-52fa-4b00-9400-6218e508bdee</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Every once in a while, I make a big change in how I plan and manage my speaking engagements.
Early in the last decade, I decided to speak only at conferences I would happily pay
to attend, and that improved my life dramatically. Instead of trying to justify a
week away from home and the office in which I would try to keep up on emails from
a hotel room or a hallway couch, while surrounded by people who didn't care about
the stuff I cared about, I started looking forward to a week of learning and growing,
of coming home knowing more than when I left, and of meeting my heroes and getting
to see my friends.
</p>
        <p>
While this was an important change, it was only a change in my decision criteria,
and not in my overall process of deciding where to speak. I would get an email, or
see a tweet, or otherwise become aware that a conference was going to happen, and
then I would decide, on a case-by-case basis, if I wanted to submit to that conference.
Sometimes I would have to decline because I had already submitted to another one at
roughly the same time, without realizing the overlap. In mid 2019, I changed that.
I listed out all the <a href="https://isocpp.org/wiki/faq/conferences-worldwide">C++
conferences </a>I knew of, and roughly when they happened. Then my partner and I went
through the list, noting when various family events are happening, when we want to
go on vacation, and other "big rocks" that conferences have to fit around. We talked
about how many conferences I wanted to speak at, and whittled down the list to that
many. 
</p>
        <p>
Now, as each conference opens a Call for Papers, if it's on my list, I submit, and
if it's not, I don't. Of course, my talks aren't always accepted. I set myself a goal
to speak at two non-C++ conferences in 2020. I was invited to one, but after I agreed
they changed their dates and that conflicted with something else I had accepted. I
submitted to another and they declined my talk. But one has accepted, and I have accepted
another invitation, so I will be speaking at two non-C++ conferences for sure. 
</p>
        <p>
Expect to see me at:
</p>
        <ul>
          <li>
January, Montreal: <a href="http://2020.cusec.net/">CUSEC 2020</a> (Canadian University
Software Engineering Conference) - keynote (and a Meetup while I'm in town, <a href="https://www.meetup.com/fr-FR/CppMtl/events/267755235/">come
ask about technical speaking</a>)<br /></li>
          <li>
March, Bristol, UK: <a href="https://conference.accu.org/">ACCU </a>- Naming Is Hard,
Let's Do Better</li>
          <li>
May, London, UK: SDD - Naming and Emotional Code</li>
        </ul>
        <div>I have submitted to some for June and onwards, but haven't heard, so I'm not
mentioning them, nor the ones I've decided not to submit to. That's not fair to anyone.
I might do as many as 7 conferences by the time the year is over, and that's a lot.
Plus user group talks whenever I can. 
<br /></div>
        <div>
          <br />
        </div>
        <div>So is there any point inviting me to speak at your conference? Well, sure. It
might match up with something else (at least one conference I added to my list because
I could combine it with another trip that was already planned) or be so compelling
that I will find a way to fit it in. Or it might end up on my list for next year --
I like this advance planning so I'm going to keep doing it. As always, remember that
I do have <a href="http://www.gregcons.com/SpeakerKit.aspx">requirements </a>for any
speaking engagement, so if you invite me, please let me know you've read that and
meet them.
</div>
        <div>
          <br />
        </div>
        <div>If you're at any conference I am speaking at, please do find me and say hi! It's
one of the most important parts of any conference for me.
</div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=36437e5e-52fa-4b00-9400-6218e508bdee" />
      </body>
      <title>My 2020 Speaking</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=36437e5e-52fa-4b00-9400-6218e508bdee</guid>
      <link>http://www.gregcons.com/KateBlog/My2020Speaking.aspx</link>
      <pubDate>Wed, 08 Jan 2020 18:25:46 GMT</pubDate>
      <description>&lt;p&gt;
Every once in a while, I make a big change in how I plan and manage my speaking engagements.
Early in the last decade, I decided to speak only at conferences I would happily pay
to attend, and that improved my life dramatically. Instead of trying to justify a
week away from home and the office in which I would try to keep up on emails from
a hotel room or a hallway couch, while surrounded by people who didn't care about
the stuff I cared about, I started looking forward to a week of learning and growing,
of coming home knowing more than when I left, and of meeting my heroes and getting
to see my friends.
&lt;/p&gt;
&lt;p&gt;
While this was an important change, it was only a change in my decision criteria,
and not in my overall process of deciding where to speak. I would get an email, or
see a tweet, or otherwise become aware that a conference was going to happen, and
then I would decide, on a case-by-case basis, if I wanted to submit to that conference.
Sometimes I would have to decline because I had already submitted to another one at
roughly the same time, without realizing the overlap. In mid 2019, I changed that.
I listed out all the &lt;a href="https://isocpp.org/wiki/faq/conferences-worldwide"&gt;C++
conferences &lt;/a&gt;I knew of, and roughly when they happened. Then my partner and I went
through the list, noting when various family events are happening, when we want to
go on vacation, and other "big rocks" that conferences have to fit around. We talked
about how many conferences I wanted to speak at, and whittled down the list to that
many. 
&lt;/p&gt;
&lt;p&gt;
Now, as each conference opens a Call for Papers, if it's on my list, I submit, and
if it's not, I don't. Of course, my talks aren't always accepted. I set myself a goal
to speak at two non-C++ conferences in 2020. I was invited to one, but after I agreed
they changed their dates and that conflicted with something else I had accepted. I
submitted to another and they declined my talk. But one has accepted, and I have accepted
another invitation, so I will be speaking at two non-C++ conferences for sure. 
&lt;/p&gt;
&lt;p&gt;
Expect to see me at:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
January, Montreal: &lt;a href="http://2020.cusec.net/"&gt;CUSEC 2020&lt;/a&gt; (Canadian University
Software Engineering Conference) - keynote (and a Meetup while I'm in town, &lt;a href="https://www.meetup.com/fr-FR/CppMtl/events/267755235/"&gt;come
ask about technical speaking&lt;/a&gt;)&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
March, Bristol, UK: &lt;a href="https://conference.accu.org/"&gt;ACCU &lt;/a&gt;- Naming Is Hard,
Let's Do Better&lt;/li&gt;
&lt;li&gt;
May, London, UK: SDD - Naming and Emotional Code&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;I have submitted to some for June and onwards, but haven't heard, so I'm not
mentioning them, nor the ones I've decided not to submit to. That's not fair to anyone.
I might do as many as 7 conferences by the time the year is over, and that's a lot.
Plus user group talks whenever I can. 
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;So is there any point inviting me to speak at your conference? Well, sure. It
might match up with something else (at least one conference I added to my list because
I could combine it with another trip that was already planned) or be so compelling
that I will find a way to fit it in. Or it might end up on my list for next year --
I like this advance planning so I'm going to keep doing it. As always, remember that
I do have &lt;a href="http://www.gregcons.com/SpeakerKit.aspx"&gt;requirements &lt;/a&gt;for any
speaking engagement, so if you invite me, please let me know you've read that and
meet them.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;If you're at any conference I am speaking at, please do find me and say hi! It's
one of the most important parts of any conference for me.
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=36437e5e-52fa-4b00-9400-6218e508bdee" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=d189f5d7-48c3-435f-ac7c-f7a56819fa7c</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d189f5d7-48c3-435f-ac7c-f7a56819fa7c</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
July 21st, 1969 I (with my parents) moved to Canada for the second time. The first
time, I had been an infant, and the move had been temporary: my father was doing his
PhD at Carleton University in Ottawa. When he completed it, we went back to England
as the plan had always been. We had grown from a family of 3 to a family of 4 in the
meantime. But when they got back to England, they missed Canada a lot. So, by 1969,
they had found a way for the now 5 of us to return. Originally it was to Ottawa and
a job in a government research lab for my father. But within less than a year he decided
to take a chance on the very new University of Waterloo and he worked there (with
consulting clients and inventions and other side projects) until he retired to Nova
Scotia.
</p>
        <p>
I often warn friends who are considering emigrating that if you do, you are likely
to raise children who think emigrating is ok: my Canadian-born brother lived in Japan,
Europe, and the US for decades before settling in Vancouver. My UK-born sister has
been in Ireland, England, and now Wales for a similar length of time. I have two other
sisters and one of them has also changed continents a few times and now lives in England.
Me, I've stayed put. I like it here and couldn't imagine living anywhere other than
the Ontario countryside, though I sure do like to visit other places!
</p>
        <p>
I remember very little of the move and the change of countries. We had been told of
the rabid animals (there is no rabies in England) and the importance therefore of
never letting a squirrel or chipmunk near you. Also of the cold, which I didn't remember
from my first time. While I can't remember any of the moon landing hoopla at all,
I do remember one scene from the airport as we arrived. We approached two doors, one
for Canadians and one for all others. Well not doors, more like archways in a wall.
And some official insisted that my brother go through the Canadian archway. He would
have been 6 or 7 and my parents resisted but this official was adamant and said it
would be fine. Which it was, because there was no wall between the two areas so it
was a separation of a minute or so in full sight. We went through the arches at the
same time but when we got through, this official knelt down to my brother's height
and said "welcome home, little man" to him. I have other memories, of being bullied
at school for my accent, of clashes with teachers who literally refused to teach me
things I didn't know because "we covered that last year", of amazing beauty and nature
and discoveries of all kinds, but that moment is one of those that really sticks with
me. This place is home for me too.
</p>
        <p>
Kate<br /></p>
        <p>
          <br />
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d189f5d7-48c3-435f-ac7c-f7a56819fa7c" />
      </body>
      <title>It was 50 years ago today...</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=d189f5d7-48c3-435f-ac7c-f7a56819fa7c</guid>
      <link>http://www.gregcons.com/KateBlog/ItWas50YearsAgoToday.aspx</link>
      <pubDate>Sun, 21 Jul 2019 11:21:56 GMT</pubDate>
      <description>&lt;p&gt;
July 21st, 1969 I (with my parents) moved to Canada for the second time. The first
time, I had been an infant, and the move had been temporary: my father was doing his
PhD at Carleton University in Ottawa. When he completed it, we went back to England
as the plan had always been. We had grown from a family of 3 to a family of 4 in the
meantime. But when they got back to England, they missed Canada a lot. So, by 1969,
they had found a way for the now 5 of us to return. Originally it was to Ottawa and
a job in a government research lab for my father. But within less than a year he decided
to take a chance on the very new University of Waterloo and he worked there (with
consulting clients and inventions and other side projects) until he retired to Nova
Scotia.
&lt;/p&gt;
&lt;p&gt;
I often warn friends who are considering emigrating that if you do, you are likely
to raise children who think emigrating is ok: my Canadian-born brother lived in Japan,
Europe, and the US for decades before settling in Vancouver. My UK-born sister has
been in Ireland, England, and now Wales for a similar length of time. I have two other
sisters and one of them has also changed continents a few times and now lives in England.
Me, I've stayed put. I like it here and couldn't imagine living anywhere other than
the Ontario countryside, though I sure do like to visit other places!
&lt;/p&gt;
&lt;p&gt;
I remember very little of the move and the change of countries. We had been told of
the rabid animals (there is no rabies in England) and the importance therefore of
never letting a squirrel or chipmunk near you. Also of the cold, which I didn't remember
from my first time. While I can't remember any of the moon landing hoopla at all,
I do remember one scene from the airport as we arrived. We approached two doors, one
for Canadians and one for all others. Well not doors, more like archways in a wall.
And some official insisted that my brother go through the Canadian archway. He would
have been 6 or 7 and my parents resisted but this official was adamant and said it
would be fine. Which it was, because there was no wall between the two areas so it
was a separation of a minute or so in full sight. We went through the arches at the
same time but when we got through, this official knelt down to my brother's height
and said "welcome home, little man" to him. I have other memories, of being bullied
at school for my accent, of clashes with teachers who literally refused to teach me
things I didn't know because "we covered that last year", of amazing beauty and nature
and discoveries of all kinds, but that moment is one of those that really sticks with
me. This place is home for me too.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=d189f5d7-48c3-435f-ac7c-f7a56819fa7c" /&gt;</description>
      <category>Consulting Life</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=5cc89a5d-703a-4f83-ab0b-ecc13419d4ad</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5cc89a5d-703a-4f83-ab0b-ecc13419d4ad</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I just published a small course on Pluralsight called <a href="https://app.pluralsight.com/library/courses/visual-studio-2019-advanced-debugging/table-of-contents">Advanced
Debugging with Visual Studio 2019</a>. It covers IntelliTrace and Code Map, two features
that are only in the Enterprise Edition of Visual Studio. Many people don't know about
them, so I put together a quick introduction. 
<br /></p>
        <p>
          <img src="http://www.gregcons.com/KateBlog/content/binary/teaser[1][2][3][4][5][6][7][8][9][10][11][12][13][14].jpg" width="600" border="0" />
        </p>
        <p>
Here are some of my other current courses: 
</p>
        <ul>
          <li>
            <a href="https://app.pluralsight.com/library/courses/visual-studio-2019-getting-started">Visual
Studio 2019 Getting Started</a> - what you need as a new user of Visual Studio to
start using it. There are a variety of other Visual Studio courses, and pretty much
all of the material from <a href="https://app.pluralsight.com/library/courses/visual-studio-2017-essentials-beyond">my
2017 one</a> is still applicable, so don't take just this one or you'll be missing
some really powerful techniques.</li>
          <li>
            <a href="https://app.pluralsight.com/library/courses/cpp-updating-legacy-code">Beautiful
C++: Updating Legacy Code</a> - I really enjoyed writing this course and if you maintain
old C++ code, I think it will make your life a lot easier. It discusses both specific
patterns to update (and why) and overall strategic approaches (not mechanically replacing
every incidence of one pattern with a newer pattern.) 
<br /></li>
          <li>
            <a href="https://app.pluralsight.com/library/courses/cplusplus-fundamentals-c17">C++
Fundamentals Including C++ 17</a> - this is the go-to course for developers who want
to learn C++ today. Whether you never did any, or did some a decade or two ago, this
course will cover the syntax, library, and best practices you need. If you've never
programmed in any language, try <a href="https://app.pluralsight.com/library/courses/learn-programming-cplusplus">Learn
How to Program with C++</a> instead. 
<br /></li>
          <li>
            <a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites">Using
Stack Overflow and Other Stack Exchange Sites</a> - we all go to Stack Overflow when
we're stuck. But a lot of us are bad at it, because it doesn't work like other sites.
Take a little time to improve this skill and you'll get better and faster answers.
You might even become one of those high-rep users who others admire!</li>
          <li>
            <a href="https://app.pluralsight.com/library/courses/beautiful-cplusplus-stl-algorithms">Beautiful
C++: STL Algorithms</a> - Stop writing raw loops and you will get more readable code
with less effort. The library has so much waiting for you and this course will help
you make sense of it all.</li>
        </ul>
        <div>There are more, but if you take all of these, you'll be in a strong place as
a C++ developer. (BTW, only the Visual Studio courses require Visual Studio. All the
others work with any development environment you prefer.)
</div>
        <div>
          <br />
        </div>
        <div>Kate<br /></div>
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5cc89a5d-703a-4f83-ab0b-ecc13419d4ad" />
      </body>
      <title>Another Pluralsight course is live</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5cc89a5d-703a-4f83-ab0b-ecc13419d4ad</guid>
      <link>http://www.gregcons.com/KateBlog/AnotherPluralsightCourseIsLive.aspx</link>
      <pubDate>Fri, 28 Jun 2019 13:39:32 GMT</pubDate>
      <description>&lt;p&gt;
I just published a small course on Pluralsight called &lt;a href="https://app.pluralsight.com/library/courses/visual-studio-2019-advanced-debugging/table-of-contents"&gt;Advanced
Debugging with Visual Studio 2019&lt;/a&gt;. It covers IntelliTrace and Code Map, two features
that are only in the Enterprise Edition of Visual Studio. Many people don't know about
them, so I put together a quick introduction. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/teaser[1][2][3][4][5][6][7][8][9][10][11][12][13][14].jpg" width="600" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
Here are some of my other current courses: 
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://app.pluralsight.com/library/courses/visual-studio-2019-getting-started"&gt;Visual
Studio 2019 Getting Started&lt;/a&gt; - what you need as a new user of Visual Studio to
start using it. There are a variety of other Visual Studio courses, and pretty much
all of the material from &lt;a href="https://app.pluralsight.com/library/courses/visual-studio-2017-essentials-beyond"&gt;my
2017 one&lt;/a&gt; is still applicable, so don't take just this one or you'll be missing
some really powerful techniques.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://app.pluralsight.com/library/courses/cpp-updating-legacy-code"&gt;Beautiful
C++: Updating Legacy Code&lt;/a&gt; - I really enjoyed writing this course and if you maintain
old C++ code, I think it will make your life a lot easier. It discusses both specific
patterns to update (and why) and overall strategic approaches (not mechanically replacing
every incidence of one pattern with a newer pattern.) 
&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://app.pluralsight.com/library/courses/cplusplus-fundamentals-c17"&gt;C++
Fundamentals Including C++ 17&lt;/a&gt; - this is the go-to course for developers who want
to learn C++ today. Whether you never did any, or did some a decade or two ago, this
course will cover the syntax, library, and best practices you need. If you've never
programmed in any language, try &lt;a href="https://app.pluralsight.com/library/courses/learn-programming-cplusplus"&gt;Learn
How to Program with C++&lt;/a&gt; instead. 
&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites"&gt;Using
Stack Overflow and Other Stack Exchange Sites&lt;/a&gt; - we all go to Stack Overflow when
we're stuck. But a lot of us are bad at it, because it doesn't work like other sites.
Take a little time to improve this skill and you'll get better and faster answers.
You might even become one of those high-rep users who others admire!&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://app.pluralsight.com/library/courses/beautiful-cplusplus-stl-algorithms"&gt;Beautiful
C++: STL Algorithms&lt;/a&gt; - Stop writing raw loops and you will get more readable code
with less effort. The library has so much waiting for you and this course will help
you make sense of it all.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;There are more, but if you take all of these, you'll be in a strong place as
a C++ developer. (BTW, only the Visual Studio courses require Visual Studio. All the
others work with any development environment you prefer.)
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5cc89a5d-703a-4f83-ab0b-ecc13419d4ad" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Visual Studio 2019</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=99f1609a-cab5-47d5-8000-2ca90a64f24a</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=99f1609a-cab5-47d5-8000-2ca90a64f24a</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
In early April I was lucky enough to go to Bristol in the UK for the annual <a href="https://conference.accu.org/2019/schedule.html">ACCU
conference</a>. This has been an aspirational conference for me, one I attended before
speaking at and am always delighted to attend. This year I was invited to keynote,
and it turned out to be the closing keynote, which meant I was not done with all my
talks until the conference was over! Nevertheless I enjoyed the week tremendously.
</p>
        <p>
I flew to England overnight Saturday night. People often ask me how, given the fatigue
issues I have left over from the whole surviving incurable cancer thing, I am able
to travel. One reason is that when I travel, I only travel on travel days. I don’t
try to work at the airport, on the plane, etc. I read a book or listen to music or
just relax. On overnight flights, I sleep. I also schedule a few days to adjust to
the time zone without having to think hard or meet important deadlines, like finishing
my talk. On this trip, I spent two days visiting Cardiff, which is actually where
I was born, with my sister who is planning to move there. It was marvelous fun watching
a family explore and discover their new home town, and going to places I have seen
on TV or in pictures. 
</p>
        <p>
Tuesday I did a private corporate talk about <a href="https://www.includecpp.org/">#include&lt;C++&gt;</a> and
diversity issues. It was very well received and I might offer it to other companies
as a result. I always buy a train pass when I go to the UK and it got a good workout
on this occasion. Back in Bristol I was able to relax and know I was ready for the
conference.
</p>
        <p>
After a lovely opening address by Russel, we had an illuminating <a href="https://www.youtube.com/watch?v=tBmF7ofKoYQ&amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;index=2&amp;t=0s">keynote
from Angela Sasse</a>.  Security can’t be left until the end or handled by a
separate group who fight the developers. Afterwards I took some time to meet up with
more friends and spend some time at the #include table. After lunch, a very good talk
from Jonathan Boccara on <a href="https://www.youtube.com/watch?v=tOOK-VsWU-I&amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;index=7&amp;t=0s " temp_href="https://www.youtube.com/watch?v=tOOK-VsWU-I&amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;index=7&amp;t=0s ">reading
unfamiliar code</a>.  I loved the map analogy and the way he showed using a call
stack to increase your mapped area. Then a workshop from Gail Ollis on <a href="https://www.youtube.com/watch?v=5ipVQb9P4wQ&amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;index=14&amp;t=0s">Helping
Developers to Help Each Other</a> which really brought home to me once again how important
tactile artifacts – things you can pick up, put down, wave around, put next to each
other and so on – can be to encourage open and complete communication.  The recording
stops when the hands on part starts – just one of those things you can only get by
attending in person. The talks wrapped up with Lightning Talks and I did one – my
first time doing so at ACCU. I was not able to stay up for the evening reception beyond
a quick “hey! Great to see you!” to a handful of people. There were plenty of talks
I couldn’t get to – recordings for me to watch later!
</p>
        <p>
Day 2 started with a <a href="https://www.youtube.com/watch?v=os7cqJ5qlzo&amp;list=PL9hrFapz4dsMmDBjD_hiGaYKTXXLo7bAv&amp;index=2&amp;t=0s">Herb
Sutter keynote</a>.   I’ve read the paper but was really happy to hear it
as a talk, and to hear the motivations behind enabling more people to use the whole
language.  Then I needed some down time before my talk right after lunch. I gave
an updated version of “<a href="https://www.youtube.com/watch?v=-Hb-9TUyjoo&amp;list=PL9hrFapz4dsMmDBjD_hiGaYKTXXLo7bAv&amp;index=8&amp;t=4s">Nothing</a>”
and as always at ACCU got some great questions that will go into the next version
of the talk – or some other one.  Then I kept to tradition by doing the Pub Quiz,
entertaining as always for the don’t-write-this-at-work code and marveling at how
some folks know a lot of dark corners! Another round of lightning talks and an early
night, meaning I couldn’t attend the Bristol Girl Geeks dinner as I had planned.
</p>
        <p>
The Day 3 keynote was low on code and high on insight as <a href="https://www.youtube.com/watch?v=5YmwtiQf0fQ&amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;index=2&amp;t=0s">Paul
Grenyer talked</a> about growing a community while dealing with the ups and downs
of life in general.  Then to a fascinating talk by Dom Davis about <a href="https://www.youtube.com/watch?v=jiJesVwkXPw&amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;index=5&amp;t=0s">communicating</a>,
with significant meta content that I really enjoyed.  I spent the lunch break
at the #include table, and then dove into a variety of little talks – 15 and 20 minute
ones. I was starting to tire and didn’t pay as much attention as I should have, but
let me recommend <a href="https://www.youtube.com/watch?v=qi4bMw7tyKk&amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;index=13&amp;t=0s">Alex
Chan’s reminder</a> that the tech we build can hurt people when it’s being used as
designed.  I took a break to be ready for the Conference Dinner where I was able
to catch up with old friends and meet a few new ones. 
</p>
        <p>
Finally Day 4. I started with <a href="https://www.youtube.com/watch?v=ndnvOElnyUg">Kevlin
Henney</a> and a talk with a similar title to my “Nothing” but very different content. 
Another break, another lunch at the #include table, and then some down time before <a href="https://www.youtube.com/watch?v=uloVXmSHiSo&amp;list=PL9hrFapz4dsMj31ZrsQNEXKqXJRbSXdHS&amp;index=2&amp;t=1s">my
closing keynote</a>. I updated the beginning of this talk since the C++ on Sea keynote,
and I think this improves it. More great questions after and I think more material
to work in there somehow. Then the close of the conference, a certain amount of hanging
around not wanting it to end, and up to my room for another early night and to get
ready to go.
</p>
        <p>
Sunday all I did was take the train to the airport, fly home (sleeping a little on
the plane) and drive home. A lot to process, as always after ACCU. And when I got
home, a lot to catch up on, which is why this has taken a few weeks to write up!
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=99f1609a-cab5-47d5-8000-2ca90a64f24a" />
      </body>
      <title>ACCU Trip report</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=99f1609a-cab5-47d5-8000-2ca90a64f24a</guid>
      <link>http://www.gregcons.com/KateBlog/ACCUTripReport.aspx</link>
      <pubDate>Mon, 06 May 2019 10:57:37 GMT</pubDate>
      <description>&lt;p&gt;
In early April I was lucky enough to go to Bristol in the UK for the annual &lt;a href="https://conference.accu.org/2019/schedule.html"&gt;ACCU
conference&lt;/a&gt;. This has been an aspirational conference for me, one I attended before
speaking at and am always delighted to attend. This year I was invited to keynote,
and it turned out to be the closing keynote, which meant I was not done with all my
talks until the conference was over! Nevertheless I enjoyed the week tremendously.
&lt;/p&gt;
&lt;p&gt;
I flew to England overnight Saturday night. People often ask me how, given the fatigue
issues I have left over from the whole surviving incurable cancer thing, I am able
to travel. One reason is that when I travel, I only travel on travel days. I don’t
try to work at the airport, on the plane, etc. I read a book or listen to music or
just relax. On overnight flights, I sleep. I also schedule a few days to adjust to
the time zone without having to think hard or meet important deadlines, like finishing
my talk. On this trip, I spent two days visiting Cardiff, which is actually where
I was born, with my sister who is planning to move there. It was marvelous fun watching
a family explore and discover their new home town, and going to places I have seen
on TV or in pictures. 
&lt;/p&gt;
&lt;p&gt;
Tuesday I did a private corporate talk about &lt;a href="https://www.includecpp.org/"&gt;#include&amp;lt;C++&amp;gt;&lt;/a&gt; and
diversity issues. It was very well received and I might offer it to other companies
as a result. I always buy a train pass when I go to the UK and it got a good workout
on this occasion. Back in Bristol I was able to relax and know I was ready for the
conference.
&lt;/p&gt;
&lt;p&gt;
After a lovely opening address by Russel, we had an illuminating &lt;a href="https://www.youtube.com/watch?v=tBmF7ofKoYQ&amp;amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;amp;index=2&amp;amp;t=0s"&gt;keynote
from Angela Sasse&lt;/a&gt;.&amp;nbsp; Security can’t be left until the end or handled by a
separate group who fight the developers. Afterwards I took some time to meet up with
more friends and spend some time at the #include table. After lunch, a very good talk
from Jonathan Boccara on &lt;a href="https://www.youtube.com/watch?v=tOOK-VsWU-I&amp;amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;amp;index=7&amp;amp;t=0s " temp_href="https://www.youtube.com/watch?v=tOOK-VsWU-I&amp;amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;amp;index=7&amp;amp;t=0s "&gt;reading
unfamiliar code&lt;/a&gt;.&amp;nbsp; I loved the map analogy and the way he showed using a call
stack to increase your mapped area. Then a workshop from Gail Ollis on &lt;a href="https://www.youtube.com/watch?v=5ipVQb9P4wQ&amp;amp;list=PL9hrFapz4dsMrrlvFMvuqy_cdpPadCyL8&amp;amp;index=14&amp;amp;t=0s"&gt;Helping
Developers to Help Each Other&lt;/a&gt; which really brought home to me once again how important
tactile artifacts – things you can pick up, put down, wave around, put next to each
other and so on – can be to encourage open and complete communication.&amp;nbsp; The recording
stops when the hands on part starts – just one of those things you can only get by
attending in person. The talks wrapped up with Lightning Talks and I did one – my
first time doing so at ACCU. I was not able to stay up for the evening reception beyond
a quick “hey! Great to see you!” to a handful of people. There were plenty of talks
I couldn’t get to – recordings for me to watch later!
&lt;/p&gt;
&lt;p&gt;
Day 2 started with a &lt;a href="https://www.youtube.com/watch?v=os7cqJ5qlzo&amp;amp;list=PL9hrFapz4dsMmDBjD_hiGaYKTXXLo7bAv&amp;amp;index=2&amp;amp;t=0s"&gt;Herb
Sutter keynote&lt;/a&gt;.&amp;nbsp;&amp;nbsp; I’ve read the paper but was really happy to hear it
as a talk, and to hear the motivations behind enabling more people to use the whole
language.&amp;nbsp; Then I needed some down time before my talk right after lunch. I gave
an updated version of “&lt;a href="https://www.youtube.com/watch?v=-Hb-9TUyjoo&amp;amp;list=PL9hrFapz4dsMmDBjD_hiGaYKTXXLo7bAv&amp;amp;index=8&amp;amp;t=4s"&gt;Nothing&lt;/a&gt;”
and as always at ACCU got some great questions that will go into the next version
of the talk – or some other one.&amp;nbsp; Then I kept to tradition by doing the Pub Quiz,
entertaining as always for the don’t-write-this-at-work code and marveling at how
some folks know a lot of dark corners! Another round of lightning talks and an early
night, meaning I couldn’t attend the Bristol Girl Geeks dinner as I had planned.
&lt;/p&gt;
&lt;p&gt;
The Day 3 keynote was low on code and high on insight as &lt;a href="https://www.youtube.com/watch?v=5YmwtiQf0fQ&amp;amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;amp;index=2&amp;amp;t=0s"&gt;Paul
Grenyer talked&lt;/a&gt; about growing a community while dealing with the ups and downs
of life in general.&amp;nbsp; Then to a fascinating talk by Dom Davis about &lt;a href="https://www.youtube.com/watch?v=jiJesVwkXPw&amp;amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;amp;index=5&amp;amp;t=0s"&gt;communicating&lt;/a&gt;,
with significant meta content that I really enjoyed.&amp;nbsp; I spent the lunch break
at the #include table, and then dove into a variety of little talks – 15 and 20 minute
ones. I was starting to tire and didn’t pay as much attention as I should have, but
let me recommend &lt;a href="https://www.youtube.com/watch?v=qi4bMw7tyKk&amp;amp;list=PL9hrFapz4dsNGsb0DdTDbX6elBLng8lg-&amp;amp;index=13&amp;amp;t=0s"&gt;Alex
Chan’s reminder&lt;/a&gt; that the tech we build can hurt people when it’s being used as
designed.&amp;nbsp; I took a break to be ready for the Conference Dinner where I was able
to catch up with old friends and meet a few new ones. 
&lt;/p&gt;
&lt;p&gt;
Finally Day 4. I started with &lt;a href="https://www.youtube.com/watch?v=ndnvOElnyUg"&gt;Kevlin
Henney&lt;/a&gt; and a talk with a similar title to my “Nothing” but very different content.&amp;nbsp;
Another break, another lunch at the #include table, and then some down time before &lt;a href="https://www.youtube.com/watch?v=uloVXmSHiSo&amp;amp;list=PL9hrFapz4dsMj31ZrsQNEXKqXJRbSXdHS&amp;amp;index=2&amp;amp;t=1s"&gt;my
closing keynote&lt;/a&gt;. I updated the beginning of this talk since the C++ on Sea keynote,
and I think this improves it. More great questions after and I think more material
to work in there somehow. Then the close of the conference, a certain amount of hanging
around not wanting it to end, and up to my room for another early night and to get
ready to go.
&lt;/p&gt;
&lt;p&gt;
Sunday all I did was take the train to the airport, fly home (sleeping a little on
the plane) and drive home. A lot to process, as always after ACCU. And when I got
home, a lot to catch up on, which is why this has taken a few weeks to write up!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=99f1609a-cab5-47d5-8000-2ca90a64f24a" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=fbefbaee-e214-4a48-991d-7f9e089cc6ad</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fbefbaee-e214-4a48-991d-7f9e089cc6ad</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I get a lot of requests to speak at conference now. More than I can possibly accept!
This is a marvelous problem to have, and I'm delighted that there are so many relevant
conferences and that a lot of them want me to be there. Sometimes if I decline a conference,
it's just because I am doing something else in that time frame - I try not to do two
conferences in the same month, for example - or the travel would be too far. But there
are other reasons, so I wrote a little list of <a href="http://www.gregcons.com/SpeakerKit.aspx">requirements
and preferences</a>. If you're running a conference, please check this list before
you ask me to speak. If you're a speaker, consider putting your own list together.
We can make conferences better!
</p>
        <p>
And yes, I am working on a much longer list of what makes conferences great. It's
over 4 densely packed pages right now and likely only to get longer. I will advise
any conference-runner who asks me and genuinely wants to improve. Want my opinion
of your badge, website, code of conduct, or the like? I'm happy to help.
</p>
        <p>
Kate<br /></p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=fbefbaee-e214-4a48-991d-7f9e089cc6ad" />
      </body>
      <title>Want me to speak at your event?</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fbefbaee-e214-4a48-991d-7f9e089cc6ad</guid>
      <link>http://www.gregcons.com/KateBlog/WantMeToSpeakAtYourEvent.aspx</link>
      <pubDate>Fri, 22 Feb 2019 15:41:55 GMT</pubDate>
      <description>&lt;p&gt;
I get a lot of requests to speak at conference now. More than I can possibly accept!
This is a marvelous problem to have, and I'm delighted that there are so many relevant
conferences and that a lot of them want me to be there. Sometimes if I decline a conference,
it's just because I am doing something else in that time frame - I try not to do two
conferences in the same month, for example - or the travel would be too far. But there
are other reasons, so I wrote a little list of &lt;a href="http://www.gregcons.com/SpeakerKit.aspx"&gt;requirements
and preferences&lt;/a&gt;. If you're running a conference, please check this list before
you ask me to speak. If you're a speaker, consider putting your own list together.
We can make conferences better!
&lt;/p&gt;
&lt;p&gt;
And yes, I am working on a much longer list of what makes conferences great. It's
over 4 densely packed pages right now and likely only to get longer. I will advise
any conference-runner who asks me and genuinely wants to improve. Want my opinion
of your badge, website, code of conduct, or the like? I'm happy to help.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=fbefbaee-e214-4a48-991d-7f9e089cc6ad" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=6fa778b9-730d-4fb0-85b9-6dd2d1bdf189</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6fa778b9-730d-4fb0-85b9-6dd2d1bdf189</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
We need to talk about the word “guys” and whether or not it means people. Well, to
be accurate, whether or not it means people to all the people who hear it. Here’s
the thing: it doesn’t. Not to all of them. Maybe it does to you. I used to think it
did to me. But now I’m not so sure it ever did. And for sure, there exist some people
to whom it doesn’t. Take a look at this <a href="https://jvns.ca/blog/2013/12/27/guys-guys-guys/">really
non-scientific poll</a> in which only “hey guys” was actually considered gender neutral:
. There’s a whole section of the <a href="http://www.includecpp.org/resources/">#include&lt;C++&gt;
resources</a> about the word “guys”.  
</p>
        <p>
But let’s rewind for a minute. If you’re a man, you may not have noticed, but in North
American and English-speaking European cultures, two things are true, to the vast
majority of people:
</p>
        <ul>
          <li>
Men means people</li>
          <li>
People means men</li>
        </ul>
        <p>
        </p>
        <p>
As a woman, this is something I have come to learn. Men are people. Women are a special
case. People often doesn’t include women. If you think that’s ridiculous, please react
to this sentence:
</p>
        <blockquote>On average, people have slightly less than one ovary</blockquote>This
is an adaptation of a sentence I heard to explain why average is not always a useful
measure of a data set. I first heard it as “slightly less than one testicle.” When
I told it to someone else, I substituted a feminine anatomical feature, and to my
surprise, the man I told it to reacted very angrily. Since then, I’ve tried both versions
of the sentence on various people, men and women (I haven’t tried it on the few nonbinary
people I’ve met.) When you say testicle, everyone laughs. When you say ovary, women
pause for a moment and then laugh. Some men laugh but most get angry. Why? Because
people in general don’t have ovaries. Only women have ovaries, and when most people
say people, they really mean men, who generally speaking are ovary-free. So this sentence
includes a reminder that “the word people includes women and there are as many of
us as there are of you.” Which upsets many men. And while they can’t explain their
anger, it’s real. It’s actually a little scary.<p></p><p>
Yeah but, come on, I can’t possibly mean that, right? I mean it’s 2018. How can “people”
possibly mean men? Take a look at these quotes from reputable medical sites:
</p><blockquote>The <a href="http://www.heart.org/HEARTORG/Conditions/HeartAttack/PreventionTreatmentofHeartAttack/Aspirin-and-Heart-Disease_UCM_321714_Article.jsp">American
Heart Association</a> says “People at high risk of heart attack should take a daily
low-dose of aspirin (if told to by their healthcare provider)” and that “heart attack
survivors regularly take low-dose aspirin.”</blockquote><blockquote>The <a href="https://www.mayoclinic.org/diseases-conditions/heart-disease/in-depth/daily-aspirin-therapy/ART-20046797">Mayo
Clinic</a> says, to a nongendered “you”, “If you've had a heart attack or stroke,
your doctor will likely recommend you take a daily aspirin unless you have a serious
allergy or history of bleeding. If you have a high risk of having a first heart attack,
your doctor will likely recommend aspirin after weighing the risks and benefits.” </blockquote><p></p><p>
But it turns out, as <a href="https://www.webmd.com/heart-disease/news/20071018/daily-aspirin-for-men-only#1">WebMD</a> says,
“when it came to preventing a first heart attack, different trials got different results.
Why? Studies that looked predominantly at men found that aspirin helped. Trials that
looked predominantly at women found no effect.” Yet the general-purpose medical web
sites are still advocating that “people” should do something that in fact is only
helpful for men, rather than for people. 
</p><p>
You can see the same thing in almost any store: razors and women’s razors, lego and
girl’s lego, hammers and women’s hammers, even laxatives and women’s laxatives. The
default person is a man. Women are a special case and are not always included in the
general “people.”
</p><p>
Or take a look at these <a href="https://debuk.wordpress.com/2018/08/05/the-illusion-of-inclusion/">headline
examples</a> from a blog entry I recommend reading in its entirety:
</p><ul><li>
...there are so few able-bodied young adults around. They have all gone off to work
or look for work, leaving behind the old, the disabled, the women and the children.  
[so women are not able bodied young adults?]<br /></li><li>
A 45-year old man has been charged with assaulting his next-door neighbour’s wife  
[doesn't she live next-door too?]</li></ul><p>
So, if people means men, then even if guys also means people, it still means men.
So we can argue whether “guys” is or isn’t gender neutral, but for an awful lot of
both men and women, “people” isn’t even gender neutral. I think it’s fair to say,
though, that guys is <b>even less</b> gender neutral than people. 
</p><p>
The key is this: you might <b>mean </b>to include women when you say guys. And most
of the room might hear it as including women, too. But some of them will not. And
you can’t tell who feels that way. So <b>eliminating “guys” from your vocabulary will
improve the experience of listening to you for some people</b>. 
</p><p>
How can you do it? What can you say instead? Well in a lot of cases, you can just
drop it. For sentences like “What do you guys think?” “What I’m here to show you guys
today is” and the like, you can just use “you.” Sometimes you might want “all of you”.
“Some guys think” can become “some people think” or get more specific – “some developers
think”, “some managers think”, “some customers think” – you’re not only eliminating
an irritant from your talk, but you’re being more precise and conveying more information.
And you’re avoiding “people” which, as I’ve shown above, isn’t actually gender neutral
to most of those who hear it.
</p><p>
If you’re talking in the singular, this becomes even more important. “Some guy asked
for this feature so it got added” or “you know somewhere the guy who wrote this is
thinking” or “I need a guy from your group to take the lead on this” is just always
wrong. Yet the more you say “guys” to mean “bunch of people of whatever gender, I
don’t care about gender”, the more you will say “guy” to mean just one person, and
those who hear you will hear gender. Instead, you can’t go wrong with “someone”, or
again being more specific – the developer who wrote this, for example. 
</p><p>
The hard part isn’t figuring out how to reword the sentence to avoid the word guy
or guys. The hard part is breaking the habit. I’m working on it, because I think it’s
worthwhile. I encourage you to work on it too. Chances are, no-one will ever notice.
That’s the thing about politeness and taking the time to be sure you’re not bumping
someone with your elbow. No-one ever got off a plane and tweeted how great it was
that the person next to them kept their elbows to themselves, or smelled ok, or was
quiet. But it’s still worth taking the effort to be the great seatmate, and in the
same spirit it’s worth taking the time to change your speech patterns a tiny bit so
that some of your listeners don’t feel excluded.
</p><p>
Kate
</p><img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6fa778b9-730d-4fb0-85b9-6dd2d1bdf189" /></body>
      <title>Thoughts about "guys"</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6fa778b9-730d-4fb0-85b9-6dd2d1bdf189</guid>
      <link>http://www.gregcons.com/KateBlog/ThoughtsAboutGuys.aspx</link>
      <pubDate>Fri, 19 Oct 2018 02:29:46 GMT</pubDate>
      <description>&lt;p&gt;
We need to talk about the word “guys” and whether or not it means people. Well, to
be accurate, whether or not it means people to all the people who hear it. Here’s
the thing: it doesn’t. Not to all of them. Maybe it does to you. I used to think it
did to me. But now I’m not so sure it ever did. And for sure, there exist some people
to whom it doesn’t. Take a look at this &lt;a href="https://jvns.ca/blog/2013/12/27/guys-guys-guys/"&gt;really
non-scientific poll&lt;/a&gt; in which only “hey guys” was actually considered gender neutral:
. There’s a whole section of the &lt;a href="http://www.includecpp.org/resources/"&gt;#include&amp;lt;C++&amp;gt;
resources&lt;/a&gt; about the word “guys”.&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
But let’s rewind for a minute. If you’re a man, you may not have noticed, but in North
American and English-speaking European cultures, two things are true, to the vast
majority of people:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Men means people&lt;/li&gt;
&lt;li&gt;
People means men&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
As a woman, this is something I have come to learn. Men are people. Women are a special
case. People often doesn’t include women. If you think that’s ridiculous, please react
to this sentence:
&lt;/p&gt;
&lt;blockquote&gt;On average, people have slightly less than one ovary&lt;/blockquote&gt;This
is an adaptation of a sentence I heard to explain why average is not always a useful
measure of a data set. I first heard it as “slightly less than one testicle.” When
I told it to someone else, I substituted a feminine anatomical feature, and to my
surprise, the man I told it to reacted very angrily. Since then, I’ve tried both versions
of the sentence on various people, men and women (I haven’t tried it on the few nonbinary
people I’ve met.) When you say testicle, everyone laughs. When you say ovary, women
pause for a moment and then laugh. Some men laugh but most get angry. Why? Because
people in general don’t have ovaries. Only women have ovaries, and when most people
say people, they really mean men, who generally speaking are ovary-free. So this sentence
includes a reminder that “the word people includes women and there are as many of
us as there are of you.” Which upsets many men. And while they can’t explain their
anger, it’s real. It’s actually a little scary.&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
Yeah but, come on, I can’t possibly mean that, right? I mean it’s 2018. How can “people”
possibly mean men? Take a look at these quotes from reputable medical sites:
&lt;/p&gt;
&lt;blockquote&gt;The &lt;a href="http://www.heart.org/HEARTORG/Conditions/HeartAttack/PreventionTreatmentofHeartAttack/Aspirin-and-Heart-Disease_UCM_321714_Article.jsp"&gt;American
Heart Association&lt;/a&gt; says “People at high risk of heart attack should take a daily
low-dose of aspirin (if told to by their healthcare provider)” and that “heart attack
survivors regularly take low-dose aspirin.”&lt;/blockquote&gt; &lt;blockquote&gt;The &lt;a href="https://www.mayoclinic.org/diseases-conditions/heart-disease/in-depth/daily-aspirin-therapy/ART-20046797"&gt;Mayo
Clinic&lt;/a&gt; says, to a nongendered “you”, “If you've had a heart attack or stroke,
your doctor will likely recommend you take a daily aspirin unless you have a serious
allergy or history of bleeding. If you have a high risk of having a first heart attack,
your doctor will likely recommend aspirin after weighing the risks and benefits.” &lt;/blockquote&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
But it turns out, as &lt;a href="https://www.webmd.com/heart-disease/news/20071018/daily-aspirin-for-men-only#1"&gt;WebMD&lt;/a&gt; says,
“when it came to preventing a first heart attack, different trials got different results.
Why? Studies that looked predominantly at men found that aspirin helped. Trials that
looked predominantly at women found no effect.” Yet the general-purpose medical web
sites are still advocating that “people” should do something that in fact is only
helpful for men, rather than for people. 
&lt;/p&gt;
&lt;p&gt;
You can see the same thing in almost any store: razors and women’s razors, lego and
girl’s lego, hammers and women’s hammers, even laxatives and women’s laxatives. The
default person is a man. Women are a special case and are not always included in the
general “people.”
&lt;/p&gt;
&lt;p&gt;
Or take a look at these &lt;a href="https://debuk.wordpress.com/2018/08/05/the-illusion-of-inclusion/"&gt;headline
examples&lt;/a&gt; from a blog entry I recommend reading in its entirety:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
...there are so few able-bodied young adults around. They have all gone off to work
or look for work, leaving behind the old, the disabled, the women and the children.&amp;nbsp;&amp;nbsp;
[so women are not able bodied young adults?]&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
A 45-year old man has been charged with assaulting his next-door neighbour’s wife&amp;nbsp;&amp;nbsp;
[doesn't she live next-door too?]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
So, if people means men, then even if guys also means people, it still means men.
So we can argue whether “guys” is or isn’t gender neutral, but for an awful lot of
both men and women, “people” isn’t even gender neutral. I think it’s fair to say,
though, that guys is &lt;b&gt;even less&lt;/b&gt; gender neutral than people. 
&lt;/p&gt;
&lt;p&gt;
The key is this: you might &lt;b&gt;mean &lt;/b&gt;to include women when you say guys. And most
of the room might hear it as including women, too. But some of them will not. And
you can’t tell who feels that way. So &lt;b&gt;eliminating “guys” from your vocabulary will
improve the experience of listening to you for some people&lt;/b&gt;. 
&lt;/p&gt;
&lt;p&gt;
How can you do it? What can you say instead? Well in a lot of cases, you can just
drop it. For sentences like “What do you guys think?” “What I’m here to show you guys
today is” and the like, you can just use “you.” Sometimes you might want “all of you”.
“Some guys think” can become “some people think” or get more specific – “some developers
think”, “some managers think”, “some customers think” – you’re not only eliminating
an irritant from your talk, but you’re being more precise and conveying more information.
And you’re avoiding “people” which, as I’ve shown above, isn’t actually gender neutral
to most of those who hear it.
&lt;/p&gt;
&lt;p&gt;
If you’re talking in the singular, this becomes even more important. “Some guy asked
for this feature so it got added” or “you know somewhere the guy who wrote this is
thinking” or “I need a guy from your group to take the lead on this” is just always
wrong. Yet the more you say “guys” to mean “bunch of people of whatever gender, I
don’t care about gender”, the more you will say “guy” to mean just one person, and
those who hear you will hear gender. Instead, you can’t go wrong with “someone”, or
again being more specific – the developer who wrote this, for example. 
&lt;/p&gt;
&lt;p&gt;
The hard part isn’t figuring out how to reword the sentence to avoid the word guy
or guys. The hard part is breaking the habit. I’m working on it, because I think it’s
worthwhile. I encourage you to work on it too. Chances are, no-one will ever notice.
That’s the thing about politeness and taking the time to be sure you’re not bumping
someone with your elbow. No-one ever got off a plane and tweeted how great it was
that the person next to them kept their elbows to themselves, or smelled ok, or was
quiet. But it’s still worth taking the effort to be the great seatmate, and in the
same spirit it’s worth taking the time to change your speech patterns a tiny bit so
that some of your listeners don’t feel excluded.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6fa778b9-730d-4fb0-85b9-6dd2d1bdf189" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=fbf5ddcf-37bf-44d6-a989-26ed18a5ab77</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fbf5ddcf-37bf-44d6-a989-26ed18a5ab77</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <div>Oh my, I am doing a LOT at <a href="https://cppcon.org/">CppCon</a>. Here's a
list:
</div>
        <div>
          <ul>
            <li>
On Sunday, I am doing a <a href="https://cppcon.org/engage-entertain-educate/">preconference
workshop</a> (I believe it's sold out now) with Scott Meyers and Andrei Alexandrescu</li>
            <li>
After the precon I will relax at the <a href="http://sched.co/FmgU">TShirt dinner</a>.
Pack a Tshirt that says C++ (or bring your badge, or a piece of paper on which you
wrote C++ yourself) and choose a restaurant from the list on that page. When you arrive,
ask where the other C++ Tshirt people are, and make some new friends! I'll be tweeting
my plans just before I head out.</li>
            <li>
Then it's back to the Meydenbauer for the <a href="http://sched.co/Fmft">Registration
Reception</a>. Even if you're on East Coast time like me, make an appearance, see
some friends or some of your heroes, there will probably be cake, and you'll be all
set for the morning. Knowing the venue a bit is going to make you sleep better, and
having your badge already will let you sleep longer.</li>
            <li>
Monday I will be attending talks and working a shift at the exhibitor table for <a href="https://www.includecpp.org/">#include&lt;C++&gt;</a>,
an organization working to make the C++ community more welcoming and inclusive. Come
by and get a sticker! Buy a shirt!</li>
            <li>
If I manage to stay awake, I'll go to <a href="http://sched.co/Fmgm">Grill the Committee</a> after
dinner.<br /></li>
            <li>
Tuesday I have a session called <a href="http://sched.co/FnKA">What Do We Mean When
We Say Nothing At All?</a> and it's at 9 sharp - but you'll have been in the building
for Open Content at 8, won't you? Grab a coffee and come find out how nothing can
say a lot.</li>
            <li>
Tuesday night is the #include&lt;C++&gt; dinner and panel! <a href="https://www.eventbrite.com/e/women-in-c-dinner-and-panel-cppcon-2018-tickets-50295341721">Buy
your ticket</a> now, everyone is welcome. You do not need to be a CppCon attendee.<br /></li>
            <li>
Then it's back to the Meydenbauer after dinner for <a href="https://cppcon.org/2018call-for-lightningtalks/">Lightning
Talks</a>. Everyone loves the Lightning Talks, they're always fantastic.</li>
            <li>
Wednesday I'll arrive early because there are 3 sessions I want to watch at 9 (thankfully
all the talks are recorded)</li>
            <li>
My <a href="http://sched.co/FnKB">keynote </a>is at 10. I'm a bit nervous, but I'm
mostly looking forward to it.</li>
            <li>
Right after that, I have a <a href="http://sched.co/Fmg2">panel </a>about interop
with managed code.</li>
            <li>
Then I'm going to relax and listen to talks for the rest of the day, and go to the
Planners Dinner. And more Lightning Talks afterwards.<br /></li>
            <li>
Thursday I have no talks to give, shifts to work, or panels to be on. I'll be a free
attendee ... until the <a href="http://sched.co/FmgB">Speaker's Dinner</a>. And there's
a planning meeting after that.</li>
            <li>
Friday is JAMMED with talks. And if you live locally, come on down and attend some
because it's the open day. I have marked 11 talks in three time slots as ones I want
to attend. Not sure that's going to work, exactly.</li>
          </ul>
          <div>See why I call CppCon an intense conference? 12 or 13 hours a day, every day.
But oh my goodness the things I will learn, the people I will meet, and the fun I
will have. See you there!
</div>
          <div>
            <br />
          </div>
          <div>Kate<br /></div>
        </div>
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=fbf5ddcf-37bf-44d6-a989-26ed18a5ab77" />
      </body>
      <title>My CppCon Plans</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=fbf5ddcf-37bf-44d6-a989-26ed18a5ab77</guid>
      <link>http://www.gregcons.com/KateBlog/MyCppConPlans.aspx</link>
      <pubDate>Sat, 15 Sep 2018 16:26:26 GMT</pubDate>
      <description>&lt;div&gt;Oh my, I am doing a LOT at &lt;a href="https://cppcon.org/"&gt;CppCon&lt;/a&gt;. Here's a
list:
&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;
On Sunday, I am doing a &lt;a href="https://cppcon.org/engage-entertain-educate/"&gt;preconference
workshop&lt;/a&gt; (I believe it's sold out now) with Scott Meyers and Andrei Alexandrescu&lt;/li&gt;
&lt;li&gt;
After the precon I will relax at the &lt;a href="http://sched.co/FmgU"&gt;TShirt dinner&lt;/a&gt;.
Pack a Tshirt that says C++ (or bring your badge, or a piece of paper on which you
wrote C++ yourself) and choose a restaurant from the list on that page. When you arrive,
ask where the other C++ Tshirt people are, and make some new friends! I'll be tweeting
my plans just before I head out.&lt;/li&gt;
&lt;li&gt;
Then it's back to the Meydenbauer for the &lt;a href="http://sched.co/Fmft"&gt;Registration
Reception&lt;/a&gt;. Even if you're on East Coast time like me, make an appearance, see
some friends or some of your heroes, there will probably be cake, and you'll be all
set for the morning. Knowing the venue a bit is going to make you sleep better, and
having your badge already will let you sleep longer.&lt;/li&gt;
&lt;li&gt;
Monday I will be attending talks and working a shift at the exhibitor table for &lt;a href="https://www.includecpp.org/"&gt;#include&amp;lt;C++&amp;gt;&lt;/a&gt;,
an organization working to make the C++ community more welcoming and inclusive. Come
by and get a sticker! Buy a shirt!&lt;/li&gt;
&lt;li&gt;
If I manage to stay awake, I'll go to &lt;a href="http://sched.co/Fmgm"&gt;Grill the Committee&lt;/a&gt; after
dinner.&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
Tuesday I have a session called &lt;a href="http://sched.co/FnKA"&gt;What Do We Mean When
We Say Nothing At All?&lt;/a&gt; and it's at 9 sharp - but you'll have been in the building
for Open Content at 8, won't you? Grab a coffee and come find out how nothing can
say a lot.&lt;/li&gt;
&lt;li&gt;
Tuesday night is the #include&amp;lt;C++&amp;gt; dinner and panel! &lt;a href="https://www.eventbrite.com/e/women-in-c-dinner-and-panel-cppcon-2018-tickets-50295341721"&gt;Buy
your ticket&lt;/a&gt; now, everyone is welcome. You do not need to be a CppCon attendee.&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
Then it's back to the Meydenbauer after dinner for &lt;a href="https://cppcon.org/2018call-for-lightningtalks/"&gt;Lightning
Talks&lt;/a&gt;. Everyone loves the Lightning Talks, they're always fantastic.&lt;/li&gt;
&lt;li&gt;
Wednesday I'll arrive early because there are 3 sessions I want to watch at 9 (thankfully
all the talks are recorded)&lt;/li&gt;
&lt;li&gt;
My &lt;a href="http://sched.co/FnKB"&gt;keynote &lt;/a&gt;is at 10. I'm a bit nervous, but I'm
mostly looking forward to it.&lt;/li&gt;
&lt;li&gt;
Right after that, I have a &lt;a href="http://sched.co/Fmg2"&gt;panel &lt;/a&gt;about interop
with managed code.&lt;/li&gt;
&lt;li&gt;
Then I'm going to relax and listen to talks for the rest of the day, and go to the
Planners Dinner. And more Lightning Talks afterwards.&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
Thursday I have no talks to give, shifts to work, or panels to be on. I'll be a free
attendee ... until the &lt;a href="http://sched.co/FmgB"&gt;Speaker's Dinner&lt;/a&gt;. And there's
a planning meeting after that.&lt;/li&gt;
&lt;li&gt;
Friday is JAMMED with talks. And if you live locally, come on down and attend some
because it's the open day. I have marked 11 talks in three time slots as ones I want
to attend. Not sure that's going to work, exactly.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;See why I call CppCon an intense conference? 12 or 13 hours a day, every day.
But oh my goodness the things I will learn, the people I will meet, and the fun I
will have. See you there!
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;div&gt;Kate&lt;br&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=fbf5ddcf-37bf-44d6-a989-26ed18a5ab77" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=ce044208-f361-46f8-983f-bda38d7891b4</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ce044208-f361-46f8-983f-bda38d7891b4</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Next year, I'll be keynoting a new C++ conference, <a href="https://cpponsea.uk/index.html">C++
on Sea</a>. I'm really looking forward to it. A little while ago, they ran a "tweet
why you want to go" <a href="https://cpponsea.uk/news/win-a-free-ticket-for-cpp-on-sea.html">contest
for a free ticket</a>, and said that if the winner already had a ticket, the conference
would help the winner give away the ticket.
</p>
        <p>
Can you guess where this is going? <a href="https://cpponsea.uk/news/free-ticket-winner.html">I
won the ticket.</a> I already have one, so you can win mine. Here's what you need
to do:
</p>
        <ul>
          <li>
Choose a way to "give back" to your community before, during and after attending.
This might be blogging, tweeting, hosting a local meetup where you talk about what
you saw and recommend specific talks for others to watch later, or even activities
at the conference like giving a lightning talk. 
</li>
          <li>
Gather supporting links - to your blog, your repo, your YouTube Channel, the meetup
site, and so on 
</li>
          <li>
If your plan won't fit in a tweet, put it somewhere that it will fit. Include lots
of links - I want people to find your blog, channel, meetup etc even if you don't
win 
</li>
          <li>
Tweet me (<a href="https://twitter.com/gregcons">@gregcons</a>) with your plan or
a link to it. I will retweet. Focus on what you will give if you are able to attend
the conference.(It's not that I don't care whether you are deserving or can't afford
to go or whatever, I do, but I am going to focus on how you will share your good fortune
with others.)<br /></li>
          <li>
If you're not on Twitter, post on my public Facebook page. You can't just email me
because the idea is to promote those links to blogs, channels, meetups, and suchlike. 
</li>
        </ul>
        <p>
That's it! I'll choose someone, probably by filtering to everyone who is offering
to do something generous and then randomly choosing one, but I reserve the right to
choose the single person who comes up with the most amazing plan. I'll tell the conference
that you get my ticket. 
</p>
        <p>
Fine print: this is just admission to the conference. Not travel or hotel. Not paid
time off work. You'll need to cover that yourself. I suggest that telling your boss
you won the ticket because of your community involvement might be quite helpful as
far as that is concerned :-). And while I can't force you to keep your promise, I
will remember if you do, and that will probably be a good thing for you over and above
the rewards of doing those good things for the community.<br /></p>
        <p>
Good Luck!
</p>
        <p>
Kate
</p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ce044208-f361-46f8-983f-bda38d7891b4" />
      </body>
      <title>Win my ticket to C++ on Sea!</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=ce044208-f361-46f8-983f-bda38d7891b4</guid>
      <link>http://www.gregcons.com/KateBlog/WinMyTicketToCOnSea.aspx</link>
      <pubDate>Mon, 03 Sep 2018 16:32:39 GMT</pubDate>
      <description>&lt;p&gt;
Next year, I'll be keynoting a new C++ conference, &lt;a href="https://cpponsea.uk/index.html"&gt;C++
on Sea&lt;/a&gt;. I'm really looking forward to it. A little while ago, they ran a "tweet
why you want to go" &lt;a href="https://cpponsea.uk/news/win-a-free-ticket-for-cpp-on-sea.html"&gt;contest
for a free ticket&lt;/a&gt;, and said that if the winner already had a ticket, the conference
would help the winner give away the ticket.
&lt;/p&gt;
&lt;p&gt;
Can you guess where this is going? &lt;a href="https://cpponsea.uk/news/free-ticket-winner.html"&gt;I
won the ticket.&lt;/a&gt; I already have one, so you can win mine. Here's what you need
to do:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Choose a way to "give back" to your community before, during and after attending.
This might be blogging, tweeting, hosting a local meetup where you talk about what
you saw and recommend specific talks for others to watch later, or even activities
at the conference like giving a lightning talk. 
&lt;/li&gt;
&lt;li&gt;
Gather supporting links - to your blog, your repo, your YouTube Channel, the meetup
site, and so on 
&lt;/li&gt;
&lt;li&gt;
If your plan won't fit in a tweet, put it somewhere that it will fit. Include lots
of links - I want people to find your blog, channel, meetup etc even if you don't
win 
&lt;/li&gt;
&lt;li&gt;
Tweet me (&lt;a href="https://twitter.com/gregcons"&gt;@gregcons&lt;/a&gt;) with your plan or
a link to it. I will retweet. Focus on what you will give if you are able to attend
the conference.(It's not that I don't care whether you are deserving or can't afford
to go or whatever, I do, but I am going to focus on how you will share your good fortune
with others.)&lt;br&gt;
&lt;/li&gt;
&lt;li&gt;
If you're not on Twitter, post on my public Facebook page. You can't just email me
because the idea is to promote those links to blogs, channels, meetups, and suchlike. 
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
That's it! I'll choose someone, probably by filtering to everyone who is offering
to do something generous and then randomly choosing one, but I reserve the right to
choose the single person who comes up with the most amazing plan. I'll tell the conference
that you get my ticket. 
&lt;/p&gt;
&lt;p&gt;
Fine print: this is just admission to the conference. Not travel or hotel. Not paid
time off work. You'll need to cover that yourself. I suggest that telling your boss
you won the ticket because of your community involvement might be quite helpful as
far as that is concerned :-). And while I can't force you to keep your promise, I
will remember if you do, and that will probably be a good thing for you over and above
the rewards of doing those good things for the community.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Good Luck!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=ce044208-f361-46f8-983f-bda38d7891b4" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=629fc891-e1ae-4f51-ad56-0a6d491ecb04</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=629fc891-e1ae-4f51-ad56-0a6d491ecb04</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Latest Speaking Schedule</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=629fc891-e1ae-4f51-ad56-0a6d491ecb04</guid>
      <link>http://www.gregcons.com/KateBlog/LatestSpeakingSchedule.aspx</link>
      <pubDate>Sat, 09 Jun 2018 20:24:48 GMT</pubDate>
      <description>&lt;p&gt;
Here's what's coming up over the next few quarters:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
August 27-30: &lt;a href="https://ndctechtown.com/speaker/kate-gregory/"&gt;NDC Techtown
(two talks)&lt;br&gt;
&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
Sept 23-29: &lt;a href="https://cppcon.org/"&gt;CppCon &lt;/a&gt;(&lt;a href="https://cppcon.org/engage-entertain-educate/"&gt;preconference
day&lt;/a&gt;; main conference talks not yet announced)&lt;/li&gt;
&lt;li&gt;
Oct 18th-19th: &lt;a href="https://pacificplusplus.com/"&gt;Pacific++&lt;/a&gt; (two talks)&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;
Submissions are still open so if you want to join me in Sydney as a presenter, get
on that!&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;
Nov 15th-17th: &lt;a href="http://meetingcpp.com/2018/"&gt;Meeting C++&lt;/a&gt; - I will &lt;b&gt;not &lt;/b&gt;be
speaking here (I just can't fit it in), but I want you to know it's happening&lt;/li&gt;
&lt;li&gt;
Feb 4th-6th 2019: &lt;a href="https://cpponsea.uk/news/dates-and-keynote-speakers-announced.html"&gt;C++
on Sea&lt;/a&gt; (keynote at this brand new conference)&lt;/li&gt;
&lt;li&gt;
April 2019 - ACCU (nothing announced yet, but I plan to be there)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
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!
&lt;/p&gt;
&lt;p&gt;
Hope I get to see plenty of people in these various places,
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=629fc891-e1ae-4f51-ad56-0a6d491ecb04" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Playlist of recent conference talks</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=752ef692-bc9a-4705-b13f-1720c68bd721</guid>
      <link>http://www.gregcons.com/KateBlog/PlaylistOfRecentConferenceTalks.aspx</link>
      <pubDate>Tue, 01 May 2018 17:20:11 GMT</pubDate>
      <description>&lt;p&gt;
More and more conferences are making talks available on YouTube. I've decided to put
the links on a &lt;a href="https://www.youtube.com/playlist?list=PLsAtvvJ8KXBT-Tx67H5P3TgkiW6llnoBE"&gt;playlist &lt;/a&gt;to
make them easier for me to find. You can use it too!
&lt;/p&gt;
&lt;p&gt;
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. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
When more of my videos get uploaded, I'll try to keep the playlist up to date.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Other recent appearances include &lt;a href="http://cppcast.com/2018/05/kate-gregory/"&gt;episode
148&lt;/a&gt; of CppCast. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=752ef692-bc9a-4705-b13f-1720c68bd721" /&gt;</description>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">In 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" /></body>
      <title>Speaking in November: Berlin and Beijing</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=6f864c8f-ed04-441b-8b57-0a55bf82fc72</guid>
      <link>http://www.gregcons.com/KateBlog/SpeakingInNovemberBerlinAndBeijing.aspx</link>
      <pubDate>Thu, 19 Oct 2017 12:08:43 GMT</pubDate>
      <description>In 2016 I didn't speak at conferences because I was ill. I really enjoyed getting "back in harness" at CppCon this year (&lt;a href="https://www.youtube.com/watch?v=XkDEzfpdcSg"&gt;my
Guidelines talk&lt;/a&gt; has been uploaded already, if you missed it) and I am happily
looking forward to my next two conferences.&lt;br&gt;
&lt;br&gt;
In Berlin I will deliver one of the &lt;a href="http://meetingcpp.com/meetingcpp/news/items/Keynotes-at-Meeting-Cpp-2017.html"&gt;keynotes
for Meeting C++&lt;/a&gt;. 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.&lt;br&gt;
&lt;br&gt;
The next week, I will be at the &lt;a href="http://cpp-summit.org/en"&gt;2017 C++ and System
Software Summit&lt;/a&gt; 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. 
&lt;br&gt;
&lt;br&gt;
I'm still thinking about what I will &lt;a href="https://cfp.conference.accu.org/"&gt;submit
to ACCU&lt;/a&gt; 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!&lt;br&gt;
&lt;br&gt;
Kate&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=6f864c8f-ed04-441b-8b57-0a55bf82fc72" /&gt;</description>
      <category>C++</category>
      <category>C++ Guidelines</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>PluralsightLIVE and Author Summit</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=207e6846-62f3-496e-96e8-55d4897759f9</guid>
      <link>http://www.gregcons.com/KateBlog/PluralsightLIVEAndAuthorSummit.aspx</link>
      <pubDate>Sat, 23 Sep 2017 13:50:51 GMT</pubDate>
      <description>&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
Pluralsight takes great care of its authors and that started with a lovely box of
goodies in my room the first night. 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170919_074102 small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
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!
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/aaron selfie pslive.jpg" width="600" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
PluralsightLIVE itself started Tuesday night with a reception in the partner pavilion
and an evening event I wasn’t able to stay up for. 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_090940 small.jpg" border="0"&gt; &lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_102333 small.jpg" border="0"&gt; &lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_180239 small.jpg" border="0"&gt; 
&lt;/p&gt;
&lt;p&gt;
That's my shirt being printed on the spot for me!
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_195827 small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
That's the very popular candy dispenser array.
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
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 &lt;a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites"&gt;my
Stack Exchange course&lt;/a&gt;! Then he liked my tweet afterwards so that was fun.
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
(If you want to take &lt;a href="https://app.pluralsight.com/profile/author/kate-gregory"&gt;one
of my courses&lt;/a&gt;, 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.)&lt;br&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_111751 cropped small.jpg" border="0"&gt; &lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170920_123339 cropped small.jpg" border="0"&gt;&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170921_123934 cropped small.jpg" border="0"&gt; &lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170921_111732 cropped small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
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:
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/score.jpg" width="400" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
After I tweeted my results, a whole pile of my C++ tribe also &lt;a href="https://www.pluralsight.com/product/pluralsight-iq"&gt;got
their scores&lt;/a&gt;, and I even outscored a few! (Plus, I think they found a few bugs
in the assessment – I’m going to get them fixed.)
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/20170921_180704 cropped small.jpg" border="0"&gt;
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=207e6846-62f3-496e-96e8-55d4897759f9" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Let's Have Dinner at CppCon</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968</guid>
      <link>http://www.gregcons.com/KateBlog/LetsHaveDinnerAtCppCon.aspx</link>
      <pubDate>Mon, 11 Sep 2017 20:01:06 GMT</pubDate>
      <description>&lt;p&gt;
This year's innovation at &lt;a href="https://cppcon.org/"&gt;CppCon &lt;/a&gt;is a &lt;a href="https://cppcon2017.sched.com/event/BhdF"&gt;Meet
the Speakers Dinner&lt;/a&gt; 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!&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
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. 
&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0d5f4bbb-1c90-4539-b3e4-1cdeac9a0968" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Renewed as an RD</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af</guid>
      <link>http://www.gregcons.com/KateBlog/RenewedAsAnRD.aspx</link>
      <pubDate>Wed, 05 Apr 2017 16:25:38 GMT</pubDate>
      <description>&lt;p&gt;
Well, this is exciting!
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;a href="http://www.msrd.io/"&gt;&lt;img src="http://www.gregcons.com/KateBlog/content/binary/msrd-logo-384px-alpha.png" height="262" width="917" border="0"&gt;&lt;/a&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
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 &lt;a href="http://www.msrd.io/"&gt;Microsoft Regional
Director&lt;/a&gt; until at least June 30th, 2019. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;p&gt;
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.&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=b9594f0b-c15a-46a4-a05a-3fd4dfb9a6af" /&gt;</description>
      <category>Consulting Life</category>
      <category>RD</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <!--[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">  </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">  </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">  </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">  </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"> </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">  </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">  </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" />
      </body>
      <title>Surviving incurable cancer</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=911c06e5-5d9d-4627-a945-77aa13f7ba01</guid>
      <link>http://www.gregcons.com/KateBlog/SurvivingIncurableCancer.aspx</link>
      <pubDate>Mon, 27 Feb 2017 19:04:42 GMT</pubDate>
      <description>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;&lt;b&gt;Tl;dr&lt;/b&gt; – 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 &lt;b&gt;obsolete&lt;/b&gt;.
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.&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp; &lt;/span&gt;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.&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;So &lt;b&gt;details&lt;/b&gt;, 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.&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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 &lt;a href="https://en.wikipedia.org/wiki/Melanoma"&gt;Wikipedia
on the matter&lt;/a&gt;:&lt;/span&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;b&gt;But, here’s where things take a turn.&lt;/b&gt; 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 &lt;b&gt;he &lt;/b&gt;was
like no-one I have ever met.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal"&gt;
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.&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp; &lt;/span&gt;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 &lt;a href="http://www.mayoclinic.org/diseases-conditions/cancer/in-depth/cancer/art-20044517"&gt;some
stats available&lt;/a&gt; about your particular type and stage of cancer.&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;a href="http://www.mayoclinic.org/diseases-conditions/cancer/in-depth/cancer/art-20044517"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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 &lt;i&gt;incurable&lt;/i&gt;. &lt;b&gt;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.&lt;/b&gt; 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.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p class="MsoNormal"&gt;
Right, diversion&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp; &lt;/span&gt;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. &lt;span style="mso-spacerun:yes"&gt;&amp;nbsp;&lt;/span&gt;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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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. 
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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 &lt;b&gt;total&lt;/b&gt;. 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.&lt;br&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp; &lt;/span&gt;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. 
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal"&gt;
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, &lt;i&gt;you are not in a fight with the hill&lt;/i&gt;.
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 &lt;i&gt;at&lt;/i&gt; you, &lt;i&gt;for&lt;/i&gt; you, &lt;i&gt;because
of&lt;/i&gt; you. It just &lt;b&gt;is&lt;/b&gt;. 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 &lt;i&gt;trying &lt;/i&gt;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.&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;b&gt;I can’t kick cancer’s
ass because cancer is heartless, mindless, assless.&lt;/b&gt; My metaphor is more about
cleaning up. Something is &lt;i&gt;wrong &lt;/i&gt;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. &lt;i&gt;This
needs to be cleaned up. &lt;/i&gt;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.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p class="MsoNormal"&gt;
By December I really could tell I had turned a corner. I wrote in a family email update:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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, &lt;i&gt;Costco in December&lt;/i&gt;. That probably tells you all you need to know
about my energy levels.&lt;/span&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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:&lt;/span&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;“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. 
&lt;br&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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. &lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;The only question remaining is
how long to keep treating me for.&lt;span style="mso-spacerun:yes"&gt;&amp;nbsp; &lt;/span&gt;We have
switched, as scheduled, from &lt;/span&gt;Ipilimumab &lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;and &lt;/span&gt;Nivolumab&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt; every
3 weeks to just &lt;/span&gt;Nivolumab&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt; 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.&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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.&lt;br&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;So that is where I am. &lt;b&gt;My tumours
are dramatically shrunken or gone, and may never come back.&lt;/b&gt; 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.&lt;b&gt; I got better.&lt;/b&gt; 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.&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;I decided to share all of this
detail for a few reasons.&lt;/span&gt;
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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.&lt;/span&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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.&lt;/span&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;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?&lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;I will still be less active than
usual for a while, but I am working my way back to being my old self.&lt;/span&gt;
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
&lt;span style="mso-ansi-language:EN-US" lang="EN-US"&gt;Kate&lt;/span&gt;
&lt;/p&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;EN-CA&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val="Cambria Math"/&gt;
   &lt;m:brkBin m:val="before"/&gt;
   &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;
   &lt;m:smallFrac m:val="off"/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val="0"/&gt;
   &lt;m:rMargin m:val="0"/&gt;
   &lt;m:defJc m:val="centerGroup"/&gt;
   &lt;m:wrapIndent m:val="1440"/&gt;
   &lt;m:intLim m:val="subSup"/&gt;
   &lt;m:naryLim m:val="undOvr"/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
  DefSemiHidden="false" DefQFormat="false" DefPriority="99"
  LatentStyleCount="371"&gt;
  &lt;w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="header"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footer"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="35" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="caption"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of figures"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope return"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="line number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="page number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of authorities"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="macro"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="toa heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Closing"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Signature"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" SemiHidden="true"
   UnhideWhenUsed="true" Name="Default Paragraph Font"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Message Header"/&gt;
  &lt;w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Salutation"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Date"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Note Heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Block Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Hyperlink"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="FollowedHyperlink"/&gt;
  &lt;w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/&gt;
  &lt;w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Document Map"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Plain Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="E-mail Signature"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Top of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Bottom of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal (Web)"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Acronym"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Cite"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Code"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Definition"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Keyboard"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Preformatted"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Sample"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Typewriter"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Variable"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Table"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation subject"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="No List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Contemporary"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Elegant"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Professional"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Balloon Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="Table Grid"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Theme"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Revision"/&gt;
  &lt;w:LsdException Locked="false" Priority="34" QFormat="true"
   Name="List Paragraph"/&gt;
  &lt;w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="30" QFormat="true"
   Name="Intense Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="19" QFormat="true"
   Name="Subtle Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="21" QFormat="true"
   Name="Intense Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="31" QFormat="true"
   Name="Subtle Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="32" QFormat="true"
   Name="Intense Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="37" SemiHidden="true"
   UnhideWhenUsed="true" Name="Bibliography"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 6"/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* 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;}
&lt;/style&gt;
&lt;![endif]--&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=911c06e5-5d9d-4627-a945-77aa13f7ba01" /&gt;</description>
      <category>Consulting Life</category>
      <category>Meta</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297ab</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297ab</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Still an MVP!</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=0cb9992e-9e52-4438-8a19-911fe3f297ab</guid>
      <link>http://www.gregcons.com/KateBlog/StillAnMVP.aspx</link>
      <pubDate>Wed, 04 Jan 2017 17:08:17 GMT</pubDate>
      <description>&lt;p&gt;
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 &lt;a href="https://mvp.microsoft.com/en-us/PublicProfile/9511?fullName=Kate%20%20Gregory"&gt;I
have been renewed for 2017&lt;/a&gt; and will continue to be part of this active community. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Looking forward to a terrific 2017,
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=0cb9992e-9e52-4438-8a19-911fe3f297ab" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>MVP</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54eb</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54eb</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">It 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" /></body>
      <title>Not at CppCon</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=80b293ba-6e73-4a96-a1c1-6a789cce54eb</guid>
      <link>http://www.gregcons.com/KateBlog/NotAtCppCon.aspx</link>
      <pubDate>Fri, 16 Sep 2016 14:59:08 GMT</pubDate>
      <description>It has been a &lt;b&gt;very &lt;/b&gt;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) &lt;a href="http://cppcon.org/"&gt;CppCon&lt;/a&gt;. 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. 
&lt;br&gt;
&lt;br&gt;
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 &lt;a href="https://twitter.com/hashtag/CppCon?src=hash"&gt;#CppCon&lt;/a&gt; on
twitter, and watching &lt;a href="http://youtube.com/cppcon"&gt;the YouTube channel&lt;/a&gt; for
new videos - the plenaries and keynotes get up really fast. If you're not there in
person, be there virtually like me!&lt;br&gt;
&lt;br&gt;
Kate&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=80b293ba-6e73-4a96-a1c1-6a789cce54eb" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Meta</category>
      <category>Speaking</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
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.
</p>
        <p>
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 :-).
</p>
        <p>
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. 
</p>
        <p>
Kate
</p>
        <p>
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.
</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:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin-top:0cm;
	mso-para-margin-right:0cm;
	mso-para-margin-bottom:8.0pt;
	mso-para-margin-left:0cm;
	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-fareast-language:EN-US;}
</style>
<![endif]-->
        <p>
        </p>
        <img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=012b223f-b10f-4afb-8209-9decc1b5ac02" />
      </body>
      <title>Farewell, Joyce</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=012b223f-b10f-4afb-8209-9decc1b5ac02</guid>
      <link>http://www.gregcons.com/KateBlog/FarewellJoyce.aspx</link>
      <pubDate>Fri, 26 Feb 2016 20:53:18 GMT</pubDate>
      <description>&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
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 :-).
&lt;/p&gt;
&lt;p&gt;
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. 
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;EN-CA&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val="Cambria Math"/&gt;
   &lt;m:brkBin m:val="before"/&gt;
   &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;
   &lt;m:smallFrac m:val="off"/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val="0"/&gt;
   &lt;m:rMargin m:val="0"/&gt;
   &lt;m:defJc m:val="centerGroup"/&gt;
   &lt;m:wrapIndent m:val="1440"/&gt;
   &lt;m:intLim m:val="subSup"/&gt;
   &lt;m:naryLim m:val="undOvr"/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
  DefSemiHidden="false" DefQFormat="false" DefPriority="99"
  LatentStyleCount="371"&gt;
  &lt;w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="header"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footer"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="35" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="caption"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of figures"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope return"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="line number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="page number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of authorities"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="macro"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="toa heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Closing"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Signature"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" SemiHidden="true"
   UnhideWhenUsed="true" Name="Default Paragraph Font"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Message Header"/&gt;
  &lt;w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Salutation"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Date"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Note Heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Block Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Hyperlink"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="FollowedHyperlink"/&gt;
  &lt;w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/&gt;
  &lt;w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Document Map"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Plain Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="E-mail Signature"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Top of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Bottom of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal (Web)"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Acronym"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Cite"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Code"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Definition"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Keyboard"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Preformatted"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Sample"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Typewriter"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Variable"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Table"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation subject"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="No List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Contemporary"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Elegant"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Professional"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Balloon Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="Table Grid"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Theme"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Revision"/&gt;
  &lt;w:LsdException Locked="false" Priority="34" QFormat="true"
   Name="List Paragraph"/&gt;
  &lt;w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="30" QFormat="true"
   Name="Intense Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="19" QFormat="true"
   Name="Subtle Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="21" QFormat="true"
   Name="Intense Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="31" QFormat="true"
   Name="Subtle Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="32" QFormat="true"
   Name="Intense Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="37" SemiHidden="true"
   UnhideWhenUsed="true" Name="Bibliography"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 6"/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* 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:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin-top:0cm;
	mso-para-margin-right:0cm;
	mso-para-margin-bottom:8.0pt;
	mso-para-margin-left:0cm;
	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-fareast-language:EN-US;}
&lt;/style&gt;
&lt;![endif]--&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=012b223f-b10f-4afb-8209-9decc1b5ac02" /&gt;</description>
      <category>Consulting Life</category>
      <category>Meta</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=f52cd6c4-c8fd-4801-b8d1-71cb980beef6</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=f52cd6c4-c8fd-4801-b8d1-71cb980beef6</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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>
    int* p = nullptr;<br />
    *p = 10;   
</p>
        <p>
But it doesn’t mind things like this:
</p>
        <p>
    int arr[10];        <br />
    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 />
  stdafx.cpp<br />
  ConsoleApplication1.cpp<br />
  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" />
      </body>
      <title>C++ Core Guidelines and Checking Tool</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=f52cd6c4-c8fd-4801-b8d1-71cb980beef6</guid>
      <link>http://www.gregcons.com/KateBlog/CCoreGuidelinesAndCheckingTool.aspx</link>
      <pubDate>Mon, 07 Dec 2015 18:54:57 GMT</pubDate>
      <description>&lt;p&gt;
The &lt;a href="https://www.youtube.com/watch?v=1OEu9C51K2A&amp;amp;index=1&amp;amp;list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh"&gt;first
keynote&lt;/a&gt; at &lt;a href="https://www.youtube.com/playlist?list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh"&gt;CppCon &lt;/a&gt;this
year was Bjarne Stroustrup (who invented the C++ language) announcing the &lt;a href="https://github.com/isocpp/cppcoreguidelines"&gt;C++
Core Guidelines&lt;/a&gt;. They are on Github and once he announced them, as Herb Sutter
reported in the &lt;a href="https://www.youtube.com/watch?v=hEx5DNLWGgA&amp;amp;index=2&amp;amp;list=PLHTh1InhhwT75gykhs7pqcR_uSiG601oh"&gt;second
keynote&lt;/a&gt; the very next day, they quickly became a trending topic across all languages.
Here is a description of the guidelines from there:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;
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?
&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
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:
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;int* p = nullptr;&lt;br&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;*p = 10;&amp;nbsp; &amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
But it doesn’t mind things like this:
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;int arr[10];&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp;int* p2 = arr;
&lt;/p&gt;
&lt;p&gt;
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 &lt;a href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay"&gt;guideline &lt;/a&gt;that
says don’t do that. Specifically:&lt;br&gt;
&lt;a href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay"&gt;&lt;img src="http://www.gregcons.com/KateBlog/content/binary/bounds3.jpg" border="0" width="700"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
(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.)
&lt;/p&gt;
&lt;p&gt;
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 &lt;i&gt;tools &lt;/i&gt;I might
be overstating the case a little. There’s just one tool at the moment, but that could
be enough!
&lt;/p&gt;
&lt;p&gt;
This tool, &lt;a href="https://www.nuget.org/packages/Microsoft.CppCoreCheck/"&gt;C++ Core
Checker&lt;/a&gt;, 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++:
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.gregcons.com/KateBlog/content/binary/custominstall.jpg" border="0" width="230"&gt;
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
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 &lt;font face="Courier New"&gt;Install-Package
Microsoft.CppCoreCheck&lt;font face="Verdana"&gt; and press enter&lt;/font&gt;&lt;/font&gt;. You will
see output like this:
&lt;/p&gt;
&lt;p&gt;
Attempting to gather dependencies information for package 'Microsoft.CppCoreCheck.14.0.23107.2'
with respect to project 'ConsoleApplication1', targeting 'native,Version=v0.0'&lt;br&gt;
Attempting to resolve dependencies for package 'Microsoft.CppCoreCheck.14.0.23107.2'
with DependencyBehavior 'Lowest'&lt;br&gt;
Resolving actions to install package 'Microsoft.CppCoreCheck.14.0.23107.2'&lt;br&gt;
Resolved actions to install package 'Microsoft.CppCoreCheck.14.0.23107.2'&lt;br&gt;
Adding package 'Microsoft.Gsl.0.0.1' to folder 'c:\users\kate\documents\visual studio
2015\Projects\ConsoleApplication1\packages'&lt;br&gt;
Added package 'Microsoft.Gsl.0.0.1' to folder 'c:\users\kate\documents\visual studio
2015\Projects\ConsoleApplication1\packages'&lt;br&gt;
Added package 'Microsoft.Gsl.0.0.1' to 'packages.config'&lt;br&gt;
Successfully installed 'Microsoft.Gsl 0.0.1' to ConsoleApplication1&lt;br&gt;
Adding package 'Microsoft.CppCoreCheck.14.0.23107.2' to folder 'c:\users\kate\documents\visual
studio 2015\Projects\ConsoleApplication1\packages'&lt;br&gt;
Added package 'Microsoft.CppCoreCheck.14.0.23107.2' to folder 'c:\users\kate\documents\visual
studio 2015\Projects\ConsoleApplication1\packages'&lt;br&gt;
Added package 'Microsoft.CppCoreCheck.14.0.23107.2' to 'packages.config'&lt;br&gt;
Successfully installed 'Microsoft.CppCoreCheck 14.0.23107.2' to ConsoleApplication1&lt;br&gt;
PM&amp;gt;&lt;br&gt;
&lt;br&gt;
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:&lt;br&gt;
------ Rebuild All started: Project: ConsoleApplication1, Configuration: Debug Win32
------&lt;br&gt;
&amp;nbsp; stdafx.cpp&lt;br&gt;
&amp;nbsp; ConsoleApplication1.cpp&lt;br&gt;
&amp;nbsp; ConsoleApplication1.vcxproj -&amp;gt; c:\users\kate\documents\visual studio 2015\Projects\ConsoleApplication1\Debug\ConsoleApplication1.exe&lt;br&gt;
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)&lt;br&gt;
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)&lt;br&gt;
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
&lt;/p&gt;
&lt;p&gt;
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.&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
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?&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=f52cd6c4-c8fd-4801-b8d1-71cb980beef6" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Visual Studio 2015</category>
      <category>C++ Guidelines</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>My Visual Studio 2015 course is live!</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=7a506f3e-2387-4a63-b24d-dd6b3d6075b5</guid>
      <link>http://www.gregcons.com/KateBlog/MyVisualStudio2015CourseIsLive.aspx</link>
      <pubDate>Mon, 09 Nov 2015 17:18:54 GMT</pubDate>
      <description>&lt;p&gt;
I have a new Pluralsight course on Visual Studio called &lt;a href="http://www.pluralsight.com/courses/visual-studio-2015-essentials-power-user"&gt;Visual
Studio 2015: Essentials to the Power-User&lt;/a&gt;. 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:
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Getting Started (42:08)&lt;/li&gt;
&lt;li&gt;
Projects and Solutions (13:23)&lt;/li&gt;
&lt;li&gt;
Namespaces, Folders, and Files(27:03)&lt;/li&gt;
&lt;li&gt;
Understanding and Personalizing Visual Studio UI Components (26:57)&lt;/li&gt;
&lt;li&gt;
Exploring Relationships in Your Code(36:41)&lt;/li&gt;
&lt;li&gt;
Using Search and Find Effectively(28:15)&lt;/li&gt;
&lt;li&gt;
Letting Visual Studio Help You (46:28)&lt;/li&gt;
&lt;li&gt;
Basic Debugging Features (24:04)&lt;/li&gt;
&lt;li&gt;
Additional Debugging Features (44:30)&lt;/li&gt;
&lt;li&gt;
Working with Designers (39:37)&lt;/li&gt;
&lt;li&gt;
Useful Extensions (39:54)&lt;/li&gt;
&lt;li&gt;
IntelliTrace and Code Map (25:57)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
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.)
&lt;/p&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=7a506f3e-2387-4a63-b24d-dd6b3d6075b5" /&gt;</description>
      <category>Consulting Life</category>
      <category>Mentoring</category>
      <category>Seen and Recommended</category>
      <category>Visual Studio 2015</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6f</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6f</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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.  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.
</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" />
      </body>
      <title>Lovely comment on a course</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=5bf0d625-2194-4bde-9dee-fe9d58799c6f</guid>
      <link>http://www.gregcons.com/KateBlog/LovelyCommentOnACourse.aspx</link>
      <pubDate>Thu, 08 Oct 2015 21:43:35 GMT</pubDate>
      <description>&lt;p&gt;
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 &lt;a href="https://app.pluralsight.com/library/courses/using-stackoverflow-stackexchange-sites/table-of-contents"&gt;my
StackExchange course&lt;/a&gt; that brought a huge smile to my face:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
I have actually tried not to use Stack Exchange and stick to other sites.&amp;nbsp; I
had several bad experiences and have not gained any reputation at all on any questions
that I asked.&amp;nbsp; I have even deleted questions due to downvotes or other negative
activity.&amp;nbsp; Well after watching this, I understand the problems that I have had
in the past.&amp;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.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
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 &lt;b&gt;the exact reason why I wrote the course&lt;/b&gt;.
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.
&lt;/p&gt;
&lt;p&gt;
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 :-)&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=5bf0d625-2194-4bde-9dee-fe9d58799c6f" /&gt;</description>
      <category>Consulting Life</category>
      <category>Mentoring</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <!--[if gte mso 9]><xml>
 <o:OfficeDocumentSettings>
  <o:AllowPNG/>
 </o:OfficeDocumentSettings>
</xml><![endif]-->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 <a href="http://cppcon.org/">CppCon</a> 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. 
<p class="MsoNormal">
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.
</p><p class="MsoNormal">
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.)
</p><p class="MsoNormal">
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.
</p><p class="MsoNormal">
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.) <span style="mso-spacerun:yes"> </span>Maybe you want to
tell people about something? Tweet some number of times? Blog some number of times? <span style="mso-spacerun:yes"> </span>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.
</p><p class="MsoNormal">
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.
</p><p class="MsoNormal">
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.
</p><p class="MsoNormal">
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.
</p><p class="MsoNormal">
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.
</p><p class="MsoNormal">
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. 
</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:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin-top:0cm;
	mso-para-margin-right:0cm;
	mso-para-margin-bottom:8.0pt;
	mso-para-margin-left:0cm;
	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-fareast-language:EN-US;}
</style>
<![endif]--><p></p><img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9822ef2b-bb8e-438c-a04c-0b567dd78478" /></body>
      <title>Surviving an intense conference</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=9822ef2b-bb8e-438c-a04c-0b567dd78478</guid>
      <link>http://www.gregcons.com/KateBlog/SurvivingAnIntenseConference.aspx</link>
      <pubDate>Sat, 26 Sep 2015 15:39:17 GMT</pubDate>
      <description>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;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 &lt;a href="http://cppcon.org/"&gt;CppCon&lt;/a&gt; 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. 
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.)
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.) &lt;span style="mso-spacerun:yes"&gt;&amp;nbsp;&lt;/span&gt;Maybe you want to
tell people about something? Tweet some number of times? Blog some number of times? &lt;span style="mso-spacerun:yes"&gt;&amp;nbsp;&lt;/span&gt;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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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.
&lt;/p&gt;
&lt;p class="MsoNormal"&gt;
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. 
&lt;/p&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;EN-CA&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val="Cambria Math"/&gt;
   &lt;m:brkBin m:val="before"/&gt;
   &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;
   &lt;m:smallFrac m:val="off"/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val="0"/&gt;
   &lt;m:rMargin m:val="0"/&gt;
   &lt;m:defJc m:val="centerGroup"/&gt;
   &lt;m:wrapIndent m:val="1440"/&gt;
   &lt;m:intLim m:val="subSup"/&gt;
   &lt;m:naryLim m:val="undOvr"/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
  DefSemiHidden="false" DefQFormat="false" DefPriority="99"
  LatentStyleCount="371"&gt;
  &lt;w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="heading 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" Name="toc 9"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="header"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footer"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="index heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="35" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="caption"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of figures"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="envelope return"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="footnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="line number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="page number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote reference"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="endnote text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="table of authorities"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="macro"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="toa heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Bullet 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Number 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Closing"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Signature"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" SemiHidden="true"
   UnhideWhenUsed="true" Name="Default Paragraph Font"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="List Continue 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Message Header"/&gt;
  &lt;w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Salutation"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Date"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text First Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Note Heading"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Body Text Indent 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Block Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Hyperlink"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="FollowedHyperlink"/&gt;
  &lt;w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/&gt;
  &lt;w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Document Map"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Plain Text"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="E-mail Signature"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Top of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Bottom of Form"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal (Web)"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Acronym"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Address"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Cite"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Code"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Definition"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Keyboard"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Preformatted"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Sample"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Typewriter"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="HTML Variable"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Normal Table"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="annotation subject"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="No List"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Outline List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Simple 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Classic 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Colorful 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Columns 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Grid 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 4"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 5"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 6"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 7"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table List 8"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table 3D effects 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Contemporary"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Elegant"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Professional"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Subtle 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 2"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Web 3"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Balloon Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="Table Grid"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
   Name="Table Theme"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" SemiHidden="true" Name="Revision"/&gt;
  &lt;w:LsdException Locked="false" Priority="34" QFormat="true"
   Name="List Paragraph"/&gt;
  &lt;w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="30" QFormat="true"
   Name="Intense Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="19" QFormat="true"
   Name="Subtle Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="21" QFormat="true"
   Name="Intense Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="31" QFormat="true"
   Name="Subtle Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="32" QFormat="true"
   Name="Intense Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="37" SemiHidden="true"
   UnhideWhenUsed="true" Name="Bibliography"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" SemiHidden="true"
   UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/&gt;
  &lt;w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="Grid Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="Grid Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="Grid Table 7 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/&gt;
  &lt;w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="46"
   Name="List Table 1 Light Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="51"
   Name="List Table 6 Colorful Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="52"
   Name="List Table 7 Colorful Accent 6"/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;
&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* 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:0cm 5.4pt 0cm 5.4pt;
	mso-para-margin-top:0cm;
	mso-para-margin-right:0cm;
	mso-para-margin-bottom:8.0pt;
	mso-para-margin-left:0cm;
	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-fareast-language:EN-US;}
&lt;/style&gt;
&lt;![endif]--&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=9822ef2b-bb8e-438c-a04c-0b567dd78478" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Speaking</category>
      <category>Travel</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=65abf2e3-40c7-45ff-831d-6682afbb5740</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=65abf2e3-40c7-45ff-831d-6682afbb5740</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Are you a student? Win a trip to CppCon</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=65abf2e3-40c7-45ff-831d-6682afbb5740</guid>
      <link>http://www.gregcons.com/KateBlog/AreYouAStudentWinATripToCppCon.aspx</link>
      <pubDate>Thu, 11 Jun 2015 19:38:34 GMT</pubDate>
      <description>&lt;p&gt;
One of the &lt;a href="http://cppcon.org/"&gt;CppCon &lt;/a&gt;sponsors, Bloomberg, is running
a &lt;a href="http://www.bloomberg.com/company/announcements/special-c-codecon-challenge-cppcon-now-open-registration/"&gt;contest &lt;/a&gt;for
students in university or college and giving away trips to attend CppCon2015 in September
in Bellevue, Washington:
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Interested? You should be. CppCon is a great experience for students and one you won't
soon forget.
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=65abf2e3-40c7-45ff-831d-6682afbb5740" /&gt;</description>
      <category>C++</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>What’s New in C# 6.0 - Wednesday in Pickering with Kathleen Dollard</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e42a6be8-4ac5-4a92-b1bf-47824bf570e7</guid>
      <link>http://www.gregcons.com/KateBlog/WhatsNewInC60WednesdayInPickeringWithKathleenDollard.aspx</link>
      <pubDate>Mon, 12 Jan 2015 23:10:01 GMT</pubDate>
      <description>&lt;p&gt;
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". 
&lt;br&gt;
&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
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.
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
Join us at 6pm at the Pickering Central Library! Please register at &lt;a href="http://www.meetup.com/easttorontoug/events/219671481/"&gt;the
Meetup page&lt;/a&gt;. See you there!
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=e42a6be8-4ac5-4a92-b1bf-47824bf570e7" /&gt;</description>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Visual Studio 2015</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4f</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4f</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Video - Stack Exchange Winter Bash (hats)</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=976bcbd1-2c61-4e9f-b441-bb2220be2d4f</guid>
      <link>http://www.gregcons.com/KateBlog/VideoStackExchangeWinterBashHats.aspx</link>
      <pubDate>Wed, 24 Dec 2014 15:43:41 GMT</pubDate>
      <description>&lt;p&gt;
In my Pluralsight course, &lt;a href="http://shrsl.com/?~78zb"&gt;Using StackOverflow and
Other StackExchange Sites&lt;/a&gt;, 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. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
Right now, Winter Bash is on and it's just for fun. I made &lt;a href="http://youtu.be/yWLKYPVrdr0"&gt;a
quick video&lt;/a&gt; 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.
&lt;/p&gt;
&lt;p&gt;
Kate&lt;br&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=976bcbd1-2c61-4e9f-b441-bb2220be2d4f" /&gt;</description>
      <category>Consulting Life</category>
      <category>Mentoring</category>
      <category>Seen and Recommended</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">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. 
<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#.  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" /></body>
      <title>Updated bio</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f</guid>
      <link>http://www.gregcons.com/KateBlog/UpdatedBio.aspx</link>
      <pubDate>Fri, 26 Sep 2014 13:06:36 GMT</pubDate>
      <description>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. &lt;br&gt;
&lt;br&gt;
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:&lt;br&gt;
&lt;blockquote&gt;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#.&amp;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.&lt;br&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;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.&lt;br&gt;
&lt;/blockquote&gt;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:&lt;br&gt;
&lt;blockquote&gt;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.&lt;br&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;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.&lt;br&gt;
&lt;/blockquote&gt;What do you think? Better?&lt;br&gt;
&lt;br&gt;
Kate&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=eb2a42fb-5a7f-40a6-a8cd-7a3335745c6f" /&gt;</description>
      <category>Consulting Life</category>
    </item>
    <item>
      <trackback:ping>http://www.gregcons.com/KateBlog/Trackback.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0</trackback:ping>
      <pingback:server>http://www.gregcons.com/KateBlog/pingback.aspx</pingback:server>
      <pingback:target>http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0</pingback:target>
      <dc:creator>Kate Gregory</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <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" />
      </body>
      <title>Play By Play video session - exploring ancient C++ code</title>
      <guid isPermaLink="false">http://www.gregcons.com/KateBlog/PermaLink.aspx?guid=e3bb31c3-305b-4ca1-9162-d6ba490758f0</guid>
      <link>http://www.gregcons.com/KateBlog/PlayByPlayVideoSessionExploringAncientCCode.aspx</link>
      <pubDate>Tue, 12 Aug 2014 17:34:43 GMT</pubDate>
      <description>&lt;p&gt;
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 &lt;a href="http://beta.pluralsight.com/courses/play-by-play-kate-gregory"&gt;a
Play by Play video&lt;/a&gt; with Geoffrey Grosenbach. He has a genuine skill of getting
you to demonstrate your own thought processes aloud and I've enjoyed watching &lt;a href="http://beta.pluralsight.com/tag/play%20by%20play"&gt;other
people's Play by Play sessions&lt;/a&gt; a lot. 
&lt;/p&gt;
&lt;p&gt;
Geoffrey had arranged for some ancient C++ code for me to poke around in. &lt;a href="http://beta.pluralsight.com/author/mike-woodring"&gt;Mike
Woodring&lt;/a&gt; came through with the sample code from his 1997 book with Aaron Cohen, &lt;a href="http://www.amazon.com/WIN32-Multithreaded-Programming-Aaron-Cohen/dp/1565922964"&gt;WIN32
Multithreaded Programming&lt;/a&gt;. 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.
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://beta.pluralsight.com/courses/play-by-play-kate-gregory"&gt;&lt;img src="http://www.gregcons.com/KateBlog/content/binary/pbp.jpg" border="0"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
It came out to about 90 minutes overall so if you have a chance to watch it, let me
know what you thought!
&lt;/p&gt;
&lt;p&gt;
Kate
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.gregcons.com/KateBlog/aggbug.ashx?id=e3bb31c3-305b-4ca1-9162-d6ba490758f0" /&gt;</description>
      <category>C++</category>
      <category>Concurrency</category>
      <category>Consulting Life</category>
      <category>Seen and Recommended</category>
      <category>Speaking</category>
    </item>
  </channel>
</rss>