Q:

Conditionals in the future

My colleague and I have a hot discussion about which is correct.
My version is:

If you don't fix the bug I will send you a patch.

and his one is:

I would send you a patch if you don't fix the problem.

Discussion context is: there is a bug in a project. I will send a patch in case that it will not be fixed this evening.
I've written mine following academic definitions of "future conditionals" and my colleague's version looks unnatural for me. So who is right? If neither - what would be a correct sentence?

A:

Yours is the correct option, but not because of clause order.  The main difference is that you use if ... then I will, and your friend uses I would... if.
Both the following are correct:

If you don't fix the bug I will send you a patch.
I will send you a patch if you don't fix the bug.

However, replacing the will with would makes either one incorrect, since the do in don't refers to an event which is likely to happen (known as First Conditional) and would refers to an event which is not likely to happen (known as Second Conditional).  Since you are referring to events which are likely to happen, you should use don't and will.  Otherwise you would use didn't and were.

A:

I have explained this elsewhere. I can’t find my comment, so I’ll (more or less) repeat it.
English has three basic types of conditional sentence. The First Conditional predicts a likely future event if the condition is fulfilled. The OP’s own sentence is an example:

If you don't fix the bug, I will send you a patch.

The Second Conditional expresses something unreal, unlikely or untrue. Using the OP’s same sentence this would be: 

If you didn’t fix the bug, I would send you a patch.

The Third Conditional expresses something that didn’t actually happen, as in:

If you hadn’t fixed the bug I would have sent you a patch.

Thus the OP’s version is an example of the First Conditional. Although combinations other than the three basic ones are certainly possible, the colleague’s version: 

If you don't fix the problem, I would send you a patch.

mixes the First Conditional and the Second Conditional in a way that is not normally found.

