Firstly, let me say I won't pretend to know anything about professional liability / indemnity, waivers, EULAs, contracts and the like.
I write scripts (primarily VBScript) for lots of things, and thousands have been posted here on EE for others to use and share. I have never really been concerned about liability with these scripts (or indeed other advice provided) because I figure (being open-source languages) that it always comes stamped with an implicit "use at your own risk" and "I accept no responsibility for any possible damages caused" kind of clause.
While I never really state these clauses in my scripts, I figure it must be covered by the Open Source Definition somehow.
But, if I were to rewrite one of those larger applications in a closed source .NET language, does that make me liable for the software I write? I don't have a registered business, so I'm a freelancer, and I don't have any written contracts either. Is it enough to have it in writing from my client that they will in no way hold me responsible for any damage incurred, whether financial or defamatory based on decisions made from the data, etc?
I'm really at a loss with how in depth I need to go with it. I'm in Australia, and my client is in the US, so I'm sure there's some difficult legal crossover there somewhere.
I guess I could register with a contractor, up my rates, but be covered by them, but I'm not sure whether that's just too complex.
Any advice I could get, even from some freelance programmers, would be great.