Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Yet Another Web Application Mess...

0 views
Skip to first unread message

nuklea

unread,
Aug 29, 2005, 10:57:45 PM8/29/05
to
Face it, every day there is another framework coming out for web
application contruction. We developers all know that all of them are
not easy to learn. Each new framework be it struts, tiles, ajax, flex,
and all those variants are one way or another introduced another
concept. Their intentions are to make web application easier to
maintain but in reality a huge development effort introduced at all of
the application lifecycle. We know that web application is not meant to
be user friendly. Web application or application based on browser is
not meant to be user friendly because the browsers are not meant to
support complex user interface. Web application is for wider and
broader audiences. That is all about it. Why then developers are still
hacking their life away trying to make web application have rich user
interface? Is it because they are having nothing better to do ? On the
contrary, it is because they are driven by the users or business that
have no faintest idea about the browser limitation. It is time the
developer or system designer to tell the user that to truely attain
rich user interface they have to dump the browsers. It is time to go to
Swing or SWT based application. Switching to Swing or SWT will save
business lots of money in the contruction, maintain and support. Most
mission critical applications within the enterprise are not meant to be
used outside the company anyway and why build it like that?
I have worked on a project that a client want to turn a Swing
application to be a web application just for one user who happened to
be worked mostly from home. After a brief consultation with the client
it was concluded that it was a bad idea. The rich user interface has to
be watered down, the web server, application server, security
ramification, not mentioning hardwares and network usages, and all
those stuffs that come with web application package. The development
cost can easily double or triple the cost of building a Swing or SWT
based application. It is time to stop building complexity into a web
application that is not meant to be.

gerr...@yahoo.com

unread,
Aug 30, 2005, 12:56:15 AM8/30/05
to
Inefficient WebApps exist for the same reason why many people like to
spend their next 4 weekends painting their house with primitive inferior
tools that they got at the Home Depot (after watching some show on the
Home & Garden Channel), while a professional painting crew can do a much
better job in 2 to 3 days.

Efficiency (*user's* efficiency that is) has suffered the most from
these HTML/JavaScript type apps, but large businesses are pushing their
customers to serve themselves (login and use a dumb webApp), and could
care less about the customer's efficiency. The most important factor
they consider is their customers reach (i.e., no Java Plugin required).
This is no different than making their customers suffer by queuing
them into some stupid automated phone system for 35 minutes before
reaching a human being. Small businesses are just monkies that like to
mimic large businesses as that makes them look bigger! And governments,
... well ... let's just say Inefficient Dumb HTML WebApps are now the
fashion!

So, long live the WebApp frameworks!!!!! and specially those XML
configuration/mapping/screwing/... files that go with them!

da...@yamoo.com

unread,
Aug 30, 2005, 3:23:52 AM8/30/05
to
One big advantage of web applications is that it's
very low-impact to release updates.

After updating the server, all users in your company
instantly have the new version with no action from
their part.

Imagine having to update a Swing application on
every workstations in your company each time
an update is released ...

Roedy Green

unread,
Aug 30, 2005, 5:18:40 AM8/30/05
to
On 29 Aug 2005 19:57:45 -0700, "nuklea" <nuk...@my-deja.com> wrote or
quoted :

> It is time the
>developer or system designer to tell the user that to truely attain
>rich user interface they have to dump the browsers.

the thing that is so crazy is code I wrote for DOS back in the early
80 to do data entry sorts of applications can still run circles around
anything you do with thin client.

You got on the keystroke validation of things like phone numbers,
zips, states, provinces, amounts, codes.

The program could guide you though a complex form hiding the parts
that is discovered did not apply to you, or revealing extra parts, all
in the twinkling of an eye. None of this waiting 5 seconds to find
out about a error you keyed 40 seconds ago.

I think the key will be shipping compressed serialiased objects back
and forth between client and server. The client fully handles data
entry and validation on a keystroke level.

In addition you will have generic clients. You send them a descriptor
of an object and they dynamically compose a program to display and
edit it based on a style sheet.

Common business objects will become primitives, e.g. global address,
global phone number. It will not be the programmer's concern even
what fields are in there. It will be that class's concern alone that
Germans have a two part zip code. It will be that class's concern
alone to validate Canadian postal codes for
Letter-digit-letter-digit/Letter-Digit pattern, with some digits and
letters illegal. It is ridiculous that every business app starts from
scratch, and does a half-assed job of it. Remember the bad old days
when every one wrote their own Calendar class specifically different
for every app! It is just as silly for business logic.

An address will be treated atomically, perhaps displayed in
different ways depending on how much print or screen real-estate is
available.

--
Canadian Mind Products, Roedy Green.
http://mindprod.com Again taking new Java programming contracts.

Ingo R. Homann

unread,
Aug 30, 2005, 5:48:47 AM8/30/05
to
Hi,

Roedy Green wrote:
>... in the early 80...


> It will be that class's concern alone that
> Germans have a two part zip code.

Note that this was true in the early 80es but is no longer true since...
ah... the late 80es.

SCNR,
Ingo,
33615 Bielefeld

nuklea

unread,
Aug 30, 2005, 7:55:34 AM8/30/05
to
You don't need to have a Swing app at the user station. You can serve a
swing app with the java web start or you can have a it residing at a
shared drive.

Roedy Green

unread,
Aug 30, 2005, 9:58:03 PM8/30/05
to
On Tue, 30 Aug 2005 00:56:15 -0400, "gerr...@yahoo.com"
<gerr...@yahoo.com> wrote or quoted :

>care less about the customer's efficiency.

oh my goodness. How many websites have demanded my phone number and
address keyed in some unique form, yet not a one has ever phoned me or
written me a letter.

Web folk collect info they don't need.

Surely that sort of info could be given automatically in lump as an
electronic business card, like a vCard.

Think what happens when your email, phone number or mailing address
changes. You must manually notify hundreds of websites, all with
unique ways of accepting the info.

But that does not matter. This is CUSTOMER labour.

Ditto install programs that ask a question every 3 minutes for several
hours. They must be babysat. But since the customer is doing it, who
cares?

Roedy Green

unread,
Aug 30, 2005, 9:58:29 PM8/30/05
to
On Tue, 30 Aug 2005 09:23:52 +0200, da...@yamoo.com wrote or quoted :

>Imagine having to update a Swing application on
>every workstations in your company each time
>an update is released ...

JAWS!

gerr...@yahoo.com

unread,
Aug 30, 2005, 10:59:58 PM8/30/05
to
> the thing that is so crazy is code I wrote for DOS back in the early
> 80 to do data entry sorts of applications can still run circles around
> anything you do with thin client.
>

Even Telnet based clients running some Text UI based Wyse/VTxxx
emulation on a *28K* modem outperform dumb webApps over broadband in
both performance (although they send each keystroke back to the server
as it is typed) and user efficiency (proper intelligence, stateful
interaction).

How, we programmers, have allowed this sort of humiliation to our
professional standards is beyond me! :-) It's no different than asking
today's architects to design and build colorful tents as our next
generation housing standard. Hey, they're light weight and can easily
be patched when they're torn!!!

