Do not mistake my language for emotion or a rant. It is a thoroughly thought out manifesto for my LateralGM and the direction I hope to see it go. The warning within my post is not an attack on you, Robert, and the fact that you feel the need to defend yourself from it - by retributing and attacking my character - makes me wonder if perhaps you are aware of more of your own shortcomings on these topics than I am. I'm also curious what kind of propaganda I'm advocating for here, since it's not like I have a competing product that I'm trying to steal your users over to.
That said, I do forgive you if you felt the language was directed - because it was, just not at you. It was directed at the developers of a number of other projects (like G-Java) that have failed for those reasons. I do not question your commitment to the quality of LateralGM. The warning to you in my post is not "you have caused these problems with LateralGM", but rather, "While you have not yet caused these problems, you are also not acutely aware of them, so here I lay them out so that you can better understand and avoid them." That is to say, while before I may have been the lead to help steer what needs to be addressed, and help refocus efforts when they drifted a little bit - I simply do not have the time to babysit LateralGM's direction anymore, so I've laid out this manifesto in hopes that it makes that direction more clear.
The open bugs concern may be an exception to this, but it may also have been due to a misunderstanding in process. I'll address this in a moment.
I'll now respond to some of your comments:
QuoteThis is exactly why I have decided to leave it where it is with the GMK format, and move on to the new GMX format for RadialGM and leave GMK in the dust
This was an edge case, and I believe you handled this admirably. Again, you continue to demonstrate your commitment to quality, and your ability to devote such great thought to the file format is one of the main reasons I can endorse you. And now you can see that it's a higher priority so if you do see it drifting from this, you know when to correct for this and fix the format.
QuoteAs over simplified as that may be, you just can't fix all of the bugs either, that is an unrealistic goal
I agree, and I mentioned this in the post as well.
Quotea few of the bugs are the fault of the JDK itself.
Aware. When it comes to those, address them how you like, but try hard to hack around them. You might find a few places where I document my hacks around the JDK's shortcomings or bugs. Usually what I do is make sure the JDK has an open ticket for it, find a/the workaround (usually in the ticket), and use it (with a link to the ticket so the workaround can be removed whenever the Java gets around to fixing it). One thing I've learned in the workplace is that, when you get a ticket that you'd rather just leave behind, the best approach is to just buckle down and give it a go (that is, try to fix it anyways). Once you know that you've put an effort into it, if you can't fix it, that's fine, say so in the ticket and either close it (if it's not a big enough deal) or leave it in hopes someone else can pick it up. Of course, for those, remember you can always ask me for help, as I have a lot of valuable "architectural" insights into the more complex tickets.
QuoteEvery release for the past two months has been solid bug fixes
This is just a difference of opinion on what's a bug and what's a feature. Not a big deal - glad you know that bugs are a priority. (For example, I often consider support for newer versions of GM as a "feature" until the version has been around for a while, and then it might become a "bug" - completely subjective... there might be a better process for that - heck, maybe even you know of it - so I'm not judging)
Quoteso fix your bugs or else I will do so
(The open bugs concern) The misunderstanding here was probably because a lot of the open tickets are difficult things that I don't really trust others to fix reliably, since I designed it, so pretty much I'm the only one who knows how the system works/should work. As I don't have time to work on them, it was hoped that I'd find a free weekend (or, more realistically, a free week) to get to them, but that never happened, so those tickets sat stale forever. Sorry if I take those tickets out on you, I understand your hesitation to take them on when they obviously have my name on them. However, with you in charge now, they are your tickets now, to do as you want with them. Don't be afraid to do a crappy job with them - you can fix bugs as they come up. I just have 2 small suggestions/requests:
1) You can/should consult with me about the best way to approach them if the ticket doesn't make it crystal clear. I obviously don't document exactly my plans for things when I make a ticket for them since I usually figure I'm the only one who will work on it, so the ticket can sometimes be a less-than-descript reminder.
2) As you close off the tickets, especially if you feel your solution isn't a rock-solid facsimile of what I had envisioned, be so kind as to document it somewhere where those things can be grouped together (e.g. the wiki) so that I might be able to look it over when I get a chance. If nothing else, just have one page where you link to each of the tickets.
The second point is really what the whole "review before I pull your code" was for - mostly just for me to get a chance to look at how you addressed certain things that concerned me. What I've learned is that doing that, while ensuring you have a rock-solid product, will also slow development to a crawl. Realistically, we can tolerate a few bugs here or there when they spring up, and that's why we have a ticket system to report those bugs and developers to fix them. This can also create smaller/easier bugs for less experienced developers to take on and get a foot into LateralGM.