Naming conventions are a great way to end up with liar-code--code that isn&#x27;t what it calls itself. Coercing user input into expected types is a good way to get exploits. Testing parameters explicitly is just asking for someone to forget a particular parameter, and just returning null instead of an error is how we end up with black-box functions that nobody can figure out why they get called in different places because they don&#x27;t seem to have any particular use. WSDL is a different issue entirely; now you&#x27;re talking about RPC (of which WSDL is just one format that .NET supports), which is not the same thing as reflection.<p>The things you&#x27;re talking about doing, they are bad software design.