User talk:Kira Komarov

From Second Life Wiki
Revision as of 11:12, 28 November 2011 by Strife Onizuka (talk | contribs)
Jump to navigation Jump to search

A word from the shamed

I've been wandering through the Wizardry and Steamworks code. I think what you are doing is a good thing but I want to pass along a cautionary tale I swear to you is true, as it happened to me last week. For years I have scripted in LSL and until recently I was confident in my ability and skill at coding, to the point that I felt I wrote code without syntax errors and that if I spent enough time reviewing the logic I wouldn't ever need to run the code. So in 2008 I expanded the article Right Shift posting the optimal code for doing an unsigned right shift. Last week someone edited the article saying my code didn't work, I couldn't believe it, I had even included a test script in the article which predicted the correct answer in it's comments. I knew my logic to beyond reproach. I thought it was a bug, some breaking change, I posted a JIRA. A Linden responded asking for more details. Then I ran the test script. I had apparently never ran the test script before. I soon found the problem. It never worked.

What unnerved me so about this was that my logic was flawed. I code in logical building blocks and then I manipulate and optimize them. I love coding, I love the logic, it's one thing to overlook an edge case, it's another thing altogether to be wrong. I am now left questioning all the code I have written in the last 4 if not 5 years. A take it you are someone like me who takes pride their work. Do yourself the favor of testing every bit of code you post, save yourself from having 4 years of shame coming home to roost all at once. When it came to Right Shift there were only two options, I could either fix the article or revert it to before I had contributed. There was really only one option I had, I had to fix it, if I didn't I would be then denying there were other better ways to solve the problem but fixing it would be admitting I was wrong. If I had only been in the habit of running my code, I would have spotted the flaw, I would have avoided all of this. At any time during the first six months I could have run the code and it wouldn't have hurt so. The code I posted was supposed to help people.

Not all the examples on Wizardry_and_Steamworks/Full_Spectrum_Re-Channeling compile (ignoring that you define functions later in the article). Take my advice on this and you will never be shamed like I was, your pride will be unblemished. -- Strife (talk|contribs) 16:44, 27 November 2011 (PST)

P.S. I'm enjoying reading Wizardry_and_Steamworks/Full_Spectrum_Re-Channeling, the issue of having to parse events not intended for the script and discarding them resulting in event-queue backup and eventual dropping of events is a serious problem. I have seen it happen with link_messages, the solution to which is to put your scripts in different prims and then send the message to the specific prim instead of LINK_SET etc. If the simulator is busy it just makes the problem all that much worse.


A Reply From The Shameless

Yes, I have gone through your activities, probably just as much as you have gone through mine. I have seen the error correction and the exchange of words. I have also barely grazed the surface of how highly you think about yourself.

I must say that on that note, we differ greatly! I could give you a similar example of one well-known scientist that committed suicide (and others, for sure) when he found out that his whole life's work was under the question of a simple, yet tricky, argument.

I do not take any of your kind of "pride" in my work! That, of course, does not necessarily imply that I do not care about it. However, I always work under the assumption that there is always a bigger, wiser, faster and more intelligent fish and whenever that fish crosses my path and corrects me, instead of committing ritualistic suicide, I smile broadly and correct it.

Perhaps if this (an object reference) would not crash every hour or so, nor require a super computer to run, one might have the leniency of accepting debates on professionalism or efficiency. Otherwise, it is pretty funny from where we're standing...

