<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>John Wright  |  Software Developer | Los Angeles</title>
	
	<link>http://johnwright.me/blog</link>
	<description />
	<lastBuildDate>Fri, 23 Jul 2010 02:41:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/johnwright" /><feedburner:info uri="johnwright" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Net Neutrality Pros And Cons: A Potentially Sticky Issue [OPINION]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/lBeAfmPg-mI/</link>
		<comments>http://johnwright.me/blog/net-neutrality-pros-and-cons-a-potentially-sticky-issue-opinion/#comments</comments>
		<pubDate>Tue, 25 May 2010 18:45:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[BitTorrent]]></category>
		<category><![CDATA[Comcast]]></category>
		<category><![CDATA[Computer law]]></category>
		<category><![CDATA[Federal Communications Commission]]></category>
		<category><![CDATA[Network neutrality]]></category>
		<category><![CDATA[Technology/Internet]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=204</guid>
		<description><![CDATA[Photo:eirikso [This article ponders just a small bit of the pros and cons concerning Net Neutrality. Understand that I'm absolutely pro Net Neutrality as a policy, but I'm a bit divided on whether or not government should impose regulations to protect Net Neutrality. In the end, it seems like government regulations may be absolutely necessary [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://farm4.static.flickr.com/3294/3055527027_65220276ee_m.jpg" alt="" /><br />
Photo:<a title="Internet is a series of tubes" rel="nofollow" href="http://flickr.com/photos/47402349@N00/3055527027">eirikso</a></p>
<p>[This article ponders just a small bit of the pros and cons concerning Net Neutrality. Understand that I'm absolutely pro Net Neutrality as a policy, but I'm a bit divided on whether or not government should impose regulations to protect Net Neutrality. In the end, it seems like government regulations may be absolutely necessary to protect Net Neutrality, but whether the government will decide to regulate is another issue. Considering all this, Net Neutrality could be a potentially sticky issue for some time to come.]</p>
<p>My simple definition of Net Neutrality is&#8230;</p>
<p>&#8220;<em>ISPs don&#8217;t touch the bits and bytes flowing through their pipes</em>&#8221;</p>
<p>In other words, ISPs (Internet Service Providers) remain neutral concerning what internet traffic flows through their networks (or their &#8220;pipes&#8221;).  ISPs just provide dumb pipes for the traffic to flow through. They remain neutral by not actively doing anything to the traffic, like filtering it or blocking it in any way. This is the way the internet has operated since it&#8217;s beginning (for the most part).</p>
<div style="float: left;margin: 12px 15px 0 0"><a title="Comcast Tower" rel="nofollow" href="http://flickr.com/photos/9682451@N02/3289914546"><img src="http://farm4.static.flickr.com/3343/3289914546_919746a66c_t.jpg" alt="" /></a></div>
<p>An example where an ISP acted in a non neutral way is when Comcast actively blocked BitTorrent traffic on its networks. In many ways, this is a fairly small thing they did. All paying customers of Comcast who did not use BitTorrent didn&#8217;t notice a thing. Comcast+BitTorrent users on the other hand, we&#8217;re stuck and would have been forced to switch ISPs in order to continue using BitTorrent, had the FCC not intervened.<br />
<span id="more-204"></span></p>
<p>This is small potatoes in comparison to what could be done by a non neutral ISP. Potentially, ISPs could exclude entire websites and networks of websites. They could offer preferred and speedier access to partnering digital media and news outlets. They could do a lot of potentially scary things. By controlling the network in such ways, ISPs could drastically change the internet as we know it to the extent that the network they offer could no longer truly be called &#8220;the internet&#8221;.</p>
<div style="float: left; margin: 12px 15px 0 0"><a title="Kevin Martin, Chairman Federal Communications Commission FCC during his keynote presentation at CTIA WIRELESS" rel="nofollow" href="http://flickr.com/photos/31282765@N03/2949809284"><img src="http://farm4.static.flickr.com/3233/2949809284_88f6d5c206_s.jpg" alt="" /></a></div>
<p>On the other hand, the ISPs own the pipes and who is to stop them from being non neutral? In the Comcast case, the FCC tried to stop them but <a href="http://arstechnica.com/tech-policy/news/2010/04/court-throws-out-fccs-smackdown-of-comcast-p2p-blocking.ars" target="_blank">in April 2010 it&#8217;s case was tossed by a federal court&#8230;</a></p>
<blockquote><p>The question before the court was whether the FCC had the legal authority to &#8220;regulate an Internet service provider&#8217;s network management practice.&#8221; According to a three-judge panel, &#8220;the Commission has failed to make that showing&#8221; and the FCC&#8217;s order against Comcast is tossed.</p></blockquote>
<p>In many ways this outcome is fair. If Comcast owns the pipes, who is to tell them what they can and can&#8217;t do with them? Or who should tell them what services they can and can&#8217;t offer? In a capitalist economy, shouldn&#8217;t the free market dictate that? Wouldn&#8217;t this cause competing ISPs to offer faster and better products? If their service is too restrictive, customers will go elsewhere right? Can&#8217;t  the free market and net neutrality co-exist without outside regulation?</p>
<p>In an ideal world the free market should provide a lot of natural regulation, but in reality, it doesn&#8217;t always provide enough. I&#8217;m reminded of Allen Greenspan&#8217;s words concerning the 2008 economic downturn&#8230;</p>
<blockquote><p>Mr. Greenspan said he made &#8220;a mistake&#8221; in his hands-off  regulatory philosophy, which many now blame in part for sparking the  global economic troubles. He quoted something he had written in March:  &#8220;Those of us who have looked to the self-interest of lending  institutions to protect shareholder&#8217;s equity (myself especially) are in a  state of shocked disbelief.&#8221; &#8211; <a href="http://online.wsj.com/article/SB122476545437862295.html">WSJ</a></p></blockquote>
<p>He was shocked that lending institutions didn&#8217;t regulate themselves  in their own self-interest and the interest of their share holders. My point is that sometimes, regulation is necessary. Net Neutrality regulations may very well be necessary to keep the internet the same open place we know it as today.</p>
<p>But the internet and it&#8217;s openness has also created a lot of new issues. The impact of the internet on the world is huge and while it has solved many problems and made things possible that were previously impossible, it has also created new problems. For instance, ﻿﻿BitTorrent is commonly used to distribute pirated software, music, movies and more. Pirating software is a lot like stealing, except by making a copy of something, no physical good has been stolen. The main violation is that the creators of the pirated media don&#8217;t get any credit for the pirated copy. Don&#8217;t the creators have a right to some compensation or royalties for their work? Of course they do, but everybody knows you can pirate it on BitTorrent for free. Who is losing here? We all are to some degree, but most obviously it&#8217;s the creators of the work who are losing the most.</p>
<p>So maybe BitTorrent <em>should</em> be blocked. But of course there are other ways to share pirated copies on the internet. Potentially a non neutral ISP might have strong anti piracy policies active in their network. They might also be in partnership with music, media and software companies to provide a convenient solution to paying for digital products. Much like Apples iTunes and App Store. It seems if paying for digital products was easier than pirating them, most people would pay. I also believe that most people would want to pay and make sure the creators of media get paid for their work rather than pirate it.</p>
<p>In Conclusion (I need to wrap this up)<br />
The neutral internet is and has been a means for the little guy to actually compete with major players on this &#8220;world is flat&#8221; playing field. In turn this has sparked much innovation in technology and brought many benefits and progression. On the other hand some &#8220;<a href="http://en.wikipedia.org/wiki/Walled_garden_(technology)">walled garden</a>&#8221; approaches to internet software have proved beneficial for the mainstream (Apple and Facebook?) , arguably helping mainstream users to reduce the information overload that is a side affect of the open and neutral internet. But &#8220;walled garden&#8221; control at a network level would drastically change the entire foundation of the internet. It&#8217;s really scary to think of an internet in any other form than the neutral one we&#8217;ve come to know.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/lBeAfmPg-mI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/net-neutrality-pros-and-cons-a-potentially-sticky-issue-opinion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/net-neutrality-pros-and-cons-a-potentially-sticky-issue-opinion/</feedburner:origLink></item>
		<item>
		<title>Distributed Social Networks: The Digital Home [CONCEPT]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/DRGjgPkKS_A/</link>
		<comments>http://johnwright.me/blog/distributed-social-networks-the-digital-home-concept/#comments</comments>
		<pubDate>Sat, 15 May 2010 00:07:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Social Technology]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=257</guid>
		<description><![CDATA[Photo: Stuck in Customs A few days ago an analogy regarding social networks and their future crossed my mind. The analogy is &#8220;The Digital Home&#8221; as a distributed social network platform. The idea is that big social networks are kind of like massive communes where you have your own room (for instance my room on [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://iamjohnwright.com/blog/wp-content/uploads/2010/05/digital-homes-300x181.jpg" alt="" title="digital-homes" width="300" height="181" class="alignnone size-medium wp-image-273" /><br />
Photo: <a href="http://www.flickr.com/photos/stuckincustoms/382564223/">Stuck in Customs</a></p>
<p>A few days ago an analogy regarding social networks and their future crossed my mind. The analogy is &#8220;The Digital Home&#8221; as a distributed social network platform. </p>
<p>The idea is that big social networks are kind of like massive communes where you have your own room (for instance my room on twitter is http://twitter.com/wrightlabs).<span id="more-257"></span> You operate on these social networks primarily on their terms. As we&#8217;ve seen with Facebook, changing privacy policies and settings on their site, they have the ultimate say in how the platform changes and what you can and can&#8217;t do. Leadership in how you &#8220;live&#8221; on Facebook (and other social networks) is centralized and decided by Facebook management. Another thing about big social networks is that, once you are on it, you are limited to that one social network. If you sign up for Facebook, you can&#8217;t interact with your friend who is on Twitter and vice versa. Unless you have an account with both networks and then hook up some kind of connection, but even then it&#8217;s too cumbersome and probably wouldn&#8217;t work that well. You really need to be part of the same network or &#8220;commune&#8221; to network and interact. </p>
<p>But the &#8220;digital home&#8221; idea decentralizes all this, instead of you being a part of a commune living within it&#8217;s walls, you own your own home (or site). This home would in most cases be your own domain name (I plan to make mine http://ijohnwright.com). Similar to how you don&#8217;t allow just anyone into your physical home, you would have privacy controls to keep strangers out of your &#8220;digital home&#8221; or allow people in to certain rooms. If you have family/friends that would like a room in your &#8220;digital home&#8221; you could give them one if you choose so it may not just be you living at your home (which is essentially your domain name). </p>
<p>The benefit is that you own it all, but with all this comes the responsibility of maintaining a home. Paying the hosting bill, if/when the site goes down, running in and fixing it etc.</p>
<p>If your home is on one domain name, then this &#8220;digital home&#8221; will need a way to communicate with other similar homes on the web to be a &#8220;distributed social network&#8221;. I mean if my friend on another site updates his &#8220;room&#8221; that I have access to with some pictures, it needs to show up in my stream. If I can only see whats going on and interact within my digital home, then it&#8217;s not a distributed social network. So we&#8217;ll need a distributed social network platform or open protocol that all these digital houses use to connect together. There are already many technologies that could be used to achieve what I&#8217;m describing. It would take packaging them together or reinventing them into an Open Social protocol (I&#8217;m not referring to Google&#8217;s).</p>
<p>Apparently I&#8217;m not the only one who has been thinking along these lines.</p>
<p>Since I first started thinking this, we&#8217;ve seen <a href="http://www.joindiaspora.com/">Diaspora</a> launch in a <a href="http://www.kickstarter.com/projects/196017994/diaspora-the-personally-controlled-do-it-all-distr">rather historic fashion</a>. The fact that some dudes about to graduate from NYU can kickstart their career in such a fashion is evidence that a lot of other people are embracing the distributed social network concept as well. </p>
<p>Also, I just heard Matt of WordPress giving a similar analogy while being interviewed by the Scoblizer at Big Omaha. I&#8217;m glad to hear Matt is thinking like this because when I originally came up with the idea, Matt&#8217;s WordPress software is what initially came to mind. </p>
<p>Doing a little bit of searching for this I found the <a href="http://diso-project.org/">DiSo Project</a> which I&#8217;ve heard of years ago through <a href="http://factoryjoe.com/blog/">Chris Messina</a>. Now I know exactly what DiSo is <img src='http://johnwright.me/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  </p>
<p>So I guess the distributed social network idea is nothing new but maybe now it will really start to gain some traction. It&#8217;s good to know many are working on this. I think the project that will win the most adoption is the one that makes it simple and straight forward concerning privacy and how to set it up. These are two big challenges but I&#8217;m sure someone will solve them.  </p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/DRGjgPkKS_A" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/distributed-social-networks-the-digital-home-concept/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/distributed-social-networks-the-digital-home-concept/</feedburner:origLink></item>
		<item>
		<title>SPARQL Query In Code: REST, PHP And JSON [TUTORIAL]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/DU3_86BUSOc/</link>
		<comments>http://johnwright.me/blog/sparql-query-in-code-rest-php-and-json-tutorial/#comments</comments>
		<pubDate>Tue, 04 May 2010 16:23:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[sparql]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=37</guid>
		<description><![CDATA[Photo: sclopit SPARQL allows you to query a semantic web (i.e. RDF) data source. This post will cover some basics of SPARQL but it will mainly focus on how to run a SPARQL query in code. The code I&#8217;m using is PHP and JSON but the overall steps are the same using any language. Here [...]]]></description>
			<content:encoded><![CDATA[<div style="float:left;margin: 10px 20px 5px 0" ><img src="http://johnwright.me/blog/wp-content/uploads/2010/05/sparql-tutorial-query-in-code.jpg" alt="Use SPARQL And Query On" title="sparql-tutorial-query-in-code" width="170" height="240" class="alignleft size-full wp-image-277" /><br />
Photo: <a rel="nofollow" href="http://www.flickr.com/photos/stefanobe/4305452977/">sclopit</a>
</div>
<p>SPARQL allows you to query a semantic web (i.e. RDF) data source. This post will cover some basics of SPARQL but it will mainly focus on how to run a SPARQL query in code. The code I&#8217;m using is PHP and JSON but the overall steps are the same using any language.</p>
<p>Here are the overall steps&#8230;</p>
<p>1. Constructing our SPARQL query<br />
2. Preparing our REST URL<br />
3. Make the HTTP request to the URL<br />
4. Parsing the response<br />
5. Using/Displaying the results</p>
<p><span id="more-37"></span></p>
<h3>1. Constructing our SPARQL query</h3>
<p>Our example SPARQL query will get the &#8220;abstract&#8221; section (i.e. brief description) of the RDF page for Honda Legend (<a href="http://dbpedia.org/page/Honda_Legend">http://dbpedia.org/page/Honda_Legend</a>) in DBPedia</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">PREFIX dbp: <span style="color: #66cc66;">&lt;</span>http:<span style="color: #66cc66;">//</span>dbpedia<span style="color: #66cc66;">.</span>org<span style="color: #66cc66;">/</span>resource<span style="color: #66cc66;">/&gt;</span>
PREFIX dbp2: <span style="color: #66cc66;">&lt;</span>http:<span style="color: #66cc66;">//</span>dbpedia<span style="color: #66cc66;">.</span>org<span style="color: #66cc66;">/</span>ontology<span style="color: #66cc66;">/&gt;</span>
&nbsp;
<span style="color: #993333; font-weight: bold;">SELECT</span> ?abstract
<span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #66cc66;">&#123;</span>
     dbp:Honda_Legend dbp2:abstract ?abstract <span style="color: #66cc66;">.</span> 
     FILTER langMatches<span style="color: #66cc66;">&#40;</span>lang<span style="color: #66cc66;">&#40;</span>?abstract<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'en'</span><span style="color: #66cc66;">&#41;</span>
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p>(<a target="_blank" href="http://dbpedia.org/snorql/?query=PREFIX+dbp%3A+%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2F%3E%0D%0APREFIX+dbp2%3A+%3Chttp%3A%2F%2Fdbpedia.org%2Fontology%2F%3E%0D%0A+%0D%0ASELECT+%3Fabstract%0D%0AWHERE+{%0D%0A+++++dbp%3AHonda_Legend+dbp2%3Aabstract+%3Fabstract+.+%0D%0A+++++FILTER+langMatches%28lang%28%3Fabstract%29%2C+%27en%27%29%0D%0A}%0D%0A">See this query run in DBPedia</a>)</p>
<p>In the SPARQL query, <strong><em>?abstract</em></strong> is a variable. The name is arbitrary (it could be called <em>?x</em>) and all variables in SPARQL start with the <strong><em>?</em></strong> (question mark). </p>
<p>The first line in the <strong><em>WHERE</em></strong> clause is a RDF triple. It&#8217;s a <strong>&#8220;subject predicate object&#8221;</strong> followed by a dot to end the triple (like the period of a sentence). </p>
<p>In this triple, the subject is <strong><em>dbp:Honda_Legend</em></strong> in it&#8217;s abbreviated form. We could also use it&#8217;s fully expanded form&#8230;<br />
<strong><em>&lt;http://dbpedia.org/resource/Honda_Legend&gt;</em></strong><br />
and we wouldn&#8217;t need to have the <strong><em>PREFIX dbp: &lt;http://dbpedia.org/resource/&gt;</em></strong> line in the query. </p>
<p>The predicate is <strong><em>dbp2:abstract</em></strong> in it&#8217;s abbreviated form. The predicate in a triple describes the relationship between the subject and the object.</p>
<p>The object in this triple is the variable <strong><em>?abstract</em></strong>. Or in other words, the object is what we are trying to find with this query. </p>
<p>To explain this query in English one could say &#8220;find the value of the <em>object</em> of the triple that matches the pattern &#8220;<strong><em>dbp:Honda_Legend dbp2:abstract object</em></strong>&#8221;</p>
<p>The second line in the <strong><em>WHERE</em></strong> clause is applying a filter to the results to only show the english version of the abstract. </p>
<p>Try these links for more info on the SPARQL query language. </p>
<p><a href="http://www.cambridgesemantics.com/2008/09/sparql-by-example/">SPARQL by example &#8211; Cambridge Semantics</a> </p>
<p><a href="http://jena.sourceforge.net/ARQ/Tutorial/">SPARQL Tutorial</a> </p>
<h3>2. Preparing our REST URL</h3>
<p>The URL we&#8217;ll send our request to will start with the SPARQL endpoint. For DBPedia it&#8217;s <strong><em>http://dbpedia.org/sparql</em></strong> and we&#8217;ll pass it some query string parameters, <strong><em>format</em></strong> and <strong><em>query</em></strong> (which is our SPARQL query).</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> getUrlDbpediaAbstract<span style="color: #009900;">&#40;</span><span style="color: #000088;">$term</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #000088;">$format</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'json'</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> 
   <span style="color: #0000ff;">&quot;PREFIX dbp: &lt;http://dbpedia.org/resource/&gt;
   PREFIX dbp2: &lt;http://dbpedia.org/ontology/&gt;
&nbsp;
   SELECT ?abstract
   WHERE {
      dbp:&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$term</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; dbp2:abstract ?abstract . 
      FILTER langMatches(lang(?abstract), 'en')
   }&quot;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000088;">$searchUrl</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'http://dbpedia.org/sparql?'</span>
      <span style="color: #339933;">.</span><span style="color: #0000ff;">'query='</span><span style="color: #339933;">.</span><span style="color: #990000;">urlencode</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span>
      <span style="color: #339933;">.</span><span style="color: #0000ff;">'&amp;format='</span><span style="color: #339933;">.</span><span style="color: #000088;">$format</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #b1b100;">return</span> <span style="color: #000088;">$searchUrl</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>I&#8217;ve taken it a step further by creating this function <strong><em>getUrlDbpediaAbstract</em></strong> which takes a parameter <strong><em>$term</em></strong> that lets us plug in any DBPedia (also Wikipedia) page name to get the abstract for. (<strong><em>Note:</em></strong> <strong><em>$term</em></strong> must be an actual page name from DBPedia/Wikipedia so that the URL <strong><em>http://en.wikipedia.org/wiki/</em>[page name]</strong> returns a non redirected Wikipedia article. The [page name] must be exact and it is case sensitive.)</p>
<p>The following approach to getting and using the data from this REST web service can be used for any REST web service that returns JSON as a response format. I&#8217;ve found this approach to be very simple and powerful. (I may write a separate post focusing on this approach).</p>
<h3>3. Make the HTTP request to the URL</h3>
<p>Making HTTP requests in PHP is pretty standard and easy task using <a href="http://php.net/manual/en/book.curl.php">cURL</a> if you have it installed on Apache (which most web hosts do it seems). There is also a PEAR package <a href="http://pear.php.net/package/HTTP_Request2">HTTP_Request2</a> which is another option but it requires PEAR to be installed.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> request<span style="color: #009900;">&#40;</span><span style="color: #000088;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// is curl installed?</span>
   <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'curl_init'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> 
      <span style="color: #990000;">die</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'CURL is not installed!'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// get curl handle</span>
   <span style="color: #000088;">$ch</span><span style="color: #339933;">=</span> <span style="color: #990000;">curl_init</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// set request url</span>
   <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$ch</span><span style="color: #339933;">,</span> 
      CURLOPT_URL<span style="color: #339933;">,</span> 
      <span style="color: #000088;">$url</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">// return response, don't print/echo</span>
   <span style="color: #990000;">curl_setopt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$ch</span><span style="color: #339933;">,</span> 
      CURLOPT_RETURNTRANSFER<span style="color: #339933;">,</span> 
      <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #666666; font-style: italic;">/*
   Here you find more options for curl:
   http://www.php.net/curl_setopt
   */</span>		
&nbsp;
   <span style="color: #000088;">$response</span> <span style="color: #339933;">=</span> <span style="color: #990000;">curl_exec</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$ch</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #990000;">curl_close</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$ch</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #b1b100;">return</span> <span style="color: #000088;">$response</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>Above is a simple function <strong><em>request</em></strong> which will request our the <strong><em>$url</em></strong> and return the response body as a string. </p>
<h3>4. Parsing the response</h3>
<p>The request to our URL above will return a string of JSON data because that&#8217;s the format we specified. I chose JSON as the response format because there is a very easy way to parse a JSON string in PHP 5. We can simply use <strong><em><a href="http://php.net/manual/en/function.json-decode.php">json_decode</a></em></strong> . <strong><em>json_decode</em></strong> has a bool parameter <strong><em>assoc</em></strong> which if set to <em>true</em> returns a PHP array. With this PHP array we can easily access all the data returned in our response. We&#8217;ll see how easy this is in the next section.</p>
<h3>5. Using/Displaying the results</h3>
<p>With our results in a PHP array, we can use a little function that I created to neatly print the contents of a PHP array called <strong><em>printArray</em></strong>.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> printArray<span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #339933;">,</span> <span style="color: #000088;">$spaces</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
   <span style="color: #000088;">$retValue</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">is_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
   <span style="color: #009900;">&#123;</span>	
      <span style="color: #000088;">$spaces</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$spaces</span>
         <span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #000088;">$retValue</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$retValue</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;br/&gt;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">array_keys</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$key</span><span style="color: #009900;">&#41;</span>
      <span style="color: #009900;">&#123;</span>
         <span style="color: #000088;">$retValue</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$retValue</span><span style="color: #339933;">.</span><span style="color: #000088;">$spaces</span>
            <span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;strong&gt;&quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$key</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;/strong&gt;&quot;</span>
            <span style="color: #339933;">.</span>printArray<span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$key</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">,</span> 
               <span style="color: #000088;">$spaces</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>		
      <span style="color: #000088;">$spaces</span> <span style="color: #339933;">=</span> <span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$spaces</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #339933;">-</span><span style="color: #cc66cc;">30</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
   <span style="color: #b1b100;">else</span> <span style="color: #000088;">$retValue</span> <span style="color: #339933;">=</span> 
      <span style="color: #000088;">$retValue</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot; - &quot;</span><span style="color: #339933;">.</span><span style="color: #000088;">$array</span><span style="color: #339933;">.</span><span style="color: #0000ff;">&quot;&lt;br/&gt;&quot;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #b1b100;">return</span> <span style="color: #000088;">$retValue</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>This function can be used in development to see where the data you want is located in the array. </p>
<p>Putting our functions together now we can display and use the data returned.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span> 
<span style="color: #000088;">$term</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;Honda_Legend&quot;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$requestURL</span> <span style="color: #339933;">=</span> getUrlDbpediaAbstract<span style="color: #009900;">&#40;</span><span style="color: #000088;">$term</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000088;">$responseArray</span> <span style="color: #339933;">=</span> <span style="color: #990000;">json_decode</span><span style="color: #009900;">&#40;</span>
   request<span style="color: #009900;">&#40;</span><span style="color: #000088;">$requestURL</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
   <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> 
<span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
&lt;h1&gt;DBPedia Abstract for 
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$term</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&lt;/h1&gt;
&nbsp;
&lt;h3&gt;Request URL:&lt;/h3&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$requestURL</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;br/&gt;
&nbsp;
&lt;h3&gt;Parsed Response: &lt;/h3&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> printArray<span style="color: #009900;">&#40;</span><span style="color: #000088;">$responseArray</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&lt;br/&gt;
&nbsp;
&lt;h3&gt;Abstract: &lt;/h3&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$responseArray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;results&quot;</span><span style="color: #009900;">&#93;</span>
    <span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;bindings&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>
    <span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;abstract&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;value&quot;</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>

<p>(<a  href="http://johnwright.me/code-examples/sparql-query-in-code-rest-php-and-json-tutorial.php">See this run live</a> or <a href="http://gist.github.com/380379">check out the full example source code on GitHub</a>)</p>
<p>At the time of writing the results of<br />
<strong><em>echo printArray($responseArray);</em></strong><br />
look like this&#8230; </p>
<blockquote><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>head</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>link</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>vars</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>0</strong> &#8211; abstract<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>results</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>distinct</strong> &#8211; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>ordered</strong> &#8211; 1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>bindings</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>0</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>abstract</strong><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>type</strong> &#8211; literal<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>xml:lang</strong> &#8211; en<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>value</strong> &#8211; The Honda Legend is a Mid-size luxury car made by the Japanese automaker Honda. It was originally developed as part of Project XX, a joint venture with the Austin Rover Group of Great Britain and was a twin of the Rover 800 series. The Legend was initially a four-door sedan, with a two-door coupé added later. It was the model which launched Honda&#8217;s upscale Acura brand in the United States. Honda was inspired by the word &#8220;legend&#8221; to create the first Honda vehicle with a V6. The first and second-generation Honda Legend was known as the Acura Legend in North American markets from 1986-1995, and in 1996 the third-generation was renamed as the Acura RL, while the Legend name is still used in Japan and other markets. Honda introduced the Legend as a flagship sedan to compete with the JDM Nissan Cedric and Nissan Gloria twins, the Toyota Crown, and later the Mazda Luce, and Mitsubishi Debonair. Unlike the Nissan twins and the Crown, the Legend is not used for taxi service. In the USA, the Legend competed with larger rear wheel drive V8 sedans Lexus LS and the Infiniti Q45, however, the Legend was marketed towards the slightly smaller Executive car vehicles that include the BMW 5 series, Audi A6, Mercedes-Benz E-Class, and the Jaguar S-type. The Legend hardtop coupe was introduced to compete with the Nissan Leopard coupe, the Toyota Soarer, and Mazda Cosmo.<br/><br/></p></blockquote>
<p>From this we can discover the path to get the <em>abstract</em> data we want, which is&#8230;</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;h3&gt;Abstract: &lt;/h3&gt;
<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$responseArray</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;results&quot;</span><span style="color: #009900;">&#93;</span>
    <span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;bindings&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #009900;">&#93;</span>
    <span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;abstract&quot;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">&quot;value&quot;</span><span style="color: #009900;">&#93;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>from the code block above (line 22).</p>
<h3>Conclusion</h3>
<p>In this tutorial we&#8217;ve seen how to construct a SPARQL query that gets the value of the <em>abstract</em> property of DBPedia page. We sent the query to a SPARQL endpoint (DBPedia) which is a REST web service URI. We have parsed the results by converting the JSON string response to a PHP array using <strong><em><a  href="http://php.net/manual/en/function.json-decode.php">json_decode</a></em></strong>. This approach to consuming REST based web services is an easy way to access the data in the results. I may write a future post focusing on it.</p>
<p><a  href="http://johnwright.me/code-examples/sparql-query-in-code-rest-php-and-json-tutorial.php">A working demo of this tutorial is here</a> and <a href="http://gist.github.com/380379">the full source code for the demo is on GitHub.</a> </p>
<p>If you have any questions or issues with this tutorial and/or demo source code, please leave them in the comments below.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/DU3_86BUSOc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/sparql-query-in-code-rest-php-and-json-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/sparql-query-in-code-rest-php-and-json-tutorial/</feedburner:origLink></item>
		<item>
		<title>Semantifying Social Networks, Socializing The Semantic Web</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/v7IWH8FKK6g/</link>
		<comments>http://johnwright.me/blog/semantifying-social-networks-socializing-the-semantic-web/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 21:59:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[data broker]]></category>
		<category><![CDATA[identity]]></category>
		<category><![CDATA[social networks]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=17</guid>
		<description><![CDATA[(DISCLAIMER: My recollection of what was said and what was meant may be flawed. For the best record, find the sources mentioned and listen for yourself) During the Semantic Web Meetup discussion about social networks Joe Devon made a prediction that all the current major social networks (Facebook and Twitter) will go the way of [...]]]></description>
			<content:encoded><![CDATA[<p>(DISCLAIMER: My recollection of what was said and what was meant may be flawed. For the best record, find the sources mentioned and listen for yourself)</p>
<p>During the Semantic Web Meetup discussion about social networks Joe Devon made a prediction that all the current major social networks (Facebook and Twitter) will go the way of MySpace. This is because when the semantic web has matured, everyone will have control of their own (profile) data and that data will be more freely movable around the web due to common open standards. This discussion reminded of a similar discussion (<a href="http://www.semanticuniverse.com/premium/audio/semtech-2009-audio-semantifying-social-networks.html">Semantifying Social Networks</a>) I listened to via a recording from the SemTech 2009 Conference. In this discussion the same vision of everyone controlling their own data and (by choice) sharing it securely via open standards was the ideal. <span id="more-17"></span></p>
<p>But another scenario was mentioned for the future of the web which was the &#8220;(Profile) Data Broker&#8221; concept. This idea is similar to the current monetary banking system. Just as you don&#8217;t store and hold your own money, or actually give the money to the one you&#8217;re making the check out to, you wouldn&#8217;t store your own profile data. Instead a profile data broker site of sorts would store all the information about you that any other service could possibly need. Then when you go to sign up for a new service on the web, you would refer them to this data broker site and the data broker would give the new service your info. Part of this vision is that your data wouldn&#8217;t be accessed without your approval and you could choose what data to give out. Also, there is the idea of incentives in exchange for your data, where you would receive something (money, a gift card, etc&#8230;) for giving your data to the new service. </p>
<p>To make things even more interesting, Facebook is allegedly trying to become this premier &#8220;data broker&#8221; starting with Facebook Connect and Facebooks vanity urls. This alleged roadmap for Facebook wouldn&#8217;t be using open standards as Facebook Connect is proprietary and it doesn&#8217;t appear that will change anytime soon. This is a centralized approach where Facebook is the central hub for all this data about the masses.</p>
<p>On the flip side we have the idea of a federated approach with the open standard FOAF which contains properties like &#8220;knows&#8221; (or &#8220;Person A&#8221; &#8220;knows&#8221; &#8220;Person B&#8221;). This provides the basics needed to socialize the semantic web, and since FOAF is already a widely used ontology social connections are already modeled on the semantic web. Although, the grander vision is that a majority of social and profile data on the web be securely available via the semantic web in RDF using FOAF or some alternative ontology. And for this social data to be completely under the control of the individuals it represents.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/v7IWH8FKK6g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/semantifying-social-networks-socializing-the-semantic-web/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/semantifying-social-networks-socializing-the-semantic-web/</feedburner:origLink></item>
		<item>
		<title>It’s a good day to start a blog</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/UIAtAZury_o/</link>
		<comments>http://johnwright.me/blog/its-a-good-day-to-start-a-blog/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 00:26:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=3</guid>
		<description><![CDATA[I&#8217;m starting a new blog today, January 1, 2010. I&#8217;m a bit reluctant to start one because I tried blogging when I first discovered it (and WordPress) back in 2005. Overall my experience back then was good. But the problem I had was keeping everything organized and the overall maintenance involved with a blog. I [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m starting a new blog today, January 1, 2010. I&#8217;m a bit reluctant to start one because I tried blogging when I first discovered it (and WordPress) back in 2005. Overall my experience back then was good. But the problem I had was keeping everything organized and the overall maintenance involved with a blog. I think I tried to make it more than I wanted to get into, realistically. And eventually, I abandoned it.</p>
<p>Blogging can be a lot of work. Being a tech geek I would easily spend more time working on my blog than actually blogging. So I&#8217;m trying to avoid that with this blog by keeping it as simple as my tech instincts will allow. But not only is building and adding to a blogs features a lot of work, just writing a well written blog post is as well. So overall it can be a lot of work to maintain the kind of blog I want.</p>
<p>Despite all the work, I think the benefits of a blog well done are attractive. Even in 2010 the impact of the web on our world is still impressive. To think that I or any other common person can make a publication that can be accessed by virtually the whole world is still an impressive reality. Just 100 years ago it would have taken so much more work/effort/sweat etc to do what we can do with the click of a few buttons. The printers and publishers back then had to print paper copies on a large printing machine. Bundle them up and ship them out. And yet rarely if ever would the distributed paper copies be available all over the world. These days, you or I can type something up, click a few buttons and it&#8217;s worldwide with virtually unlimited copies, archived and available for the future. And it&#8217;s only getting easier.</p>
<p>With that said, now I&#8217;ll tell you what kind of blog I anticipate this will be. In general it will be the occasional blog post (possibly very occasional) about mostly tech and society. Ideally I&#8217;ll be writing some technical programming articles. At times I get the itch and inspiration to write some thoughts that would best fit a blog post, so those thoughts will go here as well.</p>
<p>And the conclusion, it&#8217;s just another blog. Welcome!</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/UIAtAZury_o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/its-a-good-day-to-start-a-blog/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/its-a-good-day-to-start-a-blog/</feedburner:origLink></item>
		<item>
		<title>15 Daily Routines Of Famous People [RANDOM]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/_YI7u5d20tc/</link>
		<comments>http://johnwright.me/blog/15-daily-routines-of-famous-people/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 01:43:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=327</guid>
		<description><![CDATA[Political Leaders Barack Obama Although his presidency is barely a week old, some of Mr. Obama’s work habits are already becoming clear. He shows up at the Oval Office shortly before 9 in the morning, roughly two hours later than his early-to-bed, early-to-rise predecessor. Mr. Obama likes to have his workout — weights and cardio [...]]]></description>
			<content:encoded><![CDATA[<h3>Political Leaders</h3>
<div class="left_75_img" > <a  href="http://flickr.com/photos/84992687@N00/3004717988" title="the 44th President of the United States...Barack Obama"><img src="http://farm4.static.flickr.com/3004/3004717988_06761377b7_s.jpg" /></a><br />
<a href="http://dailyroutines.typepad.com/daily_routines/2009/01/barack-obama.html" target="_blank">Barack Obama</a></div>
<blockquote><p>Although his presidency is barely a week old, some of Mr. Obama’s work habits are already becoming clear. He shows up at the Oval Office shortly before 9 in the morning, roughly two hours later than his early-to-bed, early-to-rise predecessor. Mr. Obama likes to have his workout — weights and cardio — first thing in the morning, at 6:45. (Mr. Bush slipped away to exercise midday.)</p></blockquote>
<div class="left_75_img" ><a  href="http://flickr.com/photos/74078214@N00/504365080" title="Georges W. Bush"><img src="http://farm1.static.flickr.com/193/504365080_259d611964_s.jpg" /></a><br />
<a href="http://dailyroutines.typepad.com/daily_routines/2008/06/george-w-bush.html" target="_blank">George W. Bush</a></div>
<blockquote><p>Mr. Bush has always been an early-to-bed, early-to-rise kind of guy, and he typically arrives at the Oval Office by 6:45 a.m., Ms. Perino said, for briefings from his national security adviser, Stephen J. Hadley, and chief of staff, Joshua B. Bolten. He holds regular secure video-conferences with various world leaders, among them the president of Afghanistan and the prime minister of Iraq.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/73584213@N00/95191971" title=""Winston Churchill 30 December 1941" By Yousef Karsh"><img src="http://farm1.static.flickr.com/26/95191971_9a3aff8483_s.jpg" /></a><br />
<a href="http://dailyroutines.typepad.com/daily_routines/2009/02/winston-churchill.html" target="_blank">Winston Churchill</a></div>
<blockquote><p>Dinner was the focal-point and highlight of Churchill’s day. Table talk, dominated by Churchill, was as important as the meal. Sometimes, depending on the company, drinks and cigars extended the event well past midnight. The guests retired, Churchill returned to his study for another hour or so of work.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/70323761@N00/2554301131" title="Philadelphia - Old City: Second Bank Portrait Gallery - Benjamin Franklin"><img src="http://farm4.static.flickr.com/3141/2554301131_9538332400_s.jpg" /></a><a href="http://dailyroutines.typepad.com/daily_routines/2007/07/benjamin-frankl.html" target="_blank">Benjamin Franklin</a></div>
<blockquote><p>The precept of Order requiring that every part of my business should have its allotted time, one page in my little book contained the following scheme of employment for the twenty-four hours of a natural day.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/70323761@N00/1528221013" title="Versailles: Château de Versailles - Galeries de L'Histoire de France - La galerie des Batailles - Bataille de Wagram"><img src="http://farm3.static.flickr.com/2264/1528221013_60d9a0219d_s.jpg" /></a><a  href="http://dailyroutines.typepad.com/daily_routines/2007/08/napoleon-bonapa.html" target="_blank">Napoleon Bonaparte</a></div>
<blockquote><p>Briefly: Napoleon’s daily routine was perforce limited. Marchand awakened him early and served coffee in bed. One or more of the valets washed him and helped him shave, then rubbed him down with a coarse brush and doused him with eau de cologne (which soon ran out and was replaced with homemade lavender water) and finally helped him dress, an elaborate process that required one or two hours.</p></blockquote>
<p><br/></p>
<h3>Celebrities</h3>
<div class="left_75_img" ><a href="http://flickr.com/photos/52448527@N00/544570564" title="Special"><img src="http://farm2.static.flickr.com/1195/544570564_cc41ce95f8_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2009/01/fred-rogers.html" target="_blank">Fred Rogers</a></div>
<blockquote><p>
he steps on a scale in his bathing suit and his bathing cap and his goggles, and the scale tells him he weighs 143 pounds. This has happened so many times that Mister Rogers has come to see that number as a gift, as a destiny fulfilled, because, as he says, &#8220;the number 143 means `I love you.&#8217; It takes one letter to say &#8216;I&#8217; and four letters to say `love&#8217; and three letters to say `you.&#8217; One hundred and forty-three. `I love you.&#8217; Isn&#8217;t that wonderful?&#8221;</p></blockquote>
<p><span id="more-327"></span></p>
<div class="left_75_img" ><a href="http://flickr.com/photos/13584435@N00/4580230899" title="Terry Zweigoff, Jason Reitman, Roger Ebert, Errol Morris, Philip Kaufman"><img src="http://farm5.static.flickr.com/4021/4580230899_ee798e176b_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2007/08/roger-ebert.html" target="_blank">Roger Ebert</a></div>
<blockquote><p>Morning routine: I usually get up around 7. I make oatmeal in my rice cooker. Then I take an hourlong walk: outside if the weather&#8217;s good; on my treadmill if it&#8217;s cold. Then I shower, shave and go to the first of three movies I see on many weekdays.</p></blockquote>
<p><br/></p>
<h3>Authors</h3>
<div class="left_75_img" ><a href="http://flickr.com/photos/51035645217@N01/2959390042" title="C. S. Lewis"><img src="http://farm4.static.flickr.com/3224/2959390042_5664377980_s.jpg" /></a><br />
<a href="http://dailyroutines.typepad.com/daily_routines/2009/01/cs-lewis.html" target="_blank">C. S. Lewis</a></div>
<blockquote><p>I would choose always to breakfast at exactly eight and to be at my desk by nine, there to read or write till one. If a cup of good tea or coffee could be brought me about eleven, so much the better. A step or so out of doors for a pint of beer would not do quite so well; for a man does not want to drink alone and if you meet a friend in the taproom the break is likely to be extended beyond its ten minutes. At one precisely lunch should be on the table; and by two at the latest I would be on the road.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/86495664@N00/402857832" title="DSC_0128"><img src="http://farm1.static.flickr.com/175/402857832_43f5751e4b_s.jpg" /></a><a  href="http://dailyroutines.typepad.com/daily_routines/2009/01/stephen-king.html" target="_blank">Steven King</a></div>
<blockquote><p>“There are certain things I do if I sit down to write,” he said. “I have a glass of water or a cup of tea. There’s a certain time I sit down, from 8:00 to 8:30, somewhere within that half hour every morning,” he explained. “I have my vitamin pill and my music, sit in the same seat, and the papers are all arranged in the same places. The cumulative purpose of doing these things the same way every day seems to be a way of saying to the mind, you’re going to be dreaming soon.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/23664332@N00/2320679681" title="Grisham for Hillary"><img src="http://farm3.static.flickr.com/2078/2320679681_84b6bafa53_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2009/01/john-grisham.html" target="_blank">John Grisham</a></div>
<blockquote><p>When he first started writing, Grisham says, he had &#8220;these little rituals that were silly and brutal but very important.&#8221;<br />
&#8220;The alarm clock would go off at 5, and I&#8217;d jump in the shower. My office was 5 minutes away. And I had to be at my desk, at my office, with the first cup of coffee, a legal pad and write the first word at 5:30, five days a week.&#8221;</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/22333614@N06/3901433043" title="Ernest"><img src="http://farm3.static.flickr.com/2448/3901433043_0f302a8704_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2008/01/ernest-hemingwa.html" target="_blank">Ernest Hemingway</a></div>
<blockquote><p>When I am working on a book or story I write every morning as soon after first light as possible. There is no one to disturb you and it is cool or cold and you come to your work and warm as you write. You read what you have written and, as you always stop when you know what is going to happen next, you go on from there. You write until you come to a place where you still have your juice and you know what will happen next and you stop and try to live through until the next day when you hit it again.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/90931619@N00/2617069036" title="West_Cemetery_Amherst_TRM_080619 (6)"><img src="http://farm4.static.flickr.com/3137/2617069036_f47cf673a1_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2008/12/emily-dickinson.html" target="_blank">Emily Dickenson</a></div>
<blockquote><p>I will tell you my order of time for the day, as you were so kind as to give me your&#8217;s. At 6. oclock, we all rise. We breakfast at 7. Our study hours begin at 8. At 9. we all meet in Seminary Hall, for devotions. At 10¼. I recite a review of Ancient History, in connection with which we read Goldsmith &#038; Grimshaw.  At .11. I recite a lesson in &#8220;Pope&#8217;s Essay on Man&#8221; which is merely transposition. At .12. I practice Calisthenics &#038; at 12¼ read until dinner, which is at 12½ &#038; after dinner, from 1½ until 2 I sing in Seminary Hall. From 2¾ until 3¾. I practise upon the Piano. At 3¾ I go to Sections, where we give in all our accounts of the day, including, Absence &#8211; Tardiness &#8211; Communications &#8211; Breaking Silent Study hours &#8211; Receiving Company in our rooms &#038; ten thousand other things, which I will not take time or place to mention. At 4½, we go into Seminary Hall, &#038; receive advice from Miss. Lyon in the form of lecture. We have Supper at 6. &#038; silent-study hours from then until retiring bell, which rings at 8¾, but the tardy bell does not ring untl 9¾, so that we dont often obey the first warning to retire.</p></blockquote>
<div class="left_75_img" ><a href="http://flickr.com/photos/24071842@N00/4482935882" title="#11: А́йзек Ази́мов"><img src="http://farm3.static.flickr.com/2700/4482935882_bd93384403_s.jpg" /></a><br />
<a href="http://dailyroutines.typepad.com/daily_routines/2007/08/isaac-asimov.html" target="_blank">Isaac Asimov</a></div>
<blockquote><p>His usual routine was to awake at 6 A.M., sit down at the typewriter by 7:30 and work until 10 P.M. </p></blockquote>
<p><br/></p>
<h3>Others</h3>
<div class="left_75_img" ><a href="http://flickr.com/photos/35578067@N00/521524395" title="馬克思_4"><img src="http://farm1.static.flickr.com/204/521524395_1e924cfe25_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2007/08/karl-marx.html" target="_blank">Karl Marx</a></div>
<blockquote><p>&#8220;I am plagued like Job, though not so God-fearing,&#8221; he wrote in 1858.</p></blockquote>
<p><br/></p>
<div class="left_75_img" ><a href="http://flickr.com/photos/35752108@N00/2262636867" title="Charles Darwin"><img src="http://farm3.static.flickr.com/2326/2262636867_a80f7eca8a_s.jpg" /></a><br />
<a  href="http://dailyroutines.typepad.com/daily_routines/2008/12/charles-darwin.html" target="_blank">Charles Darwin</a></div>
<blockquote><p>Even when guests were present, half an hour of conversation at a time was all that he could stand, because it exhausted him.</p></blockquote>
<p><br/></p>
<p>These and more via <a  href="http://dailyroutines.typepad.com/daily_routines/">Daily Routines</a> &#8230;</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/_YI7u5d20tc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/15-daily-routines-of-famous-people/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/15-daily-routines-of-famous-people/</feedburner:origLink></item>
		<item>
		<title>Great White Attacks And Dolphins Help Escape! [RANDOM]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/Q3lsGSAiX7Y/</link>
		<comments>http://johnwright.me/blog/great-white-attacks-and-dolphins-help-escape/#comments</comments>
		<pubDate>Fri, 16 Nov 2007 03:16:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://johnwright.me/blog/?p=417</guid>
		<description><![CDATA[Photography: shark or dolphin by schloppy Check out this amazing story of a surfer, Todd Endris, who was attacked by a great white shark and lived with the help of God, friends, dolphins and many more&#8230; http://www.msnbc.msn.com/id/21689083/ Truly incredible! &#8220;This picture is not related. It was taken in 2003 at Albatros beach in Jeffreys Bay [...]]]></description>
			<content:encoded><![CDATA[<p><!-- Flickr Template START --><a href="http://www.flickr.com/photos/69395370@N00/5139256/"><img src="http://static.flickr.com/5/5139256_12c28b7459.jpg" alt="shark or dolphin" style="width:350px" /></a><br />
Photography: <a href="http://www.flickr.com/photos/69395370@N00/5139256/">shark or dolphin</a> by <a href="http://www.flickr.com/photos/69395370@N00/">schloppy</a></p>
<p>Check out this amazing story of a surfer, Todd Endris, who was attacked by a great white shark and lived with the help of God, friends, dolphins and many more&#8230;<!--  Flickr Template END--></p>
<p><a href="http://www.msnbc.msn.com/id/21689083/">http://www.msnbc.msn.com/id/21689083/</a></p>
<p>Truly incredible!</p>
<p>&#8220;This picture is not related. It was taken in 2003 at Albatros beach in Jeffreys Bay and the man was unharmed.&#8221; &#8211; matt</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/Q3lsGSAiX7Y" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/great-white-attacks-and-dolphins-help-escape/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/great-white-attacks-and-dolphins-help-escape/</feedburner:origLink></item>
		<item>
		<title>Can Your Brain Read This? [RANDOM]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/yS5ui1nMKks/</link>
		<comments>http://johnwright.me/blog/can-your-brain-read-this/#comments</comments>
		<pubDate>Thu, 08 Nov 2007 03:29:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://johnwright.me/blog/?p=423</guid>
		<description><![CDATA[Photography: Brain tree? by gothandy I&#8217;m very fascinated by life and biology, but the human brain is extra-ordinary even in the extra-ordinary world of biology. It is the organ and system that is surely most responsible for the human experience. I have read casually on the ideas of how the brain works and it never [...]]]></description>
			<content:encoded><![CDATA[<p><!-- Flickr Template START --><a href="http://www.flickr.com/photos/32546610@N00/339758623/"><img src="http://static.flickr.com/131/339758623_9f8d6f6a5c.jpg" alt="Brain tree?" style="width:350px" /></a><br />
Photography: <a href="http://www.flickr.com/photos/32546610@N00/339758623/">Brain tree?</a> by <a href="http://www.flickr.com/photos/32546610@N00/">gothandy</a><br />
<!--  Flickr Template END--></p>
<p>I&#8217;m very fascinated by life and biology, but the human brain is extra-ordinary even in the extra-ordinary world of biology. It is the organ and system that is surely most responsible for the human experience. I have read casually on the ideas of how the brain works and it never ceases to fascinate me.</p>
<p>I recently came across a site and book dedicated to the idea that the brain really isn&#8217;t so impressive. I thought it was odd. The author seemed to know what he was talking about so I considered what he said. But I also found this article <a href="http://discovermagazine.com/2007/aug/unsolved-brain-mysteries/article_view">10 Unsolved Mysteries Of The Brain</a> and I have to stick to my position, the brain is one of the most impressive systems known to man.</p>
<p>You may have seen this before circulated around in an email or elsewhere. Can you read it?</p>
<blockquote><p>Cna yuo raed tihs? Olny 55 plepoe out of 100 can.<br />
i cdnuolt blveiee taht I cluod aulaclty uesdnatnrd waht I was rdanieg. The phaonmneal pweor of the hmuan mnid, aoccdrnig to a rscheearch at Cmabrigde Uinervtisy, it dseno&#8217;t mtaetr in waht oerdr the ltteres in a wrod are, the olny iproamtnt tihng is taht the frsit and lsat ltteer be in the rghit pclae. The rset can be a taotl mses and you can sitll raed it whotuit a pboerlm. Tihs is bcuseae the huamn mnid deos not raed ervey lteter by istlef, but the wrod as a wlohe. Azanmig huh? yaeh and I awlyas tghuhot slpeling was ipmorantt! if you can raed tihs dgig it or use aentohr srecive wtih the sarhe it btotun bloew!</p></blockquote>
<p>If you can&#8217;t read it, it basically explains that for many people the brain does not read words as letters sequentially from first to last but it takes in all the letter symbols at once. And it seems that as long as the first and last letters are in the right place, it doesn&#8217;t matter where the other letters are placed in the word. Your brain will still be able to recognize the word! It works for me as I can read the above and it is fascinating to get this little bit of insight on how the brain works from this demonstration.</p>
<p>&#8220;Is there a name for this? Like the…affect?&#8221; &#8211; Emily </p>
<p>I don&#8217;t know, if someone knows please tell us in the comments.</p>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/yS5ui1nMKks" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/can-your-brain-read-this/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/can-your-brain-read-this/</feedburner:origLink></item>
		<item>
		<title>10 Origami Tessellations [RANDOM]</title>
		<link>http://feedproxy.google.com/~r/johnwright/~3/n-LM3afe1Zg/</link>
		<comments>http://johnwright.me/blog/origami-tessellations/#comments</comments>
		<pubDate>Thu, 02 Mar 2006 22:20:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://iamjohnwright.com/blog/?p=376</guid>
		<description><![CDATA[Origami + Tessellations = WOW! This is truly a unique and amazing art. (Actually it&#8217;s the combination of two unique and amazing art forms.) In fact it is also a way to see/experience a 3D tessellation, which mathematically and spatially is a very interesting concept.]]></description>
			<content:encoded><![CDATA[<div align="center" >
<a  title="Origami Tessellations" href="http://www.flickr.com/photos/melisande-origami/83450796/in/set-72057594048293299/"><img src="/blog/wp-content/uploads/2006/03/thumb-ogtes-300x225.jpg" alt='Origami Tessellations'   /></a></p>
<p> <a href="http://en.wikipedia.org/wiki/Origami" rel="tag" >Origami</a> + <a href="http://en.wikipedia.org/wiki/Tessellation" rel="tag">Tessellations</a> = WOW!</p>
</div>
<p>This is truly a unique and amazing art. (Actually it&#8217;s the combination of two unique and amazing art forms.) In fact it is also a way to see/experience a 3D tessellation, which mathematically and spatially is a very interesting concept. </p>
<div class="left_75_img" >
<a href="http://flickr.com/photos/44315708@N00/144682480" title="Latest work from Danilo, my Chilean tessellation friend!"><img src="http://farm1.static.flickr.com/49/144682480_568117c64b_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/19880215" title="spread diamond tessellation, squeezed"><img src="http://farm1.static.flickr.com/14/19880215_12c86cefc6_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/14320188" title="star twist, folded from flecked momogami paper."><img src="http://farm1.static.flickr.com/9/14320188_82a0993af8_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/8354533" title="patterned "spread" hex tile fold"><img src="http://farm1.static.flickr.com/5/8354533_d2c4529326_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/2831399935" title="Waterbomb tessellation"><img src="http://farm4.static.flickr.com/3097/2831399935_efb189e6ed_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/97900314" title="Deltoidal Trihexagonal Tiling + Stars = Crazy Delicious"><img src="http://farm1.static.flickr.com/40/97900314_54838972de_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/47113865" title="Angry Sun God! (Aztec Twist, tessellated, backlit)"><img src="http://farm1.static.flickr.com/26/47113865_b5d6f48a53_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/17790739" title="owesen's star tessellation (version 1), reverse"><img src="http://farm1.static.flickr.com/13/17790739_c36b09b1e2_s.jpg" /></a></div>
<div class="left_75_img" ><a href="http://flickr.com/photos/44315708@N00/23841401" title="Tiled Hex Tessellation, folded by Danilo"><img src="http://farm1.static.flickr.com/18/23841401_f636da218a_s.jpg" /></a></div>
<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Bookmark</a> </p><img src="http://feeds.feedburner.com/~r/johnwright/~4/n-LM3afe1Zg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://johnwright.me/blog/origami-tessellations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://johnwright.me/blog/origami-tessellations/</feedburner:origLink></item>
	</channel>
</rss>
