Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

GoingNative 4: Jim Springfield on ATL, GoingNative Conference - Register Today!

Download

Right click “Save as…”

We've not covered ATL before on Channel 9 and with all the talk going on these days about [the elephant in the room], we figured it would be useful to spend some time with ATL creator Jim Springfield to get a historical perspective (as well as a technical one) on Active Template Library.

ATL is a C++ template library for building lean and fast COM objects for Windows. ATL is designed to maximize performance while removing some of the complexity of COM-based Windows application development. If you've built ActiveX controls then you've used ATL. Of course, ATL isn't just for ActiveX objects...

Thanks to Niner C64 for the suggestion to ask Jim historical questions in addition to the expected technical ones. C64 also asked us to spend some time on WTL. So we did.

The Windows Template Library was created (and is still maintained) by Nenad Stefanovic, whose name I horribly mangled in the show's constructor. My apologies, Nenad! WTL is built on top of ATL, extending the power and relative simplicity of ATL to more of Win32's componentry. Lots of native Windows applications are written in WTL (including some of Windows itself, IE, Chrome, etc).

Niner Ion also asked some specific ATL questions. We get to those, too.

Thank you for spending time with us, Jim!

Table of Contents (click time code links to navigate player accordingly)

[00:00] GoingNative(); //Thank you for challenging us and speaking your minds! Thanks Herb Sutter, Jim Springfield, PFYB, KM-KY, Warren, Garfield, C64, Glen, and Tomas (who's trying to make his own C++ lib-only implementation for Metro component authoring—way to go. Best to just do rather than just say! Good luck, Tomas!).

[06:34] Charles interviews Jim Springfield (whiteboarding included)

[51:18] ~GoingNative();//Announcing and talking about GoingNative 2012. Please join us in Redmond! See below for details:

Announcing GoingNative 2012 – A Modern C++ Conference

Here at Microsoft, we're very excited about the surge of industry interest in C++ and we want to support that. We know developers are hungry for information about modern C++ (C++11). The goal of GoingNative is to help provide current information to as many people as possible and to share technical insights and knowledge from C++ luminaries from across the industry. It's a C++ party and you're invited. Please join us.

Register Now!


Event Details:


GoingNative 2012 is a 48-hour technical event for those who push the boundaries of general purpose computing by exploiting the true capabilities of the underlying machine: native developers. Distinguished speakers include the creator of C++, Bjarne Stroustrup, C++ Standards Committee Chair, Herb Sutter, C++ template guru and big compute master, Andrei Alexandrescu, and more!

Feb 2-3, 2012
Microsoft Corporate Campus
Redmond, WA, USA

The entire event will be streamed live on Channel 9 and all sessions will show up for on-demand use in 24 hours or less. That said, you do want to be here. It's going to be a lot fun and we are going to take care of you.

 

 

We really want to hear from you, so please tweet feedback to @C9GoingNative (follow us!) and send your requests, ideas, complaints, praises, hate mail, and love letters to C9GoingNative [at] hotmail [dot] com. We will read and respond to all messages! That's how we roll, brothers and sisters. And if you're a Facebook user, please join our C9::GoingNative Facebook group.

Go native!

Tags:

