{"id":165,"date":"2018-09-30T13:25:56","date_gmt":"2018-09-30T13:25:56","guid":{"rendered":"http:\/\/nitk.acm.org\/blog\/?p=165"},"modified":"2018-10-07T08:50:15","modified_gmt":"2018-10-07T08:50:15","slug":"the-truth-about-web-development","status":"publish","type":"post","link":"https:\/\/nitk.acm.org\/blog\/2018\/09\/30\/the-truth-about-web-development\/","title":{"rendered":"The Truth About Web Development"},"content":{"rendered":"<p>What comes to your mind when you hear someone say Web Development? Probably something along the lines of \u201cdesigning\u201d a webpage, right? Web Development and Web Design are two totally different areas, interesting in their own way. Web Development is so much more than just Web Design.<\/p>\n<p><i>Let\u2019s get technical. <\/i><\/p>\n<p>Any webpage has three components:<\/p>\n<ul>\n<li><b>Client<\/b>: The local system that the user interacts with. (popularly called \u201cUser Interface\u201d)<\/li>\n<li><b>Server<\/b>: The remote computer that hosts all the files that make up the website.<\/li>\n<li><b>Database<\/b>: Technically a part of the server, a database is a large series of data tables, used to store all the dynamic information generated or used within the website.<\/li>\n<\/ul>\n<p>The basic flow of a webpage is very simple to understand.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-166\" src=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed.png\" alt=\"\" width=\"512\" height=\"134\" srcset=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed.png 512w, https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed-300x79.png 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/p>\n<p>The user first enters the URL of the website (let\u2019s say www.facebook.com) on his\/her local computer (<b>the client<\/b>).<\/p>\n<p>The user\u2019s computer generates a \u201crequest\u201d that is sent to the <b>server<\/b> computer which then accepts the request.<\/p>\n<p>The <b>server<\/b> runs the back-end code while taking data from the <b>database<\/b>.<\/p>\n<p>The <b>database<\/b> then sends the requested data back to the server.<\/p>\n<p>The <b>server<\/b> takes the data and executes the front-end code to produce a \u201cresponse\u201d. This \u201cresponse\u201d is sent back to the <b>client<\/b> where it is displayed (or rendered) on the <b>client<\/b> computer as a web page.<\/p>\n<p>So there are clearly two sides of development:<\/p>\n<ul>\n<li><b>The Front End<\/b>: A front-end developer is the one who builds the interface, and provides the layout as the interaction between the back-end of the website and the user.<\/li>\n<li><b>The Back End<\/b>: Back-end developers are those who control the server data and requests.<\/li>\n<\/ul>\n<p>Full Stack Web Developers are those who work on both front-end and back-end code.<\/p>\n<p>Getting back to words like \u201cresponse\u201d and \u201crequest\u201d mentioned above. HTTP stands for Hypertext Transfer Protocol. It&#8217;s an application-layer protocol for communicating between distributed systems. HTTP basically is a protocol to facilitate communication between hosts and clients.<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-167\" src=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/pasted-image-1.png\" alt=\"\" width=\"689\" height=\"397\" srcset=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/pasted-image-1.png 689w, https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/pasted-image-1-300x173.png 300w\" sizes=\"auto, (max-width: 689px) 100vw, 689px\" \/><\/p>\n<p>Communication between a host and a client occurs, via a <b>request\/response pair<\/b>. The client initiates an HTTP request message, which is serviced through an HTTP response message in return. How is the request message sent? They are sent via Uniform Resource Locators (URLs). I&#8217;m sure you are already familiar with URLs.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-168\" src=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed3.png\" alt=\"\" width=\"512\" height=\"113\" srcset=\"https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed3.png 512w, https:\/\/nitk.acm.org\/blog\/wp-content\/uploads\/2018\/09\/unnamed3-300x66.png 300w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/p>\n<p>The protocol is typically http, but it can also be https for secure communications. The directory is the <i>local path<\/i> to the resource on the server.<\/p>\n<p>So how much of \u201cWeb Design\u201d did I talk about? Hardly anything, right? A million processes (only some of which I mentioned), go on behind the scenes during the load of a webpage that go overlooked.<\/p>\n<p><i>There is so much more to Web Development than Web Design.<\/i><\/p>\n<p style=\"text-align: right;\"><em>&#8211; Nishanth Subramanian<\/em><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>What comes to your mind when you hear someone say Web Development? Probably something along the lines of \u201cdesigning\u201d a webpage, right? Web Development and Web Design are two totally different areas, interesting in their own way. Web Development is so much more than just Web Design. Let\u2019s get technical. Any webpage has three components:&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[25,10],"tags":[],"class_list":["post-165","post","type-post","status-publish","format-standard","hentry","category-sanganitra","category-tech"],"_links":{"self":[{"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/posts\/165","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/comments?post=165"}],"version-history":[{"count":1,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/posts\/165\/revisions"}],"predecessor-version":[{"id":170,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/posts\/165\/revisions\/170"}],"wp:attachment":[{"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/media?parent=165"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/categories?post=165"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nitk.acm.org\/blog\/wp-json\/wp\/v2\/tags?post=165"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}