
AdaCore is organizing a new contest for developers. As in the previous times, the preparation is given significantly more time than in the olympiads in informatics. This is just right for those who don’t like fast-writing scary code contests, which can then be discarded.
Today on the agenda is the development for ARM on bare hardware and verification technology. The total prize fund is more than 8000 €.
Ada is famous for good tools for multi-threaded programming. When it was still 11 years before the release of Windows Vista with monitors in WinAPI, and 8 years before RHEL 3 was released with native streams (NTPL), the standard version of Ada 95 was standardized and the GCC-based GNAT compiler was certified for this standard. Now, the alignment of tools has come, but on the bare gland there is where to roam. Ada and on conventional operating systems provides convenient development tools for multi-threaded programs, but on bare hardware, with its own scheduler that supports the features of the language, you can turn around.
')
If you ever wanted to feel like a hardcore developer, for example, real-time systems, and there were no vacancies, there is an incentive to try yourself in this capacity.
A special planner for bare iron will create the necessary prerequisites, the Ada 2012 safe language will reduce the number of surprises when debugging, and if you decide to take the issue very seriously, the Ravenscar profile and the formal verification of SPARK 2014 will minimize them. It should be warned that if Ada is a general-purpose language, then the last two tools are not for everyone, they rather significantly limit the developer in the style of writing programs.
Winners will receive the following prizes:
1st place: 5000 €
2nd place: 2000 €
3rd place: 1000 €
Special prizes in the form of two programmable quadcopters prepared for the winners in the areas of reliability and novelty, respectively.
Projects will be evaluated on four criteria:
- Novelty. Does the project demonstrate new, non-standard solutions to existing problems or is it using existing approaches to new problems?
- Teamwork. Is the project useful to other members of the developer community? Does it have a clear interface and documentation? A public repository of version control system. Bug tracking system. Is it possible to compile with publicly available tools.
- Reliability. Are there processes and technologies used in the project that give high confidence that the software will meet its requirements? Formal methods, contract programming, testing, code writing standards. Whether the documentation is accurate.
- Openness Is the program free in the sense defined by the Free Software Foundation. Is the program open in the sense defined by the Open Source Initiative. Is its architecture open? Does it use open source development tools, equipment and platforms?
Key requirements:
- Only singles are involved, but not organizations. Only participation as a loner or a team of loners is permissible; organizations (for example, enterprises) are not allowed
- Maximum 4 people per team. The team consists of one registered captain who submits and works with the application, and no more than three other participants.
- The main programming language is Ada. The project can be any other programming language, but only that part is evaluated that on Ada / SPARK.
- Be sure to keep a journal of the project. The project should be clearly described in English. Access to the log will be provided after confirmation of the application.
- Work must be original. Your project must be an original contribution. The use of third-party libraries is permitted, but must be documented.
- Target runtime environment The target processor must be ARM Cortex M or R.
All the details you will learn on the site
www.makewithada.orgDare and good luck to you!