Introduction to web application development

Date: December 20, 2014

Category : general

Probably you are computer science student or have taken some course on C/C++ or basic JAVA. You want yourself to be more skilled and productive and want to make use of your remaining student days. This post is a introduction to what your options are when it comes to application development and hopefully help you evaluate each of them.

I personally know a lot of college sophomores and seniors who have no clue what is happens in developing a normal software let alone a cloud aware application. This post should also probably be a starting point to those computer science students more than experienced developers. We are in a user-centric applications age where developing an application with a single language doesn’t cut it anymore. You can’t just call yourself a Application Developer with just basic C/C++ or JAVA knowledge. NOTE: We will be focusing only on web application architecture and development throughout this post. Web Development: 1990’s Style aka The Chamber of HTML Tables Most of the sites we statics and we server from the server to the client without any computational overhead. They used to stay static and thus nearly all the data was cached in the browser. We used HTML to format and load the data into a page for visitors to read (sometimes there was little styling too using CSS).

But then came the need of beautiful interactive UI’s and personalisation to the site based on user. Web Development: Mid 2000 Style aka Attack of the CRUD Apps We started making dynamic and data driven website which started changing all the time. Simple CRUD(Create. Read. Update. Delete.) APPs came out build with JAVA/PHP (most-of-the-time). This time around we had a lot of interactions in the client side too using a language called JavaScript. We started moving most desktop application online with this generation of usable web applications.

Web Development: Post 2010 aka Rise of the client-side technologies Today, With the growing need of high traffic handling and multiple device native applications, came separate server-side application (API’s) and client-side running to share the tremendous amount of load on the servers. Meanwhile, we have changed a lot of development patterns and models. It seems like completely obsolete for someone to just know a language (say python) alone without knowing a corresponding framework (say Django).

We are going to see all the practices and technologies that can be used to build one such application in the part 2 and part 3 of this series.

If you have any questions or comments, feel free to reach out to me.