Channel 9 - Entries tagged with Visual C++Microsofthttp://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.pngChannel 9 - Entries tagged with Visual C++https://channel9.msdn.com/Tags/visual+c++
Channel 9 keeps you up to date with the latest news and behind the scenes info from Microsoft that developers love to keep up with. From LINQ to SilverLight – Watch videos and hear about all the cool technologies coming and the people behind them.https://channel9.msdn.com/Tags/visual+c++
enSun, 02 Aug 2015 22:59:15 GMTSun, 02 Aug 2015 22:59:15 GMTRev922125C++ IDE ImprovementsThis session covers all major improvements in the Visual C++ 2015 IDE compared to VS2013 Update 2, including a brief demonstration of Single-File IntelliSense and some refactoring features.]]>https://channel9.msdn.com/Series/ConnectOn-Demand/210This session covers all major improvements in the Visual C&#43;&#43; 2015 IDE compared to VS2013 Update 2, including a brief demonstration of Single-File IntelliSense and some refactoring features. 283https://channel9.msdn.com/Series/ConnectOn-Demand/210
Wed, 29 Apr 2015 17:50:00 GMThttps://channel9.msdn.com/Series/ConnectOn-Demand/210Lan Kaim, adborsLan Kaim, adbors1https://channel9.msdn.com/Series/ConnectOn-Demand/210/RSSC++Visual StudioVisual C++VC++ Bytes 2-3: Additional Coding Productivity Features in VS"14" CTP 2Visual Studio "14" CTP 2 has been out for more than a week now, where you can find all the features in today's episode (and more!)

]]>https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-3-Additional-Coding-Productivity-Features-in-VS-14-CTP-2Visual Studio &quot;14&quot; CTP 2 has been out for more than a week now, where you can find all the features in today's episode (and more!) Jump to...[00:24] Implement Pure Virtuals[05:02] Move Definition Location[07:43] Improvements to Find in Files* *Improvements apply to all languages, not just Visual C&#43;&#43; (but our C&#43;&#43; dev worked on it =P) Click here to download for free! 655https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-3-Additional-Coding-Productivity-Features-in-VS-14-CTP-2
Sat, 19 Jul 2014 00:02:48 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-3-Additional-Coding-Productivity-Features-in-VS-14-CTP-2Gabriel HaGabriel Ha10https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-3-Additional-Coding-Productivity-Features-in-VS-14-CTP-2/RSSC++coding toolsProductivityRefactoringVisual StudiofilesVisual C++VC++ Bytes 2-1: Create Declaration/Definition with Oleg KharitonovWelcome to Season 2 of VC++ Bytes! This season is dedicated to showcasing [potential] new C++ features in the next release of Visual Studio (currently dubbed Visual Studio "14").

The "season premiere" kicks off again with Visual C++ IDE developer Oleg Kharitonov, whom I worked with to create today's featured feature: Create Declaration/Definition. (Yes, I do more at Microsoft than just make videos =P)

Create Declaration/Definition enables a user to quickly create a function's counterpart, and positions it near its neighbors. Watch this video for a demonstration as well as some tips and tricks you can do with the feature!

Want to try this feature out (amongst others)? Click here to download (for free!) the Visual Studio "14" CTP 1, and give us feedback about the feature in the comments!

Stay tuned for more features from this pre-release and future pre-releases as well!

(Note: Those of you with sharp eyes probably noticed the duplicate Refactor menu item; we did the demo in Oleg's personal branch in a later build where he's experimenting with other refactoring options. You should only see one in the actual CTP.)

]]>https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-1-Create-Declaration-Definition-with-Oleg-KharitonovWelcome to Season 2 of VC&#43;&#43; Bytes! This season is dedicated to showcasing [potential] new C&#43;&#43; features in the next release of Visual Studio (currently dubbed Visual Studio &quot;14&quot;). The &quot;season premiere&quot; kicks off again with Visual C&#43;&#43; IDE developer Oleg Kharitonov, whom I worked with to create today's featured feature: Create Declaration/Definition. (Yes, I do more at Microsoft than just make videos =P) Create Declaration/Definition enables a user to quickly create a function's counterpart, and positions it near its neighbors. Watch this video for a demonstration as well as some tips and tricks you can do with the feature! Want to try this feature out (amongst others)? Click here to download (for free!) the Visual Studio &quot;14&quot; CTP 1, and give us feedback about the feature in the comments! Stay tuned for more features from this pre-release and future pre-releases as well! (Note: Those of you with sharp eyes probably noticed the duplicate Refactor menu item; we did the demo in Oleg's personal branch in a later build where he's experimenting with other refactoring options. You should only see one in the actual CTP.) 555https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-1-Create-Declaration-Definition-with-Oleg-Kharitonov
Wed, 18 Jun 2014 20:41:14 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-1-Create-Declaration-Definition-with-Oleg-KharitonovGabriel HaGabriel Ha10https://channel9.msdn.com/Shows/C9-GoingNative/VC-Bytes-2-1-Create-Declaration-Definition-with-Oleg-Kharitonov/RSSC++CTPHeaderRefactoringVisual C++Inside .NET NativeWhat happens when .NET code is statically compiled to machine code (versus runtime compiled via JIT) by the VC++ back end compiler? You get highly optimized binaries that load and run faster than .NET code ever has before. Yes, my friends, .NET has gone native! :)

