Исключительно опыт.
Если писать проекты, и писать все более и более сложные проекты, а потом их еще и поддерживать, то постепенно вы будете приходить к пониманию, что изначально можно было сделать так, чтобы впоследствии было проще.
Со временем, вы можете и сами прийти к world best practice, но нужно помнить, что в каждом проекте могут быть свои уникальные нюансы, и world best practice тоже нужно оценивать критически.
Что делать?
Участвовать в сложных проектах, интересоваться историей этого проекта - как пришли к тому или другому решению.
Можно и нужно почитывать книги, но понимать, что не все решения легко интегрируются, особенно в середине.