Fog Creek Software
Discussion Board




ASP.NET better than asp?

Now we are developing an asp.net project.
I already developed some old asp project.
Now I just doubt why asp.net is better than asp in soft engineering view?

We just follow the microsoft 's team guide to configure our project.

Now we met a few problems.
1. .net consumes too much memory (800M) when .net, iis is running on my pc (no database server)

2. It took 8 minutes to build the project (30-40 pages, no complicated dependent relations)

3. .NET's "smart" sourcesafe addin is too hard to understand, operate and easy to corrupt.

4. I can not edit code when debugging mode

5. Its "smart" configuration file almost kill us.

6. seems not easy to debug client script.

Yes, I do like some language syntax, data structure improvement in vb.net (we use vb to develop asp.net). but .net's ide is too "friendly".

In old days, we use simple editor+microsoft script debugger. simple, free and easy to use.

redguard
http://www.d2ksoft.com

redguard
Sunday, February 01, 2004

I hear you.

ASP.NET has certainly more features and power than ASP classic, but it is much harder to understand and as a consequence I think most non-professional time coders such as a graphic designers and people looking to add a little functionality to their sites will be migrating to PHP rather than ASP.NET.

I can't help feeling that abandoning the simple and straightforward ASP classic will be a terrible strategic move for Microsoft.

I like ASP.NET but it lacks what Larry Wall calls 'whipupitude.'. The ability to whip things up in a few minutes.

Matthew Lock
Sunday, February 01, 2004

Actually this guys states it better than me:

http://groups.google.com.au/groups?hl=en&lr=&ie=UTF-8&oe=utf-8&safe=off&selm=3E559B0D.100CE4C1%40hal-pc.org&rnum=6

Matthew Lock
Sunday, February 01, 2004

I'm not quite sure that PHP will stay that simple. Look what PHP developers are preparing for the next version (5.0): http://www.php.net/zend-engine-2.php

Somehow it looks like ASP.NET or JSP/Java: Object-orientation everywhere! It's the price for being more powerful and being able to develop bigger and more complicated systems. And it's good - PHP developers are doing the right thing. Otherwise, PHP would have a reputation of being just an entry solution for simple web applications.

Anyway, with smart spplication architecture (ie. with XML/XSLT) you can still make it easy for a designer to make her designs while not be forced to learn abstract classes and methods or copy constructors (both PHP 5.0 features).

And, regarding that usenet thread: There's something that Microsoft and Sun haven't told to all the people who aren't software developers. YOU NEED TO KNOW OO TO USE OUR PLATFORM. Since ASP.NET release I'm reading similar posting: My ASP.NET application falls apart! Why is that? Well, a closer look reveals the lack of good OO design and good architecture. The principles of script programming don't apply anymore and, to be honest, I'm happy with that because I hated every day I needed to spend with those ASP include files. A problem I mitigated with WSC's (Window Scripting Components - basically scripting components with COM interface).

PS - PHP syntax looks more and more like C++ (with all those __FILE__  where different number of underscores means something else) which is a bad thing. Even for Java/C# programmers :)))

NNL
Sunday, February 01, 2004

Something is wrong.

We have an ASP-model business. Our application runs on ASP.NET. An entire application, not just a web site. When IIS is running, it takes perhaps 25M of RAM for our application. Compiling the hundreds of thousands of lines of code takes no more than 30 seconds on ridiculously slow hardware, and on our typical development machines, only about 7-8 seconds for a full rebuild, and about 1 second for an incremental build.

Allow me to repeat: something is wrong.

Brad Wilson (dotnetguy.techieswithcats.com)
Sunday, February 01, 2004

>> YOU NEED TO KNOW OO TO USE OUR PLATFORM. Since
>> ASP.NET release I'm reading similar posting: My ASP.NET
>> application falls apart! Why is that? Well, a closer look
>> reveals the lack of good OO design and good architecture.

I'm not going to deny that OO is a great tool for abstraction in the right hands but why does a graphic designer for example. need to understand OO just to whack together an guestbook, or email form? They don't, yet ASP.NET will now force them to understand it. Hence the migration I can see to languages that don't make OO compulsary, such as PHP, perl, Python etc.

Matthew Lock
Sunday, February 01, 2004

A graphic designer who wants to put a page counter or a guestbook together can still do it in good ol' ASP. It's there, delivered with every IIS installation just like everyone can use simple PHP features for simple tasks and scale to the more complicated ones.

