Web Development constitutes of two main areas:
1.Front End
2.Backend
Front End:
Front end development is responsible for everything that a user sees on the website .This includes menu drop downs, transitions and every other minute interface elements. A Front end developer has to focus on HTML, PHP and Java script for they are responsible to present information effectively to the user. Front end also must act like a bridge between user and back end.
Back End:
Back end development is never visible to the user; it consists of a server, an application and a database. While the Front end interacts with the user, back end interacts with the server in performing queries and data transfer between your browser and the server. A backend developer builds technology that enables the server, application and database to work in conjunction with each other. A back end developer uses server side languages like PHP, Python, Java and Ruby in order to communicate with the server. Tools like MySQL AND Oracle are used in database operations in order to find save or present the
data to the front end.
Books can give you a solid understanding about the basics but this may not be just enough. The book is first written, published and then comes into the market, this process can take a lot of time and meanwhile the technology explained in the book can become outdated. You might miss out any new web frame work which can make your life easier. There are plenty of MOOCS available online for free,but it is always works better having a mentor with a practical exposure who can guide you through the courses. Many weekend courses are available for working professionals who would like to master their skills.