All Programming is Web Programming

What a self-righteous post! Where to start from?

“The reason most people want to program for the web is that they’re not smart enough to do anything else”

Yes, this is a valid point (although I’d change the “smart” part with “inexperienced”). Most “WEB” programmers I’ve met, are on the level of script-kiddies using PHP in ways that manage to make it even worse than its definition, and some ASP.net ones, that resort to control drag-n-dropping, with no sense of SoC, IoC or even layers.
Yes, he’s quite off the chart too in the end with a stupid conclusion, but the above little chunk of text stands.

“All Programming is Web Programming”

No, it’s not. The hypothesis you express in the end (albeit also wrong) has nothing to do with the title of your post.

“Atwood’s Law”? Come on now, do you want a wikipedia entry with that? If I were to take it literally, then I’d say you have no idea how scientific or even emperical laws are defined.

“Pretty soon, all programming will be web programming. If you don’t think that’s a cause for celebration for the average working programmer, then maybe you should find another profession.”

No it will not. I won’t use a web-based Photoshop or a web-based Visual studio, or a web-based music authoring application. I MIGHT use a web-based office solution, to the point it will not be able to compete with the respective desktop one.

Also I should mention gaming, that albeit going downhill on the PC, remains still a class above all Flash-based web games, thus ensuring a market.
No, if that statement were true it would indicate a paradox (you can’t use a web application to develop another application - desktop or web, for practical reasons).
After all, the majority of applications that can be easily ported to web have to do with client/schedule/inventory management. And I won’t deny I’ve developed quite a few in my career.

What a self-righteous post! Where to start from?

“The reason most people want to program for the web is that they’re not smart enough to do anything else”

Yes, this is a valid point (although I’d change the “smart” part with “inexperienced”). Most “WEB” programmers I’ve met, are on the level of script-kiddies using PHP in ways that manage to make it even worse than its definition, and some ASP.net ones, that resort to control drag-n-dropping, with no sense of SoC, IoC or even layers.
Yes, he’s quite off the chart too in the end with a stupid conclusion, but the above little chunk of text stands.

“All Programming is Web Programming”

No, it’s not. The hypothesis you express in the end (albeit also wrong) has nothing to do with the title of your post.

“Atwood’s Law”? Come on now, do you want a wikipedia entry with that? If I were to take it literally, then I’d say you have no idea how scientific or even emperical laws are defined.

“Pretty soon, all programming will be web programming. If you don’t think that’s a cause for celebration for the average working programmer, then maybe you should find another profession.”

No it will not. I won’t use a web-based Photoshop or a web-based Visual studio, or a web-based music authoring application. I MIGHT use a web-based office solution, to the point it will not be able to compete with the respective desktop one.

Also I should mention gaming, that albeit going downhill on the PC, remains still a class above all Flash-based web games, thus ensuring a market.
No, if that statement were true it would indicate a paradox (you can’t use a web application to develop another application - desktop or web, for practical reasons).
After all, the majority of applications that can be easily ported to web have to do with client/schedule/inventory management. And I won’t deny I’ve developed quite a few in my career.

For the past 3 years I’ve been writing Windows Forms applications that utilise web services and the web browser UI control to render html based user iterfaces.

These applications can work in offline mode when needed and have access to all of the resources and processing power of the local computer. They also benefit from CSS, jQuery, DHTML, JSON etc whenever needed. Best of both worlds maybe?

Jeff, your article is so quaint, old fashioned and close minded to suggest that there is this huge dividing line between “web programming” and “other programming”.

But the the title and mood of this article certainly gets people to read and comment on it, so congratulations dude.

And braces should ALWAYS be placed like this in C/C++.
code fragment:
if(expr)
{
statement;
}

I have posted a reply on my blog at:

http://michaelbraude.blogspot.com/2009/08/re-all-programming-is-web-programming.html

A few years ago (well 10 or more), the most challenging coding task was to write a C++ analyzer and compiler (let’s try to deal with the Standard Template Library). For now, i think it’s coding a good and robust browser.

The only “smart” web app i’ve seen is Google Maps. Very impressive.

But, as usual, every one’s right. Users want to have well designed and usable UI (not trivial), but any app needs good back office stuffs to store, manage and find data (even more not trivial). I’m talking about real office app. Not blogging app :slight_smile:

The problem with both sides of this argument is that most software does not even run on PC’s, it runs on embedded devices, controllers, and on dedicated non-web connected servers…and probably always will

The Web/Desktop split is changing but the web is unlikely to “win” ever some people will still run apps locally even if they could run the app in the cloud …

Sheesh. I go away on vacation for a few days and look what I came back to.

