The Software Inventor's Patent Dilemma