# Friday, 28 January 2011

Despite this rather famous xkcd comic, most developers would rather spend as little time compiling as possible:

But most of us how no clue why a build takes as long as it does, or how to make a project build faster. I mean sure a Clean and then a Rebuild will take longer than an incremental build. But beyond that, which is quicker - a debug build or a release build? Debug puts more information in, but it doesn't optimize - which wins? Does it make a difference if you keep Visual Studio up all day or if you close and re-open it from time to time? Are there options you can set that make your builds faster? All this and more is covered in remarkable detail in a new blog post from the Visual C++ team. You need to read it.

Kate

Friday, 28 January 2011 18:36:46 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Wednesday, 26 January 2011
Not everyone knows that the Windows SDK includes a C++ compiler and linker that you can use if you don't have Visual Studio installed. Of course, Visual Studio Express is free, and you could use that to compile and link C++ apps. The advantage of using the tools that come with the SDK is that you don't have to install and configure a lot of stuff to get started. On a new machine that may appeal to you.

Gus Class has posted a super-quick 3 minute video that shows how to compile one of the SDK samples using only the tools that come with it. I just wanted to elaborate on one thing. The SDK installs, by default, under Program Files. As you probably know UAC prevents applications from writing to any folder under Program Files unless the application is elevated. That's why Gus launches an elevated command prompt in this video. If you don't want to elevate your command prompt, you'll need to move the sample folders and adjust your path accordingly.

Three minutes. Worth a watch. It's always good to have some tricks up your sleeve on a new machine.

Kate

Wednesday, 26 January 2011 18:25:57 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Monday, 24 January 2011

Recently the East of Toronto .NET User Group had a Windows Phone 7 presentation (by Atley Hunter) that was very well done, and well attended. (He's blogged about it and included some helpful links, so you should be sure to read his post too.) You would never have known it was his first presentation - he was calm and confident and knew what he was talking about.

At the meeting I met Ashish Kaila, who is working on a toolkit for WPF developers and a Windows Phone 7 library. He showed me the docking panes and some other fun functionality.

To me this is a huge benefit of user group meetings: in addition to the presentations, usually as good as any you would see at a paying conference, you also can meet fellow attendees. I hadn't heard of these tools before, and they could save you a lot of time and effort. The next best thing to coming to meetings, I suppose, is reading blog posts about meetings. Here's where you can learn more about Ashish and his products:

If you're not going to your local user group meetings, why on earth not? We don't bite, honestly, and you have so much to learn and gain from being there. See you next time!

Kate

Monday, 24 January 2011 18:17:48 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Saturday, 22 January 2011
The revisions to the C++ standard, headed to producing a new C++ standard which is still nicknamed C++0x, are proceeding at their stately pace, and will for months yet. But since a number of compilers are supporting more and more of the functionality and syntax, which are pretty much locked down now, we can adopt much of it today. (I don't know why some people are running around claiming that because the standard isn't released yet, no-one should be using any of it, but when you bump into such people, you can send them to me.)

I came across an interview with Bjarne Stroustrup, the father of C++, at CodeGuru. If you're wondering why the standard is so far behind schedule, what the very first C++ developer thinks about the very newest C++ developers (undergrad students), and how risk feels to a standards committee, then you will enjoy reading this, as I did. The lambda syntax on the first page isn't quite right, but you can fix that up if you need to. There are plenty of lambda examples here in my blog.

Give it a read!

Kate

Saturday, 22 January 2011 10:52:40 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Thursday, 20 January 2011
One of the things C++ developers have had for ages is a way to see a function's return value in the debugger, even if it isn't kept in a local variable. For example, see tip 29 in this list of Visual C++ tips for VC++ 6.0 - a product released 12 or 13 years ago! Managed developers would like this ability, too. Jared Parsons, from Technical Strategy Incubation, points to a set of requests, and explains why it appears that VB has it already. (And you thought VB6 legacy support wasn't going to help you!)

Take a look and see what you think. Would it be worth the possible performance hit?

Kate

Thursday, 20 January 2011 10:28:24 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Tuesday, 18 January 2011
I don't think I ever linked to this Tech Ed Europe talk. Ale Contenti talked about Application Lifecycle Management (ALM) features for C++ developers. Now it's featured on the Visual C++ Blog. There are useful links in the comments, also.



I saw the talk live and I liked how personal Ale made it. If you wonder whether any large C++ projects rely on Team Foundation Server, you could hardly have a nicer example than this one!

Kate
Tuesday, 18 January 2011 10:10:32 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Sunday, 16 January 2011
The SQL Server MCM certification is pretty darn serious. In order to be a Microsoft Certified Master, you really need to know your stuff. As Microsoft describes it:

Individuals interested in pursuing a Microsoft Certified Master on SQL Server 2008 certification typically have five or more years of hands-on SQL Server experience in mission-critical environments, with competencies that include:

  • Designing and implementing high-performance, scalable, and secure enterprise environments

  • Troubleshooting the most challenging SQL Server issues

  • Managing multiple instances of SQL Server, including the use of a variety of features and tasks, with a thorough understanding of SQL Server design and architecture.

  • A thorough understanding of SQL Server core engine components and dependencies, such as online transaction processing (OLTP), high availability, disaster recovery, performance tuning and optimization, the SQL Server operating system (SQLOS), the storage engine, the relational engine, security, manageability, and data distribution.

It's the highest level of certification and perhaps 1% of IT Pros can achieve it. Even if you don't want to go for the certification and sit the exams, you might like to improve your knowledge. So 40 hours of free training videos are bound to help, aren't they? The clever folks at SQLskills have put some together, and provided a handy page of links. See how much you can improve your SQL abilities and understanding.

Kate

Sunday, 16 January 2011 09:56:24 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Friday, 14 January 2011
It's a trope of horror movies that bad things happen in the basement. You don't go down there to see why the other people who went down there aren't back yet, and you don't go down there alone. Jan Miksovsky extends the software-as-building metaphor to talk about the scary-basement part of most apps. What I like about the post is that he's not just complaining, "some parts of the app are a real pain to change" but he's also aware of the good part of it, the foundation aspects. Well worth a read!

Kate

Friday, 14 January 2011 09:41:34 (Eastern Standard Time, UTC-05:00)  #    Comments [0]