Visual Studio Tip: Show Threads in Source

Tuesday, May 29, 2012

Debugging multithreaded applications is always hard, so any help we can get from the debugger is appreciated. Here’s one tip that can help using Visual Studio 2010 when many threads are running at the same time, some of which run similar code.It’s tedious to lookup each thread’s call stack to see where its next instruction pointer is located. Here’s the Threads window in action: To find the actual source line each thread is at the breakpoint moment, we’ll need to switch to that thread by double clicking it in the Threads window and then we’ll see something like...

WPF 4.5 Cookbook

Thursday, April 26, 2012

A few months back, I was approached by Packt publishing, asking me to write a WPF book, in their “cookbook” style, and I accepted. I haven’t written an entire book before, but I have written dozen of courses for Hi-Tech College, John Bryce Training and now for CodeValue, in a range of topics, from Windows Internals and device driver development, to advanced C++, to basic and advanced .NET topics, to WPF, and even some oddities such as the Windows Media Foundation. Writing a book, however, is different than writing a course, and I was at least curious whether I...

Parallel Programming Open House Session

Thursday, December 1, 2011

Today I presented a half-day session on Multithreading & Parallel Programming at John Bryce center in Tel Aviv. Thank you all for attending! I certainly enjoyed presenting these fascinating topics. I’ve attached the demos I showed. The presentation will be sent to those who attended by email. Thank you! ParallelDemos

My C# 5.0 Async Session at Microsoft

Tuesday, November 22, 2011

Today I presented a session on C# 5.0 asynchronous programming. Thank you all for coming, it was a pleasure to present this interesting stuff. The presentation and demos are attached to this post. The NetFlix and RSS aggregator demos are part of the Async CTP installation. Any questions or comments are very welcome!

Mandelbrot Set with C# 5.0 Async support

Monday, November 21, 2011

I’ve always been fascinated by the Mandelbrot set. It’s an intriguing set, and the fractals created are truly mind boggling. (for more information on the Mandelbrot, and other such sets, you can start with the above Wikipedia link). As part of my preparation for tomorrow’s session on C# 5.0 asynchronous programming, I’ve decided to create a WPF application to view and explore the Mandelbrot set, while taking advantage of those new asynchronous features. This turned out to be rather fun. Here’s the initial output: Now you can mark a rectangular are to zoom in: ...

The Roslyn Project CTP is Available for Download

Wednesday, October 19, 2011

The so called “Roslyn” project from Microsoft has been finally released with this early CTP. What is “Roslyn”? It’s an attempt to make the internals of a C# or VB compiler exposed. The usual way we think about a compiler is as a black box – some input goes in – some output comes out. During the compilation process, the compiler builds various tables and gathers a lot of information on the input. After the output is generated, the compiler throws everything away. That’s really too bad. In today’s world of sophisticated tools, with intellisense and refactoring, it...

Some of My Favorite Small C++11 Features

Thursday, October 13, 2011

The new C++11 standard, finally finalized (pun intended) contains dozens of features, both in the language and in the libraries. Some of those features are pretty complex (or at least less often used), but some are practically essential, and have been sorely missed (at least by me) since forever. Here’s a quick list of those small, simple, features that I like. it’s sometimes surprising to C# or Java developers that some of these features didn’t exist in C++ prior to C++11 (technically, C++03 or C++98; I’ll refer to this as “classic C++”). I will indicate which version of Visual...

Porting an XNA game from Windows to Windows Phone (Part 1)

Monday, August 8, 2011

XNA is one of the two APIs that’s supported on Windows Phone 7 (the other being Silverlight), so a natural thing to do is to port an already existing XNA game (running on Windows or XBOX 360) to the new Windows Phone 7 platform. I wanted to see how easy (or maybe not so easy) it would be to do the actual porting. My starting point is a relatively simple 2D game, the one developed throughout the XNA 2D tutorial I did a some months back. We’ll start with the final game project (discussed in the last part...
no comments

Some Short Videos I Made

Thursday, May 26, 2011

I’ve created a few short videos, covering some introductory material – still may be useful for some… The audio quality is not the best possible, but should be fairly understandable. All the videos are in Hebrew (sorry, non-Hebrew speakers! You can still watch me type code samples, it may have some value) The videos are: Introduction to C# 5.0 asynchronous programming Introduction to the Managed Extensibility Framework (MEF) Understanding XAML (Part 1) Understanding XAML (Part 2)   They are also available (or will be shortly) on the Hi-Tech TV web site....

Async CTP Refresh Available

Wednesday, April 13, 2011

A refresh of the Async CTP that was available for VS 2010 RTM has been released. This one may be installed on top of VS 2010 SP1. You can now take advantage of the async and await keywords. The demos I showed at the session I presented a few weeks back can now be actually tested with this new CTP. Download it here.
one comment