Ada Europe 2011 / The Ada Connection 2011

21-23 June I (Jacob Sparre Andersen) participated in the annual Ada Europe conference. This year the conference was held in Edinburgh.

The conference was a good opportunity to present one of my recent projects – the Crimeville language server – and to meet other people interested in reliable software technologies.

Some of the new knowledge I brought home from Edinburgh:

  • Software professionals would probably be wise to make note of the Hippocratic oath, and consider how it applies to their work. (thanks to Pippa Moore)
  • Supposedly there exists such a thing as “too many cores”. (thanks to Alan Burns)
  • The term “technical debt” and a bit of knowledge about the SQALE quality assesment model. (thanks to Jean-Pierre Rosen)
  • The core of agile methods is to continously hit the customer over the head with an incomplete product until he submits. (thanks to Les Hatton)
  • It is not at all easy to do static verification of linked data structures. (thanks to Phil Thornley)
  • A nice way to implement mixed criticality real-time systems in pure Ada. (thanks to Alan Burns)
  • There exists an ARM chip with built-in 3D accelerometer. (thanks to one of the exhibitors)

Traditional events:

  • A new suggestion for an extension to AdaControl: Make it possible to tell AdaControl which packages contain potentially blocking operations.
  • Maciek was quick to find a weak point in the implementation I presented in my talk. It is always nice to have an attentive audience.

New reading materials:

  • “High-Integrity Object-Oriented Programming in Ada” from AdaCore.

Auxilerary stuff: The lunches at the conference centre were disappointing. The conference dinner at the Signet Library was excellent (first time I tasted haggis), and my dinners in Edinburgh were generally good and interesting.

I didn’t have much time to go sightseeing, but the bits of the town I saw were charming, and I hope I can get more time to enjoy the town next time I come to Edinburgh.

Various thoughts: Should you force yourself to check in documentation and code together?

How can you have some kind of independent validation on a small project?

Are there any nice tools for tracing requirements, architectural decisions, and specifications through to source code?

I really should get started using AdaControl (and Valgrind) (and now also SQALE) on my code.