Mar 13

Developing a Vectorworks 2013 Plug-in, TDD-style – Updated Epilogue

The code

I have updated the project files for my series “Developing a Vectorworks 2011 Plug-in, TDD-style”.

Please download the Xcode 4.6 / Visual Studio 2010 project files (haven’t tested it explicitly, but should work with Visual Studio 2012, too) for use with Vectorworks 2013 including all the sources here – SimpleCabinet2013.zip. The folder SimpleCabinet2013 should be dropped into Vectorworks 2013 SDK’s Sources folder, like this:

Please note that the projects assume that the folder hierarchy is set up like this.

The project features two targets, a testing target named “CppUnitLite2” and the plug-in module shared library target, which outputs to /Applications/Vectorworks2013/Plug-ins. You will notice that all classes plus tests are contained in ExtObject.cpp. I’m doing this for small spikes – in real life, I would put each class in a separate file, no code in the header file etc.

The code drop features additional tests, refactorings and more usage of VWFC in SimpleCabinetCreator.

There’s also a Vectorworks document with a Simple Cabinet object included for your convenience.


Nov 09

Bugtracking is not a platform business, either…

Just my 2c worth regarding Does slow growth equals slow death?

I vaguely remember a keynote by Geoffrey A. Moore at JavaOne 1997 or 1998 talking about platform and application businesses. In this talk, he was making the point that the market for software platforms is traditionally divided basically into 80% marketshare for one vendor and the rest of the vendors share the remaining 20%, whereas application software markets are more like two or three rather large vendors, let’s say 40%, 30%, 20% and the rest of the players are small niche players.

Although a bug tracking system may sport a healthy third-party plug-in business, bug-tracking is essentially application software, not platform software like operating systems or databases.

Disclaimer: I may have gotten the percentages wrong, but you get the point.

Dec 08

Upgrading my blog to the latest MT 4.23 templates

…let’s see if this entry makes it to the main index.

Jul 08


…mehr fällt mir dazu wirklich nicht mehr ein.

Feb 08

Now I get it….

…that’s what Twitter is for: Plants twittering.

Dec 07

Converting to Movable Type 4.01

So far, so good. Let’s see if this post shows up on the page.

Dec 07


A67. Pfungstadt. Traffic jam. Blogging about it on my iPhone while cursing at the guy in the car next to me. I guess I just arrived in the future. Yeah, I know I’m the last one. I close the door.

Sep 07

Programmers Day

You know it’s Programmers Day if they opened up a Starbucks about 100m from your office.
Uhm, and the length of our bug/task list is measured in kilometers, so back to work. We need to hit that ship date.

Sep 07

I’ll take fries with that…

Jeff Atwood (slightly rephrased): Complexity is the path of least resistance.

Apr 07

I’m not talking about being on a fucking plane

David Heinemeier Hansson talks about offline web applications: You’re not on a fucking plane (and if you are, it doesn’t matter)!.
No, I’m not on a plane. But I live in a non-urban area – you know, trees and stuff. At home, my DSL download bandwith is limited to 384 kbit/s. My upload bandwidth is 64kbit/s. Did you ever try to upload a picture to your web application with 64kbit/s? Plus, I would like to access my data and work with an application while sitting on our deck. Did you every try to talk your wife into plastering your house with WLAN base stations?
And if I’m on a plane, I may want to access my data and compose content in my applications. I don’t necessarily need the online connection in the plane (especially if it’s $30 for a few hours), but I need access to my data and application.
Plus, there are trains and stuff. Did you ever try to work with a web application in a train where the connectivity is flaky at best?