graphics@lists.osgeo.org

Robert Szczepanek initiated a new public mailing list that has just been added to the stack at the OSGeo mailing lists servergraphics@lists.osgeo.org:

Let’s create common, resuable graphical elements for many OSGeo projects.
We focus our discussion on design aspects of graphics – symbols, icons and signs.


GIS Icons Theme by Robert Szczepanek

Robert has been working on graphics and icons for GIS for long time.

Productive Saturday Climbing

Today, Pantera and I we hit the Castle Climbing Centre early in the morning. It’s nice to have wide range of routes available when the centre is nearly empty as people are recovering after Friday buzz ;-). I am (exceptionally?) weak today. Probably, it’s because the last 2 weeks I conducted endurance oriented sessions only. First, I jumped upstairs to climb a few V1-V3 boulders on the overhang featured bouldering wall. I tried the new orange V5 boulder. It’s beautiful, but I couldn’t prevent my body swinging a bit after quite dynamic move to 4th hold. I’ve put the V5 on my short list, definitely. Next, we hit number of top-rope routes. Pantera was working on technical 5 and 5+ and I was trying to mix strength and stamina problems:

  • The Slabs: 6b (blue), 2 x 6c (pink/green)
  • Tall Walls: 5 (green), 6b+ (green/orange spots)
  • The Fang: 2 x 6b (orange/lilak spots), 2 x 6c (pink s.o.s., including loss of a few layers of my finger tips skin ;-))
  • The Stack: 6c (red), 7a (yellow, made 1/3 of the route, 3 moves only)

No rock rings, no campus. Finished bouldering a couple of V0-V3 on the Panels.

While my muscles were busy pushing enormous amount of ATP molecules through their fibres and cells, my brain was busy solving design issues of how to make C++ interface of GDAL library better. It is clear that neither dataset nor raster band can have semantic of plain value objects. Both, dataset and raster band, represent real world physical resources and they are more like reference objects. In spite of that reference semantic is dominant in the world of GDAL objects, I’d really like to make them CopyConstructible and Assignable. I know it can be achieved straight away:


std::tr1::shared_ptr<GDALDataset> ds(::GDALOpen("file.tif", GA_ReadOnly), ::GDALClose);

But, I just don’t want to make yet another Gigantic Rats Nest Of Pointers. I would be happy to keep all the ugliness out of user’s sight. I think it’s feasible. Perhaps I will even Pimpl my Ride GDAL.

I’ll probably need one or more climbing sessions to finish the design of better GDAL, so I can start slinging some code around. Next climbing on Monday in Swiss Cottage with Jo, Chiara and Pantera.

Turing award goes to Barbara Liskov

Learning principles of Object-Oriented Programming, one of the first and very important thing to understand is a definition of subtype. It’s usually not a big problem to explain it correctly and there are a few descriptions dangling around.

Of course, I have my favourite definition of the relation between supertype and subtype. It is called Liskov Substitution Principle. The LSP reveals existing subtleties that may make understanding of the term of subtype not easy. There is a well-known example presenting potential problems: a squere is a rectangle or may be it is not? Robert Martin has written more about in C++ Report long time ago (PDF). For a C++ programmer, like myself – who cares about design by contract (DbC) – the Liskov Substitution Principle is helpful to understand role of pre-/post-conditions in inheritance.

The Liskov Substitution Principle was formulated by Professor Barbara Liskov (MIT). Two days ago, BBC announced as follows:

The 2009 A. M. Turing Award has gone to Barbara Liskov for her contributions to programming.

(Barbara Liskov wins Turing award, BBC)

Congratulations!