<div dir="ltr">Tino, dude, I'm afraid I lied about my previous post being the last word.  There are some things you said here that must be addressed.<br><br><div class="gmail_quote">On Sun, Sep 28, 2008 at 6:00 AM, Tino Wildenhain <span dir="ltr"><<a href="mailto:tino@wildenhain.de">tino@wildenhain.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="Ih2E3d">Michael Mabin wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I'm exhausted, so I'll just shut up about this after a few final words.<br>
</blockquote>
<br></div>
Thank you for your time :-)<div class="Ih2E3d"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
1.  "edits" is used in data warehousing to describe data scrubbing or filtering of fields in records that are used as input sources for loading into data warehouses. It's a term that goes way back to batch processing on the mainframe, so it's been used this way for a long time. Sometimes we use 'validation' interchangeably with 'edit' but our use of validation usually involves a check of input data against business rules and not type or range checking which we consider 'edits'.  So maybe you're not used to hearing the term used this way, but it is a variation perhaps of what you're used to.<br>

</blockquote>
<br></div>
And so on and so on in the regular top posting manner</blockquote><div><br></div><div>I thought I was clearing up your statement that "there is no such thing as edits" and then you went on  about not knowing what I meant by "edits" .  Why do you dismiss my effort to clarify a point you were clearly wrong about?</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">...<br>
<br>
Just to give you some thoughts again: your solution might be valid for<br>
you in your controlled environment. Yet you just presented it to the<br>
OP without telling him the limits of when this can be used. And this<br>
is outright dangerous. If one sees this without comment and without your<br>
background she will run into problems sooner or later. So my suggestion<br>
was to either don't tell people such solutions at all or tell them<br>
exactly under which circumstances they might be used.<br></blockquote><div><br></div><div>Outright dangerous?  Again, you're assuming the OP's problem involved user input from a web-page.  I was addressing the stated requirement of the problem.  You can't automatically assume that this problem is related to input from a web-page.  Why should I code in a manner that I will never encounter?  Maybe instead of suggesting that my recommendation is outright dangerous, you yourself might suggest the caveats.  Again, most of my experiences lie within the batch environment, but I shouldn't have to qualify my suggestions with 'this is what we do in the batch environment'.  On a mailing list, people are free to point out the limits of my recommendation, but that doesn't necessarily disqualify my recommendation.</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
Still I think nailing the problem at the apropriate place is a habit<br>
which should generally devloped - as in your example an additional<br>
int() would have fixed it - but still it would not work if you<br>
want to deal with arbitrary strings. So its good to make suggestions<br>
but pretty please think ahead how someone would use it instead of<br>
investing all your energy into defending dangerous programming practice.</blockquote><div> </div><div>Again, danger is in the eye of the beholder and the hands of the user and determined mostly by the circumstances.  A code generator written in Python is going to be subject to all kinds of programming considerations that are different from those in web applications.   </div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
With "we in python" I referred to a fairly amount of literature about<br>
programming in python and it design patterns. Nothing me personally.<br></blockquote><div><br></div><div>I wasn't aware that we are what has been written or what we have read.  I thought we refers to people.  Though this sounds a lot like religion. And maybe I am guilty of heresy.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
Ah and some final words to the controlleness of datawarehouse<br>
applications and similar things: by the time you are designing such<br>
a solutuion you will never know what future applications will be<br>
developed around it so its always best to be prepared.<br></blockquote><div><br></div><div>Huh? What are you talking about?</div><div>   </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<br>
"Data scrubbing" seems a common idea but in fact its very hard to do<br>
it right due to the nature of different systems using different<br>
quoting logic. "Dont trust your input" is a habit not only applicable<br>
to web programming - in fact the company I work for does not do much<br>
web application but input validation is something we get even audited<br>
for.<br></blockquote><div><br></div><div>"We" are always mindful of the problems "data scrubbing" entails.</div><div><br></div><div>Data scrubbing depends on the requirements, like everything else.  And of course, it goes without saying that you should not trust your input, that you should check and validate where appropriate.  </div>
<div>  </div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
Nevertheless I wish you a very good weekend :-)<br><font color="#888888">
<br>
Tino<br>
<br>
</font></blockquote></div><br>Peace.<div><br></div><div>Michael<br clear="all"><br>-- <br>| _ | * | _ |<br>| _ | _ | * |<br>| *  | * | * |<br>
</div></div>