Monique Y. Mudama

unread,
Aug 30, 2005, 11:35:24 PM8/30/05
to
On 2005-08-31, Roedy Green penned:

>
> Think what happens when your email, phone number or mailing address
> changes. You must manually notify hundreds of websites, all with
> unique ways of accepting the info.

May I chime in with my current pet peeve? Sites that use my email
address as my username. As if this is some sort of permanent
identifier. My own email address changes rather infrequently, since I
have my own domain, but so many people switch email addresses every
time they switch ISPs! I'm paying for a yearly mailsnare.net
subscription just because I have some accounts using that address ...

--
monique

Ask smart questions, get good answers:
http://www.catb.org/~esr/faqs/smart-questions.html

jan V

unread,
Aug 31, 2005, 9:25:09 AM8/31/05
to
> How, we programmers, have allowed this sort of humiliation to our
professional standards is beyond me!

Because the vast majority of programmers

a) lick the boots of their managers/bosses, even if those boots are coated
with shit

b) don't have the guts to step back and say "Hang on a sec, does this really
make sense?"

c) don't have the spine to tell their managers that they (poiltely) refuse
to work on a nonsensical architecture or project

It takes guts to be honest and true to rational & critical thinking. Too
many are just cowards, prefering to collect their monthly pay cheques and
keep a low profile. It's a very, very sad state of affairs, but it's the
plain and simple truth.


jan V

unread,
Aug 31, 2005, 9:29:53 AM8/31/05
to
> oh my goodness. How many websites have demanded my phone number and
> address keyed in some unique form, yet not a one has ever phoned me or
> written me a letter.
>
> Web folk collect info they don't need.

This is due to a failure in requirements gathering and, essentially, proper,
controlled pre-implementation analysis.

You can just imagine the poor web developer staring at the flimsy single A4
requirements doc, and then start improvising and extrapolating ... "Hmm.. I
guess this system could use the user's email address too... hmm... and
birthday... oh, and annual income... could come in handy at some point.
That's going to be a nice fat form. Right, better start coding before I
discover any more must-have fields"


jan V

unread,
Aug 31, 2005, 9:33:39 AM8/31/05
to
> One big advantage of web applications is that it's
> very low-impact to release updates.
>
> After updating the server, all users in your company
> instantly have the new version with no action from
> their part.

In Belgium the powers that are (arseholes) decided to let the populus fill
in their tax returns via the web. It's a good thing that releasing updates
is "very low impact", as you put it, because the system still doesn't work
properly several months after initial launch. If the state had gone for a
Swing-based Java app, the whole thing would probably have been written in a
quarter of the time, for less taxpayers' money.


Oliver Wong

unread,
Aug 31, 2005, 3:43:02 PM8/31/05
to

"jan V" <n...@nul.be> wrote in message
news:VciRe.182611$YM4.10...@phobos.telenet-ops.be...

> Because the vast majority of programmers
>
> c) don't have the spine to tell their managers that they (poiltely) refuse
> to work on a nonsensical architecture or project
>
> It takes guts to be honest and true to rational & critical thinking. Too
> many are just cowards, prefering to collect their monthly pay cheques and
> keep a low profile. It's a very, very sad state of affairs, but it's the
> plain and simple truth.

I think this last point is very unfair. I need my paycheck to support my
family and pay my rent. When my manager comes to me with a project that
doesn't make sense, I do very politely tell him that the architecture
doesn't make sense and I recommend certain changes. Sometimes he accepts
these changes and all is well. Other times, he doesn't (usually because the
clients themselves want it that specific way). In that case, I just go ahead
and do it exactly the way they want.

It has nothing to do with dishonesty or being a coward; if the client
wants something a certain way, and if they are the ones paying for it, then
you just go ahead and do it the way they want it.

If the clients asks me to murder someone, then I'll refuse even if that
means I'll get fired. But if the clients ask for a program that is
intentionally slow, hard to maintain and buggy, then it's not beneath me to
give them exactly what they want.

- Oliver


jan V

unread,
Sep 1, 2005, 6:52:17 AM9/1/05
to
> > It takes guts to be honest and true to rational & critical thinking. Too
> > many are just cowards, prefering to collect their monthly pay cheques
and
> > keep a low profile. It's a very, very sad state of affairs, but it's the
> > plain and simple truth.
>
> I think this last point is very unfair. I need my paycheck to support
my
> family and pay my rent. When my manager comes to me with a project that
> doesn't make sense, I do very politely tell him that the architecture
> doesn't make sense and I recommend certain changes. Sometimes he accepts
> these changes and all is well. Other times, he doesn't (usually because
the
> clients themselves want it that specific way). In that case, I just go
ahead
> and do it exactly the way they want.