Today, the .NET team is releasing a preview of their new compiler technology, .NET Native. You can generate .NET native binaries for Windows Store apps only (in this preview). Tune in and meet a few key members of the .NET Native team, PM Mani Ramaswamy and Dev Lead Shawn Farkas. We go deep and Shawn spends quality time at the whiteboard. The team has done a lot of work to get where they are today and no part of .NET has gone untouched, from a new CLR to optimized BCL. This project is a natural extension of the MDIL work that was done for Windows Phone 8. It's all about highly optimized .NET for modern hardware - that the VC++ back end is turning IL into highly optimized machine code is a very, very good thing - for developers and, especially, users!

Note: Shawn and a fellow engineer will be on C9 Live at build on Day 3, so please watch this and prepare questions to ask them live, right here on C9 (details to follow).

Go native! ]]>https://channel9.msdn.com/Shows/Going+Deep/Inside-NET-NativeWhat happens when .NET code is statically compiled to machine code (versus runtime compiled via JIT) by the VC&#43;&#43; back end compiler? You get highly optimized binaries that load and run faster than .NET code ever has before. Yes, my friends, .NET has gone native! :) Today, the .NET team is releasing a preview of their new compiler technology, .NET Native. You can generate .NET native binaries for Windows Store apps only (in this preview). Tune in and meet a few key members of the .NET Native team, PM Mani Ramaswamy and Dev Lead Shawn Farkas. We go deep and Shawn spends quality time at the whiteboard. The team has done a lot of work to get where they are today and no part of .NET has gone untouched, from a new CLR to optimized BCL. This project is a natural extension of the MDIL work that was done for Windows Phone 8. It's all about highly optimized .NET for modern hardware - that the VC&#43;&#43; back end is turning IL into highly optimized machine code is a very, very good thing - for developers and, especially, users! Note: Shawn and a fellow engineer will be on C9 Live at build on Day 3, so please watch this and prepare questions to ask them live, right here on C9 (details to follow).Go native! 2374https://channel9.msdn.com/Shows/Going+Deep/Inside-NET-Native
Wed, 02 Apr 2014 18:00:00 GMThttps://channel9.msdn.com/Shows/Going+Deep/Inside-NET-NativeCharlesCharles42https://channel9.msdn.com/Shows/Going+Deep/Inside-NET-Native/RSS.NET.NET FrameworkC#CompilersVB.NETNativeVisual C++Windows Store AppGoingNative 21: Visual C++ Front-End CompilerC++ front-end veteran developer Tanveer Gani talks a little bit about the history of the Visual C++ compiler front-end, the current work to rejuvenate it, and the challenges facing the team! ]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-21-Visual-C-Front-End-CompilerC&#43;&#43; front-end veteran developer Tanveer Gani talks a little bit about the history of the Visual C&#43;&#43; compiler front-end, the current work to rejuvenate it, and the challenges facing the team! 1467https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-21-Visual-C-Front-End-Compiler
Mon, 30 Dec 2013 16:06:57 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-21-Visual-C-Front-End-CompilerGabriel HaGabriel Ha4https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-21-Visual-C-Front-End-Compiler/RSScompilerVisual C++VC++ Bytes 1-4: James McNellis - Improvements to the IDE and morePerennial favorite James McNellis makes another appearance...as does yet another perennial favorite guest star! James talks about improvements to the C++ STL, bug fixes, support for the C99 math library, and improvements to the IDE. ]]>https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-4-with-James-McNellisPerennial favorite James McNellis makes another appearance...as does yet another perennial favorite guest star! James talks about improvements to the C&#43;&#43; STL, bug fixes, support for the C99 math library, and improvements to the IDE. 280https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-4-with-James-McNellis
Mon, 25 Nov 2013 20:15:09 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-4-with-James-McNellisGabriel HaGabriel Ha1https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-4-with-James-McNellis/RSSSTLVisual C++VC++ Bytes 1-2: Ankit Asthana - MMA*, PGO and moreIf you follow the GoingNative series closely, you'll know we're back with "the guy you could pick out of a PM lineup." Ankit talks about MMA*, PGO, and [Code]Peek, all in stylish red frame glasses.

*not that one...

]]>https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-2-with-Ankit-AsthanaIf you follow the GoingNative series closely, you'll know we're back with &quot;the guy you could pick out of a PM lineup.&quot; Ankit talks about MMA*, PGO, and [Code]Peek, all in stylish red frame glasses. *not that one... 539https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-2-with-Ankit-Asthana
Mon, 25 Nov 2013 20:13:19 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-2-with-Ankit-AsthanaGabriel HaGabriel Ha1https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-2-with-Ankit-Asthana/RSSC++CompilersVisual C++VC++ Bytes 1-3: Raman Sharma - Just My CodeFive-year Visual C++ veteran Raman talks about Just My Code - and gives a real-time demo as well, done in just one take! ]]>https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-3-with-Raman-SharmaFive-year Visual C&#43;&#43; veteran Raman talks about Just My Code - and gives a real-time demo as well, done in just one take! 228https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-3-with-Raman-Sharma
Mon, 25 Nov 2013 20:13:04 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-3-with-Raman-SharmaGabriel HaGabriel Ha0https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-3-with-Raman-Sharma/RSSC++Visual C++VC++ Bytes 1-1: Oleg Kharitonov - Brace Completion and FormattingWe kick off the series/season 1 with Oleg, who talks about his favorite features (that he worked on himself!): the tag team of brace completion and formatting ]]>https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-1-with-Oleg-KharitonovWe kick off the series/season 1 with Oleg, who talks about his favorite features (that he worked on himself!): the tag team of brace completion and formatting 316https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-1-with-Oleg-Kharitonov
Mon, 25 Nov 2013 20:13:02 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-1-with-Oleg-KharitonovGabriel HaGabriel Ha2https://channel9.msdn.com/Shows/C9-GoingNative/FTVS13-Ep-1-with-Oleg-Kharitonov/RSSC++Visual C++Stephan T. Lavavej - Core C++, 10 of n (Nov 2013 CTP)In part 10, STL explores the new features in the Visual C++ Compiler November 2013 CTP (Community Technology Preview), in addition to the features that were added between VC 2013 Preview and RTM.

