Fog Creek Software
Discussion Board

Programming for the Internet

I graduated in '98, and since then the majority of my programming experience has been for web-based projects.  <A HREF="">This recent post</A> from Ingo Rammer reminded me how sound programming practices and programming for the internet are often at odds. 

Layered architectures must be refined for a web-based project, where speed is a much bigger concern.  The nature of scalability for the web is different from desktop apps.  And web-based programming just suffers from poor penmanship as companies try to push out products as fast as they can.

.NET and ASP.NET is bringing object-oriented philosophy to the Internet.  But right now it suffers from a lack of adequate documentation for enterprise level design. 

So far, I've seen many applying standard programming practices to the web, which is excellent.  But the web is also a new medium, with its own programming concerns, and I've seldom seen anyone addressing these web-specific concerns. 

My question is what other resources, books, people etc are out there that are trying to bring solid, sound programming practices to the web? 

Monsur Hossain
Monday, September 23, 2002

We Java people have been doing "object oriented internet programming" for years now. Oh, by the way, have you seen the massive amounts of documentation we have?

Dr. Awesome
Monday, September 23, 2002

A more constructive response would have been to include some links to this documentation.  Also, how language specific is this documentation?  A resource focused on Internet programming concepts shouldn't be coupled to any one language.  My experience with most documentation out there is it tells you how to do simple things, but they are often too surface level to get into "real" programming details. 

On the other hand, one of the best I've seen so far is Martin Fowler's Patterns of Enterprise Application Architecture:

Though written for all languages and programming types, he does make a note of addressing concerns when building web-based applications.  I'm sure there must be other resources out there; what are they?

Monsur Hossain
Monday, September 23, 2002

There are tons of info on Suns Java site aswell as a sherchable index of articles and tutorials published on (certain) other sites.
Much of the theoretical stuff applies just aswell to C# AFAICT.

To get going I recomend a search for the Model-view-controller pattern (MVC for short) which is a good starting point for many web applications.

Eric DeBois
Monday, September 23, 2002

".NET and ASP.NET is bringing object-oriented philosophy to the Internet."

I don't like sarcastic responses, but that statement it's somewhat disturbing.

Leonardo Herrera
Monday, September 23, 2002

Woah woah, before this becomes a religious war.  I never meant to insinuate that ASP.NET was the only OO programming language for the internet.  It is rather a radical departure from old ASP, where OO is non-existant.  I should have been clearer.

Ok, forget all that I wrote above; let me try to clarify my question (probably what I should have wrote to begin with).  When I look out at the landscape of professional programming research, I don't see a lot of papers focusing on Internet programming practices. A quick search of recent SEI papers didn't reveal anything helpful.  I was wondering are there resources are out there (websites, books, research groups etc) that are investigating this issue?  Or is programming for the internet a small enough subset of programming in general that it doesn't warrant its own area of study?

Monsur Hossain
Monday, September 23, 2002

As Sean Connery would say... "sherchable index"

My apologies Eric, I am not picking on what you have to say.  The typo struck me funny.  It's been a long day.  It reminded me of the Saturday Night Live skit with Sean on Jeapardy.

ryan ware
Monday, September 23, 2002

I have one off-topic point, and one on-topic.

Off-topic: You can do reasonable OO with ASP if you store your code in WSC files. It's not gorgeous, but it fulfills some of the OO needs that "regular" ASP doesn't address.

As for whether web programming deserves its own field of study, that's a good question. I guess that so far, those of us that were programmers before just apply the techniques we learned in other languages. There are some issues that the web brings in that aren't covered in many non-web programming books, like the mixing of logic, formatting, and content. To some degree, screen-based apps had to deal with that, but I grew up on Z80, DOS and Windows programming, where data, formatting, and content were separate beasts.

I've seen some admirable methods for keeping these chunks separate in web apps, but none that I'm completely in love with. I think the best I've seen yet is the code for Hamweather.

Troy King
Monday, September 23, 2002

oops, make that jeopardy

Told you it was a long day.

ryan ware
Monday, September 23, 2002

You can do OO in ASP in straight VBScript via classes. It's not the best OO system but it's pretty useful:

Matthew Lock
Tuesday, September 24, 2002

Check out Philip Greespun'ssite.

His book, Philip and Alex's Guide to Web Publishing, while a bit dated now, is one of the best books I have read on building useful web services.... it does start you thinking.

He also has a book called The Internet Application Workbook . I have not read this entire text, but it was the course text for some course at MIT called Software Engineering for Internet Applications.

Also has SQL for Web Nerds and TCL for Web Nerds

Tuesday, September 24, 2002

Completely off topic:

*Scottish Accent* "I'll take The Rapist for a 1000 points"

Jack lives over there ->
Thursday, September 26, 2002

"Not a fan of the ladies, are you Trebeck?"

Dunno Wair
Tuesday, October 1, 2002

*  Recent Topics

*  Fog Creek Home