WTF? OK, Java performance does not scale well to large scale. I’m just gupling down an interesting post from Kevin Lawton.
Monthly Archives: September 2009
Talking about data races
My countryman Bartosz Milewski – the author of one of the best C++ introductory books – the C++ In Action posted video with very interesting talk about Ownership Systems against Data Races (video is here).
Interestingly, Bartosz proposes to understand the battle with data races as a discipline-driven programming that helps, mostly C+ programmers, to avoid all this horrible pitfalls. Moreover, Bartosz presents programmers with a well-designed methodology based on types system as a tool that may guard programs against injury from data races problem and with success.
Basically (and not surprisingly) Bartosz recommends think first, act later kind of approach based on detailed analysis of what might be causing data races in your program, on identification of potential sources of data race problems. This approach is a contrary to spending hours searching for data races conditions using debugger.
The data race problem is a complex subject, but – in my opinion – Bartosz explains it in a very accessible step-by-step form. Three words summary of Bartosz’ lecture and the presented methodology is: sharing + mutability + no synchronisation = data race
ACCU Security Conference 2009
Let’s take the leader of Colossus reconstruction project, the author of The Code Book, the original creator of the PGP e-mail encryption package and horde of people as hungry of knowledge & fun as a bears of berries, and what you get?
You get ACCU :: Security: Yesterday, Today, and Tomorrow conference:
On November 7th 2009, the ACCU will be holding a one day conference at Bletchley Park, home of the legendary World War II ‘Enigma’ code breakers, and the site at which the world’s first digital computer went operational.
The event is put on the official calendar of events in Bletchley Park – National Codes Centre. It’s also announced by ZDNet.
By the way, who knows about the crucial role of the Polish Cipher Bureau and Polish mathematical geniuses in breaking Enigma? I can bet that many people still believe in this story which follows principles of canonical Hollywood education.
I think one of the things we need to make clear to Hollywood is, yes you’re in the entertainment business but the people who see your movies are going to come away thinking that’s information, not just entertainment.
By the way, I’ve read on ACCU forum that one of the speakers will probably talk about new his VoIP protocol and why his protocol spanks all other VoIP protocols as well as the effects of public policy and living in a surveillance society. The conference is going to kick!
Open Source Contributor Award
goes to…
Today, Even Rouault added a very cool feature to ogr2ogr utility from GDAL/OGR package. It is -wrapdateline switch that split geometries crossing the dateline meridian which is longitude of +/- 180 degrees. It will be available in upcoming GDAL 1.7.0 release.
Hopefully, I won’t touch anybody and I’d like to take the freedom of speech I have (thank you UK) to say something: Since the very first day Even joined GDAL project, I’ve been truly amazed how extremely active and productive an Open Source developer can be. Even is fixing bugs and bringing new features almost in real-time. If there was Open Source Contributor Award (OSGeo, can you hear me?), I would cast my vote to Even with pleasure, absolutely.
Even’s work is a kind of proof of a concept I’ve been observing for a few years: you wanna see results, stay focused, brother! It looks to me Even is highly focused on GDAL project. I sometimes regret I’ve never managed to stay also focused on one, two or at most three projects.
<excuse>…but Yeah but… no but… there are so many interesting software ideas and initiatives around… I’ve been more like a kid with ADHD who have been given permission to stay in a toy store overnight ;-)</excuse>
Principle of the day
Building libLAS with CMake
I almost finished crafting CMake configuration for libLAS. It is available from the repository in the main branch. It is possible to build libLAS library and command line utilities configured with most of supported dependencies: GDAL, GeoTIFF and SpatialIndex. Configuration of Oracle and Boost dependencies is not ready yet. It is also possible to install libLAS run-time and compile-time components. Cool!
Detailed story with extensive example of how to use CMake to build libLAS is available here in Trac. I have successfully tested it on Linux (Ubuntu 9.04). I’m going to test & update it on Windows with Visual Studio – generally it (compilation) works but dependencies selection and installation commands haven’t been tested.
I’m very pleased I can officially announce CMake configuration availability. I truly hope to make my life and users life easier – maintenance of Visual Studio projects is just ridiculously tedious and time consuming.
Preparing CMake configuration was a very useful experience and I’m going to use it to improve other projects this way (like SOCI, Generic Geometry Library). I would be happy to see interest in preparing CMake configuration for GDAL/OGR too…any brave hearts out there?
Why CMake? Because CMake is the best build system ever delivered to Open Source community. Full stop.
Projects of all types, ages and sizes evaluated CMake, came to the same conclusion and eventually migrated to use CMake. To give examples of large or established projects, here we go:
- Boost C++ Libraries used to be firmly wedded to bjam (still main builder), they have learned about CMake features and currently
migration to CMakedevelopment of CMake-based configuration is well in progress and their community is being taught about CMake. - KDE switched to CMake in the middle of 2006
- Quantum GIS thanks to Martin Dobias started migrating to CMake shortly after KDE.
By the way, I’ve started collecting custom reusable CMake modules – available from my workshop repository. They can be used to complete, large collection anyway, of standard CMake modules.
Online Compilers
Sometimes I need to compile and run a tiny snippet of C++ code. For example, I want to proof some concept or I want to give code example while chatting with friends. Sometimes I don’t have access to good compiler. If I’m logged to irc.freenode.net, it’s not a problem – geordi is there. I’ve just found a Web-based alternative – codepad.org. It is a pastebin service that can compile, validate and execute your code.