Exactly my point. You are part of the problem. You exhibit the cowardly
behaviour I outlined. Your excuses ("if the client wants something a certain
way..") are completely unprofessional. In part because it gives our
profession a bad name.

Recently I attended an interview where the senior software manager admitted
that 70% of all their projects end up producing "shelfware"; software that
sits on a shelf, collecting dust. I thought this guy was the pits for being
pivotally involved with such a long-term instutionalization of waste. It is
a disgrace. The company offered me the job, I declined to become part of
their nonsense outfit. Any self-respecting professional would do the same.

> If the clients asks me to murder someone, then I'll refuse even if
that
> means I'll get fired. But if the clients ask for a program that is
> intentionally slow, hard to maintain and buggy, then it's not beneath me
to
> give them exactly what they want.

The mercenary attitude is despisable in all walks of life. It's mercenaries
like you who help build systems which cost taxpayers phenomenal amounts of
money (remember the Y2K scandal), and which cause phenomenal amounts of
frustration, disruption, and downright damage.... and all because of the
age-old argument "I've got a family to feed, you know.". I've got no doubt
you could still *feed* your family by raising your ethical professional
standards and *not* be part of the problem.


Giovanni Azua

unread,
Sep 1, 2005, 8:04:45 AM9/1/05
to

"jan V" <n...@nul.be> wrote

> Exactly my point. You are part of the problem. You exhibit the cowardly
> behaviour I outlined. Your excuses ("if the client wants something a
> certain
> way..") are completely unprofessional. In part because it gives our
> profession a bad name.
>
Is anywhere the "Customer is always right" concept in your head?
Supppose you are a freelancer, top Software Engineer, and you are asked
by your most loyal customer to build something that is slightly out of your
super-hero-ego spectrum, then you would say ohhh no, I will not do the
job because it is against my super-hero-ego? come on give me a break!

> Recently I attended an interview where the senior software manager
> admitted
> that 70% of all their projects end up producing "shelfware"; software that
> sits on a shelf, collecting dust. I thought this guy was the pits for
> being
> pivotally involved with such a long-term instutionalization of waste. It
> is
> a disgrace. The company offered me the job, I declined to become part of
> their nonsense outfit. Any self-respecting professional would do the same.
>

This is a very different situation than what Oliver was talking about.

Regards,
Giovanni


gerr...@yahoo.com

unread,
Sep 1, 2005, 9:04:52 AM9/1/05
to
Giovanni Azua wrote:
> "jan V" <n...@nul.be> wrote
> ...

> Is anywhere the "Customer is always right" concept in your head?
> Supppose you are a freelancer, top Software Engineer, and you are asked
> by your most loyal customer to build something that is slightly out of your
> super-hero-ego spectrum, then you would say ohhh no, I will not do the
> job because it is against my super-hero-ego? come on give me a break!
> ,,,

Perhaps you can refer to the original post. No, here is a direct quote
from the original poster:

"I have worked on a project that a client want to turn a Swing
application to be a web application just for one user who happened to
be worked mostly from home. After a brief consultation with the client

it was concluded that it was a bad idea.".

That's professionalism, not "super-hero-ego" as you put it.

jan V

unread,
Sep 1, 2005, 9:18:13 AM9/1/05
to
> Is anywhere the "Customer is always right" concept in your head?

I know the concept, and I think it's a ridiculous concept. It's the same as
saying "I'll create anything provided the money is right." This attitude
leads to gross abuses of power (in both directions of the
customer-contractor relationship), and often leads to completely useless
systems. If you advocate "Customer is always right" then you know very
little about the requirements gathering stage of the project lifecycle. I
suggest you read up on some modern texts on requirements
gathering/management/engineering... and you will see that that professional
attitude is most definitely not a blanket "Customer is always right".

> Supppose you are a freelancer, top Software Engineer, and you are asked
> by your most loyal customer to build something that is slightly out of
your
> super-hero-ego spectrum, then you would say ohhh no, I will not do the
> job because it is against my super-hero-ego? come on give me a break!

Egos don't come into it, if you're a professional. If you're a professional,
you suppress your ego so that you can do the proper thing... and that means
following [software engineering] rules and procedures, without letting your
ego, or your customer's ego, get in the way to producing a successful
solution for the problem at hand.


Giovanni Azua

unread,
Sep 1, 2005, 9:18:46 AM9/1/05
to
<gerr...@yahoo.com> wrote

> Perhaps you can refer to the original post. No, here is a direct quote
> from the original poster:
>
> "I have worked on a project that a client want to turn a Swing
> application to be a web application just for one user who happened to
> be worked mostly from home. After a brief consultation with the client
> it was concluded that it was a bad idea.".
>
> That's professionalism, not "super-hero-ego" as you put it.
>
I was refering to the examples coming after the original post.
I agree it is professional to immediately identify and suggest to
the customers from doing a wrong decision BUT something
very different is the customer even being aware of the issue
and asking especifically for it? will you say no?

e.g.

Lets extend a bit the case quoted by you. The customer says yes
he agrees a Swing Application will do better the job but still he insists
he wants the thin client web application and he will be paying you
half million USD? Are You going to say no? ok if you just won
the lottery and develop software for fun, then you don't even
have customers ...

Regards,
Giovanni


Giovanni Azua

unread,
Sep 1, 2005, 9:57:40 AM9/1/05
to
Hi,

Kind of out of topic, is there any exhaustive comparison
of Java Web Application Frameworks including more
than just a ppt with overall differences?

I would like to find:

- The same project with some level of complexity developed
using each existing different Web Framework.

- Use code metrics to estimate the maintainability of each
different implementation. Possibly including stats on lines of
functional vs framework-specific non-functional concerns code.

- Time required to a) add a new functionality b) modify existing

- Exhaustive comparison matrix including all possible features and
whether each Web Framework includes it and if not how to
workaround it.

If this does not exist wouldn't it be a great candidate for a
meta- open source project? :)

Regards,
Giovanni


gerr...@yahoo.com

unread,
Sep 1, 2005, 10:27:25 AM9/1/05
to
Giovanni Azua wrote:
> I was refering to the examples coming after the original post.
> I agree it is professional to immediately identify and suggest to
> the customers from doing a wrong decision BUT something
> very different is the customer even being aware of the issue
> and asking especifically for it? will you say no?
>
> e.g.
>
> Lets extend a bit the case quoted by you. The customer says yes
> he agrees a Swing Application will do better the job but still he insists
> he wants the thin client web application and he will be paying you
> half million USD? Are You going to say no? ok if you just won
> the lottery and develop software for fun, then you don't even
> have customers ...
>
> Regards,
> Giovanni
>
>

