I can provide a automated detection of privacy-leaks in Java classes using a custom static analysis tool.
Algorithms for pronunciation-aware searches in dictionaries and other databases.
I have an application for finding wave-induced cracks in video inspections of sub-sea structures available for interested customers.
A short screencast introducing the viewers to some of the benefits of how
An Open Source tool for generating command-line interfaces to Ada packages.
An Open Source sound library for Ada providing recording and playback support.
An appendix to the book
Are you tired of having all kinds of people tracking which links you click, and which pages you visit on the web? My HTTP redirector attempts to solve this problem by providing you with a local, non-logging replacement for some of the trackers out there. The tool is Open Source and written in Ada.
An Open Source Ada package wrapping a POSIX file descriptor (as declared in the POSIX.IO package from the POSIX Ada API) as an Ada stream. This allows you to stream Ada objects to/from any kind of file opened with the POSIX Ada API using just the standard stream attributes of Ada.
Mathematical models designed to solve problems for your business.
Software development on a consultancy basis. I can provide time estimates and hourly rates, or fixed-price quotes depending on your needs. I have experience in a large variety of programming languages, among others: Ada, C, C++, Python, Oracle PL/SQL, Pascal, SPARK and Fortran.
Coding standards can benefit from a critical review from an experienced software developer. I provide reviews and constructive comments for coding standards for Ada source text.
I can provide critical source text reviews, either during development or as an independent review of a final product before delivery/acceptance.
A course introducing the participants to contract-based programming in Ada 2012, and giving them some basic rules for using the features of Ada 2012 in a consistent and efficient manner. This course has previously been given as a tutorial at the Ada-Europe conferences in 2014 and 2015.
New business use of existing software technology, and development of new programming techniques.
Slides from my presentation on introducing static analysis to a mature software project.
On Wednesday I will give a presentation on introducing static analysis to a mature software project. Mature software projects are likely to contain source text, which violates rules checked by a tool introduced later in the development process. Sometimes this will be because of limitations of the tool. In other cases, it can be regular errors or just bad style compared to the project ambitions. Whatever the reasons, if can be infeasible to resolve all the newly identified issues immediately, so we need a strategy to handle that. My presentation will introduce one such strategy.
The submission deadline for Ada-Europe 2017 in Vienna has been moved to 22 January. As industrial chair for the conference, I seek presentations which deliver value and insight on industrial use of Ada and reliable software technologies in general. Industrial presentations are submited as one-page extended abstracts. Feel free to contact me, if you have any questions regarding this.
A course introducing the participants to systems programming in Ada using the POSIX Ada API. An extended version of this course has previously been given as a part of the software engineering education at DMU-Syd.
A course introducing experienced programmers to
I recently gave an interview to the journal of the Danish academics' union about being an academic and running your own company. I don't reveal any big secrets to success, but the photos from the Medical Museion in Copenhagen are nice.
The Ada-Europe 2016 organizers have accepted my tutorial on Ada 2012 contracts in practics as a part of the programme for this year's international conference on reliable software technologies.
The declarations of subprograms in the public part of an Ada package specification can be seen as a declaration of how you are supposed to call the features implemented in the package. So why should I have to write command-line interfaces myself? Why not let a tool translate between the Ada package specification and the command-line interface? [...]
Slides from my talk on using tools to generate integration tests from use-cases at Driving IT in Copenhagen.