Most Popular Stories

Thursday, February 15th, 2007

I just did a quick check with LogValidator on the pages at this site for Refactoring HTML. Besides telling you where the markup is screwed up, LogValidator also figures out which pages are the most popular. The results were not what I would have guessed. After throwing away index pages, favicon.ico’s, Atom feeds and the like it turns out the most popular story of the last year is:
(more…)

Amazon Turns Off Search

Sunday, February 11th, 2007

Some weirdness at Amazon this morning. The search boxes appear to have vanished from the top of the page and the sidebars. One is still hiding way down at the bottom of the page. This is a very bad change since site-specific search is one of the primary ways users navigate Amazon. I’m not sure if this is a temporary glitch or a rare example of bad Amazon design. Usually Amazon is one of the more usable and intelligently designed sites, so this comes as a bit of a shock.
(more…)

Who Cares About Your Permanent Record?

Thursday, February 8th, 2007

A lot of old fogies are getting bent out of shape over the idea that 20 or 30 years from now today’s teenagers are going to get hammered by random screeds and bad dating habits they posted on blogs or MySpace. Can I chime in and say I really don’t think it’s all that big a deal? By the time any of this becomes relevant, the electorate will have matured enough that they really don’t care about this.
(more…)

Homework

Monday, February 5th, 2007

Don’t you just love students who send you their homework problems in the hopes that you’ll do it for them? Here’s the latest example I’ve gotten:

Often in reading an article, a book or a document one comes across a word whose meaning is not known to the reader. This problem can be overcome by providing an on-line dictionary so that a reader could look up the meaning of a word. In order to provide help with reading, you are asked to develop a Java Applet with the following GUI interface:

Labels Text Boxes
Word typed Text box A
Word meaning Text box B

Once a user types a word in text box A and presses return, the meaning of the word is displayed in text box B (provided that word exists in the dictionary), otherwise, the message “word not known” appears in Text Box B. Notice that both text boxes are preceded by a label. For the purpose of testing, it is expected that the developed Applet is able to cope with 100 or more English words

That’s actually not a bad problem: takes in applets, GUI widgets, event handlers, data structures, and possibly network communication (if the dictionary is stored remotely). However it’s not too complex to implement in a week. I’ll have to remember it for my own classes.

In the meantime, if any teacher recognizes this as their own assignment and wants to know where I got it, drop me a line. :-)

All Injection Attack Vectors

Sunday, February 4th, 2007

For my next book, I’m trying to develop a reasonably comprehensive list of technologies which are potentially vulnerable to injection attacks. SQL injection is the most common, but there are of course many others. So far here are the ones I’ve got. What else am I missing?

  • SQL
  • XPath
  • XQuery
  • XSLT
  • JavaScript
  • LDAP

(more…)

Google Docs and the <string> tag

Thursday, February 1st, 2007

I was debugging some problems quoting a piece of a Google Doc article when I noticed something funny in their HTML source, an apparent string bogon. For example:

<pre> List&lt;String&gt;<string> ls = ... ;<br/> Collections.sort(ls, new Comparator&lt;String&gt;() {<br/> public int compare(String s1, String s2) {<br/> return s1.length() - s2.length();<br/> }<br/> });<br/></string></pre>

In context, I think this is really a tag, not a badly escaped piece of the source document. A little googling didn’t find any information about it. I’m fairly sure this was never a real HTML tag or a browser extension, though I could have missed one somewhere. Can anyone shed some light on this?
(more…)