<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Darwin&#039;s Theories - Web category</title>
  <link>http://theories.darwinsys.com:80/categories/web/</link>
  <description>Call it a Blog if you like -- Ian</description>
  <language>en</language>
  <copyright>Ian Darwin</copyright>
  <lastBuildDate>Sat, 04 Oct 2008 16:12:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Django Reverse-Engineer from Existing Legacy Tables</title>
    <link>http://theories.darwinsys.com:80/2008/10/04/1223136720000.html</link>
    
      
        <description>
          I&#039;ve been playing a bit with &lt;a href=&#034;http://www.djangoproject.com/&#034;&gt;Django&lt;/a&gt;, a &lt;a href=&#034;http://www.python.org/&#034;&gt;Python&lt;/a&gt;-based web framework. One thing that people starting in Django seem to miss out on is the standard &amp;quot;how to I make model classes from my existing database tables&amp;quot;? That&#039;s not because you can&#039;t do this, but only because most of the newb tutorials start from the other end. It turns out that you can do this easily using &amp;quot;&lt;a href=&#034;http://docs.djangoproject.com/en/dev/ref/django-admin/#inspectdb&#034;&gt;manage.py inspectdb&lt;/a&gt;&amp;quot;. And you&#039;re done, at least most of your work is done. This reverse engineering is not as complete as that in &lt;a href=&#034;http://www.seamframework.org/&#034;&gt;Seam&lt;/a&gt; (actually Hibernate) - no compound primary keys, and (presumably because Python&#039;s db support is less general than Java&#039;s JDBC) it only works on a few databases (PostgreSQL, MySQL and SQL Server, IIRC), but for those database it does the bulk of the work for you.&lt;br /&gt;
&lt;br /&gt;
So, this post is a bit away from my usual topics. I admit it, I&#039;m mainly posting this here in hopes that somebody else using a web search will find the answer more quickly.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Python</category>
    
    <category>Web</category>
    
    <comments>http://theories.darwinsys.com:80/2008/10/04/1223136720000.html#comments</comments>
    <guid isPermaLink="true">http://theories.darwinsys.com:80/2008/10/04/1223136720000.html</guid>
    <pubDate>Sat, 04 Oct 2008 16:12:00 GMT</pubDate>
  </item>
  
  <item>
    <title>What&#039;s wrong with the web, Part 45: Demanding Redundant Language Choice</title>
    <link>http://theories.darwinsys.com:80/2008/08/21/1219338703442.html</link>
    
      
        <description>
          Today&#039;s rant won&#039;t be politically correct. Not that you care, dear readers.&lt;br /&gt;
&lt;br /&gt;
A problem with the Web in Canada is that most corporate and government sites force you to pick a language. Why is that a problem? Because you&#039;ve already picked a language. If you&#039;re in Canada, odds are statistically likely that when you installed your operating system - be it MS-Windows, Mac OS, Solaris, Linux, OpenBSD or whatever - you selected English or French as your language choice. And these &amp;quot;choose a language&amp;quot; sites don&#039;t respect that choice.&lt;br /&gt;
&lt;br /&gt;
You see, every time you click on a link or type in the name of a site and hit Enter, your browser sends a whole boatload of information, including the ISO language code for your chosen language (or languages) to the web server.&lt;br /&gt;
&lt;br /&gt;
My browser sends something like this:&lt;br /&gt;
&lt;pre&gt;GET / HTTP/1.1&lt;br /&gt;Host: localhost:8080&lt;br /&gt;User-Agent: Mozilla/5.0 (X11; U; OpenBSD amd64; en-US; rv:1.9.0.1) Gecko/2008072820 Firefox/3.0.1&lt;br /&gt;Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8&lt;br /&gt;Accept-Language: en,es;q=0.8,fr;q=0.5,de;q=0.3&lt;br /&gt;Accept-Encoding: gzip,deflate&lt;br /&gt;Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7&lt;br /&gt;Keep-Alive: 300&lt;br /&gt;Connection: keep-alive&lt;br /&gt;&lt;/pre&gt;
This is a standard &amp;quot;HTTP GET&amp;quot; request: the first line begins with GET, POST or another verb, then there are an arbitrary number of header lines.&lt;br /&gt;
&lt;br /&gt;
In this example, line 5 lists the acceptable languages I have specified: English, Spanish, French and German. In a form that is well documented as part of the specification for the HTTP protocol. &lt;br /&gt;
&lt;br /&gt;
So what are the sites that ignore your choice afraid of? The possibility that a Quebecois might actually see a few words&amp;nbsp; of English at a web kiosk, and be insulted? Or, the much-worse possibility that an Anglophone might see a few words of French at a web kiosk, and not understand that it&#039;s a web kiosk because it&#039;s not in English? :-)&lt;br /&gt;
&lt;br /&gt;
This tradition also doesn&#039;t respect the languages of the two hundred odd other ethnicities that our curiously- multicultural society has spawned. Nor does it respect the linguistic traditions of the Native Peoples who were here for thousands of years before the web arrived...&lt;br /&gt;
&lt;br /&gt;
So what to do? Tear down all the officious two-language-only home pages on government and corporation sites around the country. Let the site start in whatever language they please, unless the web standard HTTP header for language choice is present, in which case, use that language if you understand it, only falling back to one of the two &amp;quot;official&amp;quot; languages if none of the requested languages is understood.
        </description>
      
      
    
    
    
    <category>Web</category>
    
    <comments>http://theories.darwinsys.com:80/2008/08/21/1219338703442.html#comments</comments>
    <guid isPermaLink="true">http://theories.darwinsys.com:80/2008/08/21/1219338703442.html</guid>
    <pubDate>Thu, 21 Aug 2008 17:11:43 GMT</pubDate>
  </item>
  
  <item>
    <title>What&#039;s wrong with the web, Part 44: Browser Version Fascism</title>
    <link>http://theories.darwinsys.com:80/2008/08/19/1219200000000.html</link>
    
      
        <description>
          I get really frustrated when web sites tell me to &amp;quot;upgrade&amp;quot; from Firefox 3 to Firefox 1.5. I understand that they feel they have to play silly little trix to make their web site look like some over-inspired abstract landscape, but can they please just use a minimum of markup and get on with the job?&lt;br /&gt;
