"Willy Denoyette [MVP]" <wi*************@telenet.bewrote:
So you mean that:
- all of your users run with administrative privileges, and..
Well, most do. They're not even our users. They're users at large
enterprises around the world. We don't mandate it, and if they're not
running as an Admin, we have to work there too.
- as such, they know what "Memory Usage" ("Working Set" on Vista) really
means or what
They just see a number in Task Manager, and that our software is near the
top. We then get phone calls, emails, forum posts, and whatnot all saying
"how could your software take 80 megs? I've only got 512, and your app is
the biggest thing running on the machine!". Now we've got an unhappy
customer.
Why do they "get cranky" then?
We're taking up too much memory, according to the list they're seeing (In
Task Manager). On many systems, we're at or near the top - taking up nearly
as much memory as Outlook. Even a tiny "Hello World" WinForms .Net program
exhibits this behavior.
If they don't know exactly what these counters are about, why are they
looking at them and why do they "get cranky" then?
They're uneducated users looking at Task Manager. By "uneducated", I mean
even most experienced developers.
We've had a number of customer evaluate using our stuff (and .Net) and then
choosing not to use it, because all the .Net apps they build take up too
much memory. They're very worried about the negative perception this will
cause, and end up building native Win32 apps.
But again, this is not the real issue, you are forcing your users to run
as full admins (a big NO NO per default on Vista) which makes them
vulnerable to all sort of security attacks, this is what I call *reality*,
tell them about this and let them make an educated choice.
It's not woth trying to educating the users. There are too many of them, and
it's a losing battle. It's also an expensive battle, as it takes alot of
time & resources.
I would put the blame for this one on the CLR team - all .Net apps appear to
suck memory like they're beind the proverbial green door and the customer is
flashing cash. There's no reason for this, and it makes everyone who builds
apps using .Net look terrible.
Some guy builds a decent IM client in Delphi and it runs in like 2 megs of
memory. I build "hello world" and it takes 50 megs - by the time I'm feature
comparable to the Delphi app, I'm up to 80 or so megs of memory. For an IT
department trying to decide on a standard, the decision is often made based
on that. We can talk about working set, heap size, performance counters,
page faults and the like until the cows come home, but the answer is right
there in task manager in the "Mem Usage" column, and that's the end of
it.... :(
--
Chris Mullins, MCSD.NET, MCPD:Enterprise, Microsoft C# MVP
http://www.coversant.com/blogs/cmullins