I’ll post something on my blog once I have a spare moment or two to respond to this (although I wonder if it’s a good idea to fan these flames. Aren’t these comments enough?). But for the people reading the comments, I would like to clarify and say a few things:

  1. I think it was unfair of you to omit a very important line from my rant (“OK, so that’s not an entirely fair accusation to make. Of course there are smart people who like to work on the web, and who find challenging things about it.”). While I know the post is inflammatory, not mentioning this line casts me in a harsher light than I think is necessary for you to make your point.

  2. In retrospect, I should have clarified what I mean by “web-guy”. I did attempt to do this by responding to people in the comments. As some people have quoted already, I wrote “I don’t consider server-side programming “web programming” because SOA encompasses all mediums. Once you get into writing web services and DAL’s you’ve left the world of aggravation”. Although I didn’t make this distinction clear in my initial post, I have spent plenty of time working on the service layer and I have no problems staying in that space. So I was specifically referring to the presentation layer of a web-app.

I of course don’t agree with what you’ve written here. But I think people have already said enough on that topic that there’s no point in repeating it.

@Michael, maybe now he’ll have you on the podcast so he can apologize like a la the bob martin show) (though that time it was Joel spewing stuff)

A few other people have said it - this blog is about generating traffic. And i Suspect that since he probably can count on SO for future wages and identity and ego, he no longer needs to care about content here.

Pretty soon, all programming will be web programming. If you don’t think that’s a cause for celebration for the average working programmer, then maybe you should find another profession.

I 99% agree. Some applications are still too big to fit into a browser: do you imagine VisualStudio or Eclipse in your browser??

Not sure if it’s worth posting this as Jeff is obviously not interested in these comments, but just listened to the latest Stackoverflow podcast, and at around 26 min (just after Jeff says that PHP is the new Cobol), Joel says,

“There’s a certain class of languages … that tend to atract people that … are lookong for the easiest way to get things done, and those tend to not be the best programmers. … That was the problem with Visual Basic for all those years. Javascrpt and PHP are all in that class, where the’ve attracted programmers who are not professional programmers, and don’t really care how clean their code is, they just want to get something done, and thats why they’ve chosen those languages … and so the code that exists in those languages is of a much, much lower quality then you would expect …”

Jeff’s seems to agree with, so how is this different than the “absurd argument” that "web programming attracts sub-par software developers?

It seems to me that the whole basis of this point, and of all the moral indignation of web developers to Michael Braude’s article is people are not capable of reading the word “most”. Web programming is perceived as being easy, the amount of programming required is low, javascript and PHP are languages that can be used to get things done without needing a lot of professional skills, etc. All this attracts below average programmers, and these people are likly to be the majority. None of this means that good developers don’t work on web development, just that at present they are in the minority.

By contrast, what I find offensive about this post, is that Jeff twice states that all programming will be (or is) web programming. Not, “most programming”, or “in my opinion, at some point in the future, most desktop programming will have become web programming”. Instead we get this absolute statement, that effectivly implies that huge numbers of programmers are not real programmers, just because they work in areas that are not so visible to users.

Hi, My Name is James Hogan. I’m heading to University in September '09 to do my master of cs in web development. The Web is where it’s at. Now is the time for experienced programmers to show the way to us burgeoning developers. I don’t know allot about traditional programming paradigms but I am sure that web aps are where the real innovation is happening, and as a developer I damn sure want to be part of that revolution.

@Patrick Smacchia
I agree eclipse will not fit into your browser …not just yet…
but the revolution has already started there too check for Bespin and Zembley.

Some level of Web Apps and almost all mashups can be made solely in your browser sitting on any system any place.

Call me when a web app can undo/redo/copy/paste as reliably as a desktop app, or even do 50% of the things expected from a desktop app reliably.
Never gonna happen is it, at the minute its just a bunch of devs circle jerking about “platforms” and startups

I think what really helps is being pragmatical and focus on getting things done. Choose the language that best fits the tasks. Or as Neal Ford says being a polygot programmer that’s the way to go in the 21 century …

Yea, promote your agenda by saying the browser is the future lol (Spolsky’s snobby demeanor is really rubbing off on you). Why is it that the truly smart people dont have blogs like this? The fact of the matter is that this is that we’re in the tech industry and things change.

Also, as with any other industry most of the programmers, designers, etc. are below average, this happens more on the web because the people that run the so-called standards communities (idiots) create the perfect little playground for bad practices.

If most developers (web or not) were to pick up a book on software engineering they would realize they still have a lot to learn. They all learn some syntax then feel they know it all.

No one is saying you have to go to college to be a professional but at least read the books that people that KNOW more, and have more experience, than you have written. Tutorials on the web written by idiots only creates more idiots (read a book).

"The reason most people want to program for the web is that they’re not smart enough to do anything else. "

This is pissing me off! I don’t know if he ever designed a high performance web app and maintained it but this is just plain BS!!

Even a web app in the end goes down to app pools and worker processes, saving resources, providing more throughput.

How can you have “most” of the programmers be “below average”?

Jawn, I guess “standard” would be a more accurate term. You’re right, all the crap that’s put out there makes average very low.

The good thing about all this bad “web code” is - it usually disappears after a couple of months.

The bad thing is that this then gets replaced by something more hideous.