So, good news. After a unexpectedly long absence from employment, I am 95% certain that I will receive an offer for a contract job as a product owner. This position will largely involve supervising the development/maintenance of code written in Ada. Even though I have over a decade of experience with C/C++/Assembly, I have ZERO experience with Ada. I doubt I will be writing much Ada myself, but I believe I will need to learn Ada.

So here are my questions:

1. Reading code is usually pretty straightforward. However, all software requires domain knowledge. When starting a new role, how do you bring yourself up on domain knowledge quickly?

2. If you know Ada, what resources to learn Ada do you recommend?

3. What Ada pitfalls do you advise to look out for?

I would try Claude Code with an Ada LSP server. Use AI to get the high-level architecture diagrams, question the codebase. You can write a new skill with all your findings about Ada best practices. Also try CodeRabbit if it already supports Ada. Congratulations on the new job, best of luck.

1. Ask questions, and write down the answers in a way that you will find them again. Anki and spaced repetition is useful to learn the terminology or any info that isn't intuitive.

2. https://github.com/ohenley/awesome-ada has links to pretty much every Ada topic and resource; if you want to try Ada using open source tools, the best starting point is https://alire.ada.dev/docs/

3. Compared to C/C++ I can't really think of any pitfalls. It requires more discipline and formal reasoning, but you will get used to it (and appreciate the lack of footguns, at least I did).

Congrats and good luck.

I learned Ada in 1990. It looks like it was based on Pascal. I used Janus Ada for DOS. There is a free Learn Ada ebook here: https://learn.adacore.com/pdf_books/courses/intro-to-ada.pdf