<i>Learning syntax of a language is not considered as "Mastery" of that language.</i><p>I don't entirely agree with this summation. Mastering each and every library to claim you are a master is pointless. Especially given the fact that a library API can be understood by doing a search and reading the docs. A master to me is someone who understands the language syntax all of the language features and who has enough experience to know that a little bit of searching will most likely reveal a library that does what you need it to do. For example, I cant thing of a library in Java that cannot be understood in a few days. Yet claiming that you need to know EJB, JDBC, JNDI, JNI, JAXB, JAX-WS, JAX-RS, JPA, etc not to mention all of the apache libs, Spring to be a master is nonsensical.