To-Do-List for Novice Web Developers

Standard

Web Development

As a developer one faces numerous challenges in the initial phase of him/her getting acquainted with the enterprise environment and the pace of development. Not every fresher in industry enters equipped with armaments necessary to fight this ‘everyday battle’ of technology.

One lacking in the most basic skill-set needed may fail to coup up with the pace and may give up at an earlier stage and some may try to carry on with adverse situation with a lot of mishaps. I’ve seen only a few of many trying to face the challenge and build their own shield with smart work and learning from failures. Hereby, I’ve made a small effort to help these fighting souls to kick-start their journey as a web developer with the knowledge of the most basic aspects, tools and standards that a present day enterprise may expect from them.

The primary focus is on Java based web development, but the core concepts like version control, application container, build automation, MVC design, web services, etc. shall remain same for almost all the enterprise applications. (Sounds new to you?? Don’t worry, it won’t be the same in next few days!! )

Few rules of the game:
1. Do not give up in the midst, because believe me the journey will prove to be life changing experience for you
2. Always remember no one knows everything and will remember everything. So the references you refer and sample applications you develop during the learning phase can serve as crash course for you in future
3. Do not skip any part of the day’s learning goal as far as possible as it may serve as a knowledge base for next day
4. I’ve added multiple links  as reference for same topics, so refer any one of those which you feel is digestible for you.

That’s enough of talking, let’s get going!!

Day 1

Aim: Get introduced with the basics of a web application – different components, use of servlets and JSP
Resources:
1. http://www.journaldev.com/1854/java-web-application-tutorial-for-beginners
2. http://www.vogella.com/tutorials/JavaWebTerminology/article.html
Task:
1. Go through the above resources to build up the knowledge base necessary to begin web development
2. Write a basic Java Web Application to justify your learning


Day 2

Aim:
1. Learn basics of git and working with github
2. Introduction to Java Programming
Resources:
1. http://rogerdudler.github.io/git-guide/
2. https://try.github.io/levels/1/challenges/1
3. http://www.ibm.com/developerworks/java/tutorials/j-introtojava1/
Task:
1. Use the above resources to learn basic git commands(refer to link 1)
2. Practice these commands on TryGit console (refer to link 2)
3. Now, try to work out the same commands on your local machine while using the sample web application developed on Day 1 as test data(code)
4. Optimize/enhance the web application using the knowledge acquired from (refer to link 3)


Day 3

Aim:
1. Introduction to Maven: Objectives, Installation and Usage
2. Introduction to Tomcat: Installation and Usage with Java Web Application
Resources:
1. https://maven.apache.org/what-is-maven.html
2. http://www.tutorialspoint.com/maven/
3. http://www.vogella.com/tutorials/ApacheTomcat/article.html
4. http://www.codejava.net/servers/tomcat/how-to-deploy-a-java-web-application-on-tomcat
Task:
1. Use link 1 and 2 to get familiar with Maven and its usage
2. Convert existing Java Web Application (developed on Day 1 and Day 2) to a Maven Java Web Application
3. Use link 3 to learn the installation and usage of Tomcat container
4. Generate a war file of web application developed in task 2 and deploy it using tomcat (refer to link 4)


Day 4

Aim:
1. Introduction to Web MVC: MVC in Java, MVC in JSP
2. Introduction to Spring and Spring Web MVC
Resources:
1. https://dzone.com/articles/web-mvc-java
2. http://www.javatpoint.com/MVC-in-jsp
3. http://www.tutorialspoint.com/spring/spring_web_mvc_framework.htm
4. http://docs.spring.io/spring/docs/current/spring-framework-reference/html/mvc.html
Task:
1. Use link 1 to get yourself familiar to MVC in Java
2. Understand how MVC design pattern is implemented in Java Web application (refer to link 2)
3. Learn and implement MVC in Java Web applications using Spring Framework (refer to link 3)
4. Use the knowledge acquired to convert your sample web application to a Spring Web MVC application and push the code to your public repository on github
Note: Use link 4 learn Spring MVC in-depth using official doc


Day 5

Aim:
1. Introduction to Hibernate Framework and Hibernate-Spring integration
2. Introduction to logging services: Apache Log4j 2
Resources:
1. http://www.javatpoint.com/hibernate-tutorial
2. http://logging.apache.org/log4j/2.x/
3. http://www.journaldev.com/3531/spring-mvc-hibernate-mysql-integration-crud-example-tutorial
Task:
1. Use link 1 to get yourself familiar with hibernate framework and spring integration
2. Learn the basics of logging service using link 2
3. Write a Spring MVC Hibernate application with MySQL to perform simple CRUD operations (refer to link 3)


Day 6

Aim:
1. Introduction to RESTful Web Services and JAX-RS
2. Introduction to JSON and its usage in Java (encoding and decoding)
Resources:
1. http://www.tutorialspoint.com/restful/index.htm
2. http://www.tutorialspoint.com/json/index.htm
3. http://websystique.com/springmvc/spring-mvc-4-restful-web-services-crud-example-resttemplate/
Task:
1. Study the contents of link 1 to get yourself familiar with RESTful web services and its usage
2. Learn JSON standard and its usage with Java (refer to link 2)
3. Write a sample REST application applying the concepts learnt from link 1 and link 2 (refer to link 3)


Day 7

Aim:
1. Understand the bare essentials of CSS 2. Introduction to Interactive Front-End Web Development using JavaScript and jQuery
Resources:
1. http://www.htmldog.com/guides/css/beginner/
2. http://htmldog.com/guides/javascript/
3. http://www.tutorialspoint.com/javascript/
4. http://try.jquery.com/
Task:
1. Use link 1 to learn and implement CSS based web styling
2. Learn the basic usage of JavaScript in web application (refer to link 2 or 3)
3. Learn the basic building blocks of jQuery using link 4
4. Design a web application with the knowledge acquired so far (use JavaScript/jQuery to add dynamics and CSS to beautify the looks of web pages)

Hope the experience was helpful in boosting your confidence as a developer and as a person in general.

Happy Programming

Good luck!! Happy Programming 🙂

One thought on “To-Do-List for Novice Web Developers

Leave a comment