Mathias Brandewinder on .NET, F#, VSTO and Excel development, and quantitative analysis / machine learning.
by Mathias 30. April 2009 17:35

After much postponing, I finally cleaned up the layout of Clear Lines. I had cobbled together the previous design over a few days when I started, and, because it's not a crucial aspect of my activities, I left it at that until now. I like my new design better (I hope you do, too!), it feels much cleaner than the previous one. The main motivation was not the looks, though, but rather flexibility. I will add a few pages soon, and need to easily integrate them into the site navigation, so I finally replaced my hard-coded links by an ASP.NET menu. And while I was at it, I got inspired by Peter Kellner's beautiful menu for the Silicon Valley Code Camp site, and started looking into Css Friendly Control Adapters.

I like the fact that the whole menu layout is pure css, instead of tables, but I struggled quite a bit with getting css to play nice. Not the adapter's fault, rather my own limitations with css... In the end, I managed to get roughly the look I was after. That being said, if you open the page in IE7, it will render differently than in any other browser I tried: for some reason, I couldn't get IE to change the background color of the menu links on hover, or to render properly a border-bottom. If anyone has an idea what's wrong with my css, I would love to hear it!

Next step: upgrade the blog to BlogEngine 1.5, and probably add a sub-menu to the pages, similar to the Code Camp site.

by Mathias 28. April 2009 16:23

You know times are changing when such a venerable institution as the Victorinox Swiss Army Knife publishes an ad asking:

"how impressed would you be to see a Swiss Army Knife running a PowerPoint presentation?"

(Picture from Engadget)

by Mathias 25. April 2009 11:06

Via Andew Gelman, a really cool text visualization project. It might or might not be insightful, but it’s beautiful, and the guys who put this together have really made this very cool – you can see the entire text of Alice in Wonderland scroll, simultaneously plotting the word relationships as the story progresses. Amazing.

by Mathias 16. April 2009 18:55

Now that I have the core functionality in for the “Blue Lobster” project, it’s time for some optimization. Part of the application revolves in displaying the contents of an Excel worksheet, which I implemented populating a Grid control. One issue which was bugging me was that displaying large amounts of data was somewhat slow. My “large” test Excel worksheet is roughly 200 rows by 200 columns, which doesn’t seem like much, until you realize that these are 40,000 cells. Each of these cells was initially represented as a CellView, a simple WPF home-made control.

My initial thought was that the source of the problem was in multiple resizing of UI elements, but when I ran the profiler, it turned out that most of the time was actually spent instantiating each instance of the CellView control. I am still not sure what made my control so costly to instantiate, but I replaced it by a standard CheckBox, using Templates and Triggers to adapt its appearance, and voila! The time went down from 1 minute 15 seconds to under 30 seconds.

The moral of the story:

1) When optimizing, don’t trust your instinct, trust the profiler.

2) Instantiating a WPF user-defined control is not necessarily lightweight.

3) Before creating your own, try to use an existing control and modify its look through templates.

by Mathias 14. April 2009 16:17

I have been working on my first own application since a few weeks, and it is taking good shape; a first version should be available for willing testers soon. But as technical issues get resolved, I move into more unchartered territory. Should it be open-source, or proprietary? Should I trademark anything? And… how should it be called?

The current code name for the project, “Blue Lobster”, isn’t quite right for a serious professional application. My initial thought was “Akin”, as in “essentially similar, related, or compatible”, and I was pleased to find out that no piece of software with a similar name was listed in the US patent and Trademark database. Alas, Google wasn’t quite as lenient, and the search query “akin + software” yielded quite a trove, including enterprise resource planning systems and a Christian verse reminder system, “For those of you out there that are trying to memorize bible verses”. I don’t think we are direct competitors, but I would still prefer to have a unique, distinctive name for my application, if such a thing is possible in the Google age. I think I found it today – some more Googling, a few more bug fixes, and the alpha-release should be out by May first!


Comment RSS