Features included in the November CTP ( generic lambdas!!! ):

C++11, C++14, and C++/CX features:

Implicit move special member function generation (thus also completing =default)

Reference qualifiers on member functions (a.k.a. "& and && for *this")

]]>https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Core-Cpp-10In part 10, STL explores the new features in the Visual C&#43;&#43; Compiler November 2013 CTP (Community Technology Preview), in addition to the features that were added between VC 2013 Preview and RTM. Features included in the November CTP ( generic lambdas!!! ): C&#43;&#43;11, C&#43;&#43;14, and C&#43;&#43;/CX features: Implicit move special member function generation (thus also completing =default)Reference qualifiers on member functions (a.k.a. &quot;&amp; and &amp;&amp; for *this&quot;)Thread-safe function local static initialization (a.k.a. &quot;magic statics&quot;)Inheriting constructorsalignof/alignas__func__Extended sizeofconstexpr (except for member functions)noexcept (unconditional)C&#43;&#43;14 decltype(auto)C&#43;&#43;14 auto function return type deductionC&#43;&#43;14 generic lambdas (with explicit lambda capture list)(Proposed for C&#43;&#43;17) Resumable functions and await See part 1: Name Lookup See part 2: Template Argument Deduction See part 3: Overload Resolution See part 4: Virtual Functions See part 5: Explicit and Partial Specialization See part 6: New C&#43;&#43;11 features added to the Visual C&#43;&#43; 2012 compiler (CTP)See part 7: Usual Arithmetic Conversions and Template MetaprogrammingSee part 8: do-while loop, casts, one definition ruleSee part 9: lambdas and other expressions 3598https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Core-Cpp-10
Mon, 18 Nov 2013 19:39:52 GMThttps://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Core-Cpp-10STL, GolnazSTL, Golnaz28https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Core-Cpp-10/RSSC++Stephan T LavavejVisual C++C++11C++14GoingNative 19: PdbProject - IntelliSense for Your C++ ExecutablePDB Project is a Visual Studio extension that will allow Visual Studio 2012 to open and convert pdb into a vcxproj. The converted project will load as a normal VC project and provide IDE features such as tag browsing, intelli-sense and object browsing. This extension will be useful when your build system is not based on vcxproj files. "PDB Project" is still in development with many features to add. Ale interviews the dev lead for this extension, Bogdan Mihalcea, to get more details from the source.

The latest build of PDB Project can be found here. Also soon we will add support for Visual Studio 2013.

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-19-PdbProject-IntelliSense-for-Your-Cpp-ExecutablePDB Project is a Visual Studio extension that will allow Visual Studio 2012 to open and convert pdb into a vcxproj. The converted project will load as a normal VC project and provide IDE features such as tag browsing, intelli-sense and object browsing. This extension will be useful when your build system is not based on vcxproj files. &quot;PDB Project&quot; is still in development with many features to add. Ale interviews the dev lead for this extension, Bogdan Mihalcea, to get more details from the source. The latest build of PDB Project can be found here. Also soon we will add support for Visual Studio 2013. Learn more: http://blogs.msdn.com/b/vcblog/archive/2013/10/28/creating-a-c-project-from-a-pdb-file-pdb-project.aspx 1670https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-19-PdbProject-IntelliSense-for-Your-Cpp-Executable
Tue, 29 Oct 2013 16:31:09 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-19-PdbProject-IntelliSense-for-Your-Cpp-Executablealecont, Charlesalecont, Charles1https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-19-PdbProject-IntelliSense-for-Your-Cpp-Executable/RSSC++ProgrammingVisual C++Native DevelopmentGoingNative 18: Inside Vector Calling Convention (VCC)It's still August!

Summer was great! GoingNative 2013 is just around the corner and Charles is getting ready for the final touches! In the meantime, Ale went to chat with the low-level gurus in the Visual C++ BackEnd to talk about the new Vector Calling Convention feature (aka VCC). Learn more about what it is about, how to test it out while avoiding zombies, and meet Ankit Asthana, Charles Fu and Kevin Gao, the pm, dev and test folks behind the feature itself. Check out the blog post about VCC and do send us feedback! And don't forget: GoingNative 2013 is going to be amazing! Stream-stream-stream!

Enjoy!

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-18-Inside-Vector-Calling-Convention-VCCIt's still August! Summer was great! GoingNative 2013 is just around the corner and Charles is getting ready for the final touches! In the meantime, Ale went to chat with the low-level gurus in the Visual C&#43;&#43; BackEnd to talk about the new Vector Calling Convention feature (aka VCC). Learn more about what it is about, how to test it out while avoiding zombies, and meet Ankit Asthana, Charles Fu and Kevin Gao, the pm, dev and test folks behind the feature itself. Check out the blog post about VCC and do send us feedback! And don't forget: GoingNative 2013 is going to be amazing! Stream-stream-stream! Enjoy! 1670https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-18-Inside-Vector-Calling-Convention-VCC
Fri, 30 Aug 2013 18:18:07 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-18-Inside-Vector-Calling-Convention-VCCCharlesCharles9https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-18-Inside-Vector-Calling-Convention-VCC/RSSC++CompilersProgrammingNativeVisual C++GoingNative 17: Meet James McNellis, Register for GoingNative 2013In this episode, Ale and Charles swap roles: Ale takes a camera into a dev's office and geeks out. Charles appears in the ctor and dtor segments with a singular message: register now for GoingNative 2013. You want to be there, in person. It's beautiful in Seattle in September and when's the last time you got a chance to hang out with Bjarne Stroustrup, Andrei Alexandrescu, Scott Meyers, Herb Sutter, Stephan T. Lavavej, Chandler Carruth, Michael Wong, Sean Parent, Jim Radigan?