One must know the difference between a simple screwdriver and a screwgun machine (ie. http://www.hilti.com/holcom/modules/prcat/prca_navigation.jsp?OID=-10079) and use them accordingly.

NNL
Sunday, February 01, 2004

I agree with the other guy that your performance problems don't sound typical.  We don't see anything like that here.

I love ASP.NET.  I can write complicated stuff SO much quicker than I could with ASP, and it's much nicer looking code when I'm done.

It's an abstraction layer, and comments about leaking surely apply here.  Some things, like the ASP.NET validators, just don't work the way I think they oughta.  But working around those oddments is a trivial cost compared to the overall benefits.  MS did a brilliant job of abstracting the web development process.  I really hope the Mono guys can get their version polished up and ready for the real world.

If I had spent a couple years doing serious ASP development, and had a nice little toolkit built up that I was very happy with, I'd probably keep using that most of the time.  I'm not religious about it or anything.  But I didn't, and so ASP.NET is a godsend.

I would look into your performance problems as something to be troubleshot, not part of the normal price tag for ASP.NET.  Sorry I don't have any more specific advice.

Matt Conrad
Sunday, February 01, 2004

Is it possible that your first foray into ASP.Net programming yielded some sort of memory leak?  I have never seen an ASP.Net app take up 800MB of memory unless working under large stress or with very large files/objects.  Perhaps this leak is contributing to the horribly slow build times you are experiencing.

Other points:
- The VSS "smart" add-in you're talking about is terribly slow and prone to corruption because, well, it's VSS.  I have high hopes for VSS 2004, but I'm not holding my breath.
- If you prefer debugging ASP.Classic over ASP.Net, you've been living in scriptland entirely too long.  Coming from a compiled software dev background, I personally think it's a godsend.
- The "smart" configuration file?  Are you talking about the web.config/machine.config/app.config files?  What about them is all that difficult?
- If you're attached to the process running on the server, yes, it will be impossible to debug the client script.

If you want free, try the ASP.Net Web Matrix (http://www.asp.net/webmatrix/default.aspx?tabIndex=4&tabId=46).  If you want easy, perhaps you should stick with what you know.

Greg Hurlman
Sunday, February 01, 2004

"1. .net consumes too much memory (800M) when .net, iis is running on my pc (no database server)"

This is atypical. Most likely, something has been misconfigured on your end. I'm responsible for dozens of servers running ASP.NET and I've not seen this happen.

"2. It took 8 minutes to build the project (30-40 pages, no complicated dependent relations)"

Once again, something is wrong here. This isn't normal ASP.NET behavior.

"3. .NET's "smart" sourcesafe addin is too hard to understand, operate and easy to corrupt."

Hard to understand? You right click a source item and select check in or check out. I've not used in any other source control system with VS.NET, so maybe there is one that is easier, but VSS seems pretty straightforward.

As far as the corruption goes..I hear ya on that. This is why it's sometimes known as SortaSafe.

"4. I can not edit code when debugging mode"

This is the nature of the beast. It's compiled, not interpreted like ASP. I've heard that Whidbey will offer this somehow, but I'm not certain about that.

Mark Hoffman
Sunday, February 01, 2004

"why does a graphic designer for example. need to understand OO just to whack together an guestbook, or email form"

They don't, and ASP.Net doesn't make them. In fact, you've pointed out one of the huge reasons ASP.Net is better than ASP - far better separation of business logic from presentation design.
I worked for two years with a UI guy - he did all the forms layout, I did the coding behind the scenes. We worked very well together in ASP.Net.

As for "whipitupitude" - I suspect the issue with ASP.Net here is simply getting used to the new paradigm. I just "whipped up" a pretty nice looking datagrid based on a fairly complex query in five minutes, all from within VS.Net:
Use the Server Explorer to browse to your database, drag a table, view, or stored procedure to a blank ASP.Net form, create a dataset, set a few properties, write two lines of code, run.

Philo

Philo
Sunday, February 01, 2004

Philo, out of interest how long does MS plan to keep shipping ASP classic with IIS?

Matthew Lock
Sunday, February 01, 2004

seems my main problem lies in some memory leaking?
I used to be a C programmer working on Linux.
Now we just change from a sample which is sent by Japanese.
The sample is slow. I will tell my boss and let he email Japanese

My PC:
Celeron500, 512M memeory;

Our SourceSafe server(Shared by 3 or 4 teams):
Celeron700, 256M memory;

At beginning, we have our own server, but when this project continues, our CMM manager forced all the teams to transfer to the same server to follow CMM3.

Now I will explain why the .net ide's sourcesafe addin is to simple.

For example, we already have 22 sub-projects, now I want to add #23 sub project and I am sure only #22 is related to #23.
But when I add #23, I have to checkout the solution file, then every sub-project is updated. In the worst situation, It will take ONE day (yes, our sourcesafe sever is poor. but I can do nothing. ) to update.

Now if I want to open solution file, .net ide will update the whole 22 sub-projects.

Now comes to the point interface seperated from logic.
Yes, I strongly support the seperation even in old days.

But now we have to design interface by ourselves!
The key problem is that .net ide interface looks a little different from in IE and we can not view the aspx in IE.

We have to run the application to see the interface and now came to same problem

redguard
Monday, February 02, 2004

Matthew - While I'm sure you won't find a specific answer, I'm sure its something along the lines of "As long as there are MS Premier customers using it".

Greg Hurlman
Monday, February 02, 2004

You need to rethink your project grouping.

You can have one solution with all of your projects in it to build occaisionally just to make sure everything builds properly.  However, this is not the solution that you should be working with doing most of your development.

One project can be in many different solutions at the same time.  If you're working in one area, make a new solution that only has the main project you are working on and the projects which the main project requires in order to build successfully.

The solution files themselves don't really need to be in source control, as long as you have documented somewhere which projects depend on which others.  Here you are experiencing more of source safe's suckitude, as CVS and other source control systems don't require exclusive checkout.

Richard P
Monday, February 02, 2004

Oh, and ASP.NET is a million times better than ASP.

If you don't want to deal with code-behind and OO programming, just use Web Matrix with VB.NET and loose typing and use it the same as ASP classic.

ASP.NET gives me strong-typing and code re-use in a way ASP classic never could.  I don't know how many hours I wasted in ASP trying to massage data coming out of the database so that it wouldn't give me a runtime type conversion error.

foo = getResultFromDB
if isDate(foo) then
    foo = cDate(foo) ' Runtime error! Incompatible types. FARK! WTF!?
end if

Richard P
Monday, February 02, 2004

*  Recent Topics

*  Fog Creek Home