I read about automatic agreement to terms of service here on UX and how autochecking these checkboxes makes them void in court. On the other hand, requiring users to check them off every time they want to post has to be bad UX, not to mention cluttering the interface.
As with any legal contract, both sides, including the user, must agree (“assent”) to the terms and conditions offered with the online service in order to create a legally enforceable “agreement.” In addition, a user can demonstrate agreement in a variety of ways, either by words or by deeds, depending on the circumstances. Online, however, the line between these two categories can blur. Some service providers seek your agreement by requiring you to click the aforementioned “I Agree” button after being shown the agreement (i.e. a “clickwrap” agreement), whereas other service providers, alternatively, try to characterize your simple use of their website as your “agreement” to a set of terms and conditions buried somewhere on the site (i.e. a “browsewrap” agreement). There are many variations on these themes, such as mandatory checkboxes (“check this box to indicate your agreement to our terms and conditions”) or email notices (“by continuing to use our service, you agree to the recent modifications to our terms of service”).
But the problem starts if the one violating the contract is sued and brought to court. I think there are no legally binding way online to prove that you agreed to the service. The only reason is that your identity was not proven.
So in a sense - none of the above mentioned options are "legal".
There are two general types of agreements with online terms and conditions.
Explicit agreements are generally enforceable. These are usually in the form of checking a box that says you agree, or by clicking a button that says you agree.
Implicit agreements are unenforceable and have no legal weight. These are when you have something that says "by signing up for this account you agree to the terms and conditions" or something similar. Zappos and a large legal team recently found this out the hard way.
There's never a simple answer because there's a lot more involved when it comes to legal agreements. And most people don't understand the intentional complications of legal language, which is why it's utilized. Agreeing to something doesn't always automatically include or bind all parties (developers, hosts, corporations...etc).
Quote: "As with any legal agreement both sides agree...". Nothing could be further from the truth. Legal language is used for one purpose, to deceive and confuse. Every word usually matters and if you read the majority of language used in online legal agreements you'll see plenty of "I agree" or "You agree". You almost never see "We agree". And that's a problem since one sided legal agreements aren't supposed to exist. But they do.
Sometimes the term "covenant" is used to get around the normal legal restrictions of a contract. Simply using the word "covenant" instead of "contract" allows one party to legally bind the other while allowing themselves to escape liability for any fraud, wrongdoing or other acts that would normally invalidate or nullify a legal contract.
But online agreements are usually just for show. Enforcing an online agreement that contains no signatures or proof of identity is next to impossible. An IP address is not enough to prove that a certain individual did in fact agree to online legal jargon.
Checking boxes is hardly a binding legal agreement. Especially since you can't show who actually checked the boxes. Friends use my computer all the time. Hackers can spoof IP addresses. The attempted enforcement of an online agreement would be interesting to watch play out in court.
You can post whatever legal mumbo jumbo you want online. Enforcing its validity is another matter.