James McNellis is a software developer on the Visual C++ libraries team. He's also a very active contributor on StackOverflow's C++ Q&A forum. James has done some nifty work recently with C++ templates to solve some interesting problems. Tune in to meet James and learn more about the great things he does. We hope to spend more time with James in the future.

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-17-Meet-James-McNellis-Register-for-GoingNative-2013In this episode, Ale and Charles swap roles: Ale takes a camera into a dev's office and geeks out. Charles appears in the ctor and dtor segments with a singular message: register now for GoingNative 2013. You want to be there, in person. It's beautiful in Seattle in September and when's the last time you got a chance to hang out with Bjarne Stroustrup, Andrei Alexandrescu, Scott Meyers, Herb Sutter, Stephan T. Lavavej, Chandler Carruth, Michael Wong, Sean Parent, Jim Radigan? James McNellis is a software developer on the Visual C&#43;&#43; libraries team. He's also a very active contributor on StackOverflow's C&#43;&#43; Q&amp;A forum. James has done some nifty work recently with C&#43;&#43; templates to solve some interesting problems. Tune in to meet James and learn more about the great things he does. We hope to spend more time with James in the future. 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@hotmail.com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user (who isn't these days?), then please join our C9::GoingNative Facebook group. 1770https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-17-Meet-James-McNellis-Register-for-GoingNative-2013
Mon, 29 Jul 2013 15:46:12 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-17-Meet-James-McNellis-Register-for-GoingNative-2013CharlesCharles9https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-17-Meet-James-McNellis-Register-for-GoingNative-2013/RSSC++ProgrammingNativeVisual C++Native DevelopmentGoingNative 16: Garrett Serack - Inside NuGet for C++NuGet support for C++ projects in Visual Studio has arrived in NuGet version 2.5! This has been an elusive feature for VC++ developers so we are thrilled it's here. It's been around for about a month now so we figured we'd go talk to one of the developers who helped make it happen, Microsoft's Garrett Serack.

Huge thanks to Garrett and the awesome NuGet team for bringing NuGet goodness to C++!

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-16-Garrett-Serak-Inside-NuGet-for-CNuGet support for C&#43;&#43; projects in Visual Studio has arrived in NuGet version 2.5! This has been an elusive feature for VC&#43;&#43; developers so we are thrilled it's here. It's been around for about a month now so we figured we'd go talk to one of the developers who helped make it happen, Microsoft's Garrett Serack. Huge thanks to Garrett and the awesome NuGet team for bringing NuGet goodness to C&#43;&#43;! Download NuGet 2.5 Download the tools to build C&#43;&#43; packages [00:00] GoingNative();// Charles and Ale construct the show. Sorry about missing last month! Milan update. NuGet.[02:25] Charles interviews Garrett Serack about NuGet for C&#43;&#43;[39:04] ~GoingNative(); // Please send any and all feedback about NuGet for C&#43;&#43; to us! More information:NuGet Team blog post on NuGet for C&#43;&#43;VC&#43;&#43; Team blog post on NuGet for C&#43;&#43;Building Native Libraries for NuGet with CoApp's Powershell Tools (video)Consuming Native NuGet Packages in Visual Studio (video) 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@hotmail.com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user (who isn't these days?), then please join our C9::GoingNative Facebook group. 2344https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-16-Garrett-Serak-Inside-NuGet-for-C
Wed, 22 May 2013 14:51:16 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-16-Garrett-Serak-Inside-NuGet-for-CCharlesCharles17https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-16-Garrett-Serak-Inside-NuGet-for-C/RSSC++ProgrammingVisual StudioNuGetVisual C++GoingNative 15: VC++ turns 20, Ale turns 40, C9 turns 9Visual C++ turned 20 this month! It certainly has come a long way. How did it begin? What were the goals way back when? Fortunately for us, one of the original team members VC++ team members, Jan Gray, set up a reunion of former and current employees who worked on the first visual IDE for C++ from Microsoft. During one of the related gatherings, Jan and fellow original VC++ alum, Rico Mariani, joined us for a casual chat about the early days of VC++. This conversation is full of goodness and a few surprises. Congratulations to the VC++ team and to all who shaped and continue to shape the product, from VC++ 1.0 to VC++11 - and that includes you, too!

It's no coincidence that as VC++ turned 20, Ale turned 40, and Channel 9 turned 9. Or is it? What's the hidden meaning in the sequence 20 40 9? Certainly something special! Happy birthday to all!!! And a big thank you to all of you who use Visual C++.

