Will the i5 work for these purposes or will the i7 be a better investment?
My son graduated from U.C. Davis last December with a degree in Software Engineering. All through college, and even now, he has used a Macbook Air with an (older) i5 processor. I've asked him several times if his computer was fast enough for his programming work, and he has consistently told me that it was more than fast enough.
The secret that you don't hear is that unless you are doing something that is extraordinarily processor intensive (3D animation, video editing, Photoshop graphics using a lot of plug-ins, etc.) personal computers, including just about all Macs, have been way faster than anyone needs for about a decade. You can pick any Macintosh currently sold as new and it will be more than fast enough for your needs. In fact, you can pick just about any Macintosh sold in roughly the last decade and it will be plenty fast. (Heck, I have a 9-year old iMac in my office that has been meticulously maintained, and it's almost imperceptibly slower than a brand-new 27-inch iMac I have sitting nearby.)
Choosing your Macintosh based on which processor it has, all other things being equal, unless you have a particular articulable use-case that requires it, is an anachronism.
(Which is not to say that any given Mac can't be running slow. It's just that this is due to a lack of routine maintenance, not due to one's processor not being fast enough. I'm sure that a bunch of folks will now jump in and say that their Mac is running as slow as molasses. But in every one of those cases, this is not an immutable situation.)