Yesterday, it seems that the site I spent about the last 4 months developing, The Farmshed, went live! The old disastrous site is thankfully gone, but the new site isn’t without it’s share of problems. The markup is quite semantic, but not totally pure. There is a single layout table used to achieve the 3 column layout, but I was forced to implement that for reasons beyond anyone’s control – Internet Exploder! Most of the site validates. In fact all of the pages I worked on while I was there do validate as XHTML 1.0 Transitional, but sadly, several of the pages created after I left do not.
On one of the pages, he seems to have made one of the most bewildering errors I’ve ever seen. A mailto:
link has been written like this.
<a mailto:customerservice@thefarmshed.com.au.invalid>Customer
Service</a>
Obviously, it should be:
<a href="mailto:customerservice@thefarmshed.com.au.invalid">Customer
Service</a>
However, it’s no-longer my problem, I just hope it gets fixed. (The e-mail was munged with .invalid
to prevent spammers finding it)
Other than the bewildering validation errors, and some relatively minor UTF-8 encoding problems due to the configuration of the database (that will hopefully be fixed in the near future), the server has its own problems also. Visiting the URI, http://www.thefarmshed.com.au/
, redirects to the IP address of the server. This is obviously a temporary measure until the DNS records are set up properly, but it’s the method of redirection that I find odd. The HTTP request and response headers contain the following:
http://www.thefarmshed.com.au/
GET / HTTP/1.1
Host: www.thefarmshed.com.au
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; rv:1.7.3) Gecko/20041001 Firefox/0.10.1 StumbleUpon/1.998
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: en-au,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
HTTP/1.x 301 Error
Location: http://61.95.30.11/
Server: Microsoft-IIS/4.0
Content-Type: text/html
Content-Length: 135
Notice the 301
response code! A 301
is supposed to be HTTP/1.x 301 Moved Permanently
. Firstly, I don’t understand why the poorly configured Microsoft IIS HTTP server is sending an invalid response, and secondly, I don’t understand why it would be trying to send a Moved Permanently
response. Ideally, it should be sending a 302 Found
(for HTTP 1.1), or at least the HTTP 1.0 name: 302 Moved Temporarily
. Oh well, I guess that’s either the result of using an inferior Microsoft server, or the fact it has not been configured properly.
I think that’s enough problems that I need to point out, my purpose is not to criticise his mistakes, but to point out what needs to be looked into. Overall, I would have to say that I’m relatively proud of the work I did for The Farmshed, I certainly did make a difference towards the quality of the site. It is much better than the vast majority of the web, but it could be better. I never expected the site to be perfect as soon as it launced, though I did try my best to achieve that – there were, unfortunately, some factors beyond my control that prevented that.
Some of the good things in the site include the almost complete use of CSS for layout and presentation (except for the single table mentioned earlier). The whole menu is a pure CSS menu, backed up with an IE-only script. It works perfectly in Firefox and IE, but there seems to be some minor bugs with Opera, but it does work. I believe it does work in Safari, but neither Safari, nor sadly, Opera were tested in during development – just Firefox, and occasionally IE. There were originally skip-links at the top, but I was ordered to remove them, despite my objections. All the images have reasonable alt
text and the site is fairly accessible to non-visual browsers. Unfortunatly, the whole site is locked up, you have to be a member to access anything. I objected, but it was a corporate/marketing decision I had to accept.
As I said once before, working at The Farmshed was a learning experience, and I certainly have gained some invaluable experience, both good a bad. I’m happy to have worked on creating such a high quality site, but I’m happier to be moving on to something better.
Especially since I’ve been reading through HTTP 1.1 recently to ameliorate some things in my custom Web log, such an error as “HTTP/1.x 301 Error” seems quite odd indeed. Indeed, the code should have been “302 Found” (or ideally “303 See Other”), but why “HTTP/1.x”? That’s the really weird part.