[00:00] GoingNative(); //We filmed this episode on Ale's 40th, VC++'s 20th, and C9's 9th birthday!! [02:26]Rico Mariani and Jan Gray reminisce about the very early days of VC++[46:11] ~GoingNative();

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-15-VC-turns-20-Ale-turns-40-C9-turns-9Visual C&#43;&#43; turned 20 this month! It certainly has come a long way. How did it begin? What were the goals way back when? Fortunately for us, one of the original team members VC&#43;&#43; team members, Jan Gray, set up a reunion of former and current employees who worked on the first visual IDE for C&#43;&#43; from Microsoft. During one of the related gatherings, Jan and fellow original VC&#43;&#43; alum, Rico Mariani, joined us for a casual chat about the early days of VC&#43;&#43;. This conversation is full of goodness and a few surprises. Congratulations to the VC&#43;&#43; team and to all who shaped and continue to shape the product, from VC&#43;&#43; 1.0 to VC&#43;&#43;11 - and that includes you, too! It's no coincidence that as VC&#43;&#43; turned 20, Ale turned 40, and Channel 9 turned 9. Or is it? What's the hidden meaning in the sequence 20 40 9? Certainly something special! Happy birthday to all!!! And a big thank you to all of you who use Visual C&#43;&#43;. [00:00] GoingNative(); //We filmed this episode on Ale's 40th, VC&#43;&#43;'s 20th, and C9's 9th birthday!! [02:26] Rico Mariani and Jan Gray reminisce about the very early days of VC&#43;&#43;[46:11] ~GoingNative(); 2856https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-15-VC-turns-20-Ale-turns-40-C9-turns-9
Thu, 21 Mar 2013 21:01:29 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-15-VC-turns-20-Ale-turns-40-C9-turns-9CharlesCharles14https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-15-VC-turns-20-Ale-turns-40-C9-turns-9/RSSAle ContentiC++Channel 9HistoryRico MarianiVisual C++Microsoft DevRadio: Developing Your Windows 8 Apps using Visual C++Abstract:Jerry Nixon welcomes Eric Battalio, Ayman Shoukry and Raman Sharma from the Visual C++ team as they discuss how you can develop Windows 8 apps using C++. Tune in as they provide best practices and reasons why you would want to use this language.

]]>https://channel9.msdn.com/Blogs/DevRadio/Microsoft-DevRadio-Developing-Your-Windows-8-Apps-using-Visual-CAbstract: Jerry Nixon welcomes Eric Battalio, Ayman Shoukry and Raman Sharma from the Visual C&#43;&#43; team as they discuss how you can develop Windows 8 apps using C&#43;&#43;. Tune in as they provide best practices and reasons why you would want to use this language. Next Steps:Step #1 – Download the Tools for Windows 8 App DevelopmentStep #2 – Download Visual Studio Express for Windows 8Step #3 – Start building your own Apps for Windows 8 Subscribe to our podcast via iTunes, Zune, or RSS If you're interested in learning more about the products or solutions discussed in this episode, click on any of the below links for free, in-depth information: Websites: Getting started with Windows 8 Apps How to Sell Your Apps and Make Money in the Windows Store Attend a Windows 8 Developer Camp and Hackathon in your area! Blogs &amp; Articles: Jerry Nixon’s Blog Visual C&#43;&#43; Team Blog Videos: Microsoft DevRadio: Managing Your Windows 8 Enterprise Apps with Windows Intune Microsoft DevRadio: Your Top Windows Store Questions Answered Virtual Labs: Windows 8 Release Preview Virtual Labs 1675https://channel9.msdn.com/Blogs/DevRadio/Microsoft-DevRadio-Developing-Your-Windows-8-Apps-using-Visual-C
Wed, 05 Dec 2012 12:00:39 GMThttps://channel9.msdn.com/Blogs/DevRadio/Microsoft-DevRadio-Developing-Your-Windows-8-Apps-using-Visual-CJerry Nixon, DevRadio, ChrisCaldwellJerry Nixon, DevRadio, ChrisCaldwell1https://channel9.msdn.com/Blogs/DevRadio/Microsoft-DevRadio-Developing-Your-Windows-8-Apps-using-Visual-C/RSSC++XAMLVisual C++Windows 8Visual Studio 2012Windows Store AppWindowsContentGoingNative 12: C++ at Build 2012, Inside Profile Guided OptimizationProfile Guided Optimization, or PGO, is an approach to optimization where the compiler uses profile information to make better optimization decisions for the program. Profiling is the process of gathering information of how the program is used during runtime. In a nutshell, PGO is optimizations based on user scenarios whereas static optimizations rely on the source file structure. VC++ has supported this approach to measurement-based code optimization since VC2005. In this episode of GoingNative, we are going to dig into VC++'s implementation of PGO with some of the folks who make it: Program Manager Amit Mohindra and Development Lead Ten Tzen. Tune in.

[04:09] Charles interviews VC++ back end compiler team members Ten Tzen (lead developer) and Amit Mohindra (PM) about VC++'s implementation of PGO. Whiteboarding included. This is a long interview, so make some time.

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 com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user, then please join our C9::GoingNative Facebook group.

