Thanks for the warm welcome. I feel like singing in the rain. (Love puns!)
On the surface, spellcheck seems like a pretty easy problem to solve. You take some text, split it into words, then check each word against the dictionary. Fantastically easy. They shouldn't pay me for this stuff. But computers delight in twisting seemingly simple problems into complex nightmares.
Fun fact: Splitting text into actual words requires roughly 50 rules. Consider punctuation: we have to remove certain marks (periods, exclamation points) but leave others intact (apostrophe). HTML tags also need to be removed while keeping the content safe. Does anyone want my job yet?
In order to keep our servers from melting under the strain of hundreds of simultaneous spellcheck requests, we let the client (that's you!) split the text into words and send that list to the ActiveRain servers. It's a funny thing: web-browsers have wildly diverging ideas about spaces. When you press the spacebar in one browser, it might insert an actual "space" character. Another inserts a Unicode character. Of course, they look exactly the same. Only a petulant computer knows the difference and complains bitterly about it. That's one half of the "AJAX error" story.
The other half of this mystery theater is more embarrassing. The library responsible for parsing the list of words on our servers was out of date. In certain, special conditions (mostly involving apostrophes and quotes), the spellchecker simply gave up. That's one demerit for the naughty server.
My goal is to make ActiveRain work like magic, but I know there are those among you that revel in the occasional peek behind the curtains.
Hope you enjoyed this shocking exposé – stay tuned for more!
Comments(14)