That's bizarre....never heard of a private company going that overboard. They're in business to make a profit, so how does it help them to do that if they fire their "best programmer" for a minor screw-up or wearing the wrong tie?
Perhaps there were other issues involved in your friend's firing...it's not uncommon for folks to claim to be fired for "no good reason" when, in reality, there's a documented history of problems.
Most companies are pretty paranoid about firing anyone "for cause" without significant documentation...in this day and age, not documenting the firing process could easily lead to a suit from the fired employee.
And if they just "let the employee go" (instead of firing them for cause), then they're going to be paying out for unemployment.
In this state you can be fired for any or no reason at all unless you're in a protected group.