Go native!

]]>https://channel9.msdn.com/Shows/C9-GoingNative/C9GoingNative-12-C-at-BUILD-2012-Inside-Profile-Guided-OptimizationProfile Guided Optimization, or PGO, is an approach to optimization where the compiler uses profile information to make better optimization decisions for the program. Profiling is the process of gathering information of how the program is used during runtime. In a nutshell, PGO is optimizations based on user scenarios whereas static optimizations rely on the source file structure. VC&#43;&#43; has supported this approach to measurement-based code optimization since VC2005. In this episode of GoingNative, we are going to dig into VC&#43;&#43;'s implementation of PGO with some of the folks who make it: Program Manager Amit Mohindra and Development Lead Ten Tzen. Tune in. Table of contents [00:00] GoingNative();\\ Charles and Ale discuss C&#43;&#43; at Build 2012 and introduce Profile Guided Optimization.[04:09] Charles interviews VC&#43;&#43; back end compiler team members Ten Tzen (lead developer) and Amit Mohindra (PM) about VC&#43;&#43;'s implementation of PGO. Whiteboarding included. This is a long interview, so make some time.[01:04:15] ~GoingNative(); // Charles and Ale reflect on PGO, Charles answers Herb Sutter's question (that Herb asked Charles during his Build 2012 C&#43;&#43; session (in his intro remarks). Hi Herb! 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 com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user, then please join our C9::GoingNative Facebook group. Go native! 4029https://channel9.msdn.com/Shows/C9-GoingNative/C9GoingNative-12-C-at-BUILD-2012-Inside-Profile-Guided-Optimization
Thu, 29 Nov 2012 04:40:26 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/C9GoingNative-12-C-at-BUILD-2012-Inside-Profile-Guided-OptimizationCharlesCharles15https://channel9.msdn.com/Shows/C9-GoingNative/C9GoingNative-12-C-at-BUILD-2012-Inside-Profile-Guided-Optimization/RSSC++CompilersBuildVisual C++C++11GoingNative 10: Welcome Ale Contenti, VC11 and Beyond with Steve Teixeira and Tarek MadkourVisual Studio 2012 RTM'd recently and MSDN subscribers are now writing code in the latest iteration of VS! C++ developers will be pleased with the improvements in VC11. From the compiler to libraries to IDE features, VC++ in VS 2012 represents the best version of VC++ to date, chalk full of new features and modern capabilities.

Now that VC11 has shipped, what's next? What are some of the things the VC team are working on? What's the plan for shipping new features faster?

[07:09] Charles interviews VC++ leaders Steve Teixeira and Tarek Madkour about VC11 RTM and beyond. Congratulations to the VC team for shipping a stellar release!!

[38:04] ~GoingNative(); // Ale and Charles talk about the industry's movement towards more cohesive standard modern libraries. See you next month! Go native! Ciao Ale!

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-10-Welcome-Ale-Contenti-VC11-and-Beyond-with-Steve-Teixeira-and-Tarek-MadkourVisual Studio 2012 RTM'd recently and MSDN subscribers are now writing code in the latest iteration of VS! C&#43;&#43; developers will be pleased with the improvements in VC11. From the compiler to libraries to IDE features, VC&#43;&#43; in VS 2012 represents the best version of VC&#43;&#43; to date, chalk full of new features and modern capabilities. Now that VC11 has shipped, what's next? What are some of the things the VC team are working on? What's the plan for shipping new features faster? [00:00] GoingNative(); // VC&#43;&#43; Dev Manager Ale Contenti joins the cast! [07:09] Charles interviews VC&#43;&#43; leaders Steve Teixeira and Tarek Madkour about VC11 RTM and beyond. Congratulations to the VC team for shipping a stellar release!![38:04] ~GoingNative(); // Ale and Charles talk about the industry's movement towards more cohesive standard modern libraries. See you next month! Go native! Ciao Ale! 2453https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-10-Welcome-Ale-Contenti-VC11-and-Beyond-with-Steve-Teixeira-and-Tarek-Madkour
Sat, 25 Aug 2012 18:57:23 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-10-Welcome-Ale-Contenti-VC11-and-Beyond-with-Steve-Teixeira-and-Tarek-MadkourCharlesCharles12https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-10-Welcome-Ale-Contenti-VC11-and-Beyond-with-Steve-Teixeira-and-Tarek-Madkour/RSSAle ContentiC++Steve TeixeiraNativeVisual C++C++11_techmemeVisual Studio 2012Jim Radigan: Inside Auto-Vectorization, 1 of nThe VC++ 2012 auto-vectorizer tries to make loops in your code run faster by automatically vectorizing your code using the SSE instructions available in all current mainline Intel and AMD chips. In Visual C++ 2012, auto-vectorization is on by defaultand requires only that you write your code—that is, there are no compiler switches, #pragmas, or hints. It just works. Of course, it's one thing to say that, but how does it work, exactly? When does it vectorize and when doesn't it? Why?

Auto-vectorization is a powerful compiler feature. In VS 12 it represents outstanding engineering by a few folks on the Microsoft Visual C++ compiler team. The engineering leader of this team is Jim Radigan. Fortunately for us, Jim has agreed to do a series of C9 lectures digging into the nuts and bolts of automatic vectorization in general and specifically as it relates to the latest version of VC++. Thank you, Jim!

In the first part of this n-part series, Jim introduces the series, describes improvements to the VC++ 2012 compilers, shares, introduces auto-vectorization, demos a few apps that benefit from compiler-optimized performance via auto-vectorization, and begins to describe how/when user code is vectorized (typical and atypical patterns alike - more to come as the lectures progress, of course). Over the course of this series, Jim will present both the practical and theoretical foundations of auto-vectorization.

(You can learn more about auto-vectorization in VC++ by reading the blog posts by Jim Hogg, another member of the VC++ compiler team working on this technology.)

