# Sunday, December 18, 2005

Chris has uploaded the deck and a zip file of code for my "Moving C++ Applications to the .NET Framework" talk to the East of Toronto .NET User Group. If you're still thinking about C++/CLI maybe seeing what it does will help your thought processes.



Sunday, December 18, 2005 7:39:42 AM (Eastern Standard Time, UTC-05:00)  #    
# Saturday, December 17, 2005

December for me has been, well, challenging. And though it seems that everyone around me is shutting down for the year, I still have miles to go before I sleep. So I was pleased to notice that the standards process is marching on: ECMA reports that the 90th General Assembly held in Nice, December 9, 2005, approved Standard ECMA-372 (C++/CLI Language Specification).

Back to way too much of everything,

Saturday, December 17, 2005 11:09:22 AM (Eastern Standard Time, UTC-05:00)  #    
# Thursday, December 01, 2005

Vertigo is a seriously cool company that does a lot of .NET work and a lot of C++ work. Like us, they know how to combine the two. Unlike us, they are in California. Here's what CEO Scott Stanfield (a super hard working RD) told me about the job:

We’re trying to hire a full-time C++ developer to help us work on [pretty high-profile work for Microsoft.] Needs knowledge of Windows API (old-school stuff), COM, etc. Maybe ATL.

Intruigued, I got more details:

Must have:

  1. 2 to 4 years of Unmanaged C++/Windows Apps
  2. C++ Standard Library (Iterators, containers, etc.)
  3. ATL
  4. VS 2003
  5. Using COM with #import

 Knowledge that is nice to have but not necessary:

  1. Passport
  2. Windows 2003/XP or VISTA experience (ie. building apps for Microsoft)
  3. WTL
  4. Client side (single thread, event driven, custom drawing, experience with 32-bit, globalization)
  5. Server side (multi-threaded, critical sections, mutex – 1 app instance)
  6. Networking (WinHTTP, web services)
  7. VS 2005

P.S.  Bear in mind that our core expertise is .NET so the person would have to be willing to learn .NET and work on other projects besides C++ stuff every so often.

And of course, it is a great company to work for :).  We do a great job with developing careers and it is rock solid financially with excellent benefits.  Plus there is very minimal travel.

If you follow the links in the first paragraph, you'll figure out how to apply :)


Thursday, December 01, 2005 1:34:40 PM (Eastern Standard Time, UTC-05:00)  #    
# Saturday, November 26, 2005

Maybe it's the Rum Swizzle, but this limerick really worked for me:

I used to think math was no fun
'Cause I couldn't see how it was done
Now Euler's my hero
For I now see why zero
Is e to the pi i plus 1.

Thanks to Language Log,

Kate (Math major for a year or two, but ended up in Engineering)

Saturday, November 26, 2005 7:16:35 PM (Eastern Standard Time, UTC-05:00)  #    

Yesterday's beach was nice, but not really pink. So today's mission was to find a pinker one. It's one of the few days I've been able to check off everything on my todo list :-)



Saturday, November 26, 2005 3:28:16 PM (Eastern Standard Time, UTC-05:00)  #    
# Friday, November 25, 2005

Treasure chests, glass bottles, ropes of crystals that look like seeweed, the usual ribbons, balls, and pearls, all of that I can handle. Beyond the surrealism of Christmas decorations while you wander around in your bathing suit, that is. But one particular ornament on this tree made it worthy of a picture:

Ah yes, nothing says Christmas like a deadly jellyfish! Good thing I consider it too early for Christmas anyway.


Friday, November 25, 2005 7:30:20 PM (Eastern Standard Time, UTC-05:00)  #    
# Monday, November 14, 2005

I've been talking about C++/CLI in public for quite a while now: Tech Ed USA 2004 and 2005, Tech Ed Africa 2004 and 2005, C++ Connections in Las Vegas last week, several private webcasts, and of course in this blog. But in the last 18 months, travelling as far as 10,000 miles from home, I haven't done any part of this shapeshifting talk here in my own home. So it's time to change that. Come to the November meeting of the East of Toronto .NET Users Group and find out why people are saying:

  • "I love the .NET Framework, I love C++, and the new stuff looks to provide me a beautiful integration of the two. Question is, once it is released, will I ever code in C# again?"  -  Ed Ball
  • "this new development in C++ seriously undermines the justification for C# as a language. " - Grumpy Old Programmer
  • "By standardizing the syntax and semantics of a general purpose binding for C++ and the CLI, Ecma TG5 will provide the huge C++ developer community with a tool that enables them to easily write applications that make full use of the CLI platform, and will provide the developer community targeting the CLI with full support for the powerful C++ language. " - ECMA Standards Committee
  • "Visual C++ is positioning itself as the lowest level programming language for targeting the CLR. There should be no cause to use any other language, not even Microsoft intermediate language (MSIL). Secondly, .NET programming should be as natural as native C++ programming. ...If you love C++ and want to use all the power that C++ has traditionally offered, but also want the productivity of C#, then this is for you. - Kenny Kerr, MSDN article
  • "C++ is here to stay for a long time and we are committed to providing the best tools for C++ development." - Soma Somasegar
  • "now that the language looks just like C# and you still have the power of C++/templates/STL as well, it's staging a major comeback." - Sam Gentile