Follow the Discussion

  • Chris SellsChris Sells

    Oh my god. Flashback.

  • CharlesCharles Welcome Change

    @Chris Sells: We talk about you, Chris Smiley
    C

  • midiwaymidiway

    OMG, a Visual c++ tea-cup, I want one!!!!!

  • GlenGlen

    Good to see Jim in front of the camera. He's a natural. I look forward to seeing him in future videos.

    I'm more than curious to know what Bjarne will say in his keynote speech too. Oh the suspense.

  • Very very interesting insights, thanks! Wish there was more podcasts like this one.

    So, COM is alive, and COM is love.

    It's a pity WTL is not supported anymore by Microsoft. I have used it once a few years ago, and then forgot about it. How about updating WTL? Lots of Windows 7 features are available as COM objects (Ribbon, Direct2D, ...), does it make sense to update ATL/WTL? Or will WRL take care of this?

     

     

  • CharlesCharles Welcome Change

    , pierremf wrote

    Very very interesting insights, thanks! Wish there was more podcasts like this one.

    So, COM is alive, and COM is love.

    It's a pity WTL is not supported anymore by Microsoft. I have used it once a few years ago, and then forgot about it. How about updating WTL? Lots of Windows 7 features are available as COM objects (Ribbon, Direct2D, ...), does it make sense to update ATL/WTL? Or will WRL take care of this?

    WTL is an open source project and it's still maintained by it's creator. Download it here.

    C

  • CharlesCharles Welcome Change

    As usual, Herb says it best (re GoingNative C++ event): http://herbsutter.com/2011/11/23/c-spring-goingnative-feb-2-3-2012/ Thanks, Herb!
    C

  • DennisDennis

    To be absolutely frank, Charles, coming from the previous thread, my reaction to your announcement of the event - "Come on, C++ developers, this is for you" - is:

    Why bother coming to hear what you are going to say on C++? Why bother coming to hear you talking on how much you care about standards while you just extended C++ for a third time in a row with a lot of proprietary syntax, that is arguably viral? Seemingly without a good reason as well given that you couldn't explain why standards-compliant alternatives proposed in the previous thread would not be possible or even significantly more difficult? Why bother coming to hear you talking on how C++11 is really important when apparently it was not important enough for you to actually implement it in VS2011? Are we supposed to be excited about your promise to implement an unknown part of a huge number of things in C++11 your compiler currently lacks somewhere prior to VS2012?

    Why bother listening to you on C++ at all? What makes you think what you _say_ on C++ is valuable to us when what you _do_ is at best not advancing the language and at worst harming it?

    Sorry for being negative, but this just had to be said.

    The constructive part: reexamine the possibility of accessing WinRT from C++ in a standards-compliant way; say what features of C++11 you are going to deliver in between VS2011 and VS2012 and say when this is likely to happen; commit to implementing all of C++11 in VS2012. Last, but definitely not least, FIX THE PERFORMANCE of VS2011, make absolutely sure it can handle projects of several million lines of code. Others can do it, you can't, we suffer.

  • DennisDennis

    Oh, and it was good to hear you talking about ATL. ATL was and still is a great piece of technology. But this brings me back to negativity. Back when you were doing ATL you were advancing the practice of using C++ as a language, leading the pack, expanding horizons, making things better. What you are doing now is something else completely. So, thanks for reminding us how good you were back in the day, but please realize that what you are doing with C++ now and what you have been doing with it for the last 5 years does not measure up to that, and change your ways.

  • @Charles:

    Thanks for putting so much focus an C++, I really appreciate it. Having a C++ conference is a very good idea, I whish my company would let me go there (coming from Germany it would be quite expensive). Hoping for Channel 9 coverage of the conference.

    There seems to be evidence that VS 11 won't support creating C++ programs for Windows XP SP3 any more: https://connect.microsoft.com/VisualStudio/feedback/details/690617.

    If this is really the case, it would be very important to know this as early as possible. Can you comment on this or investigate what is planned?

    Thanks,
    Bernd

  • felix9felix9 the cat that walked by itself

    fantastic !

    good news: I've got a new job as a pure native coder ! no need to wait for C++/CLI intelisense any more !
    bad news: I'm stuck with VS2008SP1 ...... no auto, no lambda, missing VS2010SP1 very much.
    unrelated news: I still have my personal project in Silverlight. OK Silverlight might be 'dead' or something but considering I'm actully an MFC coder now ....... who cares Tongue Out

    so, can I get GoingNative content about MFC ???

  • @rab36: The Visual Studio 11 Developer Preview supports targeting Windows XP via native C++ multi-targeting. You need to have either Visual Studio 2010 or the Windows SDK 7.1 installed. You can then select the approprite toolset for you project. This post describes it for Visual Studio 2010 but it's basically the same for Visual Studio 11:

    http://blogs.msdn.com/b/vcblog/archive/2009/12/08/c-native-multi-targeting.aspx

    Tony Goodhew - Microsoft Corp.

  • SapSap

    another great episode.

    in the beginning of the episode they said there was an interview posted on channel 9, but i cant seem to find it, can someone link it please?

    thanks.

  • DennisDennis

    tgoodhew

    (I don't know how I managed to not notice the bit on lack of support for Windows XP before. It is absolutely horrible!)

    > The Visual Studio 11 Developer Preview supports
    > targeting Windows XP via native C++ multi-targeting.

    This means that whoever has to support Windows XP will not be able to use neither the C++ compiler that comes with VS2011, nor the updated version of that compiler with the missing features for C++11 (variadic templates?) that will supposedly come between VS2011 and VS2012. Right?

    In other words, one will have to choose between supporting Windows XP and using C++11 (!).

    Not good. This does push people interested in both Windows XP and C++11 - whom I suspect are the absolute majority of your customers in general and people here in particular - to other compilers, heavily.

  • , tgoodhew wrote

    @rab36: The Visual Studio 11 Developer Preview supports targeting Windows XP via native C++ multi-targeting. You need to have either Visual Studio 2010 or the Windows SDK 7.1 installed. You can then select the approprite toolset for you project. This post describes it for Visual Studio 2010 but it's basically the same for Visual Studio 11:

    http://blogs.msdn.com/b/vcblog/archive/2009/12/08/c-native-multi-targeting.aspx

    Tony Goodhew - Microsoft Corp.

    Tony, thanks for the reply. I am aware of the fact, that I can use the VS 2010 toolset to create programs for Windows XP with VS 11. But as Dennis already mentioned I am loosing the VS 11 C++ 11 compiler (and C++ AMP by the way) when doing this.

    Could you confirm that the VS 11 toolset will definitely not support Windows XP? Or are you still considering changing this for the final product?

    I think this is a big topic for all C++ developers and clarifying this would help us planning.

    Thanks,
    Bernd

  • ChrisChris

    rab36, the bug report was closed and it doesn't seem they're going to change it. Posts on different forums say the same.

    It's probably best to avoid VC11 until they do the intermediate release with additional C++11 features and use other more evolved compilers (gcc, clang, intel's). The new CRT doesn't run on XP because they use a couple of OS functions that are not present on XP. This is sad, the CRT can be implemented with the functions available on XP.

    Also, what's the point of the goingnative conference? Those speakers will say how great C++11 is. Yes C++11 is great, but Microsoft doesn't support it.

  • Ben HansonBen Hanson

    It is bad news that VC11 won't support Windows XP. It will be years before we can abandon customer support for XP, which means we will be right back in the relative position of when I started at my present company when they were still using VC6!

    I can understand not supporting Windows 2000 any more, but there are millions of XP users out there. This is really short sighted. We simply aren't in a position to demand our customers upgrade.

  • Richard Anthony HeinRichard.Hein Stay on Target

    Windows XP is well past its mainstream support phase (ended April 2009), and basically only provides security updates during the extended support phase (until 2014).  Why would the VS and C++ compiler team at MS try to support XP?

  • Richard Anthony HeinRichard.Hein Stay on Target

    Yes, but all your legacy code isn't written in C++11; are people actually planning on writing new code for XP with C++11?

  • Ben HansonBen Hanson

    It wasn't so long ago we still (theoretically at least) supported Windows 98! We are maintaining a large application originally developed before 2000. When I joined the company it was over 1 million lines of code. The last time we checked it was 2.5 million lines of code. Call it legacy if you like, but this is an actively maintained product what sprouts new functionality continuously.

    It's not like we're the only software company in the world in this kind of position...

  • ChrisChris

    I'll just leave this here.

    http://upload.wikimedia.org/wikipedia/commons/thumb/b/b5/Operating_system_usage_share.svg/600px-Operating_system_usage_share.svg.png

  • Richard Anthony HeinRichard.Hein Stay on Target

    @Ben Hanson:  Yes, we have a large legacy (> 10 years) code base in native C++, and even if we want to change it, we can't use new C++ features and compilers anyways.  You can't just go into an old project and start changing everything to use "modern" C++; at least, it's very hard to do that, except in small isolated parts, since you'll basically be rewriting it.  If we are going to rewrite, we might as well do it in C#.  I get that you can have a totally different client base.

  • Richard Anthony HeinRichard.Hein Stay on Target

    @Chris:  That's horrible.  Sad  Stop supporting them, please.

    Edit:  Those numbers are deceptive, don't you think?  How many of them would pay for your software if they are still on XP anyways?

  • Ben HansonBen Hanson

    @Richard.Hein: That is not our experience. Each time we have upgraded compiler, we have (of course) had to fix up a load of code but it never took a prohibitively long period of time. The worst transition was from VC6 to VC8 (hardly surprising). The transition from VC8 to VC10 was harder than I would have liked, but was still quicker and easier.

    We compile this stuff everyday, this isn't some code base we daren't touch (the usual meaning of 'legacy').

    We don't go in changing *everything* to modern C++, as we don't have time, but we do make improvements. For example I wrote a pure C++ ODBC database wrapper a few years back and we have moved a lot of DB access to that. We have got rid of our QT db access and still need to bin the remaining CRecordset based stuff (there is still a lot of that).

    And yes, we have talked about rewriting the thing in C# or making it web based etc. but (and this is where the 'legacy' part comes in) we have enough trouble keeping up with bug fixes and new requirements as it is.

    This is how it is with a large long running product and a small development team. Somewhat of a runaway train. We do what we can.

  • CharlesCharles Welcome Change

    To be absolutely frank, Charles, coming from the previous thread, my reaction to your announcement of the event - "Come on, C++ developers, this is for you" - is:

    Why bother coming to hear what you are going to say on C++?



    Well, you would be coming to hear and learn about C++ from Bjarne, Herb, Andrei, STL (Stephan T. Lavavej) and other luminaries. You'd be empowered to ask them questions, to interact, to expand your mind.

    Did you read Herb's blog post on the event or read the event page's description of the event? That's why. This is a C++ event and the sessions will focus on C++, not a particular vendor's implementation. It's a C++ conference and we're hosting it in Redmond, in our hourse. We hope to see you there.

    C

  • devcodexdevcodex SWGANH.com

    @Charles Don't listen to the naysayers man, there is so much new (good) C++ content to consume around here than anywhere else and I have a sneaking suspicion your enthusiasm is at the root of a lot of it.

    I have registered for my seat for the show and I can't wait to get out there and meet all these great people who are putting it on!

    @tgoodhew I'm loving Visual Studio 11 so far, I am running into an issue however that is making it difficult to port many of my existing projects over. While I understand variadic templates won't be making it into the initial release is there any chance that we can the current "infinity" for the faked variadic templates back to 10 from the current 5?

    I ask because one particular dependency, googletest, makes use of tuples and currently breaks as it exceeds the limit of 5 elements (but does keep under the limit of 10).

    Thanks again!

  • Regarding the $112 price of the GoingNative conference, is it the combination of C++ 11 and year 2012?

    Great video! I always enjoy Charles' interviews because he has a technical background and knows the right questions we developers want to ask.

  • devcodexdevcodex SWGANH.com

    My guess for the $112 pricetag is C++ 11 and the month of the event, February (the 2nd month): 112

    My other guess would be this is the first (of many) C++ events in 20(12): 112

    Great episode!

  • CharlesCharles Welcome Change

    @CoolingFactor: Thanks for the kind words. In terms of "why 112?", nope. Keep trying!
    @devcodex: I like your second guess, though it's not correct (in terms of the question) Smiley Your first one, like CoolingFactor's is also not right. Keep trying!

    Creative attempts, gentlemen!

    C

  • CharlesCharles Welcome Change

    another great episode.

    in the beginning of the episode they said there was an interview posted on channel 9, but i cant seem to find it, can someone link it please?

    thanks.



    Here you go: http://channel9.msdn.com/Blogs/Charles/Asynchronous-Programming-for-C-Developers-PPL-Tasks-and-Windows-8

    C

  • MattMatt

    Great show as always. Although I would have preferred some more technical questions related to the internals of ATL I assume this was not possible without talking about COM in depth as a prerequisite.

    @Charles Regarding the frequency of the show, you said a couple of months ago on AnyAsq: "We are in fact planning on going out more often" Is this something you are still considering or will you stick with a monthly show? Thanks!

  • dbudbu

    We have a large customer base (>20000 users). Our data shows that about 40% are still using XP. That means that we have to support XP at least for 5-7 years (even when there is no more support for XP from MS, a lot of users dosen't care about that, at all).

    There are only a few importend features in VC that realy counts for most native devs: the C++ compiler, the STL and the MFC. There is no reason, that this features can't be supported for XP by VC11.

    When VC11 doesn't support XP, it basicly means that we have to use an outdated compiler and outdated librarys for years and years to come. And it means that we can't use the new C++11 features and librarys to improve our product, for years and years, too.

    VC11 itself dosent need to run under XP, but desktops applications build with it have too!

  • RaanenRaanen

    For what it is worth, my company is in the same boat as dbu. Windows XP and Windows Server 2003 (also unsupported in VS11) are a large part of our business, and they are not going away anytime soon. We would like to use C++ AMP, but if we can only use it on Vista plus... ahem, this certainly makes C++ AMP far less attractive than alternatives like CUDA.

    We don't care if VS11 itself can't run on XP, but applications built with VS11 should run on it.

  • RaanenRaanen

    On 112: should something happen on February, 11?

  • felix9felix9 the cat that walked by itself

    Mmmm.... the ascii value of 'c' is 99, so c++ is 99++ == 100, so 112 is c++ and 12 ?

  • hmmhmm

    These comments clearly reflect how badly Microsoft has treated C++ developers and how deeply disappointed those developers are. These videos are good in general, but comments from disappointed customers will probably continue to flood in.

    I demand a 60 minute GoingNative episode that explains why Microsoft doesn't care about C++.

  • STLSTL

    devcodex> is there any chance that we can the current "infinity" for the faked variadic templates back to 10 from the current 5?

    Simply define _VARIADIC_MAX to 10 project-wide.

    The compiler issue (excessive memory consumption triggered by default template arguments) that originally motivated us to lower infinity's default from 10 to 5, as well as another issue (lambdas with excessively long mangled names, further multiplied by the STL) have been fixed by JonCaves, so I don't believe there's anything stopping me from raising the default back to 10 - except for compilation speed. Our testers have noticed that our libraries are taking longer to compile (it's not huge, but it's like 10%-20% in various example projects). Some of this is necessary because we're implementing more stuff mandated by C++11. I've already implemented a workaround for one thing (allocator_traits) required by C++11, but where we can take a shortcut that's much cheaper to compile and has indistinguishable results. We're not currently aware of other places where we can increase compilation speed - except for _VARIADIC_MAX. Defaulting to 5 results in greater compilation speed for everyone who doesn't need huge tuples/etc. and the people who do need them are "nicely" informed with compiler errors. (I should probably write a blog post about this - I've mentioned in several times in passing, but not in a whole dedicated post.) Defaulting to 10 would allow all code that compiled with VC9 SP1 and VC10 RTM/SP1 to continue to compile with VC11 - but at the cost of slower compilation speed for everyone who doesn't need infinity to be big.

    I haven't heard a *whole* lot of grumbling about infinity=5 so my current plan is to leave it that way. If we get a lot of feedback, increasing the default is trivial, so there's plenty of time to change this later.

  • devcodexdevcodex SWGANH.com

    @STL Thanks for the detailed explanation of the situation as well as a very simple workaround.

    I'm inclined to agree with the decision to keep infinity=5 given how easy it is to regain previous functionality when needed. 

  • CharlesCharles Welcome Change

    @hmm et al:


    Did you just ignore Tony Goodhew's commentary on this XP issue? It's really clear. Please read it again: http://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-4-Jim-Springfield-on-ATL-GoingNative-Conference-Register-Today#c634577424088059916

    Finally, I'd appreciate it if you'd stop harping about unrelated information on this thread (and others).

    This video post is about 3 things:

    1) ATL

    2) Jim Springfield (Channel 9 is about humans, too. Not just the software they craft)

    3) GoingNative 2012 Conference


    Relent,

    C

  • CharlesCharles Welcome Change

    @Raanen: Nope Smiley Try again.
    C

  • ReaderReader

    Thanks for writing this

  • RaanenRaanen

    I appreciate the desire to stay on topic, so just one last comment regarding XP:

    > Did you just ignore Tony Goodhew's commentary on this XP issue?
    > It's really clear. Please read it again: ...

    I read Tony Goodhew's comment (thank you, Tony). I agree it is very clear. Unfortunately, multi-targeting does not solve my problem. As I said, we would like to use C++ AMP. Multi-targeting will allow us to use the compiler that came with VC10 in the IDE of VS11, this is something else completely.

  • As for the price of $112, does it have anything to do with the first 3 non zero digits of the Fibonacci sequence?
  • C64C64

    Thanks much for this GoingNative episode Jim, Charles and Diego!

    I enjoyed watching the interview to the ATL inventor.

    (Unfortunately I live 9 time zone delta from Redmond, WA, on the other side of the "pond" Smiley so I'm looking forward to watch GoingNative 2012 Conference streamed online Smiley

     

  • C64C64

    , pierremf wrote

    How about updating WTL? Lots of Windows 7 features are available as COM objects (Ribbon, Direct2D, ...), does it make sense to update ATL/WTL? Or will WRL take care of this? 

    Seems like the recent WTL 8.1.11324 update is starting supporting the ribbon (I see an "atlribbon.h").

     

  • C64C64

    Regarding the 112$ price number, could it be possible that the first ATL implementation was developed for a Visual C++ compiler whose _MSC_VER was 1120 (something between Visual C++ 5 and Visual C++ 6...)?

    Or maybe the first publicly available ATL had an _ATL_VER == 0x0112?

  • C64C64

    Another guess for 112$... 

    112 octal == 74 decimal, and there is a 1974 Bell Laboratories internal memorandum by Brian Kernighan, Programming in C: A Tutorial, which contains the first known version of "hello, world" test program.

     

  • devcodexdevcodex SWGANH.com

    @felix9 That's a great answer man!

  • CharlesCharles Welcome Change

    @felix9: Nope, but you were close! Smiley

    C

  • CharlesCharles Welcome Change

    @C64: Nope! Creative. Sorry, try again! Smiley
    C

  • felix9felix9 the cat that walked by itself

    maybe its not 112 but 11²,  VC11 x C++11 ? but I dont think you should insert a (controversial) MS product into this (C++11 in VC11 update 2 ? Devil ).
    o that should be 121, Perplexed

  • CharlesCharles Welcome Change

    @Raanen: I see. I'd still like to keep this thread on topic.
    C

  • CharlesCharles Welcome Change

    , HomerSimpian wrote

    As for the price of $112, does it have anything to do with the first 3 non zero digits of the Fibonacci sequence?

    Nice try! But, nope... Fib has little to do with C++, specifically. Smiley

    Keep trying!
    C

  • CharlesCharles Welcome Change

    , felix9 wrote

    maybe its not 112 but 11²,  VC11 x C++11 ? but I dont think you should insert a (controversial) MS product into this (C++11 in VC11 update 2 ? Devil ).
    o that should be 121, Perplexed

    "

    You're overthinking it Smiley

    Love the creativity here, folks! Keep it coming!
    C

  • felix9felix9 the cat that walked by itself

    OK I just search 112 in wolfram alpha and it says the Roman numerals of 112 is CXII, looks like C++11 to me, or C + XII (C 12) ? but I hope it is not C++/CX Tongue Out and CXXII is actually 122 Sad

  • For $112: How about the addition of the years of the c++ standards:

    98 + 03 + 11 = 112

  • CharlesCharles Welcome Change

    @felix9: Very close! Now that you know the Roman numeral for 100 is C... Put it together!

    C

  • CharlesCharles Welcome Change

    @Matt_Smith: Nice! Very clever. Simplicity is golden. Not correct, though. Maybe I should make the answer dynamic. I didn't even think about this 98 + 03 + 11 = 112.

    felix is closest so far ( Wolfram Alpha? Really, felix... Smiley )
    C

  • @Charles: Okay, I feel dirty banking off of Felix, but my attempt would be:

    C++11: 
    C is the roman numeral for 100, so C++ would be 100 + 1 = 101.
    then, add on the 11, 101 + 11 = 112.

     

  • CharlesCharles Welcome Change

    @Matt_Smith: Bingo! Smiley You and felix win!

    Nice job, guys, Don't worry about "banking off of felix" - he used WolframAlpha, man! (just kidding, felix).

    Excellent.

    C++11 Smiley

    C

  • felix9felix9 the cat that walked by itself

    Ha, actually I thought about that after clicking my Shutdown button, but I am too lazy. Smiley

    But frankly I like my first idea better, because only native coders think characters as numbers, it breaks type/memory safety Tongue Out, and it can be cheaper if you use the capital C (67 + 1 + 11 = 79)

    BTW, Wolfram Alpha is a fine tool

  • devcodexdevcodex SWGANH.com

    @felix9 I spent a good chunk of time earlier today on that same path (ASCII C '67') but the closest I came was adding the ascii C and + values (so "C" + "+") but that only got me to 110.

    Great job to the winners!

  • Adam SpeightAdam​Speight2008 The Bandito Coder

    ++ is the postfix increment and a unary operator

    So wouldn't C++11 would be a compile-time error?

    Would it be more (C++)+=11?

  • CharlesCharles Welcome Change

    @AdamSpeight2008: Nobody said it was a C++ expression... Wink In fact, in this case, it's a Roman numeral (C) incremented by 1 plus 11. I thought it would be trickier to keep this cross-domain. Apparently, I succeeded since WolframAlpha was used to compute the general idea for felix Smiley

    C

  • Another great episode.  Thanks Charles, Jim, and Diego.

     

  • RaanenRaanen

    Charles, sorry for bringing this up again. This is the last time, I promise.

    Maybe you could consider talking with the folks on the CRT team and asking what was the reason behind the decision to drop support for Windows XP in VC11? Maybe this was just an oversight, or maybe they didn't completely appreciate the true depth of the problem this creates for the current C++ developers? If so, it might not be too late to revert the decision, perhaps? I am just baffled by the decision. I will be honest, I don't see why it was made. What is it that does not exist in Windows XP that CRT had to use? Why CRT couldn't use that feature dynamically via LoadLibrary?

    If this is not an appropriate thread for this question, what is? Where should I ask this question? Support for Windows XP is a make-it or break-it for us.

    Thank you.

  • RaanenRaanen

    To clarify, by "maybe you could consider talking with the folks on the CRT team", I mean talking on camera in one of the future episodes of the show.

  • @Raanen:

    If this is not an appropriate thread for this question, what is? Where should I ask this question? Support for Windows XP is a make-it or break-it for us.

    http://connect.microsoft.com/VisualStudio/feedback/details/690617

    http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/e2f43b8e-a620-4c52-878c-8b546252af45

    http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2287078-allow-mfc-11-to-run-in-xp-sp3

    http://channel9.msdn.com/Forums/Coffeehouse/Development-tool-life-cycle-is-different-from-the-OS#c072f2b56878a4f6686ad9fa301264729

    @Charles:

    Now that the quest for $112 is over, I just want to support Raanen with his (off-topic) request for an explanation of why the CRT Windows XP support was dropped. When there is a compelling technical reason OK. When not, well, this impacts a lot of C++ developpers, so maybe you reconsider...

    Bernd

  • ChrisChris

    Some ideas for new Channel 9 C++ content.

    1. C9 Lectures: Mahmoud Saleh - Advanced CRT 2 of n - Killing XP support for fun.

    2. GoingNative 5: The two new C++11 features in VC11.

    3. GoingNative 6: The fundamental importance of language extensions that could have been avoided.

    4. GoingNative 7: Why the VC team moves slower than competitors with less funding.

  • C64C64

    Guys: if you need to build C++11 code for Windows XP, I'd like to suggest you a very convenient "distro" (including recent Boost) by the great STL.

     

  • RonRon

    C64: Wow! Thanks a lot for the link. GCC + Boost, with sources, semi-backed up by STL, and without any of this nonsense as regards C++/CX, compatibility with XP, etc - this definitely sounds great! I will definitely take a look, thanks a lot, man.

  • C64C64

    @Ron:The "Thanks" go to STL Smiley

     

  • @Charles:  So what do felix and I win?  Do we really get a free seat at the GoingNative conference?  How about throwing in round-trip air fare? Smiley

  • Richard Anthony HeinRichard.Hein Stay on Target

    I asked my employer if they'd pay for the trip and they said no.  Sad  Maybe I can scrape together the cash after Christmas to go but it will probably be sold out before I know for sure.  I would definitely like to be there.

  • CharlesCharles Welcome Change

    @Richard.Hein: Bummer. Hope you can make it.

    C

  • CharlesCharles Welcome Change

    @Matt_Smith: :I've not computed the prize yet. Sorry. I'll ask WolframAlpha, though... Smiley Smiley
    C

  • RaanenRaanen

    Charles, it looks like you missed my post and the post by rab36. Here is the gist of my post:

    Maybe you could consider talking with the folks on the CRT team (in one of the future shows) and asking what was the reason behind the decision to drop support for Windows XP in VC11? Maybe this was just an oversight, or maybe they didn't completely appreciate the true depth of the problem this creates for the current C++ developers? If so, it might not be too late to revert the decision, perhaps? I am just baffled by the decision. I will be honest, I don't see why it was made. What is it that does not exist in Windows XP that CRT had to use? Why CRT couldn't use that feature dynamically via LoadLibrary?

    Any word on this?

    Support for Windows XP is very, very, very, very important for us, and, I trust, for many others. Could you please ask the CRT team if lack of support for Windows XP in the preview of VC11 is simply an oversight that is going to be fixed in the final version? If it is not an oversight, could you please ask the CRT team why was support for Windows XP dropped?

  • dbudbu

    @Charles:
    >@hmm et al:
    >did you just ignore Tony Goodhew's commentary on this
    >XP issue? It's really clear. Please read it again:...
    shure we read it. But that "solution" is worth absolutely nothing!

  • CharlesCharles Welcome Change

    @Raanen: I did not miss your post...

    Windows XP is nearing end of life (in terms of MS support). There's nothing that can be done about this. We can't support XP forever (and we won't). What else do you want to know?

    C

  • RaanenRaanen

    Did you actually ask the CRT team, Charles? I know that Windows XP is nearing end of life, but it remains on the desktops of many, many people. We can't simply ignore that.

    So, again, did you actually ask the team?

    Assuming you did:

    > What else do you want to know?

    What is it that does not exist in Windows XP that CRT had to use? Why CRT couldn't use that feature dynamically via LoadLibrary?

  • RaanenRaanen

    (I miss the edit button.)

    In sum:

    Did you drop support for Windows XP just because you wanted people to move from it to something more modern or was there an actual technical reason to do this?

  • MortMort

    @Charles:

    Raanen: Support for Windows XP is very, very, very, very important for us, and, I trust, for many others.

    Charles: Windows XP is nearing end of life (in terms of MS support). There's nothing that can be done about this. We can't support XP forever (and we won't).

    Argh! For someone who is in the same boat as Raanen, this is like pulling teeth. Charles, why can't you just answer the question?

    I will try to make it as clear as possible:

    Nobody asks you to support Windows XP forever. All Raanen and others (including myself) want is that you support Windows XP now, since the number of users of Windows XP is currently huge.

    Do you disagree that the number of users of Windows XP is huge? Someone above quoted a figure of 33% worldwide, the figures we have for our products is 52%. Is that not large enough?

    If you agree that the number of users of Windows XP is large enough to at least try and preserve compatibility with Windows XP, could you please ask why that compatibility was dropped? Was that due to a technical reason or due to a political reason?

    If compatibility with Windows XP was dropped due to a technical reason, what was that reason?

    Thanks a lot for your time.

  • , Charles wrote

    @Raanen: I did not miss your post...

    Windows XP is nearing end of life (in terms of MS support). There's nothing that can be done about this. We can't support XP forever (and we won't). What else do you want to know?

    C

    Windows XP extended support lasts until April 9th, 2014. VS 11 is supposed to be released in 2012, right? So why not supporting to create C++ programs for XP in VS 11 with the latest C++ toolset?

    .NET 4.5 will very probably support Windows XP because it is an inplace upgrade from 4.0: http://reddevnews.com/blogs/rdn-express/2011/11/back-to-app-migrations-with-ms-net-vnext.aspx

    So why not offer C++ programmers the same possibilities?

    What is the motivation? What are the technical reasons, if there are any?

    I just want to elaborate a bit more about our motivation to support XP at least until 2014, maybe even longer with our software:

    We are a manufacturer of measurement systems that are sold with an industrial PC (with Windows XP or Windows 7) and a sophisticated C++ application for acquiring, storing, analyzing the data.

    Only recently we managed to offer Windows 7 64-Bit with all our systems because of driver issues of 3rd party data acquisition boards that are in the IPC.

    We have an OEM license agreement with Microsoft for embedded systems that still allows us to purchase Windows XP.

    We are selling maintenance agreements with our software and we have lots of systems on maintenance worldwide that are running Windows XP. Some of them are used in test lab or production environments that are not even connected to a network, so even the end of extended support of Windows XP in April 2014 will not force customers to migrate to Win 7. Upgrades to Windows 7 are difficult and expensive because hardware (because of the driver incompatibilities) with costs of several thousand of dollars (up to $15.000) has to be exchanged. The measurement hardware of the system is used typically for longer than 10 years, the IPCs are exchanged every 5-7 years.

    On the other hand, I am very interested in using the latest Visual Studio and toolset for our software. In the past, we managed to migrate to the latest Visual Studio release typically within one year after the release of Visual Studio. We have a demanding application that makes heavy use of multitasking and multithreading. New features are developed with the latest language features and libraries. We are using lambdas, auto, PPL and ConCRT and agents library right now with VS 2010 SP1 in our product.

    Not being able to use the latest toolset lets say in 2013 (because of Windows XP) would heavily impact this strategy. I expect that we have to support XP until at least 2015. So having no XP support in VS 11 comes way to early for us.

    Bernd

  • RaanenRaanen

    Exactly, Bernd.

    My company is in a similar position. Furthermore, if we were to go by the image shared by Chris (scroll up), which shows that Windows XP was the most popular OS in August 2011 according to some study accepted as trustworthy by Wikipedia (Windows XP is #1 with 35%, Windows 7 is #2 with 31%), pretty much everyone is in a similar position.

    It's not like you and me and other people here are statistical outliers. Windows XP really is everywhere, we really need to cater to users who have it, we are not making this up.

    Charles, please listen to us.

  • Richard Anthony HeinRichard.Hein Stay on Target

    @rab36 & @Raanen

    "Windows XP extended support lasts until April 9th, 2014."

    Extended support is only for security fixes and a few other rare exceptions.

  • devcodexdevcodex SWGANH.com

    You guys I understand the frustration here and while I don't exactly agree with everyone's logic on the matter I do think you guys deserve a technical answer on why XP is no longer supported. On the other-hand you've been asked more than once to keep on topic in these GoingNative threads, with that in mind I've opened up a forum post on the matter and also quoted Bernd from above as I think his is the most rational explanation of why XP support is still needed.

    http://channel9.msdn.com/Forums/TechOff/A-question-on-XP-support-in-VC11

    Charles, if the discussion gets moved there can you help us out and try and get someone to drop by and give a technical clarification for the decision? Thanks man, and keep up the great work on GoingNative.

  • There are many things that factor into which OS versions we support in a given release.  It includes some things such as installed base and when the OS goes out of support.  We also consider the complexity of supporting an older OS when there are new APIs that we are trying to use. 

    One example of a technical reason we wanted to not support XP was in order to use the newer locale APIs in Windows.  Windows is deprecating some of the older APIs and there are APIs that are not allowed to be used in Metro.  While it is theoretically possible, we really do not want to have multiple CRT codebases in one release.

    Projecting forward to when VC11 ships and to when ISVs would have apps ready, it is not expected that XP will still have a sizable market.  I can see there are some segments where this may not be true and VS2010 will continue to be supported for quite some time.

    Note that sometimes, even if we don't officially support it, DLLs may load on an older OS or you may be able to statically link the CRT and avoid the new APIs or even implement your own version of the new API.

  • RaanenRaanen

    > One example of a technical reason we wanted to
    > not support XP was in order to use the newer
    > locale APIs in Windows. Windows is deprecating
    > some of the older APIs and there are APIs that
    > are not allowed to be used in Metro. While it
    > is theoretically possible, we really do not want
    > to have multiple CRT codebases in one release.

    So, basically, there is a function A in XP which you no longer want to use and there is a replacement function B in Vista plus which you want to use instead. Correct?

    Why not use LoadLibrary and GetProcAddress on both these functions, then call either one or the other depending on which is available? There is no need to have multiple CRT codebases, just a couple of lines of extra code for stubs for A and B. Is the amount of extra code really too large to justify compatibility with Windows XP??? The installed base of Windows XP is about the same as that of Windows 7, your flagship OS, maybe slightly larger.

    Please elaborate.

  • RaanenRaanen

    > Projecting forward to when VC11 ships and to
    > when ISVs would have apps ready, it is not
    > expected that XP will still have a sizable market.

    Erm. What exact numbers are you looking at? When you expect VC11 to ship and what market share do you think XP will have by that time?

  • devcodexdevcodex SWGANH.com

    @JimSpringfield: Thanks for taking the time to stop by and give an explanation. I can't even imagine how much goes into building and supporting these new API's and at some point it's understandable that a line has to be drawn on how much backwards compatibility you can manage and still get the product finished on time.

    As you mentioned you're not dropping support for VC10, that's the toolset you want to use to target XP. For the product I'm working on the current plan is to switch to a maintenance support around the time Windows 8 arrives (much as XP is already in maintenance support only). New product versions will target newer versions of Windows. I mean seriously at some point there has to be a transition and lets be honest, there really aren't a whole lot of new features in VC11 that can't already be found in libraries such as Boost. It makes sense transition now and the above plan is a fairly painless one.

     @Raanen:You mention using LoadLibrary and make it sound like it's just going to take a few lines. How do you know that's all that's involved? If that really is the case then take a look again at what Jim said, specifically:

    Note that sometimes, even if we don't officially support it, DLLs may load on an older OS or you may be able to statically link the CRT and avoid the new APIs or even implement your own version of the new API.

    If using LoadLibrary or something along those lines is as simple as you say it is the above appears to me to be an invitation for you to make it happen. I'm interested to see if the above is possible and will be testing it myself, I will post back with any findings. Before you throw in the towel, especially for something you consider to be easy, lets try and see if there are working alternatives, albeit unofficially supported.

  • RaanenRaanen

    @devcodex

    > You mention using LoadLibrary and make it sound like
    > it's just going to take a few lines. How do you know
    > that's all that's involved?

    I have been developing Windows applications in C and C++ for more than
    15 years. I am not exactly a newbie. I have seen the source code for multiple CRTs as well.

    I don't claim to know what is going on inside the CRT for VC11, I don't know how far it went from the one for VC10. That is why I am asking Jim to elaborate on what exactly prevented them to use LoadLibrary and GetProcAddress.

    > If that really is the case then take a look again
    > at what Jim said, specifically:
    >
    > Note that sometimes, even if we don't officially
    > support it, DLLs may load on an older OS or you
    > may be able to statically link the CRT and avoid
    > the new APIs or even implement your own version of
    > the new API.
    >
    > If using LoadLibrary or something along those lines
    > is as simple as you say it is the above appears to
    > me to be an invitation for you to make it happen.

    I don't think you completely understand the issue. I can use LoadLibrary in my own projects. Of course. The problem is not this. The problem is that the moment I link CRT for VC11, which does not use LoadLibrary, my program fails to launch on XP. If CRT used LoadLibrary, my program would have launched on XP. I can not modify the CRT so that it uses LoadLibrary, only Jim and his colleagues can.

    Do you see it now?

  • RaanenRaanen

    @devcodex

    > I can't even imagine how much goes into building
    > and supporting these new API's and at some point
    > it's understandable that a line has to be drawn
    > on how much backwards compatibility you can manage
    > and still get the product finished on time.

    All due respect, I have an issue with this phrase.

    I hope you don't take it as an offense, but since you "can't even imagine how much goes into building and supporting these new APIs", don't you think you can't say that "it's understandable that a line has to be drawn on how much backwards compatibility you can manage"??

  • RaanenRaanen

    (Ugh... hit Comment too early, sorry.)

    Just so we are totally clear, static linking has a helluva lot of its own problems and is not a solution. We can't use it. Even if we could, a number of our projects use components from third-parties. As I am sure you know, the vast majority of components link the DLL version of CRT.

  • I can't comment on when I think we'll ship or other numbers.  I'm just saying those do play into our decisions.

    I agree regarding static vs dynamic linking, just noting that people do some crazy things and sometimes it works.

    It isn't always feasible to just use different APIs through LoadLibrary.  Also, some APIs are not available under Metro (e.g. LoadLibrary itself is not available), so we would have to create multiple CRT binaries for different OS targets.

  • RaanenRaanen

    > Also, some APIs are not available under Metro
    > (e.g. LoadLibrary itself is not available), so
    > we would have to create multiple CRT binaries
    > for different OS targets.

    OK, this I can understand.

    If I were in your position, I would have provided two separate CRTs for apps that run in Metro mode and apps that run in desktop mode, since I think the slight overhead is absolutely worth being able to develop for Windows XP. But at least I now see why two separate CRTs would have been necessary.

    Thank you.

    This is sad, though, since I wasn't joking about lack of support for Windows XP being a total showstopper for us. It is a showstopper. We won't be able to use VC11 at all.

  • RaanenRaanen

    I will say one last thing.

    I get why Metro-mode applications aren't allowed to use LoadLibrary - the idea is that all communication between binaries is done via strictly defined contracts, this helps security, etc. I get why this is important - Metro-mode applications have to run on phones and various other small devices and the expectations of these devices that users have are different from the expectations of PCs. What I don't get is why applications developed for PCs have to suffer from restrictions imposed by applications developed for phones?? Do you really expect the majority of existing developers to suddenly stop using LoadLibrary and other features that are forbidden in Metro? I guess not. Then why do we have to use the same CRT as the Metro people?

    I think you are making a mistake.

  • devcodexdevcodex SWGANH.com

    @Raanen:It's not that I take offense but "can't even imagine" is a figure of speech. The scope of windows/visual studio is much bigger than anything I've worked on and I know just how much work its been in my own projects to maintain backwards compatibility, sometimes its just time to draw the line in the sand.

  • ChrisChris

    There's no need to create 10 CRTs to solve the XP problem.

    1. Metro CRT.
    2. Normal CRT (XP support with LoadLibrary).

    I think I'm not mistaken if I say that the metro CRT is already a separate CRT? Anyway, there are workarounds, but it seems that Microsoft just doesn't want to do it.

    Also, when XP currently has one third of usage share it won't be dropping anytime soon. (Unless Microsoft decides to ship VC11 in 2014).

  • Liam.HockleyLiamHockey "Keep it Simple."

    I have a question... Will there be an online streaming option for the Going Native event? if so will online stream be free? or at what cost?

  • CharlesCharles Welcome Change

    @Xdega: Yes. Free. Learn about the event here: http://channel9.msdn.com/Events/GoingNative/GoingNative-2012

    C

  • CharlesCharles Welcome Change

    @KMNY_a_ha: Stop. Enough. Move along. I will continue to delete your posts that offend. There is no tolerance for personal attacks on Channel 9. Go somewhere else and share your nonsense. Not here.

    C

  • @Charles, no, you won't. Firstly, just because my post offends you it doesn't mean it offends others, secondly, just because I'm telling truth that is inconvenient for you, it doesn't mean that others may not hear it. Deal with it! Thirdly, wasn't that you who said:

    "We really want to hear from you, so please tweet feedback to @C9GoingNative (follow us!) and send your requests, ideas, complaints, praises, hate mail, and love letters to C9GoingNative [at] hotmail [dot] com. We will read and respond to all messages! That's how we roll, brothers and sisters. And if you're a Facebook user, please join our C9::GoingNative Facebook group."

    I believe that if you encourage people to communicate with you no matter in what form nor style then you should be prepared that people will do so. So deal with it!

    [Censored by Charles]

  • @Charles, and just to make this more interesting, (and to see what's the community's opinion, or you not interested in hearing that either?) let's ask people what they think. Guys, could you please, if you agree with me that mr sutter throughout his postings and explanations he gave in this thread http://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-3-The-CCX-Episode-with-Marian-Luparu demonstrated snake like vagueness and evasiveness could you please post "I agree" and those who don't agree with me could you please post "I disagree".

    Thank you.

  • TQRTQR

    I will say this: Charles, you have been altering posts from yourself and deleting posts from others on the thread with C++/CX. I saw the post from KMNY_a_ha that you deleted. It was fine. You just didn't like what KMNY_a_ha was saying and wanted the thread to end with a post from yourself. You edited that last post from yourself as well. You took back the sense of apology and a nod to an argument on CXXI that were originally there, and made several other edits.

    This is dishonest. All you are going to achieve with this is that we stop treating this site as a technical site and will start treating it as a political one.

  • Anna LeeAnna Lee

    I have been following the previous thread in its entirety. It did get repetitive and that was exactly because you, Charles, and other folks from Microsoft didn't listen to your opponents and were repeating the same things over and over. Your opponents did listen to you and did answer you. Regardless of these struggles, I was looking forward to some discussion on CXXI, which was brought up by a reader on that thread. But you decided to lock the thread instead.......

    There is a difference between shutting down Internet trolls and shutting down the discussion. What you are doing is shutting down the discussion.

    KMNY_a_ha: I will answer your plea in this way: I agree that Herb Sutter did not really answer the question posed on the C++/CX thread. The question was why Microsoft made one more language extension (C++/CX) instead of using wrapper classes or something similar while staying straight C++, and the answer provided by Herb was "because if you do wrapper classes you will run into problems". Herb haven't been able to show what these problems were despite being asked a number of times by many different people. Several other questions that were equally important were similarly left unanswered. I think your posts could benefit from some "language reduction", but I stand behind your main point 100% and I despise the heavy-handed administrative handling of the discussion by Charles.

  • WarrenWarren

    Sorry for piling up, but the thread on C++/CX was indeed closed by Charles - to my surprise and dissatisfaction - so I will just post one small note here for lack of a better place.

    Please take a look at this wonderful thread on this very site:

    http://channel9.msdn.com/Shows/Checking-In-with-Erik-Meijer/Checking-In-Stephan-T-Lavavej-Inside-STL-the-person-not-the-library

    Note how STL answers all questions by the inquiring public. No fuss, no posturing, no "you are too dumb to understand the answer", just straight technical answers. We love you, STL!

    Now please take a look at the thread that was closed:

    http://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-3-The-CCX-Episode-with-Marian-Luparu

    Read questions to Microsoft folks and their "answers" on that thread. A completely different picture. Handwaving, dodging, pretense, attitude.

    Make from it what you will...

  • CharlesCharles Welcome Change

    @TQR: I want the thread referenced to stop spinning. That's all. I removed comments I made because I'm not sorry for supporting C++/CX and I do think it's a solid approach for WinRT "boundary programming" in C++ (most of the code you'll write will be ISO C++) and I don't speak for the VC team - so I won't.

    Enough is enough.

    C

  • CharlesCharles Welcome Change

    @Anna Lee: I shut down a discussion that was stuck in an infinite loop. I also feel that insulting people, like KMKY has done, is indicative that the conversation, for all practical and useful purposes, has ended. It no longer serves any purpose and the interview to which the conversations was attached seems a distant memory in context. Enough is enough.

    If you want to talk about CXXI do so in our TechOff forum, not on a thread that has already seen too many topical diversions and, as I have made perfectly clear, has gone on too long.

    Please stop this. The conversation about why C++/CX and not something else must happen somewhere else. Do not spam unrelated threads with this topic.

    C

  • CharlesCharles Welcome Change

    @KMNY_a_ha: The request you reference is for folks to chime in and let us know what topics they'd like to see on GN.

    You don't think C++/CX is the best approach. Fine. Anything else? I didn't think so. Move along.

    Finally, we don't encourage communication in just ANY fashion - people need to be respectful and not insult others. Your commentary is personally offensive (stop attacking Herb, understand?) and it will be removed.

    C

  • CharlesCharles Welcome Change

    FINALLY: This thread is about ATL and Jim Springfield and announcing GoingNative 2012 - an ISO C++11 conference. Do not post about C++/CX here. I consider that spam and it will be removed. I'll leave the current posts intact, but no more.

    You've expressed your opinions on the C++/CX matter - it's understood. No more. End.
    C

  • GlenGlen

    @Charles

    I 110% definitely support Anna Lee's comment about CXXI and the rest of it. I also 100% support TQR's comment about your editing and Warrens most recent comments about you vs STL etc. They make *perfect* points. Please heed them, not block them. Seek advice from STL or Miguel is my advice.

    As for KMNY, I support *some* aspects of his point of view, but I don't remotely endorse how he expresses them.

    I can tolerate he might have a bad day and I agree he does overstep the line too often IMHO, so I can support you (Charles) in as much as deleting the parts of KMNY's posts that are invective and nothing more, to start with; but I can't support you, right now, in doing more than that, as that is flat out, unwarranted sensorship.

    @KMNY reign your language in. I understand you are inflammed; but your style does your cause no service and it harms others that share your cause! Remember, it's a programming language, not more.

    @Charles, not to give KMNY more ammunition, but the same is true of yourself and this is getting to be more in your case. You are not helping your cause by attacking other peoples freedom of speech.

    In the blocked blog, you called yourself an evangelist. Wikipedia defines this as:

    "Evangelism refers to the practice of relaying information about a particular set of beliefs to others who do not hold those beliefs. "

    Well, you found your market, so, as KMNY rightly says, deal with it. You want dialogue, you have found it, but if you think you can evangelise one way and stop just because YOU have had enough, you wont have anyone to talk to soon. I totally deplore your sensorship. You aren't helping your cause with that style either. Others agree, clearly.

    The conversion isn't over just because you say it is, that's not a conversation. Other members were, and still are wanting to talk to *each other* (at least), even if you don't like it. Progress was still most definitely being made in the opinion of others, even if not for you. Who do you think you or Micrsofot think you are? It pains me that KMNY is so right in what he says even though I hate how he says it, usually. Bu this is "regime" kind of behaviour from you and your company as he says.

    Please, stop hiding behind the "off/topic" term when it is infact sensorship. If you hadn't blocked the correct thread, people wouldn't have had to post here. The dialgue clearly isn't over just because YOU or Microsoft say it is. Obviously people DO want to talk more on the subject, as that is what is happening, even though the thread is very long.

    So re-enable the previous C++/CX thread or create a new dedicated thread if you have off topic concerns. That is just common sense.

    Otherwise, you make a rod for your own back and you are more than making KMNY's point for him at the minute.

    This really is a horrible side of Microsoft. You have lost your way.

  • CharlesCharles Welcome Change

    @Glen: You're entitled to your opinion. The Marian Luparu thread is not about CXXI. It has no place there. I'm not sure I can make this any clearer to you: we aren't going to engage with you in this conversation any more. Have it among yourselves.

    In the spirit of Christmas, I've reopened the thread. I will not spend any more time there, so if you ask me questions, they will go unanswered.

    I'm not a fan of censorship, but I demand respectful discourse sans personal attacks. Period.

    Think of me as you see fit, but I will not tolerate any more attacks and I will not take part in this conversation going forward.

    Do not post on this specific thread unless it has to do with ATL or GoingNative 2012.

    C

  • ChrisChris

    Charles is not the one responsible for what Microsoft has done with C++, the person who gives orders to the VC++ team is.

    There's no point in arguing here, clearly Microsoft has some ultimate source for info on what users want. This is exactly why the VC++ team's priorities are so right and why they make right decisions such as not implementing C++11 and delivering horrible C++/CX. After all, VS is a commercial product - therefore Microsoft can analyze sales numbers - they will easily know that they really did satisfy their customers.

  • GlenGlen

    @Charles

    I'll make this comment loosely tied to the Going Native conference.

    If you look at my last comment, I *highlighted* my point was this: just because you or MS decide to exit the conversation, it doesn't mean that WE the contributors have finished talking to *each other*.

    When you then reply to that to emphasise yet again, that "we aren't going to engage with you in this conversation any more", you just make it sound like you missed my point entirely or were just kind of having the last word or something, because it was obviously implicit from my message that I understood that fact already. My message clearly wasn't about conversation with you or MS, it was about other non MS people as I *highlighted*.

    It is your responses like this leave people feeling like you aren't listening half the time, even when you are somewhat, as you were by thankfully re-enabling the other thread.

    I don't know how to make these observations to you in any kinder way, Charles. I understand it is annoying for you and you are the one and we are the many. Which is how we feel when you are the monster corporation that doesn't listen and we are the millions of tiny voices having no effect.

    Anyway, I genuinely think you should talk to some colleagues like STL sometime to see where the impedance mismatch is. I'm really not trying to offend you on this. That's honestly what I would do if I were in this situation. Anyway, up to you. It's not a personal attack, it's some friendly advice.

    I know the job isn't easy, it'd make me crazy! But people coming to a conference will want to feel Microsoft is there to listen not just preech.

    @Chris, I don't know if you are being sarcastic or not and I don't want to inflame things anyway, but I'm sure you are right on the sales figures. Time will tell.

    Happy river.

  • CharlesCharles Welcome Change

    @Glen: Happy river. Hey, that's my signature! Smiley

    At GN12, the topic is C++11 and speakers are extraordinary. It's going to be a fabulous event with deep sessions, great conversations and a lot of fun. There are still seats available and I encourage everyone to try and attend in person. If you can't, then that's OK. It will stream live (all of it) and be available for on-demand viewing. All right here on C9.

    C

  • @Glen: when you say:

    "Remember, it's a programming language, not more."

    No, to me it's not. To me, it is a way of life, it is the way you express yourself through your ideas, the way you realize yourself by creating. The way my FREEDOM is defined. Democratically. And by what body my freedom is guaranteed. ISO C++ std.

    If to you all of those things are just a language and you can easily switch from one way to other and you accept that from now on someone will tell you what language you have to speak in order to be understood, then Glen, we are made from very different clay.

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.