Ho certamente provocato ma ne è nato un interessante confronto d'idee.
Come al solito non c'è una vera e propria morale in questo tipo di argomenti.
Usare un obfuscator non dà la sicurezza assoluta poichè chi è veramente determinato (ci vuole tempo e capacità) può dedurre il funzionamento del nostro software, se non ricompilarlo.
Lawrence predilige è dell'idea che la cosa migliore sia la protezione legale che ti da la licenza: lui è l'esempio che l'open source paga. ;-)
Se dovessi proteggere veramente il mio codice, cercherei una soluzione "funzionale" al problema, non una solamente tecnica.
Sviluppare l'applicazione come web app così da distribuirne solo l'interfaccia è una soluzione. Fornire i dati necessari al funzionamento solo online, tramite un webservice è un'altra strada.