<?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/"
	>

<channel>
	<title>Connecting Things - Ross Bates &#187; Collaboration</title>
	<atom:link href="http://www.rossbates.com/category/collaboration/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rossbates.com</link>
	<description></description>
	<lastBuildDate>Thu, 19 Jan 2012 20:06:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>To Understand is to Perceive Patterns</title>
		<link>http://www.rossbates.com/2012/01/to-understand-is-to-perceive-patterns/</link>
		<comments>http://www.rossbates.com/2012/01/to-understand-is-to-perceive-patterns/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 18:19:27 +0000</pubDate>
		<dc:creator>Ross</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Linked Data]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Social Networks]]></category>
		<category><![CDATA[Visualization]]></category>

		<guid isPermaLink="false">http://www.rossbates.com/?p=356</guid>
		<description><![CDATA[Take a minute to watch this video made by @jason_silva and @notthisbody From cells to a cities, visualizing the world as a series of recurring patterns which can be understood is awe inspiring to me. To think that once we unlock these patterns we&#8217;ll find nothing is random, that makes me optimistic.]]></description>
			<content:encoded><![CDATA[<p>Take a minute to watch this video made by <a href="https://twitter.com/jason_silva" title="@jason_silva">@jason_silva</a> and <a href="https://twitter.com/notthisbody" title="@notthisbody">@notthisbody</a></p>
<p><iframe src="http://player.vimeo.com/video/34182381?title=0&amp;byline=0&amp;portrait=0" width="400" height="225" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<p>From cells to a cities, visualizing the world as a series of recurring patterns which can be understood is awe inspiring to me.</p>
<p>To think that once we unlock these patterns we&#8217;ll find nothing is random, that makes me optimistic.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rossbates.com/2012/01/to-understand-is-to-perceive-patterns/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thoughts on the Real Time Web</title>
		<link>http://www.rossbates.com/2009/12/thoughts-on-the-real-time-web/</link>
		<comments>http://www.rossbates.com/2009/12/thoughts-on-the-real-time-web/#comments</comments>
		<pubDate>Tue, 08 Dec 2009 18:41:15 +0000</pubDate>
		<dc:creator>Ross</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Misc]]></category>
		<category><![CDATA[Social Networks]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://www.rossbates.com/?p=321</guid>
		<description><![CDATA[With Google&#8217;s announcement that they are now including live updates from Twitter, Facebook, and MySpace into their search results I expect the term Real Time Web is going to become more familiar to the non TechCrunch public. While the term “Real Time” has taken off over the past 6 months most realize that our existing [...]]]></description>
			<content:encoded><![CDATA[<p>With Google&#8217;s <a href="http://googleblog.blogspot.com/2009/12/relevance-meets-real-time-web.html">announcement</a> that they are now including live updates from Twitter, Facebook, and MySpace into their search results I expect the term Real Time Web is going to become more familiar to the non <a href="http://www.google.com/search?hl=en&amp;q=site%3Atechcrunch.com+Real+Time&amp;aq=f&amp;oq=&amp;aqi=">TechCrunch</a> public.</p>
<p>While the term “Real Time” has taken off over the past 6 months most realize that our existing communications infrastructure already operates at near real time. You send an email, it arrives in seconds. You place a call, someone picks up. Blog posts, satellite television, GPS, IM, etc etc etc.</p>
<p>I’d say the fundamental shift in behavior we are seeing on the web today is related to “Always On”. It’s ubiquitous network connectivity that makes us feel the <em>already</em> real time nature of the web even more.</p>
<p>So what&#8217;s up with Real Time Search and the Real Time Web? Basically it’s about content being indexed and presented in search results as fast as it&#8217;s being produced. This is a certainly a step in the right direction towards the larger goal of instant and ubiquitous human knowledge – “when I know, you know”.  The problem is there&#8217;s just too much noise when you turn on the stream and the only filter in place are keywords.</p>
<p>The technology is important though; data must be collected and indexed before it can be filtered/ranked. We’re getting there.</p>
<p>What gets me excited about the Real Time Web are the ways it can be used to augment existing methods for consumption of news and entertainment. Imagine the ways that the <a href="http://en.wikipedia.org/wiki/Publish/subscribe">PubSub</a> model combined with Real Time Search will allow people to &#8220;tune-in&#8221; to personalized data feeds during sporting events, tv shows, breaking news.</p>
<p>For example, when I am watching the Dallas Cowboys on TV I don&#8217;t want to type &#8220;Dallas Cowboys&#8221; into a search engine and be flooded by results. I want to tune-in to a list of people that I&#8217;ve selected (or have been recommended).  These people may be professionals, they might be my neighbor. It&#8217;s these people that will be providing insight, analysis, and commentary. Troy Aikmen and Joe Buck? Nope. I want comedy. I want bias. I want camaraderie. Then when the game is over I want to tune out, I want it all to go away.</p>
<p>To me the Real Time Web is not about speed, it&#8217;s about moving past the period where Social Networks are persistent. The Real Time Web will introduce Social Networks that are dynamic.  Networks that emerge and disappear in short spans of time. These networks will be asynchronous &#8211; increasingly the Real Time Web will look more like the Real World.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rossbates.com/2009/12/thoughts-on-the-real-time-web/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>All Programming is Programming</title>
		<link>http://www.rossbates.com/2009/08/all-programming-is-programming/</link>
		<comments>http://www.rossbates.com/2009/08/all-programming-is-programming/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 16:08:28 +0000</pubDate>
		<dc:creator>Ross</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.rossbates.com/?p=291</guid>
		<description><![CDATA[Over on Coding Horror Jeff Atwood wrote a post which claimed that &#8220;All Programming is Web Programming&#8220;. Jeff made some good points about how the web provides programmers with the ability to reach an audience of a previously unimaginable size. Definitely agree. Also mentioned was that for better or for worse JavaScript is becoming the [...]]]></description>
			<content:encoded><![CDATA[<p>Over on Coding Horror Jeff Atwood wrote a <a href="http://www.codinghorror.com/blog/archives/001296.html">post</a> which claimed that &#8220;<em>All Programming is Web Programming</em>&#8220;. Jeff made some good points about how the web provides programmers with the ability to reach an audience of a previously unimaginable size. Definitely agree. Also mentioned was that for better or for worse JavaScript is becoming the most important language in the world of software development. I agree with this as well, though I would add that the significance of JavaScript is in user facing applications only at this point.</p>
<p>It was unfortunate that the post was written in such a polarizing manner and that the comment thread quickly eroded into a shouting match because there is another important point to be made here.</p>
<p>Something else I want to put out there to developers is that the evolution of programming should be focused less on desktop vs web vs embedded or  choice of language/platform, and more on how lowering the barriers to entry for new programmers is a positive and not a negative.</p>
<p>To someone writing device drivers or kernel patches the idea of writing a JavaScript function to manipulate the DOM may seem &#8220;uninteresting&#8221;, but the fact is that more and more people are getting started with programming this way. All they need is a text editor and a web browser and they are on their way. This is a very good thing.</p>
<p>Programming is about automation and automation is about improving efficiency. The more people we can somehow involve in this process the better because in the end the web provides not only the largest number of potential users, but also the largest number of potential programmers. The exciting thing is we are just getting started.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rossbates.com/2009/08/all-programming-is-programming/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ORM, RDF, and Jon Postel</title>
		<link>http://www.rossbates.com/2009/07/orm-rdf-and-postel/</link>
		<comments>http://www.rossbates.com/2009/07/orm-rdf-and-postel/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 19:57:45 +0000</pubDate>
		<dc:creator>Ross</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[Linked Data]]></category>

		<guid isPermaLink="false">http://www.rossbates.com/?p=249</guid>
		<description><![CDATA[Had a great conversation with @cks earlier about the dichotomy between ORM and RDF/OWL when modeling enterprise data. His position was that with a pure ORM model you are more likely to have consistent data throughout your applications because the rules &#38; constraints have laid out before the user ever touches the keyboard. Where he [...]]]></description>
			<content:encoded><![CDATA[<p>Had a great conversation with <a href="http://twitter.com/cks">@cks</a> earlier about the dichotomy between ORM and RDF/OWL when modeling enterprise data. His position was that with a pure ORM model you are more likely to have consistent data throughout your applications because the rules &amp; constraints have laid out before the user ever touches the keyboard. Where he felt RDF/OWL was at odds with the ORM model is that by giving people the ability to create relationships that trigger additional inferences you must trust them to understand the implications of their actions.</p>
<p>A simple example&#8230;.</p>
<pre>    :trees :madeOf :wood</pre>
<pre>    :trees :need :water</pre>
<p>Now someone comes along and creates this:</p>
<pre>    :table :madeOf :wood</pre>
<p>At this point it&#8217;s incumbent upon all dependent applications to understand that &#8220;:table&#8221; does not in fact need water. Again, the key is that every application must be aware of and apply the same rules or data integrity suffers. It&#8217;s not that tradtional ORM and RDF/OWL can&#8217;t coexist, in some companies it may be an integrated process. Where @cks was concerned is that the inferences inherent to RDF/OWL introduces issues with consistency and integration because it&#8217;s so easy for new rules to simply pop up.</p>
<p>I agree with everything up to this point, but where I would argue we need to be headed with enterprise apps is a hybrid model that blends the consistency &amp; predictability of ORM, with the freedom of RDF/OWL.</p>
<p>First let&#8217;s quickly take a moment to talk about freedom. When I hear a programmer use the phrase &#8220;never trust the user&#8221; I scratch my head. Sure you should sanitize application input for the sake of security but let&#8217;s be realistic about it, business users do not intentionally inject crap into the system. They use software to get things done. Humans will make mistakes, but so do the software applications that were written by&#8230; well, humans.</p>
<p><strong><em>The user is the most important component of software development. If that sounds obvious, then why don&#8217;t we trust them more? </em></strong>My hope is that developers begin putting more trust in the user with a focus on creating software that learns from the users instead of limiting them.</p>
<p>So back to the hybrid model. I picture RDF/OWL as the essential meta layer above the ORM. By abstracting it with interfaces that are usable to non-techies it becomes an engine for collecting knowledge about the relationships and attributes of the business across all dimensions. We shouldn&#8217;t be concerned with modeling absolute and irrefutable truths, because tomorrow there will be an exception. That&#8217;s the problem with strict models in the enterprise, there will always be exceptions. Next, the ORM layer follows on as an application specific module where you can extract pieces of the meta layer to digest, analyze, and make use of the data at a domain level.</p>
<p>It&#8217;s about putting a higher priority on the collection of information than on enforcing rules on the information. The principle reminds me of the great quote from <a href="http://en.wikipedia.org/wiki/Jon_Postel">Jon Postel.</a></p>
<p style="padding-left: 30px;"><em>&#8220;be conservative in what you send, be liberal in what you receive&#8221;</em></p>
<p>Postel is of course referring to the <a href="http://tools.ietf.org/html/rfc793">Transmission Control Protocol</a>, a language that computers use to speak to each other over the internet.  To me however  these words have a more universal meaning in the world of software development which I&#8217;d categorize like this:</p>
<ul>
<li><em>Listen more<br />
</em></li>
<li><em>Talk less<br />
</em></li>
<li><em>Prepare for exceptions<br />
</em></li>
<li><em>Trust until you are given a reason not to</em></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.rossbates.com/2009/07/orm-rdf-and-postel/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

