5th Annual Conference on Technology & Standards April 28 – 30, 2008 Hyatt Regency Washington on Capitol Hill www.PESC.org Web Tools A Technical Perspective Tim Bornholtz 5th Annual Conference on Technology & Standards RSS • XML file published to a web site • Aggregators periodically retrieve your file (This is slightly different than I said in the business session) 5th Annual Conference on Technology & Standards RSS – Versions Version Owner Pros Status Recommendation RSS 0.91 UserLand Very simple Officially obsolete by Use for basic 2.0 but still widely syndication used RSS 1.0 RSS-DEV Working Group RDF based Stable core Use for RDF-based applications RSS 2.0 UserLand Easy migration from 0.9x, widely accepted Stable core, active module development Use for general purpose metadata rich syndication Atom 1.0 IETF (RFC 4287) Open standard, widely accepted Official IETF standard Use whenever possible 5th Annual Conference on Technology & Standards RSS 2.0 vs Atom • • • • RSS 2.0 Plaintext or escaped HTML (no way to signify which) RFC 822 date format US ASCII only More widely adopted • • • • Atom Explicitly set content type (plain text, escaped HTML, XHTML, XML, and binary) RFC 3339 date format (XML standard) Supports Unicode Not as widely adopted but more flexible th 5 Annual Conference <?xml version="1.0"?> <rss on version="2.0"> Technology & <channel> Standards <title>Sample Feed</title> <link>http://example.com/</link> <description>Current news entries</description> <language>en-us</language> <pubDate>Tue, 27 Apr 2008 04:00:00 GMT</pubDate> <item> <title>Article Title</title> <link>http://example.com/2008/04/27/sample.html</link> <description>As much of the article as you wish to display here</description> <pubDate>Tue, 26 Apr 2008 09:39:21 GMT</pubDate> <guid>http://example.com/2008/04/27/sample.html#item573</guid> </item> </channel> </rss> 5th Annual Conference on Technology & Standards How to implement • • • • • • Determine the content Generate the XML feed Assign a well recognized URL Post the RSS feed on your website Use common images for linking Modify existing HTML to include link to feed <link rel="alternate" type="application/atom+xml" title=“Atom Feed" href=“feed/atom" /> <link rel="alternate" type="application/rss+xml" title="RSS Feed" href=“/feed/rss" /> 5th Annual Conference on Technology & Standards Developer Tools • Source Code Tools publish RSS • Project Management Tools – Calendar RSS with every milestone – RSS with all recent activities • Bug tracking tools – RSS for my outstanding bugs 5th Annual Conference on Technology & Standards Web sites as web services • Website APIs – Usually REST based but many are SOAP based • Unstructured information gives way to structured information • Google, Yahoo!, MSN Live, Amazon, YouTube, and many more 5th Annual Conference on Technology & Standards 5th Annual Conference on Technology & Standards 5th Annual Conference on Technology & Standards Hotjobs RSS feed http://hotjobs.yahoo.com/rss/0/USA/-/-/-/student-loans 5th Annual Conference on Technology & Standards 5th Annual Conference on Technology & Standards Google code sample 5th Annual Conference on Technology & Standards Mashups • Using the APIs of two or more sites to create a new site • Yahoo! Pipes • http://programmableweb.com • At this point it is more of a curiosity and a collection of interesting ideas than a business driver. 5th Annual Conference on Technology & Standards Mobile Web Browsers <link href="/css/screen.css" media="screen" rel="Stylesheet" type="text/css" /> <link href="/css/hh.css" media="handheld" rel="Stylesheet" type="text/css" /> • Many Ajax calls will not work on a mobile phone • Section 508 compliant web sites require very little changes to work on a mobile phone 5th Annual Conference on Technology & Standards Considering dynamic languages • • • • • Many recent improvements in web frameworks Ruby on Rails, PHP, Python Designed specifically for developing web sites Quick development speed Long term maintainability 5th Annual Conference on Technology & Standards "Jesus reflected on his situation and felt irrepressible sadness. His tear-ducts filled to a point where they could hold no longer and had to be released." 5th Annual Conference on Technology & Standards "Jesus reflected on his situation and felt irrepressible sadness. His tear-ducts filled to a point where they could hold no longer and had to be released." Vs “Jesus wept.” 5th Annual Conference on Technology & Standards Source: http://www.tbray.org/ongoing/When/200x/2006/11/10/Comparing-Frameworks 5th Annual Conference on Technology & Standards Ruby on Rails • Ruby is the programming language – Pure object oriented – Interpreted scripting language – Loosely typed language • Rails is the web framework – Full stack framework – Model-View-Controller pattern – Ajax built in 5th Annual Conference on Technology & Standards Ruby on Rails Benefits • • • • • • • • Vastly reduced code footprint Zero configuration DRY – Don’t Repeat Yourself Rapid development methodology Ajax UI support IDE automation not required Open source Integrated testing 5th Annual Conference on Technology & Standards Ruby on Rails Cautions • Relatively new framework • Difficult to retrofit to existing database schemas • The Rails way or the wrong way – no middle ground 5th Annual Conference on Technology & Standards Rails demo 5th Annual Conference on Technology & Standards Questions Tim Bornholtz tim@bornholtz.com http://www.bornholtz.com (540) 446-8404