Prostitution is indeed practiced in evey field, software development is
no exception. However, once you violate your professional standards, you
are no longer qualified (not technically, but ethically). In other
fields, such as medical, legal or civil engineering, you'd loose your
license, I'm sure you'd find a surgeon who would amputate someone's
perfectly healthy legs if she/he's offering a half million USD and a
written statement relieving the surgen from all liabilities. However,
that surgeon would become a real estate investor the next morning! :-)
Yet, the client also has the option of going offshore and get the
amputation done for 10% of the price :-D

Giovanni Azua

unread,
Sep 1, 2005, 11:03:53 AM9/1/05
to

<gerr...@yahoo.com> wrote

>> Lets extend a bit the case quoted by you. The customer says yes
>> he agrees a Swing Application will do better the job but still he insists
>> he wants the thin client web application and he will be paying you
>> half million USD? Are You going to say no? ok if you just won
>> the lottery and develop software for fun, then you don't even
>> have customers ...
>>
> Prostitution is indeed practiced in evey field, software development is no
> exception. However, once you violate your professional standards, you are
> no longer qualified (not technically, but ethically). In other
If the example I gave above means prostitution to you, then
you are really sick ... there is a very fundamental difference:

- There is no lie nor scam to the customer, no fake orgasm :-)
since it was stated at the very beginning that this was not the
most appropriate solution.
- Assuming the application content is ethically appropriate, you
are not doing any non-ethical work, just a web application.

> fields, such as medical, legal or civil engineering, you'd loose your
> license, I'm sure you'd find a surgeon who would amputate someone's
> perfectly healthy legs if she/he's offering a half million USD and a
> written statement relieving the surgen from all liabilities.

This is a completely non-sense comparison example :-P

Regards,
Giovanni


Oliver Wong

unread,
Sep 1, 2005, 11:25:15 AM9/1/05
to

"jan V" <n...@nul.be> wrote in message
news:B3BRe.183284$DM4.10...@phobos.telenet-ops.be...

