/egilh

Learning by doing

December 2004 Entries

We had a scary day yesterday as a very close friend of us is on vacation in Sri Lanka. Luckily it turned out that she was in the middle of the country and was unaffected by the disaster. I was wondering what we can do to help the victims of the earthquake and tsunamis when I came across this post by Greg Hughes "This is the right time to stop what you normally do, get out of your little digital world that you assume is all-defining and all-encompassing (it’s not, really) and come back to reality...Very real people are experiencing very real pain, and you can do your part to help them recover." Nick Bradbury is donating what he earns from TopStyle and FeedDemon ...

The January 2005 edition of MSDN Magazine has a list of tips for writing high performance ASP.NET applications. Nothing new, but a useful reference for people that are new to ASP.NET development. Via [MSDN Just Published]

VMWare is very useful when testing playing with the latest and greatest betas or developing software that can will break your machine. There are several new features in VMWare 5.0: V2V Assistant: Creates VMWare Virtual Machines from Microsoft Virtual PC virtual machines Movie Capture of all the operations you do in the virtual machine Performance Enhancements Support for 64-bit Hosts It can be download from the BetaNews FileForum Via [BetaNews]

Microsoft Research has researched the use of Cameraphones. I'm about to get my first camera phone tomorrow, a Nokia 6630. Wonder what kind of user I will be. In this paper we describe an in-depth study into how people (adults and young people) use their camera phones. Using a combined method of interviews and grounded discussions around a sample of actual photos, we look at people's intentions at the time of capture, subsequent patterns of use, and desires for future technology. The result is a 6-part taxonomy which provides a framework for describing the way images are used both for sharing and personal use, and for affective (or emotional) reasons and functional ...

Another lesson learned: Increase the Max Pool Size setting on systems that does a lot of requests to the DB if you use ADO.NET I had problems earlier this week with a custom session management system that handles 15.000.000-20.000.000 requests per day per machine but is designed to handle a lot more. The DB is pretty well optimized so call times for each query is only a few milliseconds in normal conditions. With 17.500.000 requests per day there are ~200 requests per second to the session management system with peaks that are a lot higher due to traffic distribution throughout the day. I didn't realize that the ADO.NET Sql Client by default uses max 100 items in ...

Koders.com has tons of source code. Great if you're looking for ways to use a particular function, how to manage a particular error code or if you look for an implementation of a particular algorithm. The search results can be filtered by language as well as license.

Impressive. The Google Suggest beta does a great job of auto complete for the .NET APIs:

The To Software Architects: Serve End Users, Not Your Egos article on DevX is something to keep in mind for all software architects. At one organization, they had a diagram on one wall that was 14 feet long and 4 feet high with tiny print. The architect was so proud of his masterpiece, his brilliance, his grand work. Minor amounts of investigation revealed that none of the team leads had the slightest clue what this massive diagram really meant, but it sure looked cool and impressed the executives when they visited the development area. Individual developers had received smaller diagrams, filled with blocks and arrows, that told them exactly how to build their piece ...

.NET comes with a wide range of cryptography options. The story is different on the .NET Compact Framework as cryptography routines have been removed from the .NET CF runtime to save precious memory. Cryptography is an interesting subject in itself so I decided to port AES/Rijndael, the 3DES replacement, to C#. The official AES site links to sites with AES implementations in many different languages. I had a look, and decided to port Mike Scott's C implementation to C# and add some routes. Download .NET CF C# AES source code Next step for the Pocket PC password manager will be an encrypted CSV dataset or stream.

Tuesday was a public holiday in Milano and Wednesday was a public holiday in all of Italy. I took Monday off so I have had 5 days working at home on “hardware” stuff: building a set of stairs, making a new room in the cellar, fixing the gate, hanging up Christmas lights and decorations with the kids. Another week or so at work and I'm off for Christmas vacation. What a relaxing way to end the year :-)

A great, easy to follow, guideline for coding style. I was surprised to discover that I'm using the same coding style in C# as Larry Osterman uses in C/C++ with some minor exceptions: I start method names in lower case, i.e. I use printError instead of PrintError, (leftover from my Java days) I ALWAYS put the constant part of an evaluation on the left: if (S_OK == result) is safer than if (result == S_OK)I know it doesn't really matter that much in C# as the compiler warns you but; better safe than sorry. For some reason I end up swapping back to hungarian notation when I program in C/C++ for Windows. I guess I can "blame" Programming Windows by Charles Petzold for that :-)