Platyna wrote:What a blatant lies.
Nope, these are not lies. IIRC, Doorsman left project after asking how to challenge your decisions. Then you've told your decisions can't be challenged. That's exactly how tyrant looks like. Furthermore, fact of
appearance messages like this indicates quite many people considered you tyrant, up to degree you can't just stay silent about situation.
blackrazor wrote:Tester, nobody is making double standards between Frost and o11c, but there are complex social dynamics afoot.
Yes. And I can admit o11c haves troubles to interact with quite many different people due to sticking to some strange or biased approaches. Half of issues occurred due to his own attitude. Failing to evaluate how your actions would be seen by others could be bad thing as it causes unnecessary aggravation.
to be honest sounds more like Frost's Swan Song and his message for o11c, rather than a serious effort to fix some of the administrative issues via regulation and the written word.
Everyone haves tolerance limits. Looks like Frost hit them. And I can admit it's not easiest thing to achieve, so there is something wrong goes on. And to tell things directly: I've seen some signs Frost is skilled system administrator. He appears to be ready to be in charge of server stability, security, etc (within his powers). I have some doubts someone else can readily take this over and continue the same or better. And o11c or Freeyorp are NOT system administrators at all. They are devs. They probably lack understanding of key things which are required to keep server running smoothly.
o11c wrote:Only with the big code update could I finally call TMWA "alpha". The release quality of a piece of software is not driven by deadlines, popularity, or what you'd like it to be.
In no way successful RPG project is all about perfect server code. Server without features, content and tooling to conduct interesting events could be boring. Server without client is unusable. Server without good admin(s) is PITA. Server without GMs is chaos. Server without players is wasteland. And if you want to tell about "software quality", come on. But as QA I can add something to this topic and I can't promise you'll like it
. Right now I can admit you fail to get idea software quality is a complex, multi-fold thing. Especially in large projects (RPGs could be good example here). Good code is nice to have, sure. But there is no universally accepted definition of "good code" (except counting bugs per kloc, which is not what you mean). And it's not only good code what makes program quality good overall. Other things matter as well. Great example is djbdns. It got high-quality code, at least in terms of security (means "quite few bugs overall"). Very nice PoC how to write secure program, especially noteworthy for using plain C. Unfortunately, it's worth of nothing as it lacks features people consider mandatory for DNS servers these days. Can I tell it's a good quality program? Nope, its good quality artefact to expose in museum and wonderful PoC. But quite useless thing when it comes to actual DNS servers. So it mostly unused, even if it haves some valuable properties.
Fixing those crashes and related things was the primary purpose of the big code update.
Map server still crashes sometimes (probably also losing some logs in process
). Maybe even more than before (it's possible to introduce new bugs when fixing old ones, etc). I counted about 4-5 map server crashes after update and I do not remember so much crashes before. Though without crash dumps I can't tell what code crashed, sure. Also, 4144 told there are still easy ways to crash server. That's "player visible" part. I think you should be more careful about statements when grilling someone for bad job.
I delayed the update by about a month trying to satisfy your concerns
Yet it still turned "production" server to "testbed". Time to admit Frost had a point, isn’t he? Skilled admins have idea about basics of QA (just to make own life easier).
Can someone give me an example of what a player would need to communicate with an admin for?
1) Reporting issues (like insane CPU loads, packet losses, etc).
2) Advanced manipulations with accounts where GMs lack enough rights. Say, renaming troublesome nicks, adding people to manamarket, etc.
3) Handling some misconfiguration/malfunction which does not lies in the code but rather system configuration related.
4) Advanced investigations where GMs lack access to required data.
5) Dealing with high-profile abusers or attacks which are too powerful for usual GMs to handle. Like advanced bans of offenders by IP range, blocking some exceptionally nasty or troublesome things on firewall way before it can reach any program and cause issues, etc.
There would be plenty of reasons if the admins were in charge of the GMs and devs, but that is not the case.
At least sometimes I've seen Frost doing some things for GMs. For example, Frost gone through logs for GMs, etc.
I fully admit that I did not do a good enough job with the official testing group.
IMO testers should be somewhat ashamed of such releases as well. That's how it feels for me.
I *did* however, post in the dev forum whenever I did the change, which in times past always gave me bug reports, and also performed a *huge* amount of testing myself.
As I told, for me it appears you don't have real idea how much testing your changes would require. Generally, there is need to retest EVERYTHING. It have to be team of several players playing for a while, doing most quests, playing different classes, etc. Sure, it looks well above of what TMW could afford right now. But if you can be in perfectionist mode for code, let's tester go perfectionist mode as well. Then, if it's okay to postpone some removed features reimplementation to "later", I don't see why it's not to okay to postpone code release to "later" as well, until it actually tested (and ideally on par in terms of features). If you insist there is no time pressure and start talks about quality, that's what you get from tester's side
.
a rollback would be a relatively expensive operation.
Firms my view about bad project management skills. Anyone who cares how project performs overall, should consider such outcome is possible and prepare fallback route if things go badly. System administrators usually could greatly help with it... if communicated properly and maybe provided some assistance. On it's own, reverting troublesome updates from production is usual practice. And it's not admins to blame for versions incompatibility and one-way tickets, obviously. It's lack of responsibility from devs to roll out incompatible things, which make it harder to do rollback. Btw this is what exactly forces "stable" linux distros to lock software versions between major releases, only backporting most daunting fixes. Software authors could be really irresponsible, so it proven to be bad idea to use software from authors directly on alive servers. Then there was strong demand for someone to take over this process. Maintainers appeared as some groups which would solve this issue and help users and administrators to run things smoothly for a while. The obvious downside is that downstreaming new code takes a while.
I hate to repeat myself, but ... that is the *one* decision I've made since we broke up with Platyna on which I have not been willing to negotiate at all.
Does not removes the fact it possibly was not good for project overall. You gained little (from player- or admin-visible sides) but lost some players.
In the past, people have lost access to their accounts because of the old behavior.
I agree case insensitivity is weird, but after fixing it, many players faced login problems. I don't see gains which can outweigh such damage. Though I can agree it could be "necessary evil" in long run. IMO you should try to avoid touching anything login-related, its delicate thing which can easily make a lot of aggravation/misunderstanding/damage to project.
Some additional information about that. I did not *remove* a flush from the GM logs. I certainly hope the rest of the world is not doing what TMWA used to do, which was open and close the log every single time a line needed to be written.
Now go and see how they do it and understand
why they stick to "suboptimal" ways. You'll usually see something like this in serious server software around. There could be something like fsync() instead of close(), which is also bad in terms of performance. Maybe you failed to get idea, but I can repeat: this "strange" behaviour is intended to get logs written to disk immediately. Up to degree where physical sectors on disk should contain actual file data (remember, OS buffers file writes). With such approaches logs would contain up-to-date information and if there is crash, this approach minimizes sensitive data (logs) loss. At most 1 line could be lost (where program or system actually crashed) if logging implementation is correct. In logs data integrity counts over performance (also, synchronous flushed write of single line supposed to take sane amount of time and unless server is badly maintained or writes enormous amount of logs it should not cause major issues). When there is not enough I/O speed on heavily loaded servers, common practice is to log via network to dedicated server which can afford synchronous writes. However it only required on really heavily loaded servers which generate huge amounts of logs and have I/O busy by other tasks. Btw this is really basic knowledge of file system operations, somewhere between POSIX filesystem access api and system administration. It's about getting idea about buffered writes, flushes and amounts of data loss upon crash. The problem here is that buffering haves potential for extremely high data losses, which is not acceptable for things like logs.
(the word "discount" is strange here ... is this a language/region issue?)
Okay, if you insist, in our region we have far stronger term to describe this effect: "own sh*t does not smells". Unfortunately, this syndrome is common for programmers, so they often fail to get idea why people do not share their views. It's hard to blame self. This is well known fact.
I have never claimed or asked for exclusive authority for this project's future.
But you often behave like if it was the case.
A lot of times, I end up doing something just because no one else bothers to do it.
And quite many times it's because nobody else motivated to do it. And if you'll handle things like it has been with rules and Nard, server administration and Frost, etc - sure, you can end up doing even more of work yourself. Not to mention that it's impossible to be good in everything.
I fully admit that I am not good at communication. I really wish, however, that there was someone to cooperate with. I miss Jenalya for that.
I can understand you in this, cooperation is fun. And to be honest, I really prefer to tell you something like "thanks for your hard work" rather than what I have to type here. And btw, I really doubt someone haves sole purpose to clash with you or make you unhappy. There could be some misunderstanding, but it usually happens when at least one side is uncooperative and not in mood for consensus.