Aug 14, 2009

RE: All Programming is web programming?

 

In a recent post @ Coding Horror, Jeff Atwood explains his views on the future of software development. He makes the claim that “All programming is web programming.”

He has some solid points about the benefits of the web deployment model and the downside of the traditional desktop application. However, he seems to blur the lines on what he calls “web programming.”

In his statement that “all programming will be web programming” he seems to define web programming as anything that has a web front end?

Then, when he talks about crappy web programming and crappy web developers he seems to be talking about JavaScript and html hackers. I agree with him the web front end world is not a fun place to be. The development experience is frustrating and the tooling is kludgy.

However, lets not forget that there is a ton of “back-end” development that is involved in “web development.” With separation patterns like MVP, MVC etcetera the crappy part of web development is abstracted away.

So I think he has a point that more and more applications have a web presence (i.e Web front end, web services) but there is still a fair amount of software development that has to take place to make it work.

When I am writing software I try, as much as possible, not to concern myself with what the front end technology will be. Following patterns like MVP,MVC, MVVM , MVWhateverYouWantToCallIt allows your code to be UI agnostic and removes as much code as possible from the specific UI platform.

At that point, to me, coding is coding. Whether I am writing a “web” system or not, there are still hard problems to solve and challenges to overcome.

With the advent of declarative desktop UI technology like WPF there will undoubtedly be “bad” desktop UI developers just like there are “bad” web UI developers.

Abstracting the hard problems away from the UI mitigates these issues and allows developers to focus on code period.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home