8 things Ushering in the “New School” of Web Development, Part 1

December 29th, 2009   Posted by Bryant in Code, Design, Inspiration, Reviews

In the grand scheme of my profession, that being a Web Developer, I would still consider myself to be a rookie.  I have been developing web sites and getting paid for it, for around 3 years; however, I would probably say that I have been doing it “professionally” for around a year and a half.  Even with my “rookie” status as a web developer, I do consider my talents to be very respectable, especially for the relatively short period of time I have been doing it.  One thing I have noticed since I began my career is the difference between, what I am coining as, “old school” developers and “new school” developers.  By Old School, I generally mean people who started developing websites in the late 80s/early 90s and have continued their careers throughout this past decade.  By New School, I am referring to someone like myself, or anyone who has started developing sometime in the 2000s.

From what I have noticed in my short career, Old School developers generally come from a background heavy in Computer Science and are very knowledgeable in code theory and the general philosophy behind writing efficient, sturdy code.  These developers blow my mind with how quickly they can concept and code huge classes and modules that are scalable and reliable.

New School’ers, like myself, seem to not always have the background in Computer Science, but a more general tech background such as Computer Information Systems, or in many cases, no higher level education at all.  New School’ers seems more comfortable with the open source community and are eager to learn new technologies that makes writing code more simple and standardized.

I am not trying to divide people into two specific sections, and not all developers fall into one or another, I’m just trying to point out some differences that I have noticed, as a segue for the main purpose of my post.

Like I said, I would consider myself to be a developer of the New School variety.  I love staying on the bleeding edge of what is current with web development, and I also love to get my hands dirty with more than just hacking out code; I enjoy interaction design, information architecture and everything that falls into the general category of “building a website”.  That being said, I have made a list of 8 things that I believe are helping to usher in the New School of Web Development.  The things mentioned are not all “new”, but are all things that I believe are pivotal and leading the way in the future of web development.

1.  Frameworks

It doesn’t matter what kind of code you are writing, chances are there is a framework for it.  On the server side of things popular frameworks include Ruby on Rails, CodeIgniter, ASP.NET MVC and CakePHP. These frameworks all help developers better organize their code (usually with a MVC architecture pattern) and have  built in functionality for handling common server side tasks such as database interaction, session controls, markup helpers and in some cases code re-visioning systems.  Many people have a hard time finally getting around to using frameworks, as they sometimes think they are bloated and do not let you customize your code to the extent they want, but usually once you find a framework you like its hard to go back to re-architect things from the ground up again.

ruby-vs-php

On the client side there are dozens of javascript frameworks: mooltools, prototype, and my personal favorite, jQuery.  With these javascript frameworks (ahem: jQuery) becoming abundant and popular, raw javascript is becoming a rarity on many sites.  Obviously you would want to be rather educated into the background of any language a framework is built on top of, but the argument against dedicating tons of time into learning raw javascript and just learning the basics of jQuery is becoming increasingly stronger.

The last framework I’m going to mention are a few css frameworks, such as 960gs and Blueprint.  Although many developers and designers alike don’t necessarily agree on the use of these frameworks, there is something to be said for them.  Once you get the understanding of how these work, they make prototyping and rapidly creating layouts extremely fast.  For me personally, the jury is still out on whether or not these should be used in the final code, but I’m not lying when I say that on many occasions in the past I have relied on these frameworks for simple site layouts that I needed to get up quickly.

2. APIs

2007-07-30-api

API is a buzz word that people love throwing around, but often times don’t really have a good understanding on what they are.  The sentence usually goes something like “Hey I want to let people  (insert obscure web functionality) on my site, can we just create an API for that?”, and in many cases they are not entirely wrong, just a little confused on what an API is.  Without going into too much detail APIs are generally just a way for users to connect to your site to retrieve/send information you use in your internal systems. In many cases APIs just provide static information like links, text and statistics, but some APIs also let users send commands and actually interact with your system, outside of actually logging into your site.  Besides allowing people to display aggregate data from various APIs, people are also using APIs to create robust new web applications that in many cases remove the user from needing to use a browser altogether.  A great example of this is Twitter.  It seems like everyday I hear of a new twitter application people are raving about, and when it comes down to it they are all just using the same API data each other application is using.

3. Javascript

javascript

It’s no surprise that javascript makes it onto this list.  Over the past few years javascript made a huge explosion all over the web, with every “web 2.o-ish” site squeezing in as much ajax into their site as possible.  Javascript went from being a very annoying, simple scripting language, to a language that is shaping the way people build and structure web applications.

As I mentioned before had a big hand in the increased popularity of javascript, but now frameworks like jQuery and upcoming animation libraries are enabling people to create semantic, standards based websites that can mimic the interaction and animation seen in flash based sites.

These days sites are beginning to appear on the web almost completely driven by well structured javascript and DOM interactions, with mark-up being dynamicly added by client-side templating engines (this financial site, Kapitall, comes to mind). The next frontier for javascript will be its use in HTML5′s built in APIs.  These APIs will let html5 natively support features such as drag-and-drop, the canvas element, and geo-location.

4. “Deselopers”

It’s hard to give a specific reason for this, but from what I can tell the line between developers and designers is slowly becoming thinner and thinner and I see more people being categorized as Web Professionals or… People Who Build Websites  There is always going to be strictly back-end developers and there will always be the graphic end of designing, but with interaction design becoming a more specific and prevalent need, you are seeing many designers and also developers taking on this role.  I think this mixed blend of talent has to do with interaction design relying so heavily on what types of interaction are possible, with developers being the best resource for this, but also designers coming up with new ways to concept this interaction and find new ways to display the information.

Last 5 posts by Bryant

One Response to “8 things Ushering in the “New School” of Web Development, Part 1”

  1. Luigi Fulk  January 5th, 2010

    What a wonderful blog! Please continue this great work I will be sure to check back regularly…

Leave a Reply