>> > It takes guts to be honest and true to rational & critical thinking.
>> > Too
>> > many are just cowards, prefering to collect their monthly pay cheques
> and
>> > keep a low profile. It's a very, very sad state of affairs, but it's
>> > the
>> > plain and simple truth.
>>
>> I think this last point is very unfair. I need my paycheck to support
> my
>> family and pay my rent. When my manager comes to me with a project that
>> doesn't make sense, I do very politely tell him that the architecture
>> doesn't make sense and I recommend certain changes. Sometimes he accepts
>> these changes and all is well. Other times, he doesn't (usually because
> the
>> clients themselves want it that specific way). In that case, I just go
> ahead
>> and do it exactly the way they want.
>
> Exactly my point. You are part of the problem. You exhibit the cowardly
> behaviour I outlined. Your excuses ("if the client wants something a
> certain
> way..") are completely unprofessional. In part because it gives our
> profession a bad name.

Maybe you could give me your definition of unprofessional (or
equivalently, your definition of professional), as I don't see how what you
call my "excuses" as being unprofessional.

Let's say you're a chef, and your customer asks you to make an omelette,
and then asks you to put some ketchup on the omelette, and let's say that in
your opinion, omelettes shouldn't have ketchup on them. Are you doing to
refuse to put ketchup on the omelette because doing so is beneath your
standards, or are you going to do it because that's what the customer asked
you to do?

I would think that the chef who refuses to put ketchup on the omelette
is far more unprofessional than the one who does. The refusing chef has some
sort of diva complex, thinking himself to be far more important than he
really is.

> Recently I attended an interview where the senior software manager
> admitted
> that 70% of all their projects end up producing "shelfware"; software that
> sits on a shelf, collecting dust. I thought this guy was the pits for
> being
> pivotally involved with such a long-term instutionalization of waste. It
> is
> a disgrace. The company offered me the job, I declined to become part of
> their nonsense outfit. Any self-respecting professional would do the same.

I don't think the statement "Any self-respecting professional would do
the same." is universally true. As a counter example, I consider myself to
be a self-respecting professional, and I would not have done the same as
you.

>> If the clients asks me to murder someone, then I'll refuse even if
> that
>> means I'll get fired. But if the clients ask for a program that is
>> intentionally slow, hard to maintain and buggy, then it's not beneath me
> to
>> give them exactly what they want.
>
> The mercenary attitude is despisable in all walks of life. It's
> mercenaries
> like you who help build systems which cost taxpayers phenomenal amounts of
> money (remember the Y2K scandal), and which cause phenomenal amounts of
> frustration, disruption, and downright damage.... and all because of the
> age-old argument "I've got a family to feed, you know.". I've got no doubt
> you could still *feed* your family by raising your ethical professional
> standards and *not* be part of the problem.

My understanding of mercenary is that it means to be solely motivated by
money (Dictionary.com agrees with me:
http://dictionary.reference.com/search?q=mercenary). The example I stated
where I said I wouldn't murder someone for money specifically shows that my
attitude is not mercenary in nature.

It's very easy to bash Y2K in hindsight. When programs with the Y2K bug
were written, it was around 20 or 30 years before the year 2000, and no
program had been older than 10 years old by then, the vast majority of them
being barely a year old. It seemed to be a statistical anomally that any
program would last for 30 years.

Furthermore, there was a major memory problem back then. A savings of 2
bytes was a big savings money wise.

When a customer asks you to write a calendar program for them, do you
ensure that it will display valid dates back until the known age of the
universe, and infinitely forward? Do you invest in several millions of
dollars to build some sort of hot-swappable RAM architecture so that when
you 2 GBs of RAM isn't enough to hold the date far enough into the future,
you can swap it in for 4 GBs of RAM without rebooting the system? Do you
then write a x86 emulator so that the user can also run his favorite Windows
applications on your new architecture? No, it simply doesn't make business
sense because the amount of money it'll cost to fix this problem now is too
large compared to how much it'll cost to fix it when the problem actually
arises.

I think you're of the mentality that software engineers are like
unapproachable wizards or oracles who live in their ivory towers to whom
even kings must bow down in order to consult with their sage advice. Then
when people like me come along who help out the local villagers with
whatever problems they have, without all the mysticism and the "You are not
noble enough to have earned my help" pretentiousness, you complain that I'm
lowering the standards of wizardry and giving wizards a bad name.

- Oliver


gerr...@yahoo.com

unread,
Sep 1, 2005, 11:35:00 AM9/1/05
to
Giovanni Azua wrote:
> <gerr...@yahoo.com> wrote
>
>>>Lets extend a bit the case quoted by you. The customer says yes
>>>he agrees a Swing Application will do better the job but still he insists
>>>he wants the thin client web application and he will be paying you
>>>half million USD? Are You going to say no? ok if you just won
>>>the lottery and develop software for fun, then you don't even
>>>have customers ...
>>>
>>
>>Prostitution is indeed practiced in evey field, software development is no
>>exception. However, once you violate your professional standards, you are
>>no longer qualified (not technically, but ethically). In other
>
> If the example I gave above means prostitution to you, then
> you are really sick ... there is a very fundamental difference:

I'll have myself examined, thanks for the tip! :-)

Never heard of "Professional Prostitution"? The term is widely used in
the medical and engineering practices. A quick google search on "what
is professional prostitution" will supply you with a bit more info such as :

#1: http://www.reporter-archive.mcgill.ca/Rep/r3206/macklem.html
#2: http://ngin.tripod.com/090202a.htm

Main symptom of professional prostitution:
"If professional values fail, professional prostitution results."

Fake orgasm or not, your half million USD example is indeed professional
prostitution.

Giovanni Azua

unread,
Sep 1, 2005, 11:49:47 AM9/1/05
to

<gerr...@yahoo.com> wrote in message

>>>>Lets extend a bit the case quoted by you. The customer says yes
>>>>he agrees a Swing Application will do better the job but still he
>>>>insists
>>>>he wants the thin client web application and he will be paying you
>>>>half million USD? Are You going to say no? ok if you just won
>>>>the lottery and develop software for fun, then you don't even
>>>>have customers ...
>>>>
> Main symptom of professional prostitution:
> "If professional values fail, professional prostitution results."
>
Where is the violation of professional values?

> Fake orgasm or not, your half million USD example is indeed professional
> prostitution.
>

Why?

Regards,
Giovanni


Monique Y. Mudama

unread,
Sep 1, 2005, 11:56:55 AM9/1/05
to
On 2005-09-01, Oliver Wong penned:

>
> "jan V" <n...@nul.be> wrote in message
> news:B3BRe.183284$DM4.10...@phobos.telenet-ops.be...
>>
>> Exactly my point. You are part of the problem. You exhibit the
>> cowardly behaviour I outlined. Your excuses ("if the client wants
>> something a certain way..") are completely unprofessional. In part
>> because it gives our profession a bad name.
>
> Maybe you could give me your definition of unprofessional (or
> equivalently, your definition of professional), as I don't see
> how what you call my "excuses" as being unprofessional.
>
> Let's say you're a chef, and your customer asks you to make an
> omelette, and then asks you to put some ketchup on the omelette,
> and let's say that in your opinion, omelettes shouldn't have
> ketchup on them. Are you doing to refuse to put ketchup on the
> omelette because doing so is beneath your standards, or are you
> going to do it because that's what the customer asked you to do?
>
> I would think that the chef who refuses to put ketchup on the
> omelette is far more unprofessional than the one who does. The
> refusing chef has some sort of diva complex, thinking himself to
> be far more important than he really is.

Absolutely agreed.

Apparently Jan has never heard the expression, "The customer is always
right."

Monique Y. Mudama

unread,
Sep 1, 2005, 12:01:47 PM9/1/05
to
On 2005-09-01, gerr...@yahoo.com penned:

>
> Prostitution is indeed practiced in evey field, software development
> is no exception. However, once you violate your professional
> standards, you are no longer qualified (not technically, but
> ethically). In other fields, such as medical, legal or civil
> engineering, you'd loose your license, I'm sure you'd find a
> surgeon who would amputate someone's perfectly healthy legs if
> she/he's offering a half million USD and a written statement
> relieving the surgen from all liabilities. However, that surgeon
> would become a real estate investor the next morning! :-) Yet, the
> client also has the option of going offshore and get the amputation
> done for 10% of the price :-D

Give me a break.

If your problem domain is aerospace, flight, medical equipment, etc.
and your customer insists that you do something in a way that you know
will cause the system to fail, then yes, it is unprofessional to do it
that way.

If your problem domain is a tetris-style game, though, and your
customer asks you to make it an Applet when you think it would be
better implemented as a stand-alone app? Refusing to do this makes
you difficult, not professional.

Giovanni Azua

unread,
Sep 1, 2005, 12:02:34 PM9/1/05
to

"Monique Y. Mudama" <sp...@bounceswoosh.org> wrote

>> I would think that the chef who refuses to put ketchup on the
>> omelette is far more unprofessional than the one who does. The
>> refusing chef has some sort of diva complex, thinking himself to
>> be far more important than he really is.
>
> Absolutely agreed.
>
> Apparently Jan has never heard the expression, "The customer is always
> right."
>
Same :P

Whether they are genius so their bosses tolerate their whole
bunch of arrogance and eccentricity or they are bastardly rich who
have never had to work for a living.

Regards,
Giovanni

gerr...@yahoo.com

unread,
Sep 1, 2005, 12:25:51 PM9/1/05
to

When you knowingly and willingly participated in building a solution
that is not in the best interest of your client, you have violated your
professional values, regardless of the client's approval. Your were
bought with the client's money, and that constitutes nothing less than
professional prostitution. The fact that you fail to see the similarity
to someone asking a surgeon to amputate his legs for no good reason does
not surprise me.

gerr...@yahoo.com

unread,
Sep 1, 2005, 12:49:52 PM9/1/05
to
Monique Y. Mudama wrote:
>
> Give me a break.
>
> If your problem domain is aerospace, flight, medical equipment, etc.
> and your customer insists that you do something in a way that you know
> will cause the system to fail, then yes, it is unprofessional to do it
> that way.
>
> If your problem domain is a tetris-style game, though, and your
> customer asks you to make it an Applet when you think it would be
> better implemented as a stand-alone app? Refusing to do this makes
> you difficult, not professional.
>

The applet vs stand-alone example is somewhat weak, but your point is
well understood.

Suppose that instead of an Applet, the client wants it as an
HTML/JavaScript only webApp, that refreshes the page at least once every
second, downloading dynamically generated graphics from the server.
Where would do you draw the line that defines what redicoulous is? Say
now the client has put good $ on the table to get it done. Yes, it's
not rocket science, but it would clearly be unprofessional to accept.

Monique Y. Mudama

unread,
Sep 1, 2005, 1:15:44 PM9/1/05
to
On 2005-09-01, gerr...@yahoo.com penned:

I would do my damnedest to understand the problem they're trying to
solve and present to them a viable alternative.

If they still want to do it their way, and I believe that their way is
actually possible, then I wouldn't refuse. Refusing is basically saying
to the client that they're idiots who can't understand your
oh-so-complicated job. I don't think that's professional, either.
That being said, if you can communicate technical issues to
non-technical people effectively (which should be part of the job reqs
for anyone interacting with customers), it shouldn't get to this
point.

Oliver Wong

unread,
Sep 1, 2005, 1:30:53 PM9/1/05
to
<gerr...@yahoo.com> wrote in message
news:WWFRe.9309$xw1....@bignews6.bellsouth.net...

> When you knowingly and willingly participated in building a solution that
> is not in the best interest of your client, you have violated your
> professional values, regardless of the client's approval.

It is not up to the programmer to have the final say in what is in the
best interest of the client. If the programmer suspect that the solution may
not be optimal, she may explain why to the client, but it is the client
alone who has the responsibility of deciding what is best for the client.

- Oliver


Monique Y. Mudama

unread,
Sep 1, 2005, 1:47:21 PM9/1/05
to
On 2005-09-01, Oliver Wong penned:

Agreed. Anything else is patronizing.

gerr...@yahoo.com

unread,
Sep 1, 2005, 1:58:21 PM9/1/05
to
Oliver Wong wrote:
> It is not up to the programmer to have the final say in what is in the
> best interest of the client. If the programmer suspect that the solution may
> not be optimal, she may explain why to the client, but it is the client
> alone who has the responsibility of deciding what is best for the client.
>
> - Oliver

It's not an issue of responsibility, it's an issue of values and ethics.
When a programmer accepts a project knowing that it's a bad solution
for the client, then that's just a violation of professional values.
Not knowing what is good or bad solution for the client has a different
definition: incompetence.

Oliver Wong

unread,
Sep 1, 2005, 2:12:12 PM9/1/05
to
<gerr...@yahoo.com> wrote in message
news:DhHRe.9907$xw1....@bignews6.bellsouth.net...

> Not knowing what is good or bad solution for the client has a different
> definition: incompetence.

Not nescessarily. Sometimes the company I work with deals with very
secretive clients, or with the government. In situations like these, quite
often any questions about the environment that the product will run in are
met with "You shouldn't need to know that." In these cases, we don't know
for sure that the solution we're producing is the best (from a technical
perspective) one for the client's computing environment, but this has
nothing to do with incompetence.

I think you should make fewer generalizations. The way you phrase your
statements, you seem to be implying that they are universally true when that
is not the case.

- Oliver


jan V

unread,
Sep 1, 2005, 2:18:24 PM9/1/05
to

"Monique Y. Mudama" <sp...@bounceswoosh.org> wrote in message
news:slrndhefl...@home.bounceswoosh.org...

> On 2005-09-01, Oliver Wong penned:
> ><gerr...@yahoo.com> wrote in message
> >news:WWFRe.9309$xw1....@bignews6.bellsouth.net...
> >> When you knowingly and willingly participated in building a
> >> solution that is not in the best interest of your client, you have
> >> violated your professional values, regardless of the client's
> >> approval.
> >
> > It is not up to the programmer to have the final say in what is
> > in the best interest of the client. If the programmer suspect
> > that the solution may not be optimal, she may explain why to the
> > client, but it is the client alone who has the responsibility of
> > deciding what is best for the client.
> >
>
> Agreed. Anything else is patronizing.

Next time you go to the doctor with a serious problem, please, please ask
him to prescribe something *you* think will solve your problem. Then when
your chosen medication lands you into much deeper shit, please go complain
to your doctor for prescribing you something that made matters worse.

Maybe (thought I doubt it), this thought experiment will make you see the
light.


malu...@hotmail.com

unread,
Sep 1, 2005, 2:19:37 PM9/1/05
to
If everyone followed this principle, there would be a lot of very
proud, yet very unemployed programmers.

Monique Y. Mudama

unread,
Sep 1, 2005, 2:31:48 PM9/1/05
to
On 2005-09-01, jan V penned:

>
> "Monique Y. Mudama" <sp...@bounceswoosh.org> wrote in message
> news:slrndhefl...@home.bounceswoosh.org...
>>
>> Agreed. Anything else is patronizing.
>
> Next time you go to the doctor with a serious problem, please,
> please ask him to prescribe something *you* think will solve your
> problem. Then when your chosen medication lands you into much deeper
> shit, please go complain to your doctor for prescribing you
> something that made matters worse.
>
> Maybe (thought I doubt it), this thought experiment will make you
> see the light.
>

Your comparison of writing non-critical software to medicine is
insulting to doctors. They have to worry about people dying if they
make the wrong decision. That's completely different from the vast
majority of software projects. If a software project is critical,
then yes, refusing to do something that might cause the system to fail
is important. But for most projects, this simply isn't the case. The
worst that will happen is that customers will choose a different
product.

That being said, I do research my options and make suggestions to my
doctor. I have most certainly refused to take medicine and left a
practice before when I felt the doctor was trying to drug me without
actually paying attention to what was wrong. A different doctor
actually listened to me. The expert isn't always right.

Giovanni Azua

unread,
Sep 1, 2005, 2:34:54 PM9/1/05
to

<gerr...@yahoo.com> wrote in message

> When you knowingly and willingly participated in building a solution that
> is not in the best interest of your client, you have violated your
> professional values, regardless of the client's approval.
In your general verdict, there is a soft condition "solution
that is not in the best interest of your client" technically speaking
this is not something you can always exactly pinpoint, maybe e.g.
hidden/unknown variables as it was mentioned before.

Lowering down the example I made before, lets say that there
is no such half a million USD to remove the touch of suspiciousness
and possible convenience. Lets now put the company or developer
offers its customer the Swing App but the customer ask explicitly
for the thin web application ...

How can You define the line of difference between what the
customer *wants* and what the customer *needs* ? Sometimes is
obvious but here not ... there are no death bodies, no crime, no
threat as consequence of the choice made and most importantly
the developer/company has not made "Professional Prostitution"
but just satisfied that customer demand and made the customer
happy e.g. perhaps because the customer wants to hire more
data entry people in the near future and is just trying to be cautious.

Does "happy customers are returning customers" ring a bell to you? :)

