That's not how it works. If you're familiar with the area, you might come up with an idea that improves it by 3%. If you have 9 of those ideas, you might get a 30% improvement. Where the ideas come from is serendipity combined with fertile ground.
It might be by analogy, a technique from a different domain, from similarity with something you did with lego blocks when you were 9 years old, from a mishearing when discussing something with a fellow developer, from ignorance of the known techniques in a particular area and trying to solve it from first principles, etc. You do need some familiarity and experience in the domain in order to recognize the utility of the novel technique. It might happen once to you, but it's unlikely to happen 9 times.
More importantly, it's also probably going to occur to someone else, sooner or later. New discoveries tend to be repeated, that's a common theme in the history of scientific and mathematical development. By advocating patents for these things, you suggest the mere chance of coming first means you get a government-granted right to extort from other people.
Your reductio ad absurdum does not accurately represent what I'm saying. I'm saying that you could possibly make software in a few minutes that could violate a patent. This is extremely unlikely with hardware of significant complexity to earn a patent.
I don't think I understand your argument. You said this:
> a software idea can be thought up in a few minutes and implemented in the same.
This is only true for trivial pieces of software. I agree with you that trivial pieces of software should not be patentable. But you're saying that no piece of software should be patentable, regardless of how complex or innovative it is, and there I strongly disagree.
There's too much room for error, if you let there be a line between what is and isn't patentable with respect to software. Better to leave it open and let the cards fall where they may. Software patents actively restrict technological development.
You both agree that there is major variation in how much "effort" goes into producing patentable work. Your problem is you want a very clear-cut definition specifying what is patentable, and since effort is hard to measure, you'd rather just throw out all patents. You assume this would be better than the current situation (which, I think, takes the other extreme - most things are patentable).
But why do you think the way you suggest is better? Just because the current system sucks?
Ultimately it would be better because it would eliminate patent trolling and foster software innovation. Right now a lot of innovation is hamstrung by software patents. I don't think any company should have the right to enforce what software someone makes, at all, ever.
Half of the tech industry with respect to software is finding something someone else is doing, and building on that but making it better.