Thursday, September 28, 2006
I saw this interesting graph over at Language Log:
It compares "empathizing quotient" with "systemizing quotient" -- the extent to which you connect to others' emotions and the extent to which you like to categorize things and people, and fit them into your system of understanding. (This is just for one sample of people and doesn't necessarily apply to the entire world.) You can score very high in both, or very low in both, but as this graph shows, women tend to have higher EQ and men tend to have higher SQ, though the difference between the groups is less than a typical difference between individuals. Engineers and scientists tend to have much higher SQ and also lower EQ. The green symbols on this graph are results from people with Aspergers, or people diagnosed as High Functioning Autistic. Their SQ varies but their EQ is very low. You can take the test yourself if you like. I was surprised by questions like "When I read something, I always notice whether it is grammatically correct" -- that is 100% true of me but I thought it was my little quirk, not something that would appear on a test for personality traits. Then there was "Whenever I run out of something at home, I always add it to a shopping list." Who doesn't?
My results are perfectly ordinary for someone with a PhD in engineering, I think: EQ 36, SQ 77. That puts me about where the S is in the "extreme S" label. Interesting.
Wednesday, September 27, 2006
I've been dying to announce this one. I'm leaving Tech Ed Developers one day early to go to Copenhagen and do a C++ day November 10th. There's an announcement in Danish on the msevents site now. Here's the agenda:
Kl. 9.00-10.15: Visual C++: Højere produktivitet med Visual Studio 2005
Visual Studio 2005 indeholder en lang række produktivitets-forbedringer for C++ udvikleren. I denne session ser Kate Gregory nærmere på de mange nye features og forbedringer Visual Studio 2005 tilbyder. Endeligt viser hun en række tips og tricks, som ingen C++ udvikler bør være foruden.
Kl. 10.15-10.45: Pause
Kl. 10.45-12.45: Sådan flytter man C++ applikationer til .NET
Se hvordan man flytter C++ projekter til .NET og CLR’en uden at skulle porte eller genskrive hele koden. Lær hvordan man nemt kan migrere eksisterende native C++ kode – inklusiv MFC applikationer – til at køre under .NET. Kate Gregory vil også gennemgå strategier til at vælge hvilke dele af applikationen, der skal forblive i native kode og hvilke der skal flyttes til managed kode (.NET). Og endelig viser Kate hvordan du kan bruge .NET’s klassebibliotek og du kan bygge managed ”Wrappers”, som muliggør genbrug af eksisterende C++ klassebiblioteker.
Kl. 12.45-13.30: Frokost
Kl. 13.30- 14.30: Fremtiden er nu
Så længe, der har været software, har der været pc’er med stadigt stigende clockfrekvenser. Nu lader det til at den tendens er stoppet – i dag bliver maskinerne hurtigere ikke fordi clockfrekvens stiger, men forbi de får stadigt flere CPU’er. Det betyder at selv enkeltbruger-applikationer bliver nødt til at være multi threaded. Det skræmmende ved dét, er at de fleste udviklere ikke kan skrive thread safe kode. Kom og se, hvad det kan få af betydning for fremtidens software udvikling!
Kl. 14.30-15.00: Q&A
Kl. 15.00: Tak for i dag
I will be speaking entirely in English. (I'm not sure what "Sprog: Dansk" means but I hope it doesn't mean Language: Danish.) So far I have learned the word "Tak" and hope to use it extensively. I believe "Tak for i dag" means "thanks for the day" and that is going to be my motto this fall. Should you happen to live in Denmark, or near enough to it that you could attend this, and yet not know enough Danish to muddle through this agenda, I will tell you the titles of the sessions as I submitted them:
- IDE Features for Visual Studio 2005
- Moving C++ Applications to the Common Language Runtime
- The Future is Concurrent
See you there, I hope!
The sessions for Tech Ed Africa in Sun City are now available online at http://msevents.microsoft.co.za/teched2006/Sessions.aspx. I have three sessions there, here's how they look:
Notable names on this speaker list:
- Andre de Beer
- Ayal Rosenberg
- Colin Erasmus
- Dave Webster
- Hilton Giesenow
- Jay Schmelzer
- Ken Everett
- Kimberly Tripp
- Ruari Plint
- Simon Harris
- Steve Riley
Folks I've seen speak here before, for the most part. This is always a very enjoyable conference for me and I'm looking forward to seeing everyone again.
Tuesday, September 26, 2006
You can search sessions and see the schedule now, at http://www.mseventseurope.com/Teched/06/Pre/static/Developers/SessionSearch.aspx. Here's how my talk looks there:
Some names I know in the speaker list:
- Anders Hejlsberg
- Ayman Shoukry
- Brian Randell
- Carl Franklin
- Catherine Heller
- Christian Weyer
- Clemens Vasters
- Ingo Rammer
- Jackie Goldstein
- Jan Tielens
- Jay Schmelzer
- Jeff Prosise
- Kimberly Tripp
- Mike Fitzmaurice
- Patrick Tisseghem
- Richard Campbell
- Scott Hanselman
- Stephen Forte
- Steve Teixeira
- Steve Lasker
RDs, blogs I read, MS people... it's going to be a great time!
Monday, September 25, 2006
Shankar Vaidyanathan, who's been on the VC++ team for over 12 years, talked to Channel 9 in late July about why C++ devs actually do use and care about the IDE. He also shares some of the challenges for writing an IDE for very demanding customers. Watch this one immediately after the Boris one and you'll be an IDE guru!
Sunday, September 24, 2006
I don't know why I didn't see this earlier, but then again I had a tough summer. Here is Boris talking about the C++ IDE and a lot of the tips that were in my Tech Ed IDE talk ... the one with no slides. If you weren't at my talk then I guarantee you will learn something about VC++ from this video, and even if you were, you still might.
Update: I really should have included this link to Boris' blog. Maybe he will update it more often if he gets more traffic.
Saturday, September 23, 2006
No, I'm not talking about where the brace brackets go! Coding guidelines are so much more than style guidelines. One of the things that sets me apart from many other developers I know, and especially the authors of code I am asked to fix, is a drive for simplicity. For me, that comes down to three things:
- Start by solving the problem you're actually facing, not some enormous superset of it
- Write the straight ahead way first, then adjust for the exceptions and strange corner cases
- When it's all working, and every time you touch it from then on, look it over to see if you can make it simpler.
That last one is the one so many people seem to skip. Then later when I come along and read the code, I see how it could be simpler, but I hesitate to change it. They must have done it this complicated way for a reason, I think to myself. It can take quite a long time to prove to myself that no, they just settled for 'working' and ran away as fast as they could, leaving this mess for someone else to sort out later.
A mentoring client gave me a pointer to an article ostensibly on Coding Guidelines which is as much philosophical as anything else. I like it. The rules are:
- Make your code look like other people's code.
- Use the simplest design possible.
- Don't re-invent the wheel.
- Document your code.
- Keep security in mind.
- Work in increments.
- Work in iterations.
- Have your code reviewed.
- Don't stay blocked.
- Do unto others as you would have them do unto you.
There are no false notes in this list and I endorse this set of philosphies whole-heartedly.
Friday, September 22, 2006
The other day I spotted this:
It's two people around a bowl of salsa, holding a nacho chip as big as each of their heads (which is why it takes both of them to hold it, I guess.) But I had never noticed it before:
That reminded me of something else I never saw even after looking at the logo a million times:
That obvious arrow is lurking here:
So subtle, till someone shows it to you. Then so obvious. So it is with bugs, eh?
Thursday, September 21, 2006
How many Visual Studio Developers know about autoexp.dat? My guess is not many. This file, located in C:\Program Files\Microsoft Visual Studio 8\Common7\Packages\Debugger for a typical install, controls how the debugger shows values in the Data Tips, locals window, auto window, etc. The file is yours, it's on your own computer, and you're free to edit it. Here's how to do so for a really simple (and redundant) type, Point:
int x, y;
Point (int xx, int yy)
I ran a really simple app that constructed a point, and paused in the debugger for a data tip:
Then I edited autoexp.dat, adding this line:
I saved it and ran the debugger again, and now the tip looks like this:
You can do this for any class you write. It's your program, you might as well make your debugging life easier.
Oh, if you're wondering why my data tips are actually readable instead of in some tiny 3 point font, I blogged that earlier this summer.
© Copyright 2020 Kate Gregory
Theme design by Bryan Bell
newtelligence dasBlog 2.3.9074.18820
| Page rendered at Saturday, January 18, 2020 3:38:01 AM (Eastern Standard Time, UTC-05:00)
On this page....
Pluralsight Free Trial
Click Start a FREE 10-Day trial