I admit at the beginning I was very defensive and exceptical
about your arguments but now I see you much more positively :-)

Best Regards,
Giovanni


Monique Y. Mudama

unread,
Sep 1, 2005, 2:57:41 PM9/1/05
to
On 2005-09-01, Giovanni Azua penned:

>
>
> How can You define the line of difference between what the customer
> *wants* and what the customer *needs* ? Sometimes is obvious but
> here not ... there are no death bodies, no crime, no threat as
> consequence of the choice made and most importantly the
> developer/company has not made "Professional Prostitution" but just
> satisfied that customer demand and made the customer happy e.g.
> perhaps because the customer wants to hire more data entry people in
> the near future and is just trying to be cautious.
>

I don't see the negativity in this professional prostitution phrase,
anyway. Prostitutes are there to make their customers happy. It's
certainly been a viable profession far longer than software
development has.

Do you think a prostitute is going to say, "I know you say you want
this, but I don't think it's the best way to get you off, so I'm not
going to do it?" And why would saying that be a good thing?

Giovanni Azua

unread,
Sep 1, 2005, 3:30:27 PM9/1/05
to

"Monique Y. Mudama" <sp...@bounceswoosh.org>

> I don't see the negativity in this professional prostitution phrase,
> anyway. Prostitutes are there to make their customers happy. It's
> certainly been a viable profession far longer than software
> development has.
>
Accept prostitution as a "viable profession" for me is like e.g.
accepting as okay that someone kills his own mother for money, how
can it not be just plain horrible? for me is terrifying arriving to
equivalent
situations for not having values clear enough, small little mistake
and you are there on the wrong side that is why I started
appreciating gerrards's point of view.

