Do those other languages include C#, or heavy use of another OO language? If not, this task might be beyond your reach. Java's static / non-static and access modifiers can confuse a non-OO programmer, so you really need to know a language which has the same concepts.
For actually doing the update, here's how I think about updating my own mods.
Forge is essentially an API. That's a piece of software that's expecting you to make certain method calls and provide objects / resources in a particular way. The reason we need to update mods is due to Forge updating what it expects your mod to ask for, so you need to change your method calls / resources. That's what your 100 errors are, you're making calls to Forge methods or variables that no longer exist, so you'll need to find what their updated counterparts are (if they even exist).
I have two pieces of advice here:
Don't try to port from 1.7.10 directly to 1.10, port to each major release a step at a time.
Write your own mods, if you haven't already. Follow some simple tutorials on your version for creating an Item / Block / Entity. Once you've seen how it's done, you'll be able to see the parallels in the code your updating.
Coming out of 1.7.10 is tricky. A lot of hard-coded data and textures were moved out to .JSON files, and item registration changed to be event based shortly after. Feel free to keep asking for help with particulars here, I might be able to assist.