# Tuesday, 25 November 2008

It seems like every year I read about how something we think is new and exciting, or at least fairly recent, has been kicking around for a long time. (I mentioned video games a while back, for example.) Recently on the same day I read a Jeff Atwood blog entry and a Wired article about Ray Ozzie. Here are some quotes:

From Jeff:

From On December 9, 1968, Douglas C. Engelbart and the group of 17 researchers working with him in the Augmentation Research Center at Stanford Research Institute in Menlo Park, CA, presented a 90-minute live public demonstration of the online system, NLS, they had been working on since 1962. The public presentation was a session in the Fall Joint Computer Conference held at the Convention Center in San Francisco, and it was attended by about 1,000 computer professionals. This was the public debut of the computer mouse. But the mouse was only one of many innovations demonstrated that day, including hypertext, object addressing and dynamic file linking, as well as shared-screen collaboration involving two persons at different sites communicating over a network with audio and video interface.

and from the Wired article, talking about 1973:

Users had direct contact and direct feedback—not just to computers but to one another. "They had this thing called Personal Notes, which you would call email," Ozzie says. "They had this thing called Talkomatic, which is like real-time group chat. And they had this thing called Term-Talk, which was like instant messaging." It was also a way-before-its-time Valhalla of computer gaming. Programmers on the system had gone far beyond the tic-tac-toe and hangman that were popular in other computer centers to pioneer multiplayer online games, notably the Star Trek-inspired Empire. In retrospect, looking at the Plato community was like peeking through a wormhole and viewing the 21st-century Internet—but without the spam, fraud, and commercialism that would come with the real thing 35 years later.

I wonder what technology we're using today that only kinda sorta works and just a few visionaries (eccentrics?) are using it, but 30 or 40 years from now when it's ubiquitous, we'll all be "hey! we had that in 2008! I think I have a screenshot around here somewhere..."


Tuesday, 25 November 2008 10:31:23 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Monday, 24 November 2008

Rudi Grobler has released a pack of WPF themes for you to use to make your applications convey the atmosphere you want to convey. Applying them is as simple as one line of code in your application as a whole, or window-by-window, or you can do it in XAML.  Rudi's blog tells how. It really makes a difference to the mood of your application and lets you stand out from the crowd.


I shrank the images because people object when the chrome on the right gets messed up by big images. You can see the originals on Rudi's blog - I just want you to see how very different the same application looks when you change themes. BTW, these themes were originally released for Silverlight and Rudi converted them for WPF. Pretty slick!


Monday, 24 November 2008 14:54:09 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Sunday, 23 November 2008

Because Visual C++ is a great tool for making Windows applications (and has been for well over a decade) a lot of the Visual C++ users I meet are Koolaid drinkers like myself. We use Microsoft tools to write software for a Microsoft platform, and a fair number of us use Word and Outlook and Powerpoint and rarely touch an application that didn't come from Redmond. But one of the cool things about C++ as a language (contrasted to VB and C# for sure) is that it is also used by people who don't use any Microsoft tools, or who use Visual Studio but nothing else, and people who are not developing for Windows. These people are not drinking the Koolaid and their opinions can be very helpful. They keep track, for example, of which standards features have been implemented in which compilers.

I came across this article on the future of C++, and the article itself didn't have much extra information for me (though the insight into the "bias" of StackOverflow was interesting.) But the comments! Wowza. I'll be reading Andy's blog from now on, and I recommend you read at least this post. It's a good one.


Sunday, 23 November 2008 09:14:21 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Saturday, 22 November 2008

Soma is blogging about C++ again. I liked this quote:

Over the years, we have heard a lot of C++ developers refer to the old days of Visual C++ 6.0 as the glory days of Visual C++ tools.  Many of the comments reminisce about the snappy and productive IDE.  With Visual C++ 2010, we strive to create a new benchmark for Visual C++ IDE productivity.  We will couple this IDE with our superior support for the C++ language and significant improvements to the libraries.

He talks about Intellisense, the build system, tools for exploring a large codebase, the native Parallel Patterns Library (PPL), lambdas, and MFC updates. There really is a ton going on in Dev10. A lot of it was covered at PDC so if you haven't watched those videos yet:

https://sessions.microsoftpdc.com/public/timeline.aspx search for "C++", "MFC", and "native". Enjoy!


Saturday, 22 November 2008 09:05:57 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Friday, 21 November 2008

One very powerful question to ask yourself, if you run a business of any kind, is "what business are you in?" Another way to ask it is "what needs do I meet?". It's easy to say "I'm in the software business" or "I'm in the consulting business" but more people are saying "I hate the way we <something in their business>" than are saying "I wish I had new software" or "I wish I had a consultant."

