Quote from Lolcroc
Sorry, but I still don't agree. There's no way you can remember exactly what, where and how you edited the base classes when a new version of minecraft gets released. You're talking about exact results; if you want to do that, go code for Mojang. Modding API's are not perfect, but you're overestimating the limitations of Forge. Example: one problem I stumbled upon was that the potionTypes array in Potion.class was too small; I fixed this with java reflection, not the easiest fix, but it works the same way as editing base classes.
I haven't even mentioned compatibility with other mods. And despite that, when I see people say "it's for personal use", it still isn't a valid argument not to use modding APIs. Modding APIs gives you a box that you can code in, it's easy to find your errors because it's organized.
Not to mention APIs usually have code shortcuts in place (such as in Forge, you can make a block or item incredibly quickly with little effort), so you don't need to work out how to do X, Y, Z or duplicate code as the API does it for you.
Speaking of duping, in Forge's case you don't need to make a server and clientside version; Forge only needs a universal one which means less work for the modder.