I dug out some abstract that was kicking around from one of the versions of the talk:

Come and see how real C++ projects are moving to the CLR without a full port or rewrite. Learn how to easily migrate existing native code -- including MFC applications -- to run under the CLR. Strategies for choosing which parts of the application remain native and which are managed will be discussed. See how to take advantage of the power of the framework libraries. Finally, this session will provide guidance on how to build high-performance managed "wrappers" enabling reuse of native libraries.

But that was a one hour talk, and I have such a hard time fitting into a single hour, and this is my user group after all, so expect to see quite a bit more on the general "C++ for the .NET Framework" situation.

Wednesday November 30th, Whitby Library, please register. Pizza and chitchat at 6, C++/CLI starting at 7. See you there!

[updated: the link above now leads to a page that has a registration link. Please register.]


Monday, November 14, 2005 1:51:26 PM (Eastern Standard Time, UTC-05:00)  #    
# Friday, November 11, 2005

Jensen Harris, in his excellent Office User Interface blog, reveals the top 5 commands (most frequently used) in Word:

  1. Paste
  2. Save
  3. Copy
  4. Undo
  5. Bold

Doesn't surprise me at all. Cut and Copy probably add up to the almost same as paste (in most cases any given thing is only pasted once, but of course it might have been copied in another application and then pasted into Word) but they split the vote. The popularity of Undo (which one of my nontechnical friends calls the "Bite Me" key) is a testament to all the times Word is being "helpful" as I type. Man I hate software that thinks it's smarter than me. Apparently a lot of folks do. Or perhaps a lot of folks change their minds a lot, or mis-click a lot.

What I think is cool, given that this data was gathered from users who are keyboardy and mousy, context menu users (right-clickers) and regular menu users, experienced and novice, etc, is that every one of these commands is a one-hand chord on the keyboard:

  1. Paste Ctrl-V
  2. Save  Ctrl-S
  3. Copy  Ctrl-C
  4. Undo  Ctrl-Z
  5. Bold  Ctrl-B

Now you see why not being able to use that left Ctrl key made things so difficult when my laptop was being flaky.


Friday, November 11, 2005 9:48:21 AM (Eastern Standard Time, UTC-05:00)  #    

... must be firmly in the hands of Steve Teixeira, who has been blogging regularly from C++ Connections. Quite a decent subset of the team is here, and I am really enjoying meeting those I haven't met before and seeing the others again. (An aside: how many people do you think are on the C++ team? Yesterday Brandon, when I kiddingly asked who was left in Redmond since a dozen or so had come to Vegas, said there are 130 people on the C++ team. Tonight Herb said there are about 150 but 20 or 30 are on Phoenix which you might say wouldn't count. Over a hundred is a lot more than other language teams have and a good indication of both the importance and difficulty of keeping Visual C++ at the top of its game.)

Today Martyn Lovell gave a great presentation on the IDE that I enjoyed immensely (even though I knew all the features he was showing) because he has a wicked sense of humour. When he got spontaneous applause for docking indicators on tool windows (who knew?) he commented that he should have shown them first to get the audience warmed up :-)

I really hope the success of C++ Connections means there will be other C++-only conferences once again. In fact tonight I believe I heard Kevlin Henney say to Bjarne "we're doing this again next year, right?" and Bjarne say "yes". If so, I plan to be there too! This has been a terrific week and when I'm in my own time zone again I will have more to write about it.


Friday, November 11, 2005 1:45:41 AM (Eastern Standard Time, UTC-05:00)  #    
# Wednesday, November 09, 2005

Once again I find a friend has written almost the blog entry I would have, sparing me the effort. You just have to read Don Kiely's summary of Bjarne's C++ Connections keynote this morning. I am going to sleep on my thoughts from the keynote, this afternoon's talk, and tonight's panel, and see what I synthesize from them tomorrow.


Wednesday, November 09, 2005 12:08:10 AM (Eastern Standard Time, UTC-05:00)  #    
# Tuesday, November 08, 2005

Today at C++ Connections I have attended two Bjarne Stroustrup talks. And yes, I learned something from both talks and took plenty of notes. Bjarne used what he called Ye Olde Shape Example in a discussion of the brittle base class problem. He mentioned that this is an ancient and yet still useful example that he got from the Simula folks way back when. After the talk I asked if he knew when it dated to, since I use it as an example of polymorphism in the OO/UML course I teach at Trent. He thinks it's about 1971. I was disappointed that it wasn't older than me, and he offered "well, there's always the cars and vehicles, stop, go, turn kind of thing. That's from about 1967 or so." I burst out laughing since I use that example too! It doesn't quite make the "older than me" bar, but it's certainly got a history.


Tuesday, November 08, 2005 9:25:01 PM (Eastern Standard Time, UTC-05:00)  #