All Your Base Are Belong To Us

Mostly .NET internals and other kinds of gory details

Browse by Tags

All Tags » Teaching (RSS)
Are We Training Our Customers to Be Dumb?
During the past few years at Sela, I’ve authored several courses and participated in the development process of several dozens more. They covered a great deal of topics – ranging from the gory inner workings of Windows and the CLR, through new technologies like LINQ and Windows 7, and all the way to introductory courses to C# programming. I’ve also had the experience of designing and developing courses in a variety of styles – the “Sela style”, which focuses on the brilliance of the instructor delivering...
Learning from Feedback as a Public Speaker
Over the last three years, I’ve had lots of experiences as a speaker at conferences, courses, private presentations and other opportunities. Among them, I had the chance to present at the Microsoft Developers Academy, TechEd and IDCC; I taught 54 courses for Sela, including Windows Internals, .NET Debugging, .NET Performance, C++/CLI and many others; and I lectured at short half-day MSDN events on Windows 7, Windows Server 2008, performance, debugging and concurrency. Almost every training session...
Windows 7 RTM Training Kit Updates
Windows 7 RTM is out for a few days now for MSDN and TechNet subscribers, and together with the release of the final bits, Microsoft DPE released the final bits of the Windows 7 Training Kit . Our team at Sela worked days and nights to meet the RTM deadline. Specifically, Alon wrote new multi touch and Libraries hands-on labs, Dima (with Ariel ’s help) wrote new labs for the Sensors and Location platform, and I wrote a pair of new labs for taskbar features, one using the final 1.0 release of the...
Concurrent Programming MSDN Event
Last Monday (March 30) I had the pleasure of presenting an MSDN event at Microsoft Raanana on the subject of Concurrent Programming.  The idea was to show the design patterns, methodology and fundamentals of concurrency and parallelism in applications. An opening line (which I also used for the summary) which I really liked was along the lines of “we’ve been resisting object-oriented programming 20 years ago, so it’s only natural that we resist concurrent programming now”.  I really think...
A Spoiled Riddle
Here’s a C riddle: The following program was obviously expected to assign 1 to all the prime indices in the array and 0 to all the others.  However, it enters an infinite loop.  Explain. #define ARR_SIZE 10   IsPrime(n) int n; {     int i;     for (i = 1; i < n; ++i)         if (n % i == 0) return 0;     return 1; }   main() {     int arr[ARR_SIZE];     int it;  ...
Sela Developer Practice: Code Samples from .NET Performance and Debugging Seminar
As part of the Sela Developer Practice , I’ve delivered a two-day seminar on .NET Performance and Debugging – an in-depth dive into these subjects for very experienced .NET developers. If you were there – thanks – you were a great audience!  It wouldn’t have been the same without your questions, active participation and (surprisingly!) punctual timing. The entire set of code samples I’ve shown in class can be downloaded from my SkyDrive .  Additionally, I’ve uploaded the sample code from...
Why I Was So Silent: Sela Uploads Eight Courses to Microsoft Courseware Library
I am delighted to announce that the reason for my complete silence in the past couple of weeks is that Sela has uploaded eight courses to the Microsoft Courseware Library , a community-driven training delivery portal. I managed the technical aspects of the project, including a major rewriting of several of the courses and an intensive editing and reviewing process of the others. What we finally uploaded just a few days ago (still pending the CWL compliance process) are the following courses: Silverlight...
Native Debugging Walk-Through Set
I gave a 3-hour presentation today on C++ debugging techniques, with a focus on production debugging.  I’d like to share with you the demos I’ve shown during the session with a brief walkthrough so that you can repeat what I did in class.  (I have intentionally omitted the debugger spew and any screenshots so that this still remains somewhat of an interesting challenge.) First of all, download the demo solution (30KB), unzip and open with Visual Studio 2008 (the code should work on Visual...
.NET Interoperability Exercises and Solutions
I recently delivered a half-day instructor-led training on .NET Interoperability , including P/Invoke, COM Interop and C++/CLI. I'm sharing the exercises and solutions with you in the hope you might find them useful. All the exercises are taken from (almost) real-life scenarios I had to implement at some point in the past. Among the exercises: Wrap System.IO.FileSystemWatcher for use from native C++ code Provide a managed class that acts as a byte array allocated from a Win32 low-fragmentation...
Sela Technology Center Course: .NET Performance, Internals and Debugging
Yesterday was the second session in our series of courses for our instructors and consultants . It was my turn to be the lecturer, and I talked about performance measurement on Windows in general and using .NET in particular. In a pretty standard but significantly faster-paced session taken from the .NET Performance course , I've reviewed the CLR Profiler , the Visual Studio 2008 Profiler , performance counters as well as exposing your own performance counters, querying WMI information (I've...
Sela Technology Center: Course for Our Professionals
As part of our continuous effort to maintain the highest level of professional expertise among our consultants, Sela Technology Center 's elite team of 25 professionals has been invited to a private training course consisting of 24 evenings taught by our best consultants and instructors . This training course is unique in the level of participation exhibited by the attendees, in the technological breadth and depth of the covered topics, and in the attempt to cover all recently released Microsoft...
MSDN Pulse: Microsoft Israel Newsletter for Developers
The first issue of MSDN Pulse , a monthly newsletter for the Israeli developers community, has been published yesterday by Guy Burstein .  This newsletter follows a great tradition of Microsoft newsletters, such as the MSDN Flash .  I'm sure every single one of you will find something useful in it - the downloads section, links to interesting blogs, or a monthly article on an interesting technology.  (This month article features the upcoming ADO.NET Sync Framework, by Memi Lavi...
Windows Server 2008 Open House Presentation and Demos
Alon Fliess and I have presented at three Open House sessions at Microsoft on the subject of the upcoming Windows Server 2008. My last session was February 21, several days after the RTM but still a few days before the Heroes Happen {Here} launch event. Several participants asked for the slides and demos (in past sessions as well), so I decided to upload everything to my SkyDrive for everyone's convenience. The subjects covered in the latest presentation follow: Introduction to Windows Server...
Screencast: What's New in Visual Studio 2008?
A few days ago I have recorded a 14' pilot screencast (in Hebrew) titled "What's New in Visual Studio 2008?" , aiming to show developers and decision makers what kind of new functionality to expect in the recently released Visual Studio. In other words, what's in the box? My expression on the left (which BTW is a static photo, unfortunately) is very grim, but don't worry, I get more vivid during the screencast. Among the things I demonstrate: Multi-targeting support Multi...
Notes on Teaching Introduction to .NET
Today I've had an interesting experience of teaching a one-day session titled "Introduction to .NET" (roughly based on this Sela course ).  I wouldn't find it post-worthy whatsoever (except for maybe the fact that class started at the dumbfounding time of 7:45AM) if not for the audience. The group consisted of about 15 ultra-Orthodox men ( Haredim ; Wikipedia: Hebrew , English ) who are going through several months of training to eventually practice software testing. ...
More Posts Next page »