is there any reference or authoritative resource, or book on bitcoin programming?
Bitcoin is dubbed "programmable money" but there is no obvious resource for how to do it aside from trudging through subsections of hack-prone forum.
Altcoins many times are simply find and replacing the word "bitcoin" in the code base and clients, so it seems even in that case their programmers have a thin understanding of various bitcoin programming paradigms.
I'm sure a "book" would be outdated by the time it was published, but regardless it would be helpful to have everything in one place for a potential target audience that doesn't want to reverse engineer commit history just to see whats going on.
As far as I know a book about bitcoin programming doesn't exists.
The best resource you will find is the bitcoin wiki that is describing the bitcoin protocols very well.
July 2014 Edit
Now there is a book called Mastering Bitcoin that is available in early release.
I believe that this book match to what you are looking.
You can buy here on Here
It is in the works. Mastering Bitcoin by Andreas M. Antonopoulos
Bitcoin Programming Book
The best sources that I found for free:
I didn't check this out Bitcoin Programming by Mostafa Farghaly but looks like a good wisdom source.
I find this wonderful software a very interesting style of programming bitcoin and you can consider it as a book with this title "Asynchronous C++ Bitcoin programming". The name of the software is
libbitcoin - Asynchronous C++ Bitcoin library
Mainly it used the famous boost library ASIO. It provides developers with an asynchronous I/O model using a modern C++ approach.
The libbitcoin library took advantage of the algorithmic aspect of recent C++ 11/14 (lambdas heavily used in the coding, also an understanding of the new introduced pointers, variadic functions, bind function, promise & future is a must).
I'm writing a blog series for beginners called "Basic Blockchain Programming" that might suit your needs. It starts from scratch until building the first raw transaction:
It's still a work in progress, though (4 or 5 posts left).
I would post this as a comment to another answer, but I don't have enough reputation.