Gingter Ale

Fluent stories of a software engineer

Why FireMonkey is wrong, the second

2013-07-09
I just stumbled upon a really, really great post on Steven Sinofskys Blog. His article is about the challenges of cross-platform development in general, and he brings up some rather good points on why some approaches will eventually fail. I’m pretty sure he doesn’t even know about FireMonkey, but this is what he has to say on cross platform libraries in general: One of the most common approaches developers attempt (and often provided by third parties as well) is to develop or use a library that abstracts away platform differences or claims to map a unique “meta API” to multiple platforms. Continue reading

A small update to my Rackspace Cloud Monitoring configuration

2013-07-09
In the last post I mentioned how I set up my Rackspace Cloud Monitoring system to notify me when my Blog fails or performs badly. I tweaked the configuration a little bit now: I deactivated the performance check. Why is that? Because it did not monitor my Blog’s overall performance but just the quality of the transatlantic wires. And I can tell you: It’s very volatile. While having constant good response times from the check zone in London, both U. Continue reading

Technical problems, a solution and Rackspace cloud monitoring

2013-06-26
Some of you may have noticed that my blog experienced some technical difficulties yesterday morning. For some reason I couldn’t find out the IIS still served static files, but anything that had to do with code like this Blog, my TeamCity, YouTrack, Stash and Fisheye applications did not respond anymore. The sad thing was that I even couldn’t RDP into my VM, and so I had to trigger a reboot through the hosters web interface. Continue reading

Ask a Ninja: Where do you get your Ninja-skills from?

2013-06-24
My second “Ask a Ninja” post is about where to get your skills from. Well, first of all training, experimenting, using a good portion of your spare time for improving your skills. And then, of course, from others. Others that are willing to share their experience and their knowledge. Preferably in a medium that can be persisted (but also one-to-one sessions are invaluable for sharing knowledge). Because of that I have a quite impressive library full of technical books. Continue reading

A small infrastructure upgrade

2013-06-21
In my “Setting up my infrastructure” posts I explained why I chose JetBrains TeamCity and YouTrack over the Atlassian tools Jira and Bamboo. It was not because of the feature set but because the setup was way more hazzle free and it seems maintaining them would be easy. Well - I was right ;-) Just yesterday JetBrains released a new major update of TeamCity: Version 8.0. My feature request ticket indicated that it was included in the 8. Continue reading

Unobtrusive MSBuild: Using Git information in your assemblies

2013-06-18

For my current project I wanted to add some information from Git as well as some additional build environment info into my assemblies at compile time.

My usual approach to this is adding some additional steps in my build process. I learned a lot about MSBuild from Sayed I. Hashimi ( @sayedihashimi) who wrote the book Inside the Microsoft Build Engine: Using MSBuild and Team Foundation Build (by the way a must-read if you want to dig into how MSBuild works). MSBuild is very powerful and easy to extend, and so I think it’s the best way to solve this.

Since I developed some MSBuild tasks and targets for internal stuff at my place of work I started to create MSBuild stuff in a way that I like to call unobtrusive MSBuild. My idea was to design my MSBuild project extensions in a way that they can be used by just adding a project include and optionally adding some configuration properties right before the include. This keeps them portable, reusable and flexible enough to be used in slightly different environments.

Continue reading

Ask a Ninja: Automated Wordpress blog backup using Git

2013-06-11
I thought I had posted this already, but the article list of my blog tells otherwise. Early this year I posted how I moved this blog from the old server to the current one. After that I thought I also could automate the backup this way. So, what are the required steps? Create a dump of the database. Add the dump and all local modifications to the local repository. Commit the changes to the local repo. Continue reading
Older posts Newer posts