Archive for December, 2009

Bringing Joy to the World

December 23, 2009

Here is a video of people enjoying the HBO Shop Interactive Snow Window in New York City. In particular I enjoyed watching the little girl to whom this display obviously brought so much joy.


Having lived in Manhattan for ten years, I remember well the display windows in the stores as well as the extra effort that went into them during the holidays. One need only consider the Macy’s Thanks-giving day parade to realize that merchants in NYC regularly exceed their counter-parts in other places in terms of the efforts they will undertake.

Quoting from the Sosolimited website: “We built a snow blowing machine that senses people walking by on the sidewalk and launches snow into the air in response. The installation was developed with the openFrameworks programming API and the physical hardware was controlled using an Arduino. An IR sensor array detects how close pedestrians and window-gazers are, and using mechanical relays, switches on and off fans under the snow in response. A Large LED wall behind the snow is also reactive to street traffic as well. A sliced winter forest scene changes color and moves in response to street traffic.”

I too use Arduino computers, which are open source and available for approximately $30. All the software for them, compilers etc., is open source and free. I use my Microsoft Windows computer to compile programs for the Arduino and then download and run the program on the Arduino. It’s an ideal combination, the power, speed and ease of use of Windows combined with ultra low cost deployment.

While I have used multi-million dollar computers to solve sophisticated financial calculations using integer programming, I have never had a child dance and enjoy any program I have ever written. My hat is off to the people at Sosolimited and HBO; they have used a $30 computer to bring the true joy of the holidays to untold children and adults this holiday season.

Wouldn’t it be great if all of us who work with computers could dedicate ourselves to using them to bring a little bit of joy to the world in the coming year?


Choose Microsoft for iPhone development

December 9, 2009

About now you’re probably thinking, “What happened JonnyBoats, the boom on your sailboat hit you in the head?” Everybody knows the way to develop for the iPhone is with Objective-C form Apple. Well hang in there with me….

Having dealt with lots of people at Microsoft for over 20 years, I can assure you that once you get to know them the company is really lots of different groups with different agendas and goals. Those who portray Microsoft as the “evil empire” with all employees goose stepping to the same music has simply not taken the time to get to know those on the main campus.

One of the podcasts I try to listen to is StackOverflow, they are published weekly and last for over an hour, so I often fall behind. I was listening to Podcast # 61 with Miguel de Icaza of the Mono project. If you have the time, I encourage you to listen to the podcast.

In the podcast Miguel mentions dealing with Bob Muglia of Microsoft concerning licensing and the mono project and how accommodating and supportive he is to open source.

I first dealt with Bob back in 1988 when he joined Microsoft (see this news item). I had a small firm, Canaan Analytics, and we were developing a Windows based system used by an internally managed pension fund that used it to manage several billion dollars of US stocks. Bob always went above and beyond to help us, and I can assure you that we could never have done what we did without a lot of help from many, many people at Microsoft.

Allow me to give you a quick example of one of the many things he did to help us. We were using second class broadcast mailslots to deliver real-time stock quotes through the LAN. Bob knew this, and that we were virtually the only firm using them in this way. Bob gave me a call to tell me Microsoft would like to change their implantation under Windows NT and wanted to know how this would affect us.

Back to the present, take a look at these show notes excerpted from the StackOverflow podcast:

  • Mono runs on the iPhone, through the Unity game engine! This was challenging for the Mono team to develop, because interpreters and runtimes are explicitly disallowed in terms of the iPhone SDK. Mono had to be converted from a JIT to a static compiler.
  • Per Miguel, programmers wanted Mono because Objective-C is fairly primitive in memory management and requires a lot of repetition and boilerplate. With Mono “this is all taken care for you”, as a higher level language.
  • Due to concerns within the free software community, Microsoft made a legally binding promise that it will not enforce patents against Mono — for the core framework.

    For all the details you really do need to listen to the podcast; but here is my take:

    1. Apple provides a limited, outdated development environment for the iPhone.
    2. Apple restricts through legal contracts what developers can do on the iPhone, forbidding some of the most popular tools which are capable of running on the iPhone.
    3. Microsoft provides a great development environment with Visual Studio and .NET. The compilers are included for free with Windows and the Express version of Visual Studio is also free.
    4. Because of the open source Mono project and the Unity framework, applications can be developed in Visual Studio and deployed on the iPhone.

    So in conclusion Microsoft provides free and low cost versions of Visual Studio that permits one to develop applications that run on Windows, Unix, Mac, Windows Mobile and the iPhone. If you develop on a Mac, what tools does Apple give you to develop applications to deploy on Windows?