I'm looking for a good book on Ada. Wikipedia has a list but I have no idea where to start, what level they're aimed at, etc. I started coding ~6 years ago in college and I'm quite adept at Java and have dabbled in Python, C and PHP when required. Therefore, I don't need a beginners book, but more of a general overview of the language and some common practices. It seems like Ada 95 is the "common" implementation but a book that covered previous versions (even if it's only deltas outlining the differences or common gotchas) would be handy.
I've got "Ada 95 for C and C ++ Programmers" at home - a fairly good read to get you started.
Ada Distilled is a good, free online tome for experienced programmers.
If you are an experienced developer and are looking for a good book you can use to learn from and as a reference, I would highly suggest Cohen's Ada as a Second Language.
That book and an online copy of the LRM are all I need. The Ada LRM, unlike many standards documents, is quite readable. I'm always diving into Appendices K and L to look up attributes or pragmas.
Programming in Ada 2005 by John Barnes is a good book if you already have some programming background. It is also only Ada 2005 book which concentrates on the language itself. In addition, the book tells differences between Ada 95 and Ada 2005, so you can use it to learn Ada 95.
The book is about 1000 pages. There is about 2-5 pages devoted to every subject, so you can get the general idea and read the rest from the LRM (if needed).
I would like to recommend the freely available ada wikibook, which also features a comprehensive list of other freely available online resources, as well as additional pointers to related readings.
CONCURRENT AND REAL TIME PROGRAMMING IN ADA (Ada 2005) by Burns and Wellings (http://www.amazon.com/gp/product/0521866979/) is may be the bible when it comes to safety critical and concurrent programming aspects of Ada.