Open Layers

While working on Semantic Layers I had to fix up some issues with Open Layers itself, and therefore went to have a closer look at the Open Layers site.

Open Layers

Since I need to have a good understanding of Open Layers for both the Semantic Layers and Semantic Maps extensions, I’ve decided to have a good close look at it. After going through some docs and examples, I’m really excited about how it works, and can’t wait to implement it in Semantic Maps. The current SL version is still using OL 2.5, which I will also change to 2.7 (the latest stable release).

I’ve also made some progress on SL, although a lot of my time has gone to school work. I think I’ve now fixed all except a few small issues in the area of decapricated code, and I’m also bussy at fixing some of the core functionallity.

Apparently the original autrhor of SL really didn’t know the php function array_key_exists($key, $array), cause I’ve replaced at least two dozen isset($array[$key]) :p

Semantic Layers

This weekend the Google Summer of Code 2009 coding period started. I already did quite some reading an looking into the code before, but now fully got into it.

Semantic Layers

As explained in my original GSoC post, the goal of my project is to create a Semantic Maps extension for Semantic MediaWiki. Me and Yaron, my mentor, decided that it was best I first fixed up the Semantic Layers extension, so it would work with the latest version of Semantic MediaWiki. After two days of work I fixed a few dozen small PHP errors that caused warning and notices and largely replaced the decapitated code with the replacements for it (at least, that’s what I think). Since the extension was experimental to begin with, it does not fully work yet, without modifying the extension code itself. This is now second on my to-do-list, after fixing a nasty (and LAME :D ) bug that came out of nowhere after one of my last edits.

I’m really looking forward to starting to work on Semantic Maps itself, cause then I won’t have to bother all the old code, and will be able to build a nice code base from scratch :)

Chaos Islands

Yesterday I created 2 C&C Generals movies with some film material me and Darklight recorded during a game on Chaos Islands, a C&C Generals map I scripted. I’m really pleased with the results. Each movie is relatively short, one is 2:39, and the other one only 1:17. I’ve created them based on some nice ‘end of the world’ tracks.

The first movie is titled Project Chaos Islands. It features the track form an Earth 2160 trailer. You could see this vid as the successor of Project Armegeddon, a similar movie I made over a year ago.

The second movie is titled Chaos Islands – When earths natural recources run out… It’s based on a track from the intro of a small on-line game. I already used this track in an old vid, The end is near, which uses the same text as this movie, but lacks any real vid material.

A few days ago I also recorded the intro of Chaos Islands, click here to view it. You can download the map together with some other cool maps at my C&C Generals maps repository.

BN+ Framework 2.0.3 released

I’ve just released a new version of BN+ framework. It features a variety of new classes since version 2.0.2 plus some bug fixes and stability improvements. Also some classes have been added the the class library or control library repositories on BN+ Discussions, and a few of them now have detailed articles on The Code Project. Here you have an outtake from the release notes:

New classes
* BugSubmitter: A dialog that enables user to submit variouse types of bugs with build in validation. Sends it’s info to a webservice.
* PasswordDialog: Password editting dialog with optional authentication and live validation .
* SimpleLoginDialog: A simple login dialog that prompts for a password.
* FileDownloader: A class for downloading files in the background that supports info about their progress, the total progress, cancellation, pausing, and resuming. The downloads will run on a separate thread so you don’t have to worry about multihreading yourself.

Revised classes
* CryptoProvider: Now allows you to pass more advanced settings for AES and offers easier to use methods for RSA, DES and TrippleDES.
* CryptoStr: Has been rewritten to work with the new CryptoProvider and is now easier to use.
* Updater: A bug in the version compare algorithm has been fixed
* BruteForceAttacker: New version included (BN+ Framework 2.0.2 contained an unstable alpha build of this version)

* …

Further development
* The CyrptoProvider class will be rewritten from scratch and be made abstract, and serve as a base for separate DES, TDES, RSA and AES CryptoProviders.
* BruteForceAttacker will be made more modular and work on multiple threads.
* FileDownloader will get support for multiple downloads at the same time and segmented downloads.

I’d also like to thank everyone who helped with this project by providing bug reports, suggestions, contributions, or by simply using it!

If you are interested and consider to use this framework, please review the official topic and framework documentation.

BN+ Converter Pro 1.0.6 released

I finally finished the last details on BN+ Converter Pro after some extensive testing, and released the new 1.0.6 version.

BN+ Converter Pro 1.0.6

BN+ Converter Pro 1.0.6