Whereas you (sorry, if this is just conjecture, I inferred this phrase from your story following your turmoil about "having to admit it") take pride in the sense that an essential correction to your code shatters your pride (as your comment would imply), we take "pride" in the fact that any correction is an addition to our (and all the other people's) knowledge and see it in our minds as two or more people shaking hands.

My suggestion to everybody is to keep an open mind as opposed to being prone to developing a compulsive-obsessive behavior based on the fear that, at some point, you may simply be proven wrong... Which, you will notice that, down the road it will hamper all your progress and grind you down to a halt, as most compulsive-obsessive behaviors do.

That is why I (or the group) never claim to be professional, but instead [WaS] claims to be a think-tank group. We express ideas, they might be flawed, they might not work at all and for sure, they may be further optimized to the maximum possible efficiency of the platform they might be implemented on. For what the group cares, and for what I care, I am sure that somebody accustomed to the specifics (let's pick something, hmm...) of C# and mono-core processors might take those ideas and further optimize them to the brim of that context. That is the difference between industry and research. In research, you work under the assumption that at some point in time you will invariably be proven wrong.

Consequently this might be the best answer to your comment about the code in the Full-Spectrum Re-Channeling article which does not compile - except that I already know that and will revisit it later:

"Life isn't about finding yourself. Life is about creating yourself." - Bernard Shaw

"Laife isnt abut findng yourslf. Life is about creatin' yerrself." - Bernard Shaw

Do you think that the second phrase is less meaningful because the syntax has been abused?

That is where the greatest distinction between syntax and semantics is made. You may worship syntax, but we are more tickled by the semantics.

For what I care, I could express the article in pseudo-code! Give me two weeks and I will express it in any language of your choice. Otherwise, the group already thought about writing code in reverse-engineered lso. We just thought that it would be too cool and might make us look too good.

That being said, your indignation and assumption that I am in any way shamed is inapplicable and misplaced. Based on the above, I simply do not subscribe to your notion of shame. Thank you for the comment though, we sure could use it as a reference when answering similar comments!

That being said, feel free (although you've already corrected the dot to a comma, so you don't need our permission to correct us - making you, similar to us in what regards shamelessness) to correct the code in the Full-Spectrum Re-Channeling article to one that compiles. We would only be thankful! Please though, do not efficentize it too much, it is purposefully expanded so that people tickled by semantics (and who do not know, nor care too much about LSL) may understand it.

P.S. If you need any help on what appears to be an attempt at a theoretical approach on states of states, the group will gladly help - we love the title! Until then, let's tone down the ethics and the first-name assumptions about each-other, shall we? ;-)

EDIT: The oldest (in SL age) [WaS] member has been scripting in LSL for less than half of Kira Komarov's age displayed on her profile as opposed to your years and years of LSL scripting. We're just not as good or profound as you, that is why you should perhaps first read the very first section and the numbered list on the Wizardry and Steamworks section so that you won't be considered by us the perfect example of a person we do not wish to interact with.

Kira Komarov 18:54, 27 November 2011 (PST) Signed off by [WaS-K]

You need not worry about me optimizing your articles (or anyone elses), I recognize that it is not always appreciated and I honestly don't have the time or passion for it (once in a while it's fun but not for every random script). The wiki is a teaching resource, and as such Examples should work and if they don't handle edge cases those edge cases should be documented. I have seen scripts posted that don't work (ignoring syntax errors) because the script is logically flawed. More often than not, those authors have more pride in their skills than in scripting and suggesting there is a problem with the script let alone fixing it for them is contentious. Pride isn't the problem, it's getting them to recognize that the wiki is a collaborative platform where ownership conveys no rights. So I try to relate with them early on and get them to see the folly of their ways, at the risk of misjudging the situation. For that I am sorry.
I agree, there is nothing better than someone taking the time to show a better way to do something. I relish the input of others, to confirm or contradict my work. How else do we improve if not to have the flaws pointed out? In the before mentioned case, while a minor article, it was a pet topic, something I though I was an expert in. It was a shock to be so wrong.
I don't mind fixing syntax or even doing simple optimizations with the understanding that it improves the readability and correctness. I honestly want to help make the content better. Optimizing examples in anything but an article on optimization is counter productive, it makes it harder to read.
  • laughs* Oh the dark ages of SL were worse than you know. The client would crash and you would loose your script, the simulator would crash and loose several hours of content... and your script. And almost every session your client would crash. If you wanted to do anything really fancy in LSL you became painfully aware of the 16k script memory space. I didn't get into optimizing LSL because I wanted to. I had projects that required it. *laughs and cries a bit*
Please don't stop posting, your content is unique and novel. I wouldn't give advice if I didn't think so. I saw your redacted comment, if you think a suggestion is beyond the scope of an article please tell me so. However if you would rather I ignore your content, I will. There is quite a bit of content on the wiki I ignore. I don't like to but I don't have the time to read everything. The sea is big, fish swim where they like.
I don't want to end on that note but I must for now, work calls. I will return later and finish this properly. -- Strife (talk|contribs) 11:12, 28 November 2011 (PST)