<?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>Artsy Techie &#187; Tech</title>
	<atom:link href="http://olivier.thereaux.net/category/tech/feed/" rel="self" type="application/rss+xml" />
	<link>http://olivier.thereaux.net</link>
	<description>Mix Web Technology, Art, Culture. Bake Until Crispy</description>
	<lastBuildDate>Fri, 13 Aug 2010 00:12:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>The Web Site: a moribund metaphor</title>
		<link>http://olivier.thereaux.net/2010/04/29/web-site-moribund-metaphor/</link>
		<comments>http://olivier.thereaux.net/2010/04/29/web-site-moribund-metaphor/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 16:39:22 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://olivier.thereaux.net/?p=276</guid>
		<description><![CDATA[Note: this is an english adaptation of an article originally posted en français on the Pheromone Lab by yours truly. Discussions at work about Steve Job&#8217;s recently published thoughts on flash brought up an interesting question: is Jobs trying to tell us that there is no point in making Web sites any more, and that [...]]]></description>
			<content:encoded><![CDATA[<p>Note: this is an english adaptation of <a href="http://lab.pheromone.ca/2010/04/29/moribonde-metaphore-site-web/">an article originally posted <em>en français</em> on the Pheromone Lab</a> by yours truly.</p>
<p>Discussions at work about Steve Job&#8217;s recently published  <a href="http://www.apple.com/hotnews/thoughts-on-flash/">thoughts on flash</a> brought up an interesting question: is Jobs trying to tell us that there is no point in making Web sites any more, and that we should all be building apps for iPhone™? And… is he right?</p>
<p>Yes, and No.</p>
<p>The Web as an information ecosystem is not in danger.</p>
<p>Web technologies are not in danger. On the contrary: said Steve, in his thoughts about flash, raves about the open technologies built at W3C, like HTML5 or CSS. [for more on this, see my previous <a href="http://olivier.thereaux.net/2010/04/11/iphoneos-its-not-about-flash/">post about the iphone developer agreement</a>.]</p>
<p>On the other hand, the paradigm of the web &#8220;site&#8221; as a space you travel to is, I believe, moribund. It is a major shift that finds its origin, among other things, in the development of mobiles.</p>
<p>Before the emergence of the mobile internet devices (laptops, smartphones, netbooks, tablets and so on) our perception was that the computer was transporting us (nay &#8211; teleporting?) to the internets. Hence the metaphor and the semantics used: site, navigator, compass, “go to Yahoo”. Said metaphor also spawned the first generations of virtual reality; said metaphor was acutely present in portals/platforms such as geocities, where all the sites were organised in virtual cities and neighbourhoods.</p>
<div class="wp-caption alignleft" style="width: 250px"><img alt="geocities address on a wall" src="http://farm3.static.flickr.com/2411/3531593436_e81c666f37_m.jpg" title="geocities address on a wall" width="240" height="180" /><p class="wp-caption-text">Photo (cc) mjmalone on flickr</p></div>
<p>With the arrival of wi-fi and reliable connectivity on cellular phone networks, the thinking is reversed. We are always mobile, always going somewhere, and the Web is following us around. And since the Web and its information ecosystem is always available, we are getting used to responding to immediate needs: here, and now.</p>
<p>Hence the emergence of a new metaphor and a new economy around it.</p>
<p>Exit Geocities (RIP, indeed, 1994 &#8211; 2009), exit the &#8220;web site&#8221;. Enter ubiquitous services, aimed at solving a particular problem or serving a particular need. Right now, this new metaphor is best served by proprietary apps and web widgets, but the shape of these services may change. The future will tell us if Apple (or someone else) wins the dominance game, or if the fragmentation in the &#8220;app stores&#8221; market will kill that model, as <a href="http://www.quirksmode.org/blog/archives/2010/03/html5_apps.html">people such as PPK seem to believe</a>.</p>
<p>My bet, regardless, is that the “paradigm shift” (buzzword alert!) from the web sites to the ubiquitous web services, is durable.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2010/04/29/web-site-moribund-metaphor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhoneOS developer agreement: it&#039;s not about Flash</title>
		<link>http://olivier.thereaux.net/2010/04/11/iphoneos-its-not-about-flash/</link>
		<comments>http://olivier.thereaux.net/2010/04/11/iphoneos-its-not-about-flash/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 02:01:14 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://olivier.thereaux.net/?p=251</guid>
		<description><![CDATA[For the past week, the tech community has been abuzz about the new (and beta) developers&#8217; agreement coming with the upcoming iPhoneOS 4.0 SDK. In particular, with this statement: 3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be [...]]]></description>
			<content:encoded><![CDATA[<p>For the past week, the tech community has been abuzz about the new (and beta) developers&#8217; agreement coming with the upcoming iPhoneOS 4.0 SDK. In particular, with this statement:</p>
<blockquote><p>3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).</p>
</blockquote>
<p>Among cries of anger, especially from people who were looking forward to developing using Flash technology and porting to Apple&#8217;s devices using Adobe&#8217;s upcoming Unity tool, a few heavyweights such as <a href="http://daringfireball.net/2010/04/iphone_agreement_bans_flash_compiler">John Gruber</a> and <a href="http://www.mondaynote.com/2010/04/11/the-adobe-apple-flame-war/">Jean-Louis Gassé</a> both chime in, claiming it is a strategic move by Apple to control the developer ecosystem.</p>
<p>This from JL Gassé:</p>
<blockquote cite="http://www.mondaynote.com/2010/04/11/the-adobe-apple-flame-war/"><p>Cross-platform tools dangle the old “write once, run everywhere” promise. But, by being cross-platform, they don’t use, they erase     “uncommon” features. To Apple, this is anathema as it wants apps developers to use, to promote its differentiation. It’s that simple. Losing differentiation is death by low margins. It’s that simple. It’s business. Apple is right to keep control of its platform’s future.</p>
</blockquote>
<p>I would almost agree with this, except that the following statement in the agreement-to-be makes Gassé&#8217;s point moot:</p>
<blockquote cite="http://daringfireball.net/2010/04/iphone_agreement_bans_flash_compiler"><p>or JavaScript as executed by the iPhone OS WebKit engine</p>
</blockquote>
<p>HTML5 and the javascript APIs, which the new apple developer agreement specifically approve of, is precisely the epitome of “write once build anywhere”:</p>
<ol>
<li> HTML5 is an open standard</li>
<li> the javascript API giving Webkit access to device&#8217;s innards are being standardised at W3C, too</li>
<li> Webkit, the engine behind apple&#8217;s web capability, is open source, and widespread amongst most mobile platforms, including Google-driven Android phones…  just one of the major competing platforms in the mobile market! </li>
</ol>
<p>Is Apple really trying to stop developers following the lure of “write once, build anywhere”? Given how Android is gnawing at Apple&#8217;s share of several markets (especially in North America), and given how Apple and Google haven&#8217;t been particularly friendly of late, you&#8217;d think Apple would try to block developers from <a href="http://www.quirksmode.org/blog/archives/2010/03/html5_apps.html">easily building for iPhone AND Android – something HTML5+JS does beautifully</a>.</p>
<p>And yet, Apple is not only allowing apps to be built with HTML5+Javascript, they are actually promoting the use of these development technologies for their new iAds platform.</p>
<p>Two possibilities:</p>
<ol>
<li>Apple&#8217;s strategy is not really to control the developers&#8217; ecosystem. The point of the new terms for developers is, and only is, to give Adobe the finger. Childish and silly. I don&#8217;t believe that&#8217;s the case.</li>
<li>There are competing groups at apple, fighting for dominance. The Web geeks are scoring points with their “html5 everywhere” strategy of having the best implementation of open standards and bringing in the huge, creative mass of Web developers. On the other hand, the software geeks are trying hard to limit who can build applications for the iphone os devices: mac developers, and only mac developers. Old hands knowing the Apple HIG by heart, and early converts. </li>
</ol>
<p>If my hunch is right, the second hypothesis is the right one, and the internal fight at Apple may turn nasty when the executives realize that the strategies of these two groups are completely at odds.</p>
<p>The real fight being fought is not one between Apple and Adobe. It is – within Apple&#8217;s ranks – between the Web and Software crowds.</p>
<p>(You know who I will root for).</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2010/04/11/iphoneos-its-not-about-flash/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>What happened to mashups?</title>
		<link>http://olivier.thereaux.net/2010/03/06/mashups/</link>
		<comments>http://olivier.thereaux.net/2010/03/06/mashups/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 03:19:06 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[augmented reality]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[web history]]></category>

		<guid isPermaLink="false">http://olivier.thereaux.net/?p=236</guid>
		<description><![CDATA[In my recent work around Mobile augmented reality I came across the idea that MAR was merely a new name for mashups, under a thin disguise of 3d and video feeds. Mashups were all the rage but a few years ago! Every Web developer and her dog were creating a “mashup application” &#8211; most often [...]]]></description>
			<content:encoded><![CDATA[<p>In my recent work around <a href="http://lab.pheromone.ca/2010/02/18/mwc-day-3/">Mobile augmented reality</a> I came across the idea that <acronym title="Mobile Augmented Reality">MAR</acronym> was <a href="http://lab.pheromone.ca/2010/02/09/mobile-augmented-reality/" title="Mobile Augmented Reality: beyond the glorified tour guide and the dystopian future">merely a new name for mashups</a>, under a thin disguise of 3d and video feeds.</p>
<div id="attachment_237" class="wp-caption alignleft" style="width: 195px"><a href="http://www.flickr.com/photos/olgucz/2719734979"><img src="http://ot.thereaux.net/wp-content/uploads/2010/03/veggie-mash.jpg" alt="Veggie Mash" title="Veggie Mash" width="185" height="240" class="size-full wp-image-237" /></a><p class="wp-caption-text">mashed cauliflower, a photo by olgucz on flickr</p></div>
<p>Mashups were all the rage but a few years ago! Every Web developer and her dog were creating a “mashup application” &#8211; most often a few layers of points of interest applied onto google&#8217;s great map APIs. In that sense, it is true that a lot of the current applications of MAR are a new spawn of the mashup hype.</p>
<p>Fast forward a few years, and the world mashup is hardly ever uttered &#8211; or at least, very seldom without a hint of sarcasm. Most of those &#8220;mashup&#8221; applications have died, and google did a very smart move by not only allowing everyone to layer information over their maps &#8211; they actually let everyone integrate the rich maps and data on anyone&#8217;s web site.</p>
<p>Mashups are dead, but their progeny inherited a lot of the contemporary web landscape: only because of the mashup hype and the experimentation it prompted do we routinely think of the web not just as a collection of page, but as a large set of linked data that can be packed together into rich, cohesive units of information. Many of the &#8220;useful&#8221; tricks of the day, be it facebook connect, feed aggregation or the new portals (hah!) owe their existence to the stickiness of the mashup buzzword.</p>
<p>And now, for something completely different: my secret for a great veggie mash is a bit of butter, a dash of olive oils and a sprinkle of australian herb salt. That or a red wine stew sauce, actually…</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2010/03/06/mashups/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Score two for flexible design</title>
		<link>http://olivier.thereaux.net/2010/01/02/flexible-mobile-design/</link>
		<comments>http://olivier.thereaux.net/2010/01/02/flexible-mobile-design/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 18:16:31 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[phonegap]]></category>
		<category><![CDATA[titanium]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=212</guid>
		<description><![CDATA[A few months ago I was writing a post on the Pheromone Lab entitled “The Death of the Mobile Website”. The basic point of it was, as the landscape of web-ready devices become less segregated between “Desktop”, “Smartphones” and “Mobile”, and as we advance towards a more continuous ecosystem, we need to learn to design [...]]]></description>
			<content:encoded><![CDATA[<p>A few months ago I was writing a post on the <a href="http://lab.pheromone.ca/">Pheromone Lab</a> entitled “<a href="http://lab.pheromone.ca/2009/08/26/the-death-of-the-mobile-website/">The Death of the Mobile Website</a>”. The basic point of it was, <q cite="http://lab.pheromone.ca/2009/08/26/the-death-of-the-mobile-website/">as the landscape of web-ready devices become less segregated between “Desktop”, “Smartphones” and “Mobile”, and as we advance towards a more continuous ecosystem, we need to learn to design flexible interfaces that can adapt to a wide range of size, resolution, capabilities and modes of use</q>.</p>
<p>A few weeks ago, Apple, a leader in sales of mobile devices, apparently started contacting selected developers with <a href="http://www.businessinsider.com/apple-to-demo-tablet-in-january-asks-developers-to-get-apps-ready-2009-12">one message</a>: stop assuming that you are building applications for 320x480px screens.</p>
<p>Score one for flexible design.</p>
<p>So, how can one create applications that would feel and work great in the current fragmented market of web devices? I&#8217;ve had, for a long time now, a hunch that web standard technologies such as HTML and CSS had the answer.  HTML and CSS were made to meet this challenge, to build interfaces that scale, to cascade differently according to the media. The new <a href="http://www.w3.org/TR/css3-mediaqueries/">CSS3 Media Queries</a> pushes this capability quite far already, and I have been looking forward to experimenting more with it.</p>
<p>I was surprised, however, by a very interesting new trend: HTML+CSS+JS are being used not as the final UI layer for web applications, but instead as a programming language to be compiled into other languages (such as objectiveC, Java etc.) and the deployed, with native UI look and feel, onto a variety of devices.</p>
<p>This is the strategy currently followed by Nitobi&#8217;s <a href="http://phonegap.com/">PhoneGap</a> and Appcelerator&#8217;s <a href="http://www.appcelerator.com/products/titanium-mobile/">Titanium</a>, both of which allow development using the basic Web technologies and JavaScript API, and package the result into “native apps” for iPhone, Android (and blackberry).</p>
<p>This could be a very exciting development for web standards as base layers for everything on the web… including applications that have very little to do with the Web paradigm. And for designers and developers, this could be the solution to the conundrum of flexible design and multi-platform development.</p>
<p>Score two for flexible design.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2010/01/02/flexible-mobile-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thinking about trends on the mobile web</title>
		<link>http://olivier.thereaux.net/2009/09/05/thinking-about-mobile-web/</link>
		<comments>http://olivier.thereaux.net/2009/09/05/thinking-about-mobile-web/#comments</comments>
		<pubDate>Sat, 05 Sep 2009 17:41:57 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[trend]]></category>

		<guid isPermaLink="false">http://artbeat.me/2009/09/05/thinking-about-trends-on-the-mobile-web/</guid>
		<description><![CDATA[In the past few months I have started a reflection on trends for the mobile web, where it may be going, what it means for our lives… Nothing revolutionary yet, but I have started with an article over at the Pheromone lab (my employer) on “The Death of the Mobile Website?” and interface/device trends. Any [...]]]></description>
			<content:encoded><![CDATA[<p>In the past few months I have started a reflection on trends for the mobile web, where it may be going, what it means for our lives… Nothing revolutionary yet, but I have started with an article over at the  <a href="http://lab.pheromone.ca/">Pheromone lab</a> (my employer) on “<a href="http://lab.pheromone.ca/2009/08/26/the-death-of-the-mobile-website/">The Death of the Mobile Website?</a>” and interface/device trends.</p>
<p>Any good reading you would recommend in this area?</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/09/05/thinking-about-mobile-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Young is the Web</title>
		<link>http://olivier.thereaux.net/2009/05/20/young-is-the-web/</link>
		<comments>http://olivier.thereaux.net/2009/05/20/young-is-the-web/#comments</comments>
		<pubDate>Thu, 21 May 2009 02:50:43 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Society]]></category>
		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=183</guid>
		<description><![CDATA[A meeting yesterday saw me really excited at the prospect of learning new tricks from someone who has been perfecting his craft for more than twenty years. Everyone has many daily encounters with people who have dedicated their life to their work or art, but this one made me pause and think. The past months [...]]]></description>
			<content:encoded><![CDATA[<p>A meeting yesterday saw me really excited at the prospect of learning new tricks from someone who has been perfecting his craft for more than twenty years. Everyone has many daily encounters with people who have dedicated their life to their work or art, but this one made me pause and think.</p>
<p>The past months have seen me navigating in many ends of the Web spectrum, from the academic to the commercial, from the purely technical to community or business facets. Each time I have been considered an expert, a senior, a veteran. Which, as far as the Web is concerned, I am. I also happen to be in my early thirties…</p>
<p>Yesterday I realised how humbling it is to meet people with decades of experience in their field. We the websmiths too often forget that being a senior after 3 years and a veteran after 10 years is an anomaly. Let us never forget how young the Web is.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/05/20/young-is-the-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bixi on the iPhone</title>
		<link>http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/</link>
		<comments>http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/#comments</comments>
		<pubDate>Sat, 16 May 2009 19:22:04 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Hack]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Urban]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=164</guid>
		<description><![CDATA[(… and ipod touch, and blackberry…) Bixi is the new community bike service here in Montreal. Lots of brewhaha around launchtime, but to me, the really annoying shortcoming of the system so far was not being able to check the status of stations on the go. According to a message I read on the facebook [...]]]></description>
			<content:encoded><![CDATA[<p>(… and ipod touch, and blackberry…)</p>
<p><a href="http://bixi.ca">Bixi</a> is the new community bike service here in Montreal. Lots of brewhaha around launchtime, but to me, the really annoying shortcoming of the system so far was not being able to check the status of stations on the go.</p>
<p>According to a <a href="http://www.facebook.com/pages/Bixi-Velo/76554328648?v=feed&amp;story_fbid=76492574167&amp;ref=mf">message</a> I read on the facebook group for bixi a few weeks ago, there is “no plan to provide an API, iphone app or mobile access to the map of bixi stations”. That&#8217;s rather silly, knowing that the users will want to know, <em>in real time</em> and <em>on the go</em>, whether they can get or return a bike nearby.</p>
<p> I&#8217;m too lazy to build a real iphone app over the week-end, but I wanted to prove that it doesn&#8217;t cost tens of thousands of dollars to provide bixi users mobile access to the status of the stations.</p>
<p>30 minutes and about as many lines of python later, I had a working hack to include a <a href="http://yoda.zoy.org/2009/05/bixi">map of all stations</a> in google earth, google maps or the map application on my iphone.</p>
<h3>iPhone Instructions</h3>
<p>Here&#8217;s how to use it on the iphone (or networked iPod Touch):<br />

<a href='http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/bixi_map_1/' title='iphone map application'><img width="150" height="150" src="http://olivier.thereaux.net/wp-content/uploads/2009/05/bixi_map_1-150x150.png" class="attachment-thumbnail" alt="1) Launch the iphone map application" title="iphone map application" /></a>
<a href='http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/bixi_map_2/' title='Fetching the stations'><img width="150" height="150" src="http://olivier.thereaux.net/wp-content/uploads/2009/05/bixi_map_2-150x150.png" class="attachment-thumbnail" alt="2) Enter the address http://bit.ly/bixi in the search bar" title="Fetching the stations" /></a>
<a href='http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/bixi_map_3/' title='The stations show on the map'><img width="150" height="150" src="http://olivier.thereaux.net/wp-content/uploads/2009/05/bixi_map_3-150x150.png" class="attachment-thumbnail" alt="3) Tada! all active stations show on the map, with the number of available bikes and parking slots" title="The stations show on the map" /></a>
</p>
<p><strong>Disclaimer</strong>: I built this using only publicly available data – not a public, official API, though. If the powers-that-be at bixi decide they don&#8217;t like it, or change the way they organise their data, or any other silly move, I&#8217;ll have to pull the plug on this little hack. In the meantime, I intend to use it and provide it for free. Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/05/16/bixi-on-the-iphone/feed/</wfw:commentRss>
		<slash:comments>50</slash:comments>
		</item>
		<item>
		<title>Resources for Web Architects</title>
		<link>http://olivier.thereaux.net/2009/04/28/resources-for-web-architects/</link>
		<comments>http://olivier.thereaux.net/2009/04/28/resources-for-web-architects/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 11:34:50 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=105</guid>
		<description><![CDATA[For almost all of the past decade I have spent working in Tech, IT, and the Web, I never really had a Job title. My roles and responsibilities varied from project to project, and I never felt like a single title would do my work justice. So it is with a certain feeling of excitement [...]]]></description>
			<content:encoded><![CDATA[<p>For almost all of the past decade I have spent working in Tech, IT, and the Web, I never really had a Job title. My roles and responsibilities varied from project to project, and I never felt like a single title would do my work justice. So it is with a certain feeling of excitement that I recently signed for a job with a clear title: “Web Architect”.</p>
<p>There does not seem to be a lot of existing resources or information on the Web about this role. “<a href="http://en.wikipedia.org/wiki/Web_developer">Web developer</a>”, “<a href="http://en.wikipedia.org/wiki/Project_manager">Project manager</a>” or “<a href="http://en.wikipedia.org/wiki/Software_architect">Software architect</a>” all have their wikipedia entry. Search for “Web architect” in wikipedia and you will currently be redirected to a page on <a href="http://en.wikipedia.org/wiki/Web_design">Web design</a>. Wrong, wrong, wrong… There is indeed a page for <a href="http://en.wikipedia.org/wiki/Website_architecture" title="Website architecture - Wikipedia, the free encyclopedia">Website architecture</a>, but it still needs work.</p>
<p>In the Web industry, the “architect” title has long been hogged by Information Architects, and the Web Architect is generally called “Tech Lead”. That name is problematic, however, because it implies that the lead has evident authority on the development team, when the reality is often one of much responsibility, little authority: the tech lead seldom has authority by virtue of being a manager, but <em>gains authority</em> through the building of trust and effective mentoring.</p>
<p>The good news is that the Info Arch world is reinventing itself as “User Experience”. This is an opportunity for web architects to reclaim a title that makes more sense: architecture is about knowledge of complex systems, design and technology, and nurturing a project from beginning to end.</p>
<p>Still, the fact is there aren&#8217;t a lot of good resources yet on the Web explaining the work we do. I decided to collect a list of resources for Web Architects, mostly for my own consumption, but if it benefits others, even better!</p>
<p><span id="more-105"></span></p>
<h3>Know the Job</h3>
<p>In a nutshell, my understanding of the job goes:</p>
<ul>
<li>Provide technical vision at every stage of the project, from feasibility to delivery.</li>
<li>Build specifications and/or prototypes. Do it with a team, not alone.</li>
<li>Participate in development and own responsibility of architectural consistency, quality, documentation, code reviews, testing.</li>
<li>Know the methodologies and development processes and frameworks. Get teams to use the right ones for the right projects.</li>
<li>Develop and maintain expertise in the team through research, exchange</li>
<li><strong>Communicate, communicate, communicate</strong>. Be a <a href="http://www.networkcomputing.com/1113/1113ca.html" title="Web Architect Builds a Bridge Between Worlds">bridge between people who don&#8217;t speak the same language but need to work together</a>.</li>
</ul>
<p>One of the fairly good resources giving generic advice on being a Web architect / Tech lead is a tutorial by Daniel Pietraru called <a href="http://littletutorials.com/2008/07/07/success-as-technical-lead/">36 steps to success as technical lead</a>.</p>
<p>I don&#8217;t fully agree with all of them, but they all carry some wisdom if understood and applied well. Number 27 (Be sure you have authority along with responsibility) is a good summary of the Architect&#8217;s odd position, of <em>responsibility</em> but not always <em>authority</em> – the latter is earned, not given.</p>
<p>Number 7, too (Get your hands dirty and code) can be a great way to keep one&#8217;s skills sharp, earn some respect from other developers and help deliver projects on time, but they can also drag and confine you in a role that isn&#8217;t yours. An architect is not a developer – and there are responsibilities in the architect&#8217;s job that require a creative mindset.</p>
<p>There must be quite a few experienced tech leads/architects out there with worthy <a href="http://campbell-online.com/blog/?p=101" title="Knowledge Work - Great Mistakes in Technical Leadership">experience</a> to share. Jeremy Miller has a good article on the <a href="http://codebetter.com/blogs/jeremy.miller/archive/2005/09/23/132398.aspx">Classic Technical Lead Blunder</a>. I&#8217;m on the lookout for more.</p>
<h3>Learn the Tech</h3>
<p>Regardless of how much hands-on the architect role has on a given project, the need to know the stuff can not be underestimated. This doesn&#8217;t mean you have to know everything – it&#8217;s healthy to not know, even healthier to know when to ask, and know when to do your homework.</p>
<ol>
<li>Spend time on the <a href="http://www.w3.org/" title="World Wide Web Consortium - Web Standards">W3C&#8217;s Web site</a>. No, really. Keep an eye on “best practices” on <a href="http://www.w3.org/WAI/guid-tech.html" title="WAI Guidelines and Techniques">Accessibility</a>, <a href="http://www.w3.org/International/" title="W3C Internationalization (I18n) Activity">Internationalisation</a>, <a href="http://www.w3.org/Mobile/Deliverables" title="Resources Center - W3C Mobile Web Initiative">mobile Web</a> and of course <a href="http://www.w3.org/TR/webarch/" title="Architecture of the World Wide Web, Volume One">Web Architecture</a>.</li>
<li>Can one be an expert in every possible programming language? Probably not, but worth a try. On the Web today, you probably won&#8217;t be able to survive without <a href="http://www.php.net/oop" title="PHP: Classes and Objects (PHP 5) - Manual">php</a>. Do keep an eye on python (the <a href="http://www.amazon.com/gp/product/0321585445?ie=UTF8&amp;tag=2neuroandacam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321585445">Python: Visual QuickStart </a> and <a href="http://www.amazon.com/gp/product/1590599829?ie=UTF8&amp;tag=2neuroandacam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1590599829">Beginning Python</a> from APress come highly recommended, and I love <a href="http://blog.doughellmann.com/" title="Doug Hellmann's blog on python">Doug Hellmann&#8217;s python module of the week</a>), <a href="http://www.djangobook.com/" title="The Django Book">django</a>, <a href="http://www.digitalmediaminute.com/article/1816/top-ruby-on-rails-tutorials" title="Top 12 Ruby on Rails Tutorials">Ruby on Rails</a>…</li>
</ol>
<h3>Learn to think like your team mates</h3>
<p>One of the most exciting parts of the job is that the architect works with almost everyone involved in a web project. This means we need to speak their language. We need to speak marketing and strategy when assessing the project, we need to speak project management with the PMs, we need to speak design with designers, UX with UX, speak code with developers, speak test with QA. Here are a few books and resources that help become polyglot in no time:</p>
<ol>
<li>Read <a href="http://www.boxesandarrows.com/" title="Boxes and Arrows: The design behind the design">Boxes and Arrows</a> on a regular basis, and infuse the vocabulary and mindset of <strong>User Experience</strong>. I also like <a href="http://infosthetics.com/" title="information aesthetics - Information Visualization &amp;amp; Visual Communication">infosthetics</a> and <a href="http://www.guuui.com/" title="GUUUI - The Interaction Designer's Coffee Break">GUUUI</a>. Read <a href="http://www.useit.com/" title="useit.com: Jakob Nielsen on Usability and Web Design">Jakob Nielsen</a> too – if you must.</li>
<li>A good architect needs to know about the different frameworks and methodologies for web <strong>project management</strong>. I found Mike Cohn&#8217;s <a href="http://www.amazon.com/gp/product/0131479415?ie=UTF8&amp;amp;tag=2neuroandacam-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0131479415">Agile Estimating and Planning</a> to be the best book on agile project management, period. <a href="http://www.amazon.com/gp/product/0321112555?ie=UTF8&amp;amp;tag=2neuroandacam-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0321112555">Real Web Project Management</a> is not bad, either, although obviously made for a more novice audience.</li>
</ol>
<h3>Know the process. Know when not to follow the process</h3>
<p>One risk, as an architect, is to be dogmatic about architectural or process changes. We all have a favorite way of running a project or building an architecture, but not all projects would be better off as scrum, and not all development benefits from test-driven development. That said, one first has to <em>know the tools</em>, know them well, before knowing when not to use them.</p>
<p><strong>Specifications</strong>: joelonsoftware has a piece on “Why bother with <a href="http://www.joelonsoftware.com/articles/fog0000000036.html" title="Painless Functional Specifications - Part 1: Why Bother? - Joel on Software">Functional Specifications</a>”?</p>
<p>Tech specs, however, I remain conflicted about. Most of the time, the technical specification is a long, painful document that nobody will bother reading. Several agree, calling for <a href="http://www.masshightech.com/stories/2007/11/26/newscolumn3-The-slow-death-of-the-web-developers-technical-spec.html">the death of the web technical spec</a>, but others still see value in it.</p>
<p>In my first weeks on the new job the most important problem I identified was that the team created specs that nobody could really use. We&#8217;re in the process of improving our specs with the help of <a href="http://en.wikipedia.org/wiki/User_story">User Stories</a>. User stories are often seen only as a tool for agile teams to evaluate work, but even in non-agile environments, they provide a clear checklist that can be used by everyone: the client can validate a real list of scenarios, the project manager can keep track of work done and remaining, developers can reuse the User Stories within a test-driven or behavior-driven development method.</p>
<p><strong>Test early, test often.</strong> A good way to release software with fewer bugs and a quicker path to fix issues is to apply some level of <a href="http://www.agiledata.org/essays/tdd.html" title="Introduction to Test Driven Design (TDD)">Test-Driven development</a> (and unit testing), or more recently <a href="http://dannorth.net/introducing-bdd" title="DanNorth.net &raquo; Introducing BDD">Behavior-Driven development</a>. For the architect the work of bringing TDD/BDD to a team will be as much technical as human, so you may want to read articles like <a href="http://www.codeodor.com/index.cfm/2009/2/11/You-Might-Be-Looking-At-Unit-Testing-All-Wrong/2717" title="You Might Be Looking At Unit Testing All Wrong">this one</a> and learn how to sell, and how not to sell, TDD to your team.</p>
<p>Tool-wise, look into <a href="http://rspec.info/" title="RSpec-1.2.2: Home">rspec for ruby</a>, junit for java and <a href="http://docs.python.org/library/unittest.html" title="unittest — Unit testing framework &mdash; Python v2.6.1 documentation">unittest for python</a>. For php I quite liked the <a href="http://www.simpletest.org/" title="SimpleTest - Unit Testing for PHP">SimpleTest</a> library.</p>
<h3>Productive Tools</h3>
<p>Doing this job well implies being good at managing people, knowledge, code and time. Patience and soft skills are the tool of choice for managing people. For the rest, a quick selection would include:</p>
<p><strong>tracking ongoing work and todo lists</strong> – <a href="http://culturedcode.com/things/" title="Things - task management on the Mac">Things</a> remains to this day my favourite in this area, though others will swear by <a href="http://www.igtd.pl/iGTD/iGTD2/index.html" title="iGTD2">iGTD</a> or <a href="http://www.omnigroup.com/applications/omnifocus/" title="The Omni Group - OmniFocus">OmniFocus</a>. If you&#8217;re hesitating, know that others have gone through this too, and <a href="http://putthingsoff.com/osx-task-manager-showdown/" title="iGTD2 vs Inbox vs OmniFocus vs Things – OSX Task Manager Showdown | Put Things Off">see which choice they made, and why</a>.</p>
<p><a href="http://docs.blacktree.com/quicksilver/what_is_quicksilver">QuickSilver</a> (or other similar launchers if you are not on Mac) can save tons of time on a daily basis. The <em>real time-saver</em> however, is to learn one&#8217;s text editor inside and out. I still love <a href="http://macromates.com/">TextMate</a> to bits and want to learn more tricks with it… even if my daily routines sees me use spreadsheets and text processors more.</p>
<p>For more suggestions of tools and methods, <a href="http://www.amazon.com/gp/product/0596519788?ie=UTF8&amp;tag=2neuroandacam-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0596519788">The Productive Programmer</a> is a very decent read. It did not teach me anything I had no clue about, but it was a good validation of some simple, solid principles every developer, or anyone working closely with developers, should be reminded of on a regular basis.</p>
<h3>Keep a sense of humour</h3>
<p><a href="http://xkcd.com" title="xkcd - A Webcomic">Because</a> <a href="http://dilbert.com/" title="Dilbert by Scott Adams">it won&#8217;t</a> <a href="http://www.userfriendly.org/" title="UserFriendly.Org">be easy</a> <a href="http://bash.org/?random" title="bash.org quote database">every day</a>.</p>
<p>This list of resources will grow over time. If you have any suggestions, or disagreement, the comment box is right here <strong>☟</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/04/28/resources-for-web-architects/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Hypatia and the Renaissance Women</title>
		<link>http://olivier.thereaux.net/2009/03/24/hypatia-and-the-renaissance-women/</link>
		<comments>http://olivier.thereaux.net/2009/03/24/hypatia-and-the-renaissance-women/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 06:46:09 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Society]]></category>
		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://hippiesque.com/blog/?p=27</guid>
		<description><![CDATA[On the occasion of the first “Ada Lovelace Day”, which aims to highlight remarkable women in technology as potential role models for present and future generations of women, I started looking for the epitome of the “Renaissance Woman”. The “Renaissance Man” is an archetype personified by the likes of Leonardo Da Vinci: artists, craftsmen, engineers; [...]]]></description>
			<content:encoded><![CDATA[<p><span class="dropcap">O</span>n the occasion of the first “<a href="http://findingada.com/" title="Ada Lovelace Day &#8212; Bringing women in technology to the fore">Ada Lovelace Day</a>”, which aims to highlight remarkable women in technology as potential role models for present and future generations of women, I started looking for the epitome of the “Renaissance Woman”. </p>
<p>The “Renaissance Man” is an archetype personified by the likes of Leonardo Da Vinci: artists, craftsmen, engineers; polymaths, often polyglots. Men of the renaissance were exemplary to the people of our time, we who are often struggling with varied interests and skills in an education and professional context that often rewards extreme specialisation.</p>
<p>I already knew of extraordinary women of the renaissance. Catherine de&#8217; Medici, for instance, was educated, intelligent, rich and powerful beyond the reach of any other man or woman of her time. Yet I would not call her a “Renaissance Woman”, for little of her known history points towards achievements in the arts and science. Undoubtedly Catherine was a patron to the arts and versed in the science of politics, but a worthy counterpart to Leonardo or Gallileo she was not.  Neither was Anna Maria van Schurman, Isabel de Castilla or other great women of that age: none of them seem to ever get anywhere near science.</p>
<div class="wp-caption alignleft" style="width: 233px"><img alt="Hypatia in “The School of Athens” - detail - by Raffaello Sanzio" src="http://upload.wikimedia.org/wikipedia/commons/2/22/Hypatia_Raphael_Sanzio_detail.jpg" title="Hypatia as imagined by Raffaello Sanzio" width="223" height="288" /><p class="wp-caption-text">Hypatia as imagined by Raffaello Sanzio</p></div>
<p>I actually found one of the best examples of a Renaissance Woman in the age which the Renaissance was mimicking and rediscovering. Born around 350 AD, <a href="http://en.wikipedia.org/wiki/Hypatia_of_Alexandria" title="Hypatia of Alexandria - Wikipedia, the free encyclopedia">Hypatia of Alexandria</a> was a scholar, philosopher, mathematician, and astronomer. Said to have been instrumental in the development of the hydrometer and the astrolabe, she ran her own school of philosophy, acted as one of the last librarians of Alexandria, and exerted immense political power over the region. </p>
<p>Hypatia&#8217;s extraordinary character, knowledge and freedom have inspired many romanticized accounts of her life. According to legend “she moved about freely, driving her own chariot, contrary to the norm for women&#8217;s public behavior”, and the Suda, the collected history of Byzantine Greece, tells how she <a href="http://www.cosmopolis.com/alexandria/hypatia-bio-suda.html">rebuffed a suitor by showing him an unglamorous pile of rags stained during her periods</a>. </p>
<p>It is because of her death, however, that she is still so well known today. Caught in a political feud between the imperial power and rising christianity, she perished at the hands of an angry christian mob in one of the most gruesome deaths since <a href="http://www.2020site.org/trojanwar/deathhector.html">Hector&#8217;s fate at the hands of Achilles</a>: <q cite="http://www.cosmopolis.com/alexandria/hypatia-bio-socrates.html">dragging her from her carriage, they took her to the church called Caesareum, where they completely stripped her, and then murdered her with tiles.* After tearing her body in pieces, they took her mangled limbs to a place called Cinaron, and there burnt them.</q> (dixit the <a href="http://www.cosmopolis.com/alexandria/hypatia-bio-socrates.html">Ecclesiastical History</a>).</p>
<p>Her death in the midst of political and religious conflict, unfortunately, makes it difficult to know truth from fiction. To Voltaire and the deists of the 18th century, she was the “most beautiful, most vertuous, most learned, and every way accomplish’d lady”, as John Toland wrote. To others, she was “A most Impudent School-Mistress of Alexandria.” </p>
<p>This detour through history provided me an unexpected clue in understanding why the Renaissance had produced so few “Renaissance Women” that we would still know of them today. A biography of Hypatia by John, Bishop of Nikiu, reads: <q cite="http://www.cosmopolis.com/alexandria/hypatia-bio-john.html">there appeared in Alexandria a female philosopher, a pagan named Hypatia, and she was devoted at all times to magic, astrolabes and instruments of music, and she beguiled many people through (her) Satanic wiles.</q></p>
<p>The terms used are strangely reminiscent of another age, that of witch hunts. Our collective psyche would generally place those shameful, dark times during the middle age, and I had to double check that my hunch was correct: coincidentally, witch hunts happened during the exact same period as the  civilised renaissance, between the 15th and 18th century AD. If Renaissance men dabbling in engineering and alchemy were considered the pinnacle of civilisation while their female equivalents got burnt at the stake, is it surprising that we have no history of <a href="http://www1.umn.edu/ships/gender/giese.htm" title="SHiPS Resource Center || Women in Science">smart women of arts and science</a> during that period?</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/03/24/hypatia-and-the-renaissance-women/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Open Source: the costly “free”</title>
		<link>http://olivier.thereaux.net/2009/03/02/open-source-the-costly-free/</link>
		<comments>http://olivier.thereaux.net/2009/03/02/open-source-the-costly-free/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 21:38:24 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[W3C]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=42</guid>
		<description><![CDATA[For the past few years, I have been extremely lucky to work on some really wonderful projects, with millions of customers, a healthy user community, and a very good karma for the service they provide to the world. I&#8217;ve been paid to spend up to half of my time working on those projects. And yet, [...]]]></description>
			<content:encoded><![CDATA[<p>For the past few years, I have been extremely lucky to work on some really wonderful projects, with millions of customers, a healthy user community, and a very good karma for the service they provide to the world. I&#8217;ve been paid to spend up to half of my time working on those projects. And yet, these projects never made a penny. I&#8217;ve been working in the strange world of open source / free software.</p>
<p><img src="http://ot.thereaux.net/wp-content/uploads/2009/03/joanplanas-free_hugs.png" alt="joanplanas - free hugs" title="joanplanas - free hugs" width="280" height="223" class="alignleft size-full wp-image-56" style="padding-right:8px;padding-top:5px;" /> In the past 25 years since the <a href="http://en.wikipedia.org/wiki/Open_source_software#History">launch of the Free Software Movement</a>, we have made great progress in convincing the world, in particular the business world, that Open Source software could, and should be taken seriously. A lot of the software powering businesses today are the same free software that CXOs would never want to hear about a decade ago, and people like <a href="http://perens.com/">Bruce Perens</a> deserve a lot of credit for that. However, all these years of advocacy have also created a noxious myth of a free lunch: that free software just builds itself through flowery good will and smooth collaborations. And all that without any money involved.</p>
<p>(Image by <a href="http://www.flickr.com/photos/joanplanas">joanplanas on flickr</a>)</p>
<p><span id="more-42"></span></p>
<p>The truth is a little more complex. In my humble observation, the large majority of <acronym title="Free/Libre Open Source Software">FLOSS is either a small personal project (the “scratching my own itch type”) with little or no collaboration going on, and all done on a single person&#8217;s copious free time, or a larger project with financial backing for development and community management from governments, corporations or other organisations. Large, well organised open-source projects with no-one  on the payroll are extremely rare exceptions.</p>
<p>Because of my new status as consultant to W3C, I have to track very closely how much time I spend on each of my projects. Far from being a hassle, this has provided me with fascinating data on how much it actually costs to run those projects.</p>
<p>For example, I recently worked on a <a href="http://www.w3.org/blog/systeam/2009/02/16/validator_fuzzy_match">new feature for the markup validator</a>, which I believe could have a  significant impact on how usable the tool is. For most end-users, the change will be almost invisible, yet making their life easier. I counted how much time I spent on the feature, and when adding up the research, code, discussions (including handling of feedback and ideas from users) and testing, I end up with a gross cost somewhere between 500 and 800 USD. And that is not counting the “donated” time of the people who contributed ideas and feedback. It could have been cheaper, if someone had worked on their free time on a patch, but even then, the community and QA work would likely have been done by people on a payroll.</p>
<p>Friend and ex-W3C colleague <a href="http://www.la-grange.net/">Karl Dubost</a> often suggested that I should put a price on each bug and feature that would be submitted by the community. The idea would be that if someone submitted a patch, it would of course get in for free, but if the community cared about getting the bug fixed or new feature in without the wait, then everyone interested would chip in.</p>
<p>Maybe he was up to something.</acronym></p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/03/02/open-source-the-costly-free/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Synchronizing two instances of wordpress</title>
		<link>http://olivier.thereaux.net/2009/02/26/wordpress-sync/</link>
		<comments>http://olivier.thereaux.net/2009/02/26/wordpress-sync/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 23:12:03 +0000</pubDate>
		<dc:creator>Olivier Thereaux</dc:creator>
				<category><![CDATA[Hack]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[artbeat]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[ultra-geeky]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://artbeat.me/?p=3</guid>
		<description><![CDATA[The TokyoArtBeat and NYArtBeat blogs use a fairly highly customized WordPress theme, with a number of php scripts and routines. For the longest time, this was one of the very few areas of the ArtBeat sites which were not fully duplicated on the staging and production servers. Using subversion for the theme code itself did [...]]]></description>
			<content:encoded><![CDATA[<p>The TokyoArtBeat and NYArtBeat blogs use a fairly highly customized WordPress theme, with a number of php scripts and routines. For the longest time, this was one of the very few areas of the ArtBeat sites which were not fully duplicated on the <em>staging</em> and <em>production</em> servers.</p>
<p>Using subversion for the theme code itself did help us test changes to the theme scripts and style before pushing them to production, but the content itself was not duplicated: the development instance of the blog had some fairly antiquated content, while the production instance had all the latest article.</p>
<p>Synchronising the content from the production to the development server was not as easy as simply dumping and reimporting the whole SQL database. Be aware that if you import a whole WordPress database, you also import some field setup that will cause unwanted redirects.</p>
<p><span id="more-311"></span></p>
<p>Suppose you dump the wordpress database for <code>http://www.myblog.example.com/</code> into a duplicate instance at <code> http://dev.myblog.example.com/</code>. Try accessing  <code> http://dev.myblog.example.com/</code> and wordpress will automatically redirect you to <code>http://www.myblog.example.com/</code>, which it thinks is the right URI for your blog. What to do? Go to the WordPress Dashboard and edit the settings? Not going to happen, since trying to access <code> http://dev.myblog.example.com/wp-admin/</code> will <strong>also</strong> redirect you to <code>http://www.myblog.example.com/</code>.</p>
<p>The solution I found was to:</p>
<ol>
<li>
<p>Make sure you use separate databases for your production and development blog. This is much safer, anyway. Also, make sure your databases and files are properly backed up before attempting the following hack.</p>
<p>Disable all plugins before the sync. Especially <strong>if you are using wp-cache, disable it</strong>. You&#8217;ve been warned.</p>
</li>
<li>
<p>Dump the database from your production blog into the separate database for your development blog. With mysql, this will look like: </p>
<p><code> mysqldump PROD_DATABASE_NAME -h PROD_DATABASE_HOST -u PROD_DATABASE_USER -p &gt; wordpress_dump.sql</code></p>
<p> then </p>
<p><code> mysql DEV_DATABASE_NAME -h DEV_DATABASE_HOST -u DEV_DATABASE_USER -p &lt; wordpress_dump.sql</code></p>
<p>(You will be prompted for the database password both times. Make sure to replace the placeholders PROD_DATABASE_HOST with actual values for your setup.</p>
</li>
<li>
<p>Edit the development database to tell wordpress the location of the dev blog. With MySQL again:</p>
<p><code> echo 'update wp_options set option_value="http://staging.address.com/" where option_name="home";' | mysql DEV_DATABASE_NAME -h DEV_DATABASE_HOST -u DEV_DATABASE_USER -p</code></p>
<p> and </p>
<p><code> echo 'update wp_options set option_value="http://staging.address.com/wordpress" where option_name="siteurl";' | mysql DEV_DATABASE_NAME -h DEV_DATABASE_HOST -u DEV_DATABASE_USER -p</code></p>
</li>
</ol>
<p>This worked for me, in two very distinct configurations last week. Any way this could have been done in a less hack-ish way? Tell me in the comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://olivier.thereaux.net/2009/02/26/wordpress-sync/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
