Why EpiDictionary updates are postponed indefinitely
Jan 16 '06 (Updated Apr 25 '06)
The Bottom Line Amazing EpiTrick and The Real Bottom Line revealed inside.
update problems
When I introduced the fully epilinked Second Edition of the epidictionary in 2004 I wrote Things to know about the Epinions Encyclopaedia to help you use it. A small section in that 2004 text is about the problems I experienced getting a quarter megabyte opinion posted.
EpiHTML
To make sure an opinion passes through all the epifilters, it has to be perfect EpiHTML; it has to be perfect HTML and not use any HTML epinions.com does not support. There is a wide variety of tools you can use to check your HTML, and epinions.com will produce an error if you try to use any HTML that it does not allow.
Objectionable Words
Epinions.com has an Objectionable Words Filter; epinions.com will produce an error if you use any word it deems objectionable. Few epinionators are not familiar with the technique originally revealed in Objectionable Words Filter (OWF): Not Helpful or the “mobiprof sex symbol” Google query to locate a handy dandy reference for creating • real bullets • “true quotes” • ellipsis and… • actual sex symbols! •.
Problems and Solutions
You can experience many problems when trying to post or update an epinion. How to solve and in fact prevent many of these is told in the EpiHTML Editing Guide.
The single most important tip is probably to always edit off-line and then copy & paste your latest version to the epinions.com edit box to submit it; one of the annoying problems with the epinions.com edit & preview cycle is that the preview mode mangles your carefully constructed HTML into something epinions.com itself does not accept
BTW, do yourself a favour. Be sure to always copy & paste, not cut & paste instead. Keep your local copy around.
unique problem
The epidictionary is considerably larger and more complex than most opinions; it is in fact the largest epinion and contains more links and cross-links than any other epinion. Maintaining it is a best described as a self-inflicted nightmare.
Rereading the entire text before each update has not been practical for some time now. From version 2.0 onwards, I have been working with unsuspecting victims, eh, enthusiastic volunteers to review for factual and editing errors, omissions, etcetera.
validate
To have a head start on epinions.com editing problems, I regularly verify the entire text to make sure it is valid.
I do not just preview the opinion in a temporary HTML file to make sure all the bold and italics tags match up, I actually check the HTML. My HTML checking secret, purposely buried in here to award you for reading all this detail? The best HTML checker is CSE HTML Validator and a lite version is free.
I check that file with such tools to make sure it is not just acceptable HTML, but in fact absolutely flawless XHTML. I have even made sure that the URLs which contain ampersands (e.g in URLs for Member Chats) are well-formed, to make sure that the tools give me exactly zero errors and zero warnings. Epinions.com does accept the badly formed one, but zero errors and warning is nice.
a lot of trouble
I definitely go to a lot more trouble to avoid errors than the average member will even think of, let alone do. I do not consider submitting an update until I am sure the text has zero error and zero warnings. I am that strict with the dictionary only, and for good reason.
Using epinions.com itself to find and correct errors in anything but the simplest text is not practical. Epinions.com will provide error messages, but will not tell you where they are. It is great to know that what error needs to fixed, but if you do not know whereabout in your text that error can be found, and your text happens to be a tad on the large side, it is not good enough.
validate
That an opinion is certified as 100 % absolutely valid perfect and flawless XHTML is great, but not good enough. Epinions.com does not accept XHTML, it accepts EpiHTML, which is a subset of HTML, and there is the Objectionable Words Filter to contend with. For these two issues, the most practical route is testing on epinions.com itself. Objectionable Words are highlighted and identifying mark-up that epinions.com does not support should not be very difficult; if you have problem locating it, you can always use the Paragraph by Paragraph Procedure to locate the offending tags.
a blank page
Alas, even doing all that is not good enough to get the epidictionary posted!
When I tried to post the Second Edition, it just didnt go through. I was pretty sure there were no technical issues with the text at all. I tried to post it several times, but it just did not work. Id choose to update the opinion, copy & paste the text into the edit box and hit the “Preview your Update” button. After that, nothing happened. The browser window went blank and stayed blank.
filters
I managed to guess what is going on and then use that knowledge to solve the problem. The following description may not be perfect, but it is definitely a close to the facts.
Epinions.com does not move directly from edit window to preview mode, it runs lots of filters in between. Somehow, these filters are rather slow. That generally does not matter much; on a site like epinions.com, with lots of visitors, viewing an epinion is the one thing that should be fast, it is okay for updating to take a bit longer. Besides, nobody ever notices that these filters are slow, because most opinions are just a few kilobytes at most
It seems that problems with the these filters epinions.com have lead epinions.com to use a timer; if these filters do not report their results within say ten seconds, they are presumed to be malfunctioning. It would probably show the edit screen again with some catch-all message like “could not preview”.
Later, the code was updated by someone who did not know this, did not understand this, or mistakenly thought that code was unnecessary, and never bothered to test the result. Anyway, this programmer created a new defect by writing code that displays the preview as soon as the filters return their result
while they may never return any result at all.
How to click a non-existent button
Now, if epinions.com does not present the preview screen, it does not present the Publish button either
so how did I manage to get the opinion posted at all? How do I click a button that is not there?
I tried to work around the defect by purposely confusing epinions.com about just what I was doing, and that happened to work.
the update trick
So, here is how it works. I have a large opinion for which epinions.com, because of this defect, will never show the preview screen. I create another opinion, just for the update, with some text like “Hi, this opinion is being updated in a convoluted manner. Sit back and relax while I try to perform some epimagic”. The actual text is not important, any short text will do fine, but a somewhat informative one is nice for those who happen across your opinion while you are in the middle of the process.
tab along
The trick is easiest to perfom with a tab browser. Instead of updating a new tab to update the opinion, we open two new tabs to update the opinion. We have two opinions, a small one and large one. We paste both the short one in one edit window and the long one in the other. We do the short one first. This gets us an Publish button. We then paste the long one. We will get a white screen.
always blank
Here is an important note: we will always get a blank screen. It does not matter whether your opinion is approved by the various filters or not, the screen will remain white. This trick will only works with opinions that are approved, albeit slowly. It will not work with opinions that are rejected. It is important to make sure the opinion is error-free before submitting it. Hence the overkill of professional tools validate as 100 % valid XHTML. Hence the use of the Paragraph by Paragraph (well, Section by Section actually, to finish within a day) Procedure to make sure all of it is acceptable to all the filters.
After submitting both opinions in the right order, we have just one Publish button. Now, here is the trick: when we hit the Publish button shown for the small update, the large update goes through and that is how you publish a quarter million characters opinion.
a trick within the trick
You do not even have to actually publish anything to see this in action. You can refresh the tab showing the opinion you are updating. It will show the “This contribution is a draft and is not available to other Epinions.com visitors
” text in red above your opinion, but below that it will show the text that will be posted when you hit the Publish button.
the problem
The overall problem is that there are to many defects now. I can avoid the edit problems by editing off-line, I can verify my HTML off-line, I can test the whole opinion by submitting it in parts .I even managed to take advantage of one peculiar behaviour to get past another.
try this at home
You can still see this behaviour. It has not changed. Take two small texts, and try it for yourself. Remember, there is no need to actually post anything. Just refresh the tab with the opinion in it instead to see what would be posted if you were to post.
Lets say you have an opinion filled with 1s. You submit that to update first, and you get a preview screen. You then submit an opinion filled with 2s, and get to see the preview screen. If you now refresh the original opinion, it will show the last preview, the 2s. Lets pretend for a second that the second update screen does not have a Publish button, so hit the only Publish button we have: we hit the Publish button on the tab with the 1s, we will get to see the opinion filled with 2s.
Its EpiMagic!
This trick to get an Publish button when one is missing still works fine.
What happens is this: the button will publish the last approved text, no matter how many tabs with preview screens you have. When I posted the Second Edition, the preview screen never showed, but the text was approved by the filters, so that is the text that was posted when I hit the Pubish button. The trick worked fine when I posted the First Revision of the Second Edition too.
small but significant
I have just discovered that the code has changed in a small but significant way since then. Somehow, it is not just the tab that stays blank, but the approval does not register with epi-database central anymore either. The small text gets approved, the large text disappears in epinions.coms local black hole; there is no response at all, not even below the serenely white surface of the web page.
Well, that is that is what I can figure out so far. I have double-checked, triple-checked and quadruple-checked the text with the tools and the PPP. I am very sure that the text is a-okay.
size
According to the statistics box, the current text has 364.737 characters excluding spaces and 402.560 characters including spaces. That is probably including the hidden text which I maintain above each entry to help me make links to that entry.
According to some search and replace actions on a copy of the text, there are 686 such entries, 1982 cross-links from one entry to another, and 548 epilinks to opinions, profiles and other exciting epiplaces outside the epidictionary, making a total of 2530 epilinks.
what has changed?
These numbers are impressive, but represent merely an incremental increase on the First Revision. The only number that strikes me as perhaps having passed some internal boundary is 548. Perhaps the EpiLink Filter (ELF) uses a fixed-sized internal buffer that accommodates 512 (512 is 2 to the power of 9, programmers like such numbers) links, and although the ELF imposes that restriction, it does not check for it, but simply disappears into some run-time error when it gets an opinion with 513 links. Testing that hypothesis is left as an exercise to the curious reader. I am tired of all epidictionary testing and explaining what happened already
test?
There is just one part I still have to explain. Didnt I test the update before applying it?
Yes, that is what I usually do. I have several opinions in draft with exciting names like “tst” and “test two”. These opinions are pre-filled with all the mandatory stuff, such as a minimum number of characters and words, a pro and con section and a bottom line, all that boring stuff, so that I can just add something at the end to test.
I am not an alien
At the risk of disappointing those who believe that I am infallible alien from another dimension, I will now reveal that I am in fact quite human and do make mistakes. Most of the time, the mistake I just made does not matter. I was updating both How to get hundred thousand hits a year on a single opinion and looking something up in the currently posted version of the dictionary when I accidentally updated the dictionary instead. Did I mention that using multiple tabs does not only allow new experiments, but also makes making such mistakes easier than ever before?
Faced with this mistake, I thought it best to publish the Second Edition instead and perhaps post some small updates later and discovered what I just told you.
The previous Bottom Line
For those who want their chance at eternal fame (well, a mention in this opinion anyway), by not merely lazily hypothesising but actually figuring out and proving exactly what is going wrong, The Real Bottom Line is that I managed to repost the First Revision. The dictionary is not gone, and the links in this text are valid. However, the updates and the new entries listed on my public profile page are not available yet.
update 2006 Apr 25
Recently, "Community Care" suggested on the Epinions.com Message Board that the sites speed had increased. This was reason to try and post the updated version again.
I did not notice any speed increase, but did notice that the posting time out seems to have been increased from 30 seconds to 45 seconds. I had advised an increase to 1 minute as a quick fix, and some experimentation suggests that 45 seconds is just under what I would need right now.
Then again, maybe the new posting time out actually is one minute, and the processing takes close to 45 seconds, after which a few seconds are needed for some more internal processing.
Here is what happens. After 45 seconds, a blank screen appears where the preview screen should appear. There is no update button, so I still have to use the update tick discussed above.
It seems that when I use this trick immediately after the blank screen appears, the update fails, but when I wait a few seconds more, it succeeds.
The New Real Bottom Line
The posting functionality of epinions.com still needs work, but five years and one day after the very first edition was posted, the Second Revision of the Second Edition is available now.
 |
|
|
|
|
|
|
Epinions.com ID: mobiprof
|
- Top 100 |
|
Location: In the Dutch Mountains
Reviews written: 180
Trusted by: 543 members
|
|
|