Not on the little things - like failing in your current project, or having your home town team lose the world series. But in the big things that you have no control over - like whether your entire career and everything you've fought for over the past 10 years will be able to continue unhindered or whether you'll be ground underfoot by an IP troll or a member of the competition via some legal machinations.
I hate software patents. I hate them with a passion normally reserved for big screen villains. I hate them because they have absolutely nothing to do with what we do, but could nonetheless completely derail years of work and make it impossible to continue doing what we do.
Software patents keep me up at night.
The primary crime they commit is that they add no value whatsoever - I've never read a software patent and directly gained any value from a single one - yet they sit around like ticking time bombs waiting explode - but only against most vulnerable small business, large business have a lock-box of their own patents cross-license each other into submission.
They subvert the primary reason for the existence of patents in the first place - to promote innovation through disclosure of an invention. As they are written in a legal speak that is a completely separate language designed only to be read by judges and lawyers, how could any engineer possibly gain value from them? As they are written to be as broad as humanly possible how could anyone gain any insight into building anything concrete?
But it gets worse, because at least he had an implementation. Many times patents either start or end up in the hands of companies that have no intention of ever implementing any of the ideas obtusely described in their IP portfolios.
The closest analogy I can think of is that filling a software patent without implementing it yourself is like betting on a horse race, except the horse doesn't know it's involved in the race. It's just moving forward at full speed trying to get the finish. As the winner arrives exhausted to the finish line, the IP Troll looks down at their stack of patents and says, "Hey look at that! I bet on the winner." They didn't actually do any of the work, they weren't riding a horse in the race, they just had a few generic ideas and bought themselves a couple of patents counting on one to come in. But the IP Troll doesn't walk over to the ticket window to cash their winnings. They walk up to the winner and extract their winnings from the horse itself (in whatever gruesome manner you want to imagine)
Anyway, enough of the hyperbole. Just wanted to put down some of the thoughts going through my head as the Supreme Court heard Oral Arguments in the Bilski case yesterday. Early returns look promising - like maybe the scope of what can be patented might be reduced, but who knows? It's now in the hands of 9 black-robed individuals to decide their fate.
As a developer in any non-web language (Read: anything but HTML and CSS) there's pretty much only 1 hard and fast rule: it's not the compiler/interpreters fault. It's yours. One of the differences between a good programmer and a bad programmer is knowing that you can't blame to the tools for something that you did.
When I was just starting out in C, I remember being convinced on numerous occasions that the Turbo C compiler had a bug because my code **had** to be right - I'd double checked it a number of times - and there **had** to be a bug in the compiler. But there never was - it's pretty close to 100% of the time not compiler/interpreter/debugger's fault.
Except with CSS and IE/Opera/Safari/Firefox/Epiphany/Konquerer (insert your least-favorite browser here - I'm guessing IE, but that's just me.)
Browsers wouldn't just randomly double margins or change list items whitespace or not position objects correctly? Would they? Things are getting better as IE6 finally phases out, but that's also part of the problem - my memory of all the necessary IE6 hacks is starting to fade.
But it's still not perfect (is your browser 100/100 on the Acid3 - Firefox 3.5.5pre Ubuntu is still 93/100?) Since browsers still render things differently and react to the same code differently (and often all incorrectly according to the standard) - you have a situation where fairly often it's the language's fault. And since us programmer's are generally egotistical types, give me an inch of believing that it's not my fault and that will be my first conclusion half the time. Even if it turns out that it's just a darn missing semicolon; again.