Tune in. Ask questions. Learn.

]]>https://channel9.msdn.com/Series/C9-Lectures-Jim-Radigan-Inside-Auto-Vectorization/Jim-Radigan-Inside-Auto-Vectorization-1-of-nThe VC&#43;&#43; 2012 auto-vectorizer tries to make loops in your code run faster by automatically vectorizing your code using the SSE instructions available in all current mainline Intel and AMD chips. In Visual C&#43;&#43; 2012, auto-vectorization is on by default and requires only that you write your code—that is, there are no compiler switches, #pragmas, or hints. It just works. Of course, it's one thing to say that, but how does it work, exactly? When does it vectorize and when doesn't it? Why?Auto-vectorization is a powerful compiler feature. In VS 12 it represents outstanding engineering by a few folks on the Microsoft Visual C&#43;&#43; compiler team. The engineering leader of this team is Jim Radigan. Fortunately for us, Jim has agreed to do a series of C9 lectures digging into the nuts and bolts of automatic vectorization in general and specifically as it relates to the latest version of VC&#43;&#43;. Thank you, Jim! In the first part of this n-part series, Jim introduces the series, describes improvements to the VC&#43;&#43; 2012 compilers, shares, introduces auto-vectorization, demos a few apps that benefit from compiler-optimized performance via auto-vectorization, and begins to describe how/when user code is vectorized (typical and atypical patterns alike - more to come as the lectures progress, of course). Over the course of this series, Jim will present both the practical and theoretical foundations of auto-vectorization. (You can learn more about auto-vectorization in VC&#43;&#43; by reading the blog posts by Jim Hogg, another member of the VC&#43;&#43; compiler team working on this technology.)Tune in. Ask questions. Learn. 2123https://channel9.msdn.com/Series/C9-Lectures-Jim-Radigan-Inside-Auto-Vectorization/Jim-Radigan-Inside-Auto-Vectorization-1-of-n
Tue, 19 Jun 2012 17:17:10 GMThttps://channel9.msdn.com/Series/C9-Lectures-Jim-Radigan-Inside-Auto-Vectorization/Jim-Radigan-Inside-Auto-Vectorization-1-of-nCharlesCharles11https://channel9.msdn.com/Series/C9-Lectures-Jim-Radigan-Inside-Auto-Vectorization/Jim-Radigan-Inside-Auto-Vectorization-1-of-n/RSSC++C9 LecturesCompilersComputer ScienceVisual C++_techmemeVisual Studio 2012Stephan T. Lavavej: Core C++, 1 of nIn part 1, STL focuses on Name Lookup, which is a surprisingly complex process.

Remember Herb Sutter's great GotW post (#30, to be precise) on Name Lookup? Here's the problem from that post, to refresh your memory (Thanks to Herb for providing information like this on GotW!):

In the following code, which functions are called? Why? Analyze the implications?

We recommend you watch this entire episode before playing around with Herb's sample above (and don't read the GotW answer, either! That's cheating. Learn from STL. He's an outstanding teacher, as you know.)

]]>https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Stephan-T-Lavavej-Core-C-1-of-nIn part 1, STL focuses on Name Lookup, which is a surprisingly complex process. Remember Herb Sutter's great GotW post (#30, to be precise) on Name Lookup? Here's the problem from that post, to refresh your memory (Thanks to Herb for providing information like this on GotW!): In the following code, which functions are called? Why? Analyze the implications?
namespace A {
struct X;
struct Y;
void f( int );
void g( X );
}
namespace B {
void f( int i ) {
f( i ); // which f()?
}
void g( A::X x ) {
g( x ); // which g()?
}
void h( A::Y y ) {
h( y ); // which h()?
}
}
We recommend you watch this entire episode before playing around with Herb's sample above (and don't read the GotW answer, either! That's cheating. Learn from STL. He's an outstanding teacher, as you know.) Please supply feedback on this thread, especially as it relates to what you'd like STL to focus on in subsequent episodes. For part 2, STL will focus on Template Argument Deduction. Tune in. Enjoy. Learn. 2688https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Stephan-T-Lavavej-Core-C-1-of-n
Wed, 16 May 2012 14:21:32 GMThttps://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Stephan-T-Lavavej-Core-C-1-of-nCharlesCharles52https://channel9.msdn.com/Series/C9-Lectures-Stephan-T-Lavavej-Core-C-/Stephan-T-Lavavej-Core-C-1-of-n/RSSC++C9 LecturesStephan T LavavejVisual C++C++11_techmemeGoingNative 1: VC++ vNext, CRT, C++ and BeyondWe're back with the second installment of C9::GoingNative and we have a great show for you! Thanks for being patient and for all the excellent feedback and support for GN! We are listening to you and will continue to adjust the show based on your feedback (note the background—less motion, but not completely void of animation). Early on, we received a request to spend some time on the CRT. Here, we do just that. Mahmoud Saleh is the STL of the CRT (now, in this case STL refers to both Stephan T. Lavavej—our hero—and of course it also means Standard Template Library, the code Stephan maintains and improves. Mahmoud maintains and improves the CRT (C Run-Time Libraries)).

Charles and a few fellow C++ and Beyond attendees share perspectives on this great event for C++ developers. And looking forward, you'll see some great C++ and Beyond content on C9 over the coming months and well, yesterday: Watch the C++ and Beyond C9 interview with Herb, Scott, and Andrei..Table of Contents(click time code links to navigate player accordingly)

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 com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user, then please join our C9::GoingNative Facebook group.