&lt;br /&gt;
P.S. I&#039;m going public with this one - not obscuring the URL or company name - because the particular company involved doesn&#039;t seem to have a web contact form that can be accessed.&lt;br /&gt;
&lt;img alt=&#034;Example of web site browser version fascism.&#034; src=&#034;http://www.darwinsys.com/images/part44.png&#034; /&gt;
        </description>
      
      
    
    
    
    <category>Web</category>
    
    <comments>http://theories.darwinsys.com:80/2008/08/19/1219200000000.html#comments</comments>
    <guid isPermaLink="true">http://theories.darwinsys.com:80/2008/08/19/1219200000000.html</guid>
    <pubDate>Wed, 20 Aug 2008 02:40:00 GMT</pubDate>
  </item>
  
  <item>
    <title>What&#039;s wrong with the web, Part 43(b)</title>
    <link>http://theories.darwinsys.com:80/2008/07/19/1216484340000.html</link>
    
      
        <description>
          Here&#039;s another example of a stupid web site problem that could have been easily avoided. I sent this to (name of web site) this morning; let&#039;s see if I get a response from this one.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Your Web Developers need to get with the &amp;quot;don&#039;t make me think&amp;quot; program! Trying to sign up for the first time, my account got locked just because I automatically put my phone number in STANDARD FORMAT whereas you say in tiny type that you want it without dashes. Come on, kiddies, how much work is it to remove dashes? In Java it&#039;s just inputString.replaceAll(&amp;quot;[ ()-]&amp;quot;, &amp;quot;&amp;quot;)&amp;nbsp; (this also removes spaces and parenthesis, commonly used in standard form phone numbers). Presumably ColdFusion can&#039;t have made it any harder. Get with the &amp;quot;don&#039;t make me think&amp;quot; program throughout, and your web site will be a lot more usable.&lt;/blockquote&gt;
        </description>
      
      
    
    
    
    <category>Web</category>
    
    <comments>http://theories.darwinsys.com:80/2008/07/19/1216484340000.html#comments</comments>
    <guid isPermaLink="true">http://theories.darwinsys.com:80/2008/07/19/1216484340000.html</guid>
    <pubDate>Sat, 19 Jul 2008 16:19:00 GMT</pubDate>
  </item>
  
  <item>
    <title>What&#039;s wrong with the web, Part 43</title>
    <link>http://theories.darwinsys.com:80/2008/06/18/1213806416248.html</link>
    
      
        <description>
          This is a cleaned-up version of what I sent to a major Canadian corporation&#039;s web team after trying to use their site.&lt;br /&gt;
----------------------&lt;br /&gt;
One thing that really sucks about some web sites, including yours, is the  designers&#039; wanton disregard for users&#039; time. For example, I tried a  simple thing like updating my address (because my May issue of [your print magazine]  arrived June 17, after most of the offers had expired). Yet after I  entered the correct address, it repeatedly failed the request with the  message &amp;quot;A correct postal code must be entered&amp;quot;. But NO GUIDANCE about  what format to use - is it ANANAN or ANA NAN? Neither worked! Either  should be acceptable - adding or removing a space character is hardly beyond the capabilities of today&#039;s computers. Or was your little Struts Action  trying to say that it thought the postal code disagreed with the  street/town address? Not that any city-built database would have a clue  about rural addresses anyway. What is wrong with your web people? Don&#039;t you know how to word a simple error message so it actually contains a dram of useful information?&lt;br /&gt;
&lt;br /&gt;
Thank you for listening. &lt;br /&gt;
&lt;br /&gt;
In the end, fortunately, I was able to contact a live human being via  the hundred-year-old telephone system and get him to change the address. At least, he said he had changed it,  although an hour later it&#039;s not yet made it to the web site&#039;s copy of the database.&lt;br /&gt;
----------------------------------&lt;br /&gt;
We&#039;ll see if they even reply. Or if the updated address makes it.&lt;br /&gt;
----------------------------------&lt;br /&gt;
After&amp;nbsp; an hour, I got two replies, the usual auto-responder acknowledgement, and, this gem:&lt;br /&gt;
Due to circumstances beyond our control, we are currently unable to respond to your request electronically. Please visit the Help section of the [Company Name] Website or contact [Company] at 1-800-bleah-bleah.&lt;br /&gt;
&lt;br /&gt;
I wonder if anybody actually reads their emails, or if the second is an auto-responder as well?
        </description>
      
      
    
    
    
    <category>Web</category>
    
    <comments>http://theories.darwinsys.com:80/2008/06/18/1213806416248.html#comments</comments>
    <guid isPermaLink="true">http://theories.darwinsys.com:80/2008/06/18/1213806416248.html</guid>
    <pubDate>Wed, 18 Jun 2008 16:26:56 GMT</pubDate>
  </item>
  
  </channel>
</rss>
