Lets say you have to write some code to fix a bug that on first glance by another engineer would seem weird or unnecessary.Would it be good or bad form to put the code in a method named for example preventWindowFromJumpingWhenKeyboardAppears or just name it forceSpecifiedWindowPosition and then add a comment about why you are doing this when calling the method?
Is it good or bad form to name a function after the workaround it fixes?
naming;methods
I think it's better to name methods based on what you are trying to accomplish rather than how, as part of the whole public interface / private implementation thing.  So, all else being equal, I would call it preventWindowFromJumpingWhenKeyboardAppears.  However, all else might not be equal.  Will the parameters make sense equally with both names?  If you have to pass the window position to forceSpecifiedWindowPosition it makes sense, but not so much for preventWindowFromJumpingWhenKeyboardAppears, which sounds like it would either be passed nothing or a window.  Also, if forcing the window position could be considered a side-effect (sounds like no - it's the effect you want) then preventWindowFromJumpingWhenKeyboardAppears would have results that might be unexpected from the name, so I wouldn't name it that.