Innectis Community Forum

Author Topic: Improving the code  (Read 4257 times)

Vector

  • Owner
  • Administrator
  • Legendary Member
  • *****
  • Posts: 2153
  • Gender: Male
  • I am the exception, not the rule
    • View Profile
    • Code Speak
Improving the code
« on: October 25, 2012, 07:00:15 PM »
I joined the IDP developent team late July, 2011. I didn't even know any java then, but the other languages I was good at played a role in understanding java itself. Back then, Innectis was really quite primitive. Lynxy would begin her work on overhauling the lot system sometime later on, and I would start my own work slowly. It was a rough start, especially since I didn't know the code very well. I didn't really have the help that Nosliw did when he joined our team late this July, 2012. Hret and Lynxy weren't as vocal with me as Hret and I were with Nosliw.

Even so, time went on, and I continued to make short features, for months. There was a period, not even a month in, where I didn't provide any code for about a month. At the time, I had priorities elsewhere, and the IDP was not the #1 thing on my mind.

December was when things really got interesting, when I had the task of re-designing the ban handler. I gave it some features that we needed, but couldn't get, as we were using vanilla's ban system. That's when I started to feel more confident about the IDP. Other features came, including the shop system. That system took roughly 11 months before it really turned into something I wanted. Even then, it's not at the level I want, because of lack of support on Bukkit's end.

Time went ahead, and I became more confident about my abilities. I started writing larger systems, and improving existing ones. Up until around July of this year, I was writing just to code. I'll get more into the details on what I mean by that.

Every programmer feels at one point the need to improve upon existing code, and that's just what I did. It really is an art that takes years to master properly, and to incorporate in diverse situations. So many different factors are involved, and I still don't know all of them, but I'm learning steadily but surely. I improved upon the code of others, and even my own code. I still don't think my methods are the most picture perfect out there, but they definitely allow more performance.

I began looking at existing pieces of code, and wanting to improve on that. The reports of constant lag astounded me so much that I wanted to make sure we were as lag-free as possible. I still attempt to strive to achieve this goal. It's not an easy thing all the time trying to squeeze lag out of a particular routine. Once you've done it enough times, however, it becomes easier to do.

Different things inspired me to do this as well. I keep up with CraftBukkit changes, looking to see if any beneficial changes get added, or just if there's a change that I might like. Over the past month or so, Bukkit has striven to include performance tweaks into the code base, most likely stemming from reports of lag by the community. I caught onto that, and wanted to do the same thing in IDP.

That is why some things may work better for us now, than they did in the past. Anyways, I hope this inspires you in a way, if you are a developer, to improve on your own code.
  • AlphaBlend
    AlphaBlend
    AlphaBlend
I like to make things. That pretty much describes the kind of person I am.