Like I wrote before, quite some features got postponed to future versions, but still a lot of new functionality has been implemented. Here you have a copy from the release notes:

New features

* Multi language functionality: You can now view the main interface in both English, Dutch, German and leet. The application will automatically detect your computer language and use it at start-up. You can disable the auto detect option via the options menu, and then choose the start-up language.

* Advanced cryptography options: Via the options menu you can change the DES and TrippleDES keys and initialization vectors, and configure the AES (Rijndael) salt, password phrase, initialization vector and iterations.

* An automated update platform: The application will automatically check for updates when an internet connection is present. When there is an update, the application will show you some information about it and provide you with the option to download and install it. You can also manually check for updates via menu -> Help -> Check for updates.

* Bug report creator: When you find a bug (typo, wrong behaviour, application crash, ect…), you can now easily report it via the build in bug report creator. You can find it in the menu, under Help: Report a bug…

* Password protection: This feature enables you to protect the application, and the settings (like RSA keys) stored in it, from other people. You can turn it on via the options, in the section utilities.

Fixed bugs

* Hashing of an empty string (This caused the application to crash in v1.0.4, and was therefore disabled in v1.0.5, but now fixed and re-enabled)

* Auto saving of text (Even when enabled in the options, this would not be done in the previous version)

Further development

These are features that are on the roadmap for future versions of BN+ Converter Pro. Every feature might or might not be implemented, varying on the demand.

* Create a plug-in system for BN+ Brute Force Hash Attacker and other relevant applications

* Add build-in help contents

* Recode the codec system to work text file based (so users can create their own codec’s and share them)

* Redesign the options menu and add live validation to it

I probably won’t work on this application for a while, and won’t release a new version before the end of 2009. The first thing I’ll do with it probably is handling the multithreading issues, as anice exercise.

Like before, the application is downloadable in 3 formats: setup, direct run and u3. I’ve also updated the legacy package (containing the old releases) and will do some effort to update the documentation soon.

If you have any suggestions please send them over.

Password edit Dialog

While working on version 1.0.6 of BN+ Converter Pro, which is scheduled to be released this weekend, I created a dialogue that allows users to edit their password. It features live validation, user friendly feedback, and optional authentication.

The dialog is written in VB.Net, and can be downloaded on BN+ Discussions. Dutch support can be found here.

This dialog will be included in the 2.0.3 release of BN+ Framework, which is scheduled to be released on the 23rd of May. This release will feature some high quality new classes and dialogs and a few bug fixes.

Bug Submitter Dialog

Half a month ago I published a .Net dialog, written in VB, that allows users to easily submit bugs and other feedback on an application. The dialog features 2 types of validation, submits the data to a webservice on a separate thread, and is designed to be very user friendly.

I’m very happy with the result, and I’m now using this dialog in all of my .Net applications. I also got quite some positive feedback from people. This  prompted me to create a more extensive article with examples and an explanation of how to create a webservice that handles the bug report. You can find my new article on the Code Project.

You can download the source code here, and find Dutch support here. For english support, please refer to the Code Project or the relevant article on BN+ Discussions.

C#.NET Background File Downloader

About a week ago I published A FileDownloader class written in VB.Net. This class enables you to easily download multiple files in the background (via a separate thread), and will provide information about the amount of downloaded data, the percentage of completion, and the download speed. On top of this, you can cancel downloading, pause it, and of course also resume.

Yesterday I started working on a C# Implementation of this class, with as goal to both increase my C# knowledge, and mess around with WPF (which is used for the demo app). I had a lot of fun creating this new version, and definitly learned a lot. It’s completely finished, documented and tested, except for 1 small WPF issue. I’m hoping to release the class tomorrow, but can already provide you with a preview screenshot:

Google Summer of Code


I’ve been accepted for GSoC 2009 – yay!

This will enable me to work over 2 months on open source while getting payed by Google. For more info about GSoC, check out the official GSoC site.

I’ll be working on in my opinion one of the most exciting open source projects out there: the MediaWiki engine. More precice, I’ll work on the Semantic Maps extension, which provides the ability to view and edit coordinate data stored through the Semantic MediaWiki extension, using Google Maps, Open Layers, and variouse others. Yaron Koren, main author of the Semantic Google Maps extension, and one of the most important contributors to the SMW community, will mentor me.


The coding period starts on the 23th of may, but I’m already doing some experimenting with the relevant code. I’m also doing some effort to get some of my other projects finished by then, to not have to put them on hold for over 2 months.