Offline runnable Thesaurus Training Web App – SEO and online

Until now I paid much attention to develop the offline part of the offline runnable thesaurus training web app. But for a web app this is the fancy part and since I want to progressively enhance my web app I should care for the traditional online stuff first. I do not only see accessibility benefit in progressive enhancement but also in software development I learned that the easiest part is the most crucial one. You get the most stuff done in the least time. We as software developers have a strong interest in complexity and want to avoid the simple parts but in terms of productivity the simplest parts are economically the best. So why not develop the online and even non Ajax part first and then decide how to enhance the app by fancy stuff afterwards? Anyway I expanded my data model since I found that the thesaurus wordnet database from the princeton university has more to give and I want to fully visualize the data. This is the first step. It is the next step to determine which of the data has to be offline to offer a nice thesaurus training game experience.
Non fancy server side page rendering also enables search engine optimization immediately, even though search engines, especially Google, might be able to parse JavaScript. But parsing JavaScript is again special stuff and only fancy Google might be able to do that.
So the result of this iteration is an accessible online thesaurus website. The home link, which is the most used one, is working and the user and also the search engines can see each of the 147.500 words from the wordnet database via a CSS styled menu which shows the alphabet and provides a hover effect showing the combinations with the next 26 letters. In this way the menu devides all words into sections of words which begin with two letters and lets the user show them on the page. To minimize the length of the words page further the words list is presented in columns. For this layout I used the new CSS3 column properties. Unfortunately the Internet Explorer supports them from Version 10 on only. The best way to provide an alternate column function for the new CSS3 columns which will be less good for sure for < IE 10 users is to test for it by Modernizer, a JavaScript feature testing framework, and write another CSS for the case that the new feature does not exist. There are only two ways: Use the new CSS3 feature that not every browser supports and dynamically apply an alternate style sheet for old browsers or don't use new CSS3 at all. I prefer the former way. If it is really about a combination of disabled JavaScript and an old browser the user still sees a list three times as long as if he had been presented the content with column layout. I find that as accessible enough.
I improved also the URL layout and made Yii present the URLs more beautiful. Now there is no PHP in the address any more. Even more, there is no index.php. There should be no cryptic stuff like ‘?’ shown in a URL so the user can easily read it. Another advantage is, that search engines can not assume generated content but must believe that all was copied by hand. Even if the search engines don’t believe it the URL of the page describing the word smart has now the word smart in it, so search engines which also evaluates the URL, know the page content should be about smart and can show it in the search results.