I continue to spend a lot of time just on improving my web development skills. Recently I’ve been working on some complicated JavaScript which required me to spend an entire day researching how to parse XML using JavaScript. I created a cheat sheet on that topic and added it to my notes because there are many tricky technical details to XML parsing with JavaScript.
Due to the difficulty in debugging my JavaScript I also spent more time on learning how to use Firebug. You frequently find Firebug on lists of favorite web developer tools but there are few articles on how to actually use it to solve problems. Firebug did fail me when it came to troubleshooting one problem because it uses Firefox’s normalized html which may not match the actual source code. In other words, the problem was due to some invalid HTML which Firefox cleaned up to be helpful so Firebug was not revealing the problem. I installed a few useful Firebug extensions like YSlow and FirePHP. FirePHP required me to upgrade my PHP version that I have installed so that took up even more of my time.
Speaking of PHP, I have been steadily improving my knowledge of this important web programming language. I had to create several RSS feeds using PHP so I learned a lot about creating XML documents from scratch. I have ordered a book on CakePHP and Elgg, a social networking framework based on PHP.
I spent another full day researching RSS. I added topics on Atom 1.0 and RSS 2.0 to my notes. Atom feeds use the ISO 8601 date format while RSS uses the RFC822 date format. However, what interested me the most was the Media RSS version of a RSS Feed which was developed by Yahoo! to deliver media files in feed enclosures. YouTube uses Media RSS for its feeds although I don’t think many people use them. But I did discover that the Adobe Media Player can handle a YouTube RSS feed. It does an awesome job of handling the video and even downloads them for later viewing. I was quite impressed. I created my own Media RSS feed but it did not work in the Adobe Media Player. However, it did work in Miro which also supports Media RSS feeds (it calls them channels). “Miro is a free, open source Internet TV and video player that can automatically download videos from RSS-based channels.” Media RSS is another example of the evolution of the Internet as a video entertainment platform. Unfortunately it is under-utilized because it requires some technical skills. Most web sites do not provide Media RSS feeds and it requires custom programming to create a custom RSS feed.