Long time no write…

Wednesday, April 2, 2014

It's been a busy period, the busiest since we established CodeValue. A week ago, my son asked me, "daddy, when will you come home not for doing more work?" Finally, I have a good answer! I am at Newark airport heading to San Francisco to Microsoft Build Conference and on Friday, my family will join me for a family vacation in Hawaii. In the last few months, I have been doing software architecture for two complex and large applications. Besides that, I delivered couple of architecture lectures and last week I gave an Advanced C++ 11/14 course. ...
no comments

Kinect for Windows SDK Programming Guide by Abhijit Jana book review

Wednesday, March 13, 2013

Since the release of Kinect for PC I had the opportunity to take part and be involved with several Kinect based projects. Starting developing with the Kinect SDK is something that most .NET and native C++ developers can handle very easily. Just download and install the SDK, hook a Kinect device (you can use the Xbox Kinect, however you will need a power cable and do remember that it is just for the development process and some features, like near mode, will not work), run the Kinect toolkit browser, see the sample, read the document and open the source...

The first Israeli .NET (Un)Conference

Saturday, December 29, 2012

I had the honor to deliver the first lecture of the first Israeli .NET (Un)Conference. Thanks to Adi Av, a bunch of .NET developers got early last Friday morning just to talk and hear about .NET technologies. Erez & I came early to see, meet and talk with those people that agree to spend Friday morning with other developers. Just the people we like! My lecture was about the latest Kinect SDK. I showed how easy is to develop applications using C# as well as C++ with the Kinect. The atmosphere was great and I had fun and...
one comment

NDC 2012 TPL Dataflow Network Lecture

Thursday, June 7, 2012

In about an hour I am going to deliver a session about TDF, the new Thread Parallel Library Dataflow Network technology of .NET 4.5. In this post I'd like to provide the steps you need to start play with TDF and also the links to the lecture slides and demos.   To start use TDF: 1. Download Visual Studio 2012 RC, or use VS 2010 with the TDF CTP 2. Create a C# project and add a NuGet package of TDF 3. Add reference to System.Threading.Tasks 4. Write your code or download...

Message Only Window in for .NET Application

Monday, December 26, 2011

  Overview .NET is great platform, it speeds up the development process, you deal with your application logic and in most cases you don't need to know that there is whole Windows operating system down there. However sometimes you do need to program against Windows without the .NET assistance. As a Windows developer, you need to keep all your weapons ready, be it .NET, COM or C++ with the native Win32 API. In this article I am going to show how to deal with Windows Message based communication protocol within .NET application. Windows Messages In traditional User32.dll based Windows application the Windows...

My Build Event Insights

Tuesday, September 20, 2011

You didn't have to go to //BUILD/ to get the information and knowledge of the new Windows Platform APIs; you could watch all the sessions from the comfort of your home, and I encourage you to do so, however attending the conference helps obtaining a perception about the future of Microsoft and especially the future of Windows technologies and the reaction of the developers that attended the conference. I didn't want to post about the conference before I have a clear picture, and believe me the picture was obscured. According to the first day keynote and the discussions...

Fun With XNA

Wednesday, June 29, 2011

I recently played with XNA. There is a game that I have developed many times, on the Commodore 64 as a kid, on the Commodore Amiga, later on Windows 9X with MFC, after that in .NET and Windows Forms, and now with XNA. The development experience in XNA was the best, and I can run my game on the phone, on Windows and on my XBOX. The goal of the game is to have higher score . Each player moves only in a specific direction (vertical or horizontal). In each turn a player move the...
one comment

C++ Renaissance: Getting Back The Free Lunch

Saturday, April 16, 2011

At the beginning of 2005 Herb Sutter had an article stating that the developer’s free lunch is over. We had an assumption that more transistors in the CPU imply better application execution speed. The CPU executes the code in a sequential manner hence the performance of the CPU-bound code is directly related to CPU frequency. This used to be our “Free Lunch”: an old program runs faster on a new CPU. Using this assumption with modern low power consumption multi-core CPUs is wrong, we might even find that an old program runs slower on a new CPU. Since performance...

C# – Copying a structure to byte array as is, and back

Wednesday, March 16, 2011

A customer asked me today how he can serialize a structure to a byte array for sending to hardware controller. The controller requires that the structure will be sent as is, with no padding or packing. As long as he sure (we dealing with unsafe code) that the data is correct and the size if fine, he can do the following:using System;using System.Collections.Generic;using System.Linq;using System.Net.Sockets;using System.Text;using System.Runtime.InteropServices; namespace ConsoleApplication20{        internal struct MyStruct    {        public byte c;        public int a;        public ushort b;    }    class Program    {        static unsafe void Main(string args)        {            var s = new MyStruct { c = 1, a = 7, b = 15 };             int length = Marshal.SizeOf(s);            // or this            int size = sizeof(MyStruct);             var b = new byte;            Marshal.Copy(new IntPtr(&s), b, 0, size);            //And back...            var r = new MyStruct();            Marshal.Copy(b, 0, new IntPtr(&r), size);        }    }}   Don't forget to compile with /unsafe flag.
tags: ,
one comment

Dozen good reasons to get up early after the TechEd party

Sunday, November 28, 2010

This is the fifth TechEd Eilat in a row that I will give a lecture. In previous TechEd I gave lecture with Noam King. This TechEd I have the honor to give a lecture with Vlad Azarkhin. We will show dozen of tools that every .NET developer has to have in his toolbox. We have created a short teaser that explains why you should get out from bed early the day after the big Party of the TechEd.
no comments