Software patent problems