> Do you think a prostitute is going to say, "I know you say you want
> this, but I don't think it's the best way to get you off, so I'm not
> going to do it?" And why would saying that be a good thing?
>

I would never trust and accept as "good thing" someone
willing to sell anything including its own body and dignity,
and I come from a country where economical and political
pressure takes the worst from each person.

I was trying to show at the beginning that they were being too
radical with those judgements, likely each one of us has
its own line of defining good from bad, I thought they were
on the very low tolerance side.

Best Regards,
Giovanni


gerr...@yahoo.com

unread,
Sep 1, 2005, 3:50:31 PM9/1/05
to
Monique Y. Mudama wrote:
> I don't see the negativity in this professional prostitution phrase,
> anyway. Prostitutes are there to make their customers happy. It's
> certainly been a viable profession far longer than software
> development has.

LOL

And that's exactly what it is... Make customers happy for the money,
regardless of ethical standards.

gerr...@yahoo.com

unread,
Sep 1, 2005, 3:50:35 PM9/1/05
to
malu...@hotmail.com wrote:
> If everyone followed this principle, there would be a lot of very
> proud, yet very unemployed programmers.
>

Not really... You're overlooking the "incompetence" factor! :-)

gerr...@yahoo.com

unread,
Sep 1, 2005, 3:50:40 PM9/1/05
to

Why is this so difficult to understand?

The line is usually very clear. If there is no clear advantage of one
solution over the other, then the issue does not exist. However, when a
customer insists on what you have determined to be the wrong solution,
then *you* make the choice between professionalism and business. I
doubt that the customer will ever come back should you decide on the
latter; perhaps the customer's lawyers will.

> I admit at the beginning I was very defensive and exceptical
> about your arguments but now I see you much more positively :-)
>
> Best Regards,
> Giovanni
>

I'm certainly glad you're taking this positively, specially when we're
discussing orgasms :-)

Monique Y. Mudama

unread,
Sep 1, 2005, 4:05:55 PM9/1/05
to
On 2005-09-01, gerr...@yahoo.com penned:

I don't see what why this sort of sex is considered unethical. I
wouldn't do it if I could avoid it, but then, I wouldn't work on an
oil rig or in retail either. Nothing to do with ethics.

Monique Y. Mudama

unread,
Sep 1, 2005, 4:06:37 PM9/1/05
to
On 2005-09-01, Giovanni Azua penned:
>>
> Accept prostitution as a "viable profession" for me is like e.g.
> accepting as okay that someone kills his own mother for money, how
> can it not be just plain horrible?

Right, consensual sex is just like matricide.

I think I'm done here ...

Oliver Wong

unread,
Sep 1, 2005, 5:14:40 PM9/1/05
to

"Monique Y. Mudama" <sp...@bounceswoosh.org> wrote in message
news:slrndhenp...@home.bounceswoosh.org...

> On 2005-09-01, gerr...@yahoo.com penned:
>> Monique Y. Mudama wrote:
>>> I don't see the negativity in this professional prostitution
>>> phrase, anyway. Prostitutes are there to make their customers
>>> happy. It's certainly been a viable profession far longer than
>>> software development has.
>>
>> LOL
>>
>> And that's exactly what it is... Make customers happy for the
>> money, regardless of ethical standards.
>
> I don't see what why this sort of sex is considered unethical. I
> wouldn't do it if I could avoid it, but then, I wouldn't work on an
> oil rig or in retail either. Nothing to do with ethics.

I'm with you 100% Monique. There is nothing inherently ethically wrong
with having sex with someone in exchange for money, especially when all
parties involved are consenting adults (in my opinion anyway).

Perhaps gerrards8 is from a culture where sex is considered to be
ethically bad. It doesn't make sense to me, as most people I've met owe
their existence to sex, but comp.lang.java.programmer is probably not the
place to debate the moralities of sex.

Much more likely, gerrards8 is using the term "professional
prostitution" for its shock value and to instill emotional (as opposed to
logical) responses.

