I've been using Visual Studio 2005 on a recent project and was surprised that even though it is supposed to feature lots of web accessiblity tools and options, they don't seem to be turned on by default. I'll bring you an example to back this up.
I created a new ASP.NET page, essentially it was a simple form, which when submitted sent an email; similar to a contact form if you like. The form was built within an HTML table, with ASP:Label controls to hold the textbox definitions.
On viewing the page in a browser and examining the source code, I noticed that the ASP:Label controls are converted to HTML <span> tags, which is a little bizarre. After a little research I found that if you use the AssociatedControlID property of the ASP:Label to link to the related textbox the HTML source code produced now uses an HTML <label> tag.
I also figured out that using the ToolTip property of the ASP:Label control renders as the title property of the HTML label tag.
So the following ASP.NET source code:
<asp:Label ID="LblDayMovedOut" runat="server" ToolTip="Day Moved Out" AssociatedControlID="DayMovedOut">
<asp:DropDownList ID="DayMovedOut" runat="server"></asp:DropDownList>
<asp:Label ID="LblMonthMovedOut" runat="server" ToolTip="Month Moved Out" AssociatedControlID="MonthMovedOut">
<asp:DropDownList ID="MonthMovedOut" runat="server"></asp:DropDownList>
<asp:Label ID="LblYearMovedOut" runat="server" ToolTip="Year Moved Out" AssociatedControlID="YearMovedOut">
<asp:DropDownList ID="YearMovedOut" runat="server"></asp:DropDownList>
Would render the following bloated, but accessible HTML:
<label for="ctl00_ContentPLaceHolder_DayMovedOut" id="ctl00_ContentPLaceHolder_LblDayMovedOut" title="Day Moved Out">
<select name="ctl00$ContentPLaceHolder$DayMovedOut" id="ctl00_ContentPLaceHolder_DayMovedOut">
<label for="ctl00_ContentPLaceHolder_MonthMovedOut" id="ctl00_ContentPLaceHolder_LblMonthMovedOut" title="Month Moved Out">
<select name="ctl00$ContentPLaceHolder$MonthMovedOut" id="ctl00_ContentPLaceHolder_MonthMovedOut">
<label for="ctl00_ContentPLaceHolder_YearMovedOut" id="ctl00_ContentPLaceHolder_LblYearMovedOut" title="Year Moved Out">
<select name="ctl00$ContentPLaceHolder$YearMovedOut" id="ctl00_ContentPLaceHolder_YearMovedOut">
I'm a big fan of Google Reader. I tried the first Google Reader interface not long after it was released and couldn't get on with it. It didn't have much going for it. It was hard to use and read articles from, and it was buggy although it was a beta release.
Since the interface was changed however it has progressed in leaps and bounds. It is now my feed reader of choice. I didn't particularly like the Bloglines interface either.
Mobile Feed Reading
I'm a busy person and I don't get much time during the day to catch-up on the news I want to hear about. So after purchasing a Windows Mobile MDA with unlimited 3G Internet access I was on the look out for a decent mobile feed reader.
Even though browsing normal websites with mobile devices is possible, it's not a rewarding experience because not many sites are optimised for the small interface.
Thankfully Google Reader has a fairly decent mobile interface, that includes a mobile proxy to reformat normal web pages to make them much more readable on small mobile devices.
Google have managed to shoe-horn most of the functionality into the mobile version, but it is a lot more buggy than the normal web version. Perhaps some of the bugs I come across are down to buggy web feeds, but Google should be able to find a way around most problems.
Google Reader Mobile User Interface Enhancements
Here are some of the bugs/bugbears I have with the mobile interface (in no particular order)
- There should be a link straight through to the article on the site in question, not just the summary page in Reader. This will reduce the amount of clicks if you know you want to read the article even without reading a summary first.
- Why do we need the more... Link when we now have the mark these items as read... Link?
- When you star an item it reloads the whole page. Can it not return to the list on news items?
- Some blogs cause http errors, produce no article when you click through, feature loads of links that you need to scroll through to get to the content, or show the summary as being the same as the blog title.
- I would like the option of being about to read only a subset of my feeds from the mobile interface.
I use the new shared items widget on my blog to let my users know what I've been reading lately. From the web interface you can quickly share feed items with a simple click. This functionality is missing from the mobile interface however. So the work around for the time being is to star each item I want to share with my readers and click the share button on each item when I get on a desktop machine.
The interface is improving all the time, so hopefully Google will listen to its users, because I know I'm not the only one who has views on some of these topics.
Just to recap, I bought Windows XP Media Center edition with an upgrade voucher to Windows Vista Home Premium last year. After sending off all my details to claim my Vista DVD and receiving it, I thought it best to clear some room on one of my hard disks and run Windows Vista Upgrade Advisor before I go any further.
I had previously ran a beta version of the upgrade advisor prior to upgrading my OS from Windows XP Pro to Media Center edition and as far as I can remember all my hardware was compatible (software was another story!).
However... While upgrading my machine to Media Center I also upgraded some of my hardware. I upgraded my wireless 802.11b Netgear MA111 USB stick to a US Robotics 5418 802.11g PCI adapter (This allows for video streaming around my house via my Xbox 360, and also reduces the amount of USB devices I have hanging off the back of my machine).
I was also severely running out of disk space, so I added a SATA RAID card and bought two SATA HDDs so I could set up a mirrored (RAID 1) configuration for a little peace of mind).
After running the upgrade advisor you can now probably guess what devices weren't supported in Windows Vista...Yep, the USR5418 wireless PCI adapter and the Adaptec 1210SA SATA RAID controller, typical I thought!
I have checked the manufacturers' support sections for these devices, but future Vista drivers for them don't look promising. So unless I can find a driver that will work with these devices I don't see much point in upgrading to Vista at the moment. Can you imagine the Aero interface in all it's glory, but no data to access and no web to surf on!! The only other solution is to upgrade these components again, but I am reluctant to spend anymore money on my aging computer.
Hardware Manufacturers or Microsoft?
So who is to blame for this lack of compatibility? The devices aren't exactly that old, Microsoft has had numerous beta versions of Vista available for hardware and software companies to test and develop for, but it seems they want you to buy the latest product instead. Even big companies like Apple had problems with iTunes after the Vista launch.
I finally received my Vista Home Premium upgrade DVD this morning. I got an email claiming it was being shipped earlier this month and commented on my thoughts here.
Unlike the retail versions of Vista you don't get the snazzy clear box with the rounded corner. I can't complain though, it came in a clear DVD case with a quick start guide and a new OEM Certificate of Authenticity (CoA). You may remember I bought a copy of Media Center 2005 with a Vista Upgrade voucher last year.
It also comes with a slip of paper that states the following:
Licensed Device. This Windows Vista software replaces the Microsoft Windows XP software that is eligible for the upgrade to this software. You may install and use this software only on the device on which you acquired the Windows XP software.
Reassignment to Another Device.
You may not reassign the license for this software to another device.
It also goes on to talk about transferring to a third party and support services.
This goes someway to answering some of my questions. When I get around to installing Vista I'll no doubt be adding some more posts here. I need to give my hard drives a spring clean before I can do that though ;-)
I received an email from Amazon Associates yesterday explaining their contextual adverts are now out of closed beta and are now available for their associates to use (although still in beta).
I checked out the demo sites they mentioned, looked at the source HTML and logged into the Associates homepage to see what customisations were available.
No More Manual Links!
Hold your horses! Those of you who are Adsense publishers beware! I have been reading Adsense terms and conditions and some blog posts and I'm pretty sure you can't use Adsense and Amazon Context Links ads on the same page.
Does anyone have Google's official stance on this?
What about Amazon's terms and conditions? Do they have similar terms concerning competitor contextual ads?
At the end of the day, you can't blame Google from wanting to hold on to it's huge Adsense publisher network.
Media Extenders are particularly useful for streaming video to your TV. Here in the UK the only available Media Extenders you can purchase come in the form of an Xbox 360.
I have been using my Xbox 360 to stream movies stored on my main Media Center PC to my living room over a wireless network (802.11g).
Occasionally I get a "Network Congestion" message appear in the top-right-hand corner, which comes accompanied with a small amount of picture judder/stutter. It's still highly watchable, just a little annoying. Information is available to help you improve your wireless performance; however the crux of the issue is the wireless standards. The Xbox wireless networking adapter supports the following WLAN standards 802.11a, 802.11b and 802.11g. The 802.11n standard has not been ratified by the IEEE yet, but when it comes around it will improve the throughput of data.
The Xbox 360 wireless networking adapter doesn't support any draft version of the 802.11n standard however, so we are stuck with 802.11a,b,g, unless we run an ethernet cable from the router to the Xbox, but that kind of defeats the object, doesn't it?
Microsoft recommends the following:
- Only have 1 wireless route between your PC -> Router -> Media Extender
- Use 802.11a standard as it works at 5GHz compared to the congested 2.4GHz channel
- Use a router designed for Windows XP Media Center Edition
I fairly certain 802.11a is not legal in the UK, can anyone confirm this?
Apple have just released Apple TV, essentially a device used to wirelessly bridge the gap between iTunes on your computer (Mac, PC) and your TV set in your living room.
Apple added video downloads to the iTunes service a while back, by getting several Hollywood studios on-board. These videos have so far only be available to watch on your computer screen or on your iPod video. Apple TV aims to fix this, by allowing your iTunes library to be wirelessly streamed to your HDTV.
Xbox 360's Media Capabilities
Microsoft on the other hand have similar strategies on invading peoples' living rooms with digital content, theirs though, is in the form of the Xbox 360, which as well as being a high definition games machine is also a very capable Media Center Extender.
As a Media Center Extender it wirelessly streams content from Windows Media Center, or Windows Vista (Home Premium and Ultimate editions) computers. If you don't have a Media Center edition of Windows you can still stream your music, pictures and just recently WMV videos too from the Xbox console using Windows Media Connect.
So How Do Apple TV and Xbox 360 Compare?
Ok, here's a matrix comparision table between Apple TV and the Xbox 360, so you can make your own mind up.
|Feature||Apple TV||Xbox 360
|HD Games Machine
||Yes (optical and RCA analogue)
||Yes (optical and RCA analogue)
||Yes (built-in) (pre-n)
||Yes (sold separately) (a, b, g)
|HD Resolution capabilities
||1080i, 720p, 576p, or 480p
||1080p, 1080i, 720p, 480i,480p
|HD DVD player
||Yes (sold separately)
||Yes (sold separately)
||20GB (premium package only, not needed for streaming)
|Video formats supported
||H.264 and protected H.264 (from iTunes Store): Up to 5 Mbps, Progressive Main Profile (CAVLC) with AAC-LC audio up to 160 Kbps (maximum resolution: 1280 by 720 pixels at 24 fps, 960 by 540 pixels at 30 fps
iTunes Store purchased video: 320 by 240 pixels or 640 by 480 pixels
MPEG-4: Up to 3 Mbps, Simple Profile with AAC-LC audio up to 160 Kbps (maximum resolution: 720 by 432 pixels at 30 fps)
|WMV only, although a Windows 3rd party app called Transcode360 will allow most other formats to be streamed
|Audio formats supported
||AAC, protected AAC (from iTunes Store), MP3, MP3 VBR, Apple Lossless, AIFF, WAV
||MP3, WMA, un-encoded AAC, CD, DVD audio
Back in January this year I decided enough-was-enough with increasing amounts of automated SPAM coming into my inbox and originating from my site. I decided to do something about it. My contact form has been attracting lots of SPAM bots which were trying their best to relay their SPAM through my site.
My form has always had the To: and From: fields hard-coded however, so I doubt anything ever got relayed, but they all got sent to me anyhow.
As a result I now verify that the form was actually filled in my a HUMAN each time the form gets sent! I've built an ASP CAPTCHA function to achieve this (Completely Automated Public Turing test to tell Computers and Humans Apart), more about CAPTCHAs here.
Accessibility and CAPTCHAs
There are however down-sides to this SPAM free existence. CAPTCHA images in the form that I am using are inherently inaccessible, so I intend to use another system in conjunction with my image CAPTCHA as used my Matt Cutts on his blog.