<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>DigInit :: digital initiatives &#187; webdev</title>
	<atom:link href="http://diginit.wordpress.com/category/webdev/feed/" rel="self" type="application/rss+xml" />
	<link>http://diginit.wordpress.com</link>
	<description>building the digital commons for libraries</description>
	<lastBuildDate>Fri, 13 Nov 2009 15:18:05 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='diginit.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/e4beb2286778f11feb7338d9f2b0f5af?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>DigInit :: digital initiatives &#187; webdev</title>
		<link>http://diginit.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://diginit.wordpress.com/osd.xml" title="DigInit :: digital initiatives" />
		<item>
		<title>Unix Global Find and Replace (using find, grep, and sed)</title>
		<link>http://diginit.wordpress.com/2008/04/23/unix-global-find-and-replace-using-find-grep-and-sed/</link>
		<comments>http://diginit.wordpress.com/2008/04/23/unix-global-find-and-replace-using-find-grep-and-sed/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 11:10:01 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[code/files]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/?p=54</guid>
		<description><![CDATA[Finding and replacing strings and characters can be a dicey operation for a web developer.  Too much can lead to breaking your web site.  Too little can lead to missing that piece of HTML needing to be updated or deleted. Many tools exist that can help you in the process &#8211; Dreamweaver, Homesite, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=54&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Finding and replacing strings and characters can be a dicey operation for a web developer.  Too much can lead to breaking your web site.  Too little can lead to missing that piece of HTML needing to be updated or deleted. Many tools exist that can help you in the process &#8211; Dreamweaver, Homesite, and many text editors have powerful interfaces for searching and replacing. (E.g., Use cntrl-f on windows or cmd-f on mac to see the Find and Replace window in Dreamweaver.) But there&#8217;s some really great functionality on the command line for Unix/Linux users that shouldn&#8217;t be overlooked. I&#8217;ve been experimenting with a procedure for making these global matches and replaces within the Unix shell environment and I wanted to document the process somewhere.  This seems like as good a place as any&#8230;</p>
<p>Important: All the commands below must be run from the shell environment on a Unix or Linux system. If you aren&#8217;t sure what I&#8217;m talking about, <a href="http://en.wikipedia.org/wiki/Unix_shell">check the wikipedia reference for shell</a>.</p>
<p><strong>Step 1: </strong>Find the pattern needing to be replaced or updated, print out files needing change</p>
<p>find . -exec grep &#8216;ENTER STRING OR TEXT TO SEARCH FOR&#8217; &#8216;{}&#8217; \; -print</p>
<p>*Note: I&#8217;m using the &#8220;find&#8221; and &#8220;grep&#8221; commands to search for a matching pattern which will print out a list of files and directories that need changes. If I&#8217;m at the top level of my web site the &#8220;.&#8221; in the find command will search for the pattern down through any directories below.  On a large site, the process can take some time.</p>
<p><strong>Step 2: </strong>Move/copy files into test directory to test expression; preserve owners, groups, timestamps<strong><br />
</strong></p>
<p>cp -p -r test test-backup</p>
<p>*Note: These directories would be named according to the directories or files you need to change based on the results from Step 1. The &#8220;-p&#8221; will preserve owners groups and timestamps in the copied directory. The &#8220;-r&#8221; will copy recursively down through any associated sub-directories. I do this so I can compare the new directory to the original directory after I&#8217;ve test run the global changes.</p>
<p><strong>Step 3: </strong>Run test on find and replace expression in /test-backup/ directory</p>
<p>find . \( -name &#8220;*.php&#8221; -or -name &#8220;*.html&#8221; \) | xargs grep -l &#8216;ENTER STRING OR TEXT TO SEARCH FOR&#8217; | xargs sed -i -e &#8217;s/ENTER OLD STRING OR TEXT TO REPLACE/ENTER REPLACEMENT STRING OR TEXT/g</p>
<p>*Note: I&#8217;m using the &#8220;find .&#8221; command to search for .php and html files in the current working directory as I only want to target the files that need to be touched (you should change according to your requirements), next I&#8217;m piping that result to the &#8220;grep&#8221; command which searches for the string or text specified and holds only the matched files in memory, and finally I&#8217;m passing the grep result to the &#8220;sed&#8221; command which matches the string or text and replaces it with the new string or text value.</p>
<p><strong>Step 4: </strong>Test files and applications to ensure changes didn&#8217;t break functionality and that owners, groups, timestamps were preserved</p>
<p><strong>Step 5:</strong> After testing, run expression from Step 3 in ALL the directories or files needing the changes. Delete /test-backup/ directory</p>
<p>Steps 1 and 3 are the heart of the matter. I&#8217;m learning the power of these commands, so I&#8217;m pretty cautious about backing up and testing on directories and files that aren&#8217;t live.  Once I have the expression dialed in, I&#8217;ll run it on a more global scale.  So, there you have it &#8211; my find and replace process in a nutshell. Use at your own discretion and feel free to share your thoughts in the comments.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/54/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/54/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/54/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=54&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2008/04/23/unix-global-find-and-replace-using-find-grep-and-sed/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>Ajax Workshop &#8211; Internet Librarian 2007</title>
		<link>http://diginit.wordpress.com/2007/10/29/ajax-workshop-internet-librarian-2007/</link>
		<comments>http://diginit.wordpress.com/2007/10/29/ajax-workshop-internet-librarian-2007/#comments</comments>
		<pubDate>Mon, 29 Oct 2007 01:11:19 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[code/files]]></category>
		<category><![CDATA[conferences/events]]></category>
		<category><![CDATA[education]]></category>
		<category><![CDATA[il2007]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2007/10/29/ajax-workshop-internet-librarian-2007/</guid>
		<description><![CDATA[My preconference,&#8221;AJAX for Libraries&#8221;, with Karen Coombs went really well. It&#8217;s always great working with Karen. She&#8217;s cool, composed, and &#8220;wicked&#8221; knowledgeable. For the second year in a row, we had a great group of participants. It&#8217;s nice to see a growing interest in emerging web programming frameworks and how they might be applied to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=48&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>My preconference,&#8221;AJAX for Libraries&#8221;, with <a href="http://www.librarywebchic.net/wordpress/2007/10/27/ajax-presentation-information-and-links/">Karen Coombs</a> went really well. It&#8217;s always great working with Karen. She&#8217;s cool, composed, and &#8220;wicked&#8221; knowledgeable. For the second year in a row, we had a great group of participants. It&#8217;s nice to see a growing interest in emerging web programming frameworks and how they might be applied to libraries.</p>
<p>Here are the updated slides and links:</p>
<p><a href="http://docs.google.com/TeamPresent?docid=agm4brmfpr7z_22gn955p&amp;skipauth=true">&#8220;AJAX for Libraries&#8221; Presentation</a><br />
<a href="http://docs.google.com/View?docid=dfcgqf69_132j77cpt">&#8220;AJAX for Libraries&#8221; Handout (Code Samples and Explanations)</a><a href="http://www.lib.montana.edu/~jason/files.php"><br />
&#8220;AJAX for Libraries&#8221; Code Downloads</a></p>
<p>And some additional examples of libraries using AJAX:</p>
<ul>
<li><a href="http://labs.di.tamu.edu:8080/geofolios/handle/123456789/2" target="_blank">TAMU Digital Repository :: Geologic Atlas of the United States</a></li>
<li><a href="http://www.vufind.org/demo/" target="_blank">VuFind Demo</a></li>
<li><a href="http://www.nines.org/collex" target="_blank">NINES</a></li>
<li><a href="http://blacklight.betech.virginia.edu/" target="_blank">Project Blacklight</a></li>
</ul>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/48/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/48/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/48/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=48&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2007/10/29/ajax-workshop-internet-librarian-2007/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>What are your patrons doing online?</title>
		<link>http://diginit.wordpress.com/2007/06/13/what-are-your-patrons-doing-online/</link>
		<comments>http://diginit.wordpress.com/2007/06/13/what-are-your-patrons-doing-online/#comments</comments>
		<pubDate>Wed, 13 Jun 2007 22:32:01 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[libraries]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">/2007/06/18/what-are-your-patrons-doing-online/</guid>
		<description><![CDATA[BusinessWeek has a quick snapshot of U.S. user activities online broken down by task and ages. (The study was conducted by the Forrester Research group.)

Source: http://www.businessweek.com/magazine/content/07_24/b4038405.htm.
Good news if you are into the web2.o stuff and you work in college libraries. The 18-21 set and 22-26 set are well represented in most task categories. And how [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=45&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>BusinessWeek has a quick snapshot of U.S. user activities online broken down by task and ages. (The study was conducted by the Forrester Research group.)</p>
<p><a href="http://diginit.files.wordpress.com/0724_6insiid_a.gif" title="Direct link to graphic"><img src="http://diginit.files.wordpress.com/0724_6insiid_a.thumbnail.gif?w=168&#038;h=128" alt="Who Participates And What People Are Doing Online" height="128" width="168" /></a></p>
<p>Source: <a href="http://www.businessweek.com/magazine/content/07_24/b4038405.htm">http://www.businessweek.com/magazine/content/07_24/b4038405.htm</a>.</p>
<p>Good news if you are into the web2.o stuff and you work in college libraries. The 18-21 set and 22-26 set are well represented in most task categories. And how about those task categories: Creator, Collector, Spectator, Joiner, Critic, etc. They help to define the possible tasks of web2.0 users. Granted the activities recorded refer to patterns in the web at large, but it gives libraries some guidance as to what our users are doing online. It&#8217;s also interesting to note the &#8220;Inactives&#8221;. There&#8217;s a whole population that doesn&#8217;t live and breathe the web. I get caught up in the &#8220;everybody&#8217;s online&#8221; thing, so it&#8217;s a nice gentle reminder.</p>
<p>The key is honing in on one or two likely applications for your library community and giving them a go. Want to enable the Collectors? Think about an XML feed to pieces of your digital collections. Or what about building a service for the Critics? Build a tagging or a comment/rating system into the catalog or digital collection.</p>
<p>An admission: it&#8217;s all fine and good for the student set, but college libraries have other interested parties like faculty and university admin. Part of the library role might be to &#8220;coach&#8221; these other parties into possible roles they might take up in their web use. A faculty member trying to build a research bibliography seems like the perfect candidate to become a &#8220;Collector&#8221; once given the right library tool or app. In this setting, outreach and education are still a library web developer&#8217;s best friend.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/45/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/45/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=45&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2007/06/13/what-are-your-patrons-doing-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>

		<media:content url="http://diginit.files.wordpress.com/0724_6insiid_a.thumbnail.gif" medium="image">
			<media:title type="html">Who Participates And What People Are Doing Online</media:title>
		</media:content>
	</item>
		<item>
		<title>&#8220;TERRA: The Nature of our World&#8221; gets Webby Nomination</title>
		<link>http://diginit.wordpress.com/2007/04/25/terra-the-nature-of-our-world-gets-webby-nomination/</link>
		<comments>http://diginit.wordpress.com/2007/04/25/terra-the-nature-of-our-world-gets-webby-nomination/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 03:34:07 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[conferences/events]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2007/04/25/terra-the-nature-of-our-world-gets-webby-nomination/</guid>
		<description><![CDATA[For the second time in as many months, &#8220;TERRA: The Nature of our World&#8221; (http://lifeonterra.com) has been noticed by the web critics.  This time it&#8217;s for the Webbys which have been called &#8220;the Oscars of the Internet&#8221; and with judges like Beck and David Bowie it&#8217;s definitely got some celeb street cred.  (The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=42&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>For the second time in as many months, &#8220;TERRA: The Nature of our World&#8221; (<a href="http://lifeonterra.com">http://lifeonterra.com</a>) has been noticed by the web critics.  This time it&#8217;s for the Webbys which have been called &#8220;the Oscars of the Internet&#8221; and with judges like Beck and David Bowie it&#8217;s definitely got some celeb street cred.  (The full MSU news story is available at <a href="http://www.montana.edu/cpa/news/nwview.php?article=4822">http://www.montana.edu/cpa/news/nwview.php?article=4822</a>.)</p>
<p><span>Once again, anyone has the opportunity to vote.  TERRA&#8217;s nomination can be found in the student category of the Online Film and Video section at <a href="http://pv.webbyawards.com/" target="_blank">http://pv.webbyawards.com</a>. Votes will be accepted through Friday, April 27 and winners announced May 1.</span></p>
<p>But the voting is not really the point of the post&#8230; I love that digital library initiatives was a cornerstone in this effort.  There&#8217;s an opportunity here for all diginit folk.  Find your niche as a content manager and provider.  My &#8220;in&#8221; was metadata, creating XML for syndication, relational database design, a little PHP magic, and creating a search backend.  The key was answering the need for a content manager and developing relationships towards that end.  Think about what could be your &#8220;in&#8221;.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/42/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/42/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/42/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/42/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/42/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=42&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2007/04/25/terra-the-nature-of-our-world-gets-webby-nomination/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>&#8220;TERRA: The Nature of our World&#8221; gets South by Southwest (SXSW) Nomination</title>
		<link>http://diginit.wordpress.com/2007/02/28/terra-the-nature-of-our-world-gets-south-by-southwest-sxsw-nomination/</link>
		<comments>http://diginit.wordpress.com/2007/02/28/terra-the-nature-of-our-world-gets-south-by-southwest-sxsw-nomination/#comments</comments>
		<pubDate>Wed, 28 Feb 2007 18:29:22 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[conferences/events]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2007/02/28/terra-the-nature-of-our-world-gets-south-by-southwest-sxsw-nomination/</guid>
		<description><![CDATA[I&#8217;ve mentioned the TERRA group project in previous posts.  Earlier this month, I received some great news regarding the project.  &#8220;TERRA: The Nature of our World&#8221; was nominated in the  student/university website category by  SXSW interactive Web Awards.
TERRA is a partnership between Montana PBS, The Media/Theatre Arts Department at Montana State [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=27&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve mentioned the TERRA group project in previous posts.  Earlier this month, I received some great news regarding the project.  &#8220;<a href="http://www.lifeonterra.com">TERRA: The Nature of our World</a>&#8221; was nominated in the  student/university website category by  <a href="http://2007.sxsw.com/interactive/web_awards/">SXSW interactive Web Awards</a>.</p>
<p>TERRA is a partnership between Montana PBS, The Media/Theatre Arts Department at Montana State University, Montana State University libraries, and various independent filmmakers.  Montana State University libraries was brought in to build/code the site and content management (metadata, data preservation architecture&#8230;) The site was designed with a nod to the future of digital libraries.  It&#8217;s a digital video library with commenting, ratings, tags AND a controlled vocabulary.  And it&#8217;s all wrapped up with some AJAX functionality  and a Dublin Core/OAI metadata backend.  The TERRA group also experimented with syndicating our content as podcasts.  You can actually <a href="http://www.apple.com/itunes/store/">search iTunes</a> for TERRA and receive our podcasts.  That&#8217;s powerful stuff and the reach of the site has been amazing.  Just last week, TERRA podcasts were placed as default content in the <a href="http://www.getdemocracy.com/downloads/">download for democracy player</a>, effectively doubling the TERRA audience in one fell swoop.   More and more, I see leveraging these type of communities as the future of library content distribution.</p>
<p>As for the nomination, I am honored and just a little surprised.  SXSW is the center of the web geek world and to even be considered is quite humbling.  We&#8217;ve got some university press lately, but I didn&#8217;t see it going a lot further.  (Check the <a href="http://www.montana.edu/cpa/news/nwview.php?article=4601">MSU news release</a> for complete details.)  So, I&#8217;m heading to Austin, TX with a colleague in March.  I&#8217;m excited to step off the library circuit and see how the other half lives.  Stay tuned for SXSW updates.</p>
<p>And if the mood should strike you, vote for &#8220;TERRA: The Nature of our World&#8221; in the People&#8217;s Choice Award race at <a href="https://secure.sxsw.com/peoples_choice/">https://secure.sxsw.com/peoples_choice/</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/27/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/27/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/27/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=27&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2007/02/28/terra-the-nature-of-our-world-gets-south-by-southwest-sxsw-nomination/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>S3 (Simple Storage Service) &#8211; Amazon and Libraries</title>
		<link>http://diginit.wordpress.com/2007/01/10/s3simple-storage-service-amazon-and-libraries/</link>
		<comments>http://diginit.wordpress.com/2007/01/10/s3simple-storage-service-amazon-and-libraries/#comments</comments>
		<pubDate>Wed, 10 Jan 2007 18:06:37 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[libraries]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2007/01/10/s3simple-storage-service-amazon-and-libraries/</guid>
		<description><![CDATA[Have you heard of Amazon&#8217;s s3 (Simple Storage Service)? From the site:
Amazon S3 is &#8220;storage for the Internet&#8221; with a simple Web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the Web.
It&#8217;s one of Amazon&#8217;s newer web services. At .15 cents/gig of storage, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=10&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Have you heard of <a href="http://www.amazon.com/gp/browse.html?node=16427261">Amazon&#8217;s s3 (Simple Storage Service)</a>? From the site:</p>
<blockquote><p><span class="small">Amazon S3 is &#8220;storage for the Internet&#8221; with a simple Web services interface that can be used to store and retrieve any amount of data, at any time, from anywhere on the Web.</span></p></blockquote>
<p>It&#8217;s one of Amazon&#8217;s newer web services. At .15 cents/gig of storage, it&#8217;s a pretty cheap option. Caveat emptor: S3 is intended for developers as an option for storage that can be queried with SOAP and REST web services, so they also get you for network traffic at .25 cents/gig. I wasn&#8217;t able to find anything in the fine print about checksum routines and the integrity of the objects, but I&#8217;m assuming backups and error checking are part of the Amazon routine. (Update from the horse&#8217;s mouth: <a href="http://developer.amazonwebservices.com/connect/thread.jspa?messageID=35612謜">found this thread in the forums which talks about Amazon&#8217;s data protection routines</a>. It&#8217;s reassuring&#8230;)</p>
<p>Can the library use this? I think so. Even with the mentioned caveats, in the end you are looking at taking the server management side out of the equation. That&#8217;s pretty liberating for the small digital shops that our libraries are. At work, we&#8217;re experimenting with using the service to store some of our master digitization objects. I mentioned that this was an experiment, right? We&#8217;ve got some objects on the S3 servers and are looking into building a web interface that will allow our Special Collections staff to pull down master files when they receive requests from patrons. We&#8217;re also working with a campus entity to store media files on S3 and then building a search interface to query S3 for the data. It&#8217;s all a work in progress, but something to consider. I can tell you that my library and university will never have the infrastructure or access to a network cloud like Amazon&#8217;s. That&#8217;s not a knock; them&#8217;s just the facts.</p>
<p>(Sidebar: If you&#8217;re interested in web services, think about browsing around the <a href="http://developer.amazonwebservices.com/">Amazon Web Services Developer Connection</a>. Lots of code examples, &#8220;howtos&#8221; and discussion to get you thinking about web service applications. Don&#8217;t be afraid to get you hands dirty and make some mistakes. It&#8217;s the only way to learn.)</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/10/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/10/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=10&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2007/01/10/s3simple-storage-service-amazon-and-libraries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>Anatomy of a Function</title>
		<link>http://diginit.wordpress.com/2006/11/30/anatomy-of-a-function/</link>
		<comments>http://diginit.wordpress.com/2006/11/30/anatomy-of-a-function/#comments</comments>
		<pubDate>Thu, 30 Nov 2006 07:02:11 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[code/files]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2006/11/30/anatomy-of-a-function/</guid>
		<description><![CDATA[It&#8217;s been a little while since my last post. My recent work schedule and Turkey Day played a part in that. I&#8217;ve been working .com hours on a super cool project. (I mentioned the TERRA group in an earlier post.) I&#8217;ve learned so much in the last couple of weeks. It&#8217;s amazing what a hard [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=23&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>It&#8217;s been a little while since my last post. My recent work schedule and Turkey Day played a part in that. I&#8217;ve been working .com hours on a super cool project. (I mentioned the TERRA group in an earlier post.) I&#8217;ve learned so much in the last couple of weeks. It&#8217;s amazing what a hard deadline and a shifting set of requirements will do to your web programming skills. All the hard work is about to bear fruit as as the <a href="http://www.lifeonterra.com/">new TERRA web site</a> is about to go live. Have a look at a different kind of digital library.</p>
<p>But, that&#8217;s not the point of this post&#8230; I wanted to share a little code that made some data conversion very simple over the course of the TERRA project. It&#8217;s a simple little php function that converts a <a href="http://dev.mysql.com/doc/refman/5.0/en/timestamp-4-1.html">MySQL timestamp</a> into <a href="http://en.wikipedia.org/?title=RFC_0822">an RFC 822 date format</a> (For the project, we stored the item update fields as timestamps and then converted them when we generated our various XML feeds. RFC 822 or RFC 2822 are necessary for valid feeds.) Here&#8217;s the php function in all its glory:</p>
<p>//function converts mysql timestamp into rfc 822 date<br />
function dateConvertTimestamp($mysqlDate)<br />
{<br />
$rawdate=strtotime($mysqlDate);<br />
if ($rawdate == -1) {<br />
$convertedDate = &#8216;conversion failed&#8217;;<br />
} else {<br />
$convertedDate = date(&#8216;D, d M Y h:i:s T&#8217;,$rawdate);<br />
return $convertedDate;<br />
}<br />
}<br />
//end dateConvertTimestamp</p>
<p>You call the function by including it on the page and using the following code:</p>
<p>$newPubdate = dateConvert(&#8220;$stringToConvert&#8221;);<br />
echo $newPubdate;</p>
<p>Where $stringToConvert would be any MySQL timestamp value that needs conversion.</p>
<p>In the end a string like this &#8220;2005-05-17 12:00:00&#8243; looks something like this &#8220;Tue, 17 May 2005 12:00:00 EST&#8221;. You could also reverse the conversion using this php function:</p>
<p>//function converts rfc 822 date into mysql timestamp<br />
function dateConvert($rssDate)<br />
{<br />
$rawdate=strtotime($rssDate);<br />
if ($rawdate == -1) {<br />
$convertedDate = &#8216;conversion failed&#8217;;<br />
} else {<br />
$convertedDate = date(&#8216;Y-m-d h:i:s&#8217;,$rawdate);<br />
return $convertedDate;<br />
}<br />
}<br />
//end dateConvert</p>
<p><strong>NOTE: If/when you copy and paste the above code, make sure all &#8221; (double quotes) and &#8216; (single quotes) are retyped. WordPress is doing a number on the proper format.</strong></p>
<p>I just wanted to share the wealth a bit. If you&#8217;ve got questions or suggestions, don&#8217;t be shy about dropping a comment. I&#8217;ll be home in Wisconsin for the next several days, but I&#8217;ll have limited internet access there.  I&#8217;ll try to answer questions if they arise.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/23/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/23/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/23/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/23/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/23/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=23&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2006/11/30/anatomy-of-a-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
		<item>
		<title>Dueling Ajax &#8211; couple of articles</title>
		<link>http://diginit.wordpress.com/2006/11/14/dueling-ajax-couple-of-articles/</link>
		<comments>http://diginit.wordpress.com/2006/11/14/dueling-ajax-couple-of-articles/#comments</comments>
		<pubDate>Tue, 14 Nov 2006 06:17:20 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[publications]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2006/11/14/dueling-ajax-couple-of-articles/</guid>
		<description><![CDATA[I&#8217;ve been a bit of the Ajax poster boy lately.  Two pieces that I wrote for library audiences have just been published.
&#8220;Building an Ajax (Asynchronous JavaScript and XML) Application from Scratch.&#8221; Computers in Libraries 26, no. 10 (November/December 2006).
&#8220;Ajax (Asynchronous JavaScript and XML): This Isn&#8217;t the Web I&#8217;m Used To.&#8221; Online 30, no. 6 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=17&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve been a bit of the Ajax poster boy lately.  Two pieces that I wrote for library audiences have just been published.</p>
<p>&#8220;<em><strong>Building an Ajax (Asynchronous JavaScript and XML) Application from Scratch</strong></em>.&#8221; <em>Computers in Libraries</em> 26, no. 10 (November/December 2006).</p>
<p>&#8220;<em><strong>Ajax (Asynchronous JavaScript and XML): This Isn&#8217;t the Web I&#8217;m Used To</strong></em>.&#8221; <em>Online</em> 30, no. 6 (November/December 2006)<br />
uri: <a href="http://www.infotoday.com/Online/nov06/Clark.shtml" target="_blank">http://www.infotoday.com/Online/nov06/Clark.shtml</a></p>
<p class="MsoNormal"><font face="Arial" size="2"><span style="font-size:10pt;font-family:Arial;"><a href="http://www.infotoday.com/Online/nov06/Clark.shtml" title="http://www.infotoday.com/Online/nov06/Clark.shtml"></a></span></font></p>
<p>Both articles fall into the &#8220;introductory&#8221; mode, although the CIL article walks you through a proof of concept Ajax page update script (<a href="http://diginit.wordpress.com/2006/10/22/proof-of-concept-ajax-page-update/">mentioned in an earlier post&#8230;</a>). I want to be clear: I&#8217;m not an Ajax evangelist. I find the suite of technologies that make Ajax go intriguing and the improvements that the Ajax framework can make to some library applications are worth learning about and applying. I tried to point out the good and the bad. Although, it is a four letter word&#8230;</p>
<p>I did want to mention a couple of books that were really helpful in getting me up to speed with the Ajax method.</p>
<p><strong><em>Ajax in Action</em></strong> by Dave Crane, Eric Pascarello and Darren James<br />
<a href="http://www.amazon.com/Ajax-in-Action-Dave-Crane/dp/1932394613"><img src="http://ec1.images-amazon.com/images/P/1932394613.01._AA240_SCLZZZZZZZ_V59003887_.jpg" border="0" /></a></p>
<p><strong><em>DHTML Utopia Modern Web Design Using JavaScript &amp; DOM</em></strong> by Stuart Langridge<br />
<a href="http://www.amazon.com/DHTML-Utopia-Modern-Design-JavaScript/dp/0957921896"><img src="http://ec1.images-amazon.com/images/P/0957921896.01._AA240_SCLZZZZZZZ_V37012711_.jpg" border="0" /></a></p>
<p>(Click on the book covers if you are into book learnin&#8217; and want to browse the Amazon records.)  Dig in and discover (or rediscover) some of the possibilities when you put Javascript to work in your apps.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/17/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/17/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=17&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2006/11/14/dueling-ajax-couple-of-articles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>

		<media:content url="http://ec1.images-amazon.com/images/P/1932394613.01._AA240_SCLZZZZZZZ_V59003887_.jpg" medium="image" />

		<media:content url="http://ec1.images-amazon.com/images/P/0957921896.01._AA240_SCLZZZZZZZ_V37012711_.jpg" medium="image" />
	</item>
		<item>
		<title>What&#8217;s up with Ruby on Rails?</title>
		<link>http://diginit.wordpress.com/2006/10/12/whats-up-with-ruby-on-rails/</link>
		<comments>http://diginit.wordpress.com/2006/10/12/whats-up-with-ruby-on-rails/#comments</comments>
		<pubDate>Thu, 12 Oct 2006 22:24:46 +0000</pubDate>
		<dc:creator>Jason A. Clark</dc:creator>
				<category><![CDATA[ruby/rails]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://diginit.wordpress.com/2006/10/12/whats-up-with-ruby-on-rails/</guid>
		<description><![CDATA[Yeah, I&#8217;ve been playing around with Ruby on Rails and I gotta&#8217; say it&#8217;s pretty slick. Where should I start? Intuitive functions, easy mapping of database table relationships, simple templating (using layout views), MVC (model, view, controller) application architecture&#8230;
The MVC structure is nice, but it took me a little time to realize where each piece [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=4&subd=diginit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Yeah, I&#8217;ve been playing around with Ruby on Rails and I gotta&#8217; say it&#8217;s pretty slick. Where should I start? Intuitive functions, easy mapping of database table relationships, simple templating (using layout views), MVC (model, view, controller) application architecture&#8230;</p>
<p>The MVC structure is nice, but it took me a little time to realize where each piece of the application lived. It also has some data model quirks &#8211; all tables must use a plural format naming scheme (e.g., table = users), foreign keys must have a format of &#8220;name_id&#8221; (e.g., users table foreign key = user_id), column names created_on and updated_on will automatically be populated correctly, etc. You get a sense of these rules as you start to use the framework. The documentation should catch up with these problems eventually. (I hope.)</p>
<p>So it has some limitations, but the real advantage is the generate scaffold command that reads data tables and maps simple html forms and pages for all CRUD (Create, Read, Update, and Delete) functions of a database web app. And this is where it seems to leap ahead of php &#8211; you can have a functioning dynamic web app in about a half hour. It&#8217;s bare bones, but it works. Lots of tutorials and introductions out there. Amy Hoy&#8217;s <a href="http://www.slash7.com/articles/2005/01/24/really-getting-started-in-rails">Really Getting Started in Rails</a> is one of the better ones.  If you are into book learnin&#8217;, <strong><em>Agile Web Development with Rails: A Pragmatic guide</em></strong> is a good place to start.  Check it out at <a href="http://worldcatlibraries.org/wcpa/isbn/097669400X">http://worldcatlibraries.org/wcpa/isbn/097669400X</a>.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/diginit.wordpress.com/4/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/diginit.wordpress.com/4/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/diginit.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/diginit.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/diginit.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/diginit.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/diginit.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/diginit.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/diginit.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/diginit.wordpress.com/4/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/diginit.wordpress.com/4/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/diginit.wordpress.com/4/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=diginit.wordpress.com&blog=32913&post=4&subd=diginit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://diginit.wordpress.com/2006/10/12/whats-up-with-ruby-on-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e9c3e8cd1eecfd6a197f17ede70b82a1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">diginit</media:title>
		</media:content>
	</item>
	</channel>
</rss>