At any rate, it has already been addressed why we believe that barring
any exceptional circumstances (e.g. developping buggy "nuclear-weapon
controls" software) there is nothing wrong with producing software according
to the client's specifications. Unless gerrards8 brings up new arguments
other than "doing what the customer wants == prostitution; prositution ==
bad; therefore by transitive property, doing what the customer wants ==
bad", we can probably let this discussion rest.

- Oliver


Monique Y. Mudama

unread,
Sep 1, 2005, 5:31:40 PM9/1/05
to
On 2005-09-01, Oliver Wong penned:
>
> Perhaps gerrards8 is from a culture where sex is considered to
> be ethically bad. It doesn't make sense to me, as most people
> I've met owe their existence to sex, but
> comp.lang.java.programmer is probably not the place to debate
> the moralities of sex.

True enough.

> Much more likely, gerrards8 is using the term "professional
> prostitution" for its shock value and to instill emotional (as
> opposed to logical) responses.
>
> At any rate, it has already been addressed why we believe that
> barring any exceptional circumstances (e.g. developping buggy
> "nuclear-weapon controls" software) there is nothing wrong with
> producing software according to the client's specifications.
> Unless gerrards8 brings up new arguments other than "doing what
> the customer wants == prostitution; prositution == bad;
> therefore by transitive property, doing what the customer wants
> == bad", we can probably let this discussion rest.

Good point. Sometimes it's hard for me to recognize when a debate has
devolved into a "You're Wrong!" "No, you're wrong!" situation. I'll
try to keep my mouth shut, er, my fingers from hitting send.

Giovanni Azua

unread,
Sep 1, 2005, 6:30:44 PM9/1/05
to

"Monique Y. Mudama" <sp...@bounceswoosh.org> wrote
> devolved into a "You're Wrong!" "No, you're wrong!" situation.
>
Actually you are wrong about that ... :-)

Patricia Shanahan

unread,
Sep 1, 2005, 6:54:34 PM9/1/05
to

Indeed. The final choice of a technology may depend on issues such as
business relationships between companies, legal opinions on
intellectual property law, and licensing terms.

The "Software Engineering Code of Ethics and Professional Practice" at
http://www.acm.org/serving/se/code.htm includes:

"2.01. Provide service in their areas of competence, being honest and
forthright about any limitations of their experience and education."

My experience and education qualify me as neither a lawyer nor a
business expert. As far as I can tell, it would be unethical for me to
try to override a decision made by managers who are responsible for
considering all the issues, not just my technical input.

Patricia

Scott Ellsworth

unread,
Sep 1, 2005, 6:57:33 PM9/1/05
to
In article <B3BRe.183284$DM4.10...@phobos.telenet-ops.be>,
"jan V" <n...@nul.be> wrote:

> > > It takes guts to be honest and true to rational & critical thinking. Too
> > > many are just cowards, prefering to collect their monthly pay cheques
> > > and keep a low profile. It's a very, very sad state of affairs, but it's the
> > > plain and simple truth.
> >
> > I think this last point is very unfair. I need my paycheck to support
> > my family and pay my rent. When my manager comes to me with a project that
> > doesn't make sense, I do very politely tell him that the architecture
> > doesn't make sense and I recommend certain changes. Sometimes he accepts
> > these changes and all is well. Other times, he doesn't (usually because
> > the clients themselves want it that specific way). In that case, I just go
> > ahead and do it exactly the way they want.


>
> Exactly my point. You are part of the problem. You exhibit the cowardly
> behaviour I outlined. Your excuses ("if the client wants something a certain
> way..") are completely unprofessional. In part because it gives our
> profession a bad name.

Nonesense.

The customer gets to call the shots, as they are paying us for our
services. We can wheedle, convince, harangue, but if we do not
convince, then we probably should implement the software the way the
person paying the bills wants. If it is utterly stupid, well, then
implement it in a way that is easy to change. Unless there is real risk
of physical harm, doing anything else is stealing.

Software is rarely life and death.

My wife worked for a city. They had firefighters and paramedics, and
software supporting them _did_ save lives. That software was pretty
carefully checked, because screwing it up could kill someone.

Software that let people type letters, send email, etc., was likely not
as important. It should work, but if it does not, the cost is not
death, and thus failure to test it as thoroughly does not indicate
malfeasance.

So, if someone asks for something dumb that might get someone killed,
then implementing dumb is immoral. If all they are wasting is money,
and it is their money to spend, then I am not sure immoral is the right
term.

As far as this cowardly behavior screed of yours, you might want to tone
it down. Once you get shrill, people stop listening and stop caring.

I remember when a Linux hothead managed to convince the entire IT staff
at one company I was with that Linux is only for young radicals who
hated Microsoft. He used words like 'cowardly', 'unprofessional', and,
in his case, 'evil'. This was not convincing to the IT staff.

Words like 'not cost effective', 'poorly tested', and 'expensive to
relicense each year' about MSSQL then fell on deaf ears for a long time
to come.

All because one twerp decided to say 'I cannot respect anyone who runs
windows, or maintains it. They are stupid, greedy, or both.' Not a
great way to convince a primarily Windows IT shop to look into an open
source alternative.

The same group was willing to look at the MacOS, because I did not tell
them they were fools. I did tell them it let me get more done because
of the underlying Unix layer.

Besides, often clients insist on a dumb idea for a reason. If they will
not or cannot tell me that reason, I may implement what they ask for, so
that its flaws can be exposed. After all, blowing a month on a several
year project to prove that a bad design is bad may be the only way to
convince people, and it may be the only way to get them to tell me why
they wanted the bad design in the first place.

Scott

--
Scott Ellsworth
sc...@alodar.nospam.com
Java and database consulting for the life sciences

steve

unread,
Sep 4, 2005, 6:07:05 AM9/4/05
to
On Tue, 30 Aug 2005 15:23:52 +0800, da...@yamoo.com wrote
(in article <qp18h1h7vqrvgg10e...@4ax.com>):

> One big advantage of web applications is that it's
> very low-impact to release updates.
>
> After updating the server, all users in your company
> instantly have the new version with no action from
> their part.
>
> Imagine having to update a Swing application on
> every workstations in your company each time
> an update is released ...

not a problem.

oracle database, preloader .
update part of app when user logs in.

thats what java is for.

0 new messages