This Harvard Business School article even says people don't really buy drills, or that isn't the need they are meeting when they go buy a drill - they buy holes. They want holes, and they buy a drill as a way of getting them. The only way you can sell them your drill is to relate it to holes. Being lightweight, for example, doesn't matter to someone who only plans to make a few holes at a time. But it's really important to someone who is going to make a lot of holes and has to slow down the pace because their arm aches from holding the heavy drill. Being cordless only matters if you can think to say "make holes anywhere!" to the purchaser. And so on. The rest of the article helps you try to understand what needs your product or service meets, and therefore how to adjust it or sell it so that you sell more of it.

I've said for years that we're in the problem solving business. We solve people's problems. We're more likely to use software to solve them than to come over to a client's house and build a shed in the backyard or mow the lawn - but we're not so much in the software business as in the problem solving business. If I write great software that doesn't help the problem, I've failed. Often our advice on process is as valuable as the software we write encapsulating that process. And of course when we're mentoring and advising other developers, we need deep technical chops but we need to remember that the mentee or advisee has a problem (our UI looks stale, we have to exchange information with a new business partner and don't know how, our application blows up under certain circumstances and we don't know why) and we are there to get that problem fixed.

As the economy worsens you are more likely to stay in business if you are sure what business you are in. It isn't obvious.


Friday, 21 November 2008 08:57:02 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Thursday, 20 November 2008

It's so hard to remember, while you attend a conference, that the convention centre is essentially a blank canvas on which your conference is drawn. Between shows most of the space is a giant empty room with concrete walls and floor. All the lighting, draping, signs, and screens are installed for the show itself - even the chairs are temporary. This amazing timelapse video shows you the keynote room at PDC over the days before, during, and after the show. One of the things I like is that you can see how often the keynotes were rehearsed in the actual room on stage with all the screens going. Full-on dress rehearsals are vital to a good presentation.

It's about 6 minutes long and parts of it are a bit dull (imagine what they would have been like at normal speed) but I'm glad I watched it.


Thursday, 20 November 2008 08:43:01 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Wednesday, 19 November 2008

Recently, as a meeting wrapped up, one of us was taking on an action item to adjust the due dates on a large list of work items. We had gone through the meeting saying "put that for the end of next week" or "put that for middle of next month" and there was a good chance that too much stuff had been put into some of the buckets. He said "I'll go through on a first pass and put the dates as we agreed them, then I'll send them out for everyone to review." Makes sense. He continued, "Once we see them all at once if we need to postpone some, or prepone some, we can." And part of my brain went "prepone? What the -- oh yeah, I get it."

It's quite useful really. People say that "move ahead" and "move forward" are perfectly clear and you can't get confused by them. The problem is, half those people say it's clear that moving forward means to an earlier date and half say it's clear that moving forward means to a later date. Oops.  "Move earlier" is ok, but I quite like prepone. I'm going to see if I can use it with a straight face. BTW I did a quick search, and it's an accepted and generally understood word in South Asian English. I'll see if I can do my part to spread it to the rest of the world.


Wednesday, 19 November 2008 08:26:23 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Tuesday, 18 November 2008

For a long time now, Google has been interested in what we search on. I remember reading an article in late 2001 that described a visit to a Google building with a screen on which search phrases scrolled by in real time. To my great surprise one of the phrases the author listed was a search I had performed myself in that time frame. Today, someone has had the insight that people search for certain keywords because of things that are happening around them.

Public health authorities the world over try to measure the frequency and severity of various infectious diseases in order to spot epidemics and pandemics in time to do something about them. For the flu, they ask doctors to report what percentage of the cases they see each week are Influenza Like Illnesses - as this percentage rises it is safe to conclude the amount of flu in the community is rising, even though not everyone with the flu goes to the doctor and not everyone with an ILI has the flu. These numbers take about two weeks to gather and are released publicly so various levels of government and quasi government can react to them.

So the Google insight was that people search for words like "fever" or "joint pain" when they or someone they know has an ILI. (I actually don't know what search terms Google is counting - it might only be the word "flu" for all I know.) These aggregated counts are available immediately with no waiting while people tally and report, tally and report up the chain. Take a look at the correlations:

Wow! That's a pretty amazing relationship between those lines. And instant results instead of waiting two weeks could make a real difference in treating an outbreak. But I am not sure how I feel about it. It's almost creepy, yet at the same time it's very cool. How can you be sure this ability will always be used for good?


Tuesday, 18 November 2008 16:51:08 (Eastern Standard Time, UTC-05:00)  #    Comments [0]
# Monday, 17 November 2008
This month's meeting is November 25th. Chris Dufour will speak on Building Silverlight 2 Data Applications. The meeting is at the Whitby library, but please register so the food count will be accurate.


Monday, 17 November 2008 22:05:02 (Eastern Standard Time, UTC-05:00)  #    Comments [0]