Go native!

]]>https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-1-VC-vNext-CRT-C-and-BeyondWe're back with the second installment of C9::GoingNative and we have a great show for you! Thanks for being patient and for all the excellent feedback and support for GN! We are listening to you and will continue to adjust the show based on your feedback (note the background—less motion, but not completely void of animation). Early on, we received a request to spend some time on the CRT. Here, we do just that. Mahmoud Saleh is the STL of the CRT (now, in this case STL refers to both Stephan T. Lavavej—our hero—and of course it also means Standard Template Library, the code Stephan maintains and improves. Mahmoud maintains and improves the CRT (C Run-Time Libraries)).Diego demos some nifty new VC&#43;&#43; IDE features arriving in vNext. You can learn more about these new features in a recently published article by Sumit Kumar, program manager in the Visual C&#43;&#43; team. Much thanks to the VC&#43;&#43; team for pushing the IDE forward. Charles and a few fellow C&#43;&#43; and Beyond attendees share perspectives on this great event for C&#43;&#43; developers. And looking forward, you'll see some great C&#43;&#43; and Beyond content on C9 over the coming months and well, yesterday: Watch the C&#43;&#43; and Beyond C9 interview with Herb, Scott, and Andrei..Table of Contents(click time code links to navigate player accordingly) [00:00] GoingNative();[01:58] Diego demos some VC&#43;&#43; vNext features[10:20] Charles and Diego briefly chat about Diego's demo[12:37] Meet Mahmoud Saleh and learn all about the CRT[37:06] Diego and Charles: CRT debriefing, C&#43;&#43; and Beyond[41:29] gn.~GoingNative(); 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 com. We will read and respond to all messages! That's how we roll, brothers and sisters. If you are a Facebook user, then please join our C9::GoingNative Facebook group. Go na2590https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-1-VC-vNext-CRT-C-and-Beyond
Thu, 25 Aug 2011 11:30:00 GMThttps://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-1-VC-vNext-CRT-C-and-BeyondCharlesCharles50https://channel9.msdn.com/Shows/C9-GoingNative/GoingNative-1-VC-vNext-CRT-C-and-Beyond/RSSC++Visual C++C++11DCraig Symonds and Mohsen Agsen: C++ RenaissanceWhen you think about all the code executing in the world at any given time, there's a good chance you're thinking about a lot of code written in C/C++ (aka native code). As Mohsen Agsen mentions so astutely in this impromptu and candid conversation, C++ can be thought of as the dark matter of the developer universe: there is so much of it all around us, hiding in the computational shadows, powering so much of what we take for granted, technologically.

C++ is currently undergoing a renaissance. This means that, by definition, the language, compilers and compositional tooling are evolving and coalescing into a state that maximizes native developer efficiency, productivity, and creativity across hardware and software domains (PCs, mobile devices, embedded systems, operating systems, user applications, services, etc). C++ is a powerful "systems" programming language, but it's more than that. It's object oriented, but it's more than that. At Microsoft, most of our flagship products are written in C++ (and C, like the Windows kernel...). As somebody with a keen interest in programming languages and software engineering, generally, I wanted to get some answers to broad questions concerning the language that consistently ranks near the top of the most widely used general purpose programming languages in the world. Who better to talk to than some key technical leaders driving Microsoft's Visual C++ business?

Mohsen Agsen is a Microsoft Technical Fellow and veteran C++ developer who runs the VC++ engineering team. Craig Symonds is the Director of Program Management for VC++ and a long time Microsoft dev tools veteran. Both Mohsen and Craig have been at the company for many years and have a ton of industry experience. I paid them a visit to see what’s on their minds these days regarding the native developer community, C++, Visual Studio, and more. As you will learn, Microsoft and Visual Studio, specifically, are re-doubling efforts to take part in the native code renaissance. Accordingly, you may see advances in our native tooling that the team thinks of as “C++ first” -> VC++ will extend its capabilities on a faster pace than it has ever done so in the past, at times surpassing the other VS languages/runtimes, in specific scenarios. This is exciting and a long time coming, but of course it's more passion than promise at this point. There is no specific news here, just perspectives and insights among some very bright people driving Microsoft's C++ efforts. I really enjoyed the conversation with Craig and Mohsen and hope to chat with them again in the near future.

]]>https://channel9.msdn.com/Shows/Going+Deep/Craig-Symonds-and-Mohsen-Agsen-C-Renaissance When you think about all the code executing in the world at any given time, there's a good chance you're thinking about a lot of code written in C/C&#43;&#43; (aka native code). As Mohsen Agsen mentions so astutely in this impromptu and candid conversation, C&#43;&#43; can be thought of as the dark matter of the developer universe: there is so much of it all around us, hiding in the computational shadows, powering so much of what we take for granted, technologically. C&#43;&#43; is currently undergoing a renaissance. This means that, by definition, the language, compilers and compositional tooling are evolving and coalescing into a state that maximizes native developer efficiency, productivity, and creativity across hardware and software domains (PCs, mobile devices, embedded systems, operating systems, user applications, services, etc). C&#43;&#43; is a powerful &quot;systems&quot; programming language, but it's more than that. It's object oriented, but it's more than that. At Microsoft, most of our flagship products are written in C&#43;&#43; (and C, like the Windows kernel...). As somebody with a keen interest in programming languages and software engineering, generally, I wanted to get some answers to broad questions concerning the language that consistently ranks near the top of the most widely used general purpose programming languages in the world. Who better to talk to than some key technical leaders driving Microsoft's Visual C&#43;&#43; business? Mohsen Agsen is a Microsoft Technical Fellow and veteran C&#43;&#43; developer who runs the VC&#43;&#43; engineering team. Craig Symonds is the Director of Program Management for VC&#43;&#43; and a long time Microsoft dev tools veteran. Both Mohsen and Craig have been at the company for many years and have a ton of industry experience. I paid them a visit to see what’s on their minds these days regarding the native developer community, C&#43;&#43;, Visual Studio, and more. As you will learn, Microsoft and Visual 2100https://channel9.msdn.com/Shows/Going+Deep/Craig-Symonds-and-Mohsen-Agsen-C-Renaissance
Tue, 08 Feb 2011 21:04:16 GMThttps://channel9.msdn.com/Shows/Going+Deep/Craig-Symonds-and-Mohsen-Agsen-C-RenaissanceCharlesCharles31https://channel9.msdn.com/Shows/Going+Deep/Craig-Symonds-and-Mohsen-Agsen-C-Renaissance/RSSC++Microsoft ExeutivesMicrosoft PersonalitiesProgramming LanguagesVisual C++Mohsen Agsen