<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: A rebuttal to &#8220;Use Mercurial You Git&#8221;</title>
	<atom:link href="http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/feed" rel="self" type="application/rss+xml" />
	<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git</link>
	<description>mah-soo-koh-me</description>
	<lastBuildDate>Thu, 04 Mar 2010 22:53:03 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Jack</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1173</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Tue, 01 Sep 2009 22:18:40 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1173</guid>
		<description>In the last sentence above, I meant to say &quot;checkout -f&quot; not &quot;commit -f&quot;.</description>
		<content:encoded><![CDATA[<p>In the last sentence above, I meant to say &#8220;checkout -f&#8221; not &#8220;commit -f&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jack</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1172</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Tue, 01 Sep 2009 18:27:45 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1172</guid>
		<description>Mat W, your explanation of reset, checkout, add, and commit should be the first paragraph on every page of the git manual!

It seems most people understand add and commit, but few understand reset and checkout.  For example, the author of &quot;Pro Git&quot;  (http://progit.org/book/ch1-3.html) explains checkout incorrectly (as from repository to working) in Figure 1-6.

I think the command names are a major factor in the widespread misunderstanding.  The word checkout implies getting a fresh copy of the last version checked in.  You don&#039;t need experience using CVS to have that impression.  Experience using a library will do.

I don&#039;t think I have ever seen reset explained as you have explained it.   It is pretty hard to come up with that understanding from the man page:  &quot;git-reset:  Reset current HEAD to the specified state.  Description:  Sets the current head to the specified commit and optionally resets the index and working tree to match.&quot;  That is misleading given that the default behavior is to reset the index, with an option to also reset the working tree (--hard), or reset neither (--soft).

Here is one series of events that is totally confusing if you don&#039;t understand the git index:

  1) modify a file
  2) add it to the index in preparation for a commit
  3) change your mind about committing the change
  4) now try to revert to the original version of the file by checking it out again

Checking out again will not &quot;revert&quot; the changes, because the changes are already in the index and checkout causes working to match index.  You have to reset index from repository, then checkout from index to working.  If you dig around, you&#039;ll find there are commands that do both (reset --hard, and commit -f) but to the uninitiated, those just make the git index harder to understand.</description>
		<content:encoded><![CDATA[<p>Mat W, your explanation of reset, checkout, add, and commit should be the first paragraph on every page of the git manual!</p>
<p>It seems most people understand add and commit, but few understand reset and checkout.  For example, the author of &#8220;Pro Git&#8221;  (<a href="http://progit.org/book/ch1-3.html" rel="nofollow">http://progit.org/book/ch1-3.html</a>) explains checkout incorrectly (as from repository to working) in Figure 1-6.</p>
<p>I think the command names are a major factor in the widespread misunderstanding.  The word checkout implies getting a fresh copy of the last version checked in.  You don&#8217;t need experience using CVS to have that impression.  Experience using a library will do.</p>
<p>I don&#8217;t think I have ever seen reset explained as you have explained it.   It is pretty hard to come up with that understanding from the man page:  &#8220;git-reset:  Reset current HEAD to the specified state.  Description:  Sets the current head to the specified commit and optionally resets the index and working tree to match.&#8221;  That is misleading given that the default behavior is to reset the index, with an option to also reset the working tree (&#8211;hard), or reset neither (&#8211;soft).</p>
<p>Here is one series of events that is totally confusing if you don&#8217;t understand the git index:</p>
<p>  1) modify a file<br />
  2) add it to the index in preparation for a commit<br />
  3) change your mind about committing the change<br />
  4) now try to revert to the original version of the file by checking it out again</p>
<p>Checking out again will not &#8220;revert&#8221; the changes, because the changes are already in the index and checkout causes working to match index.  You have to reset index from repository, then checkout from index to working.  If you dig around, you&#8217;ll find there are commands that do both (reset &#8211;hard, and commit -f) but to the uninitiated, those just make the git index harder to understand.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jack</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1171</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Tue, 01 Sep 2009 18:27:03 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1171</guid>
		<description>What you want for Windows is msysgit from here http://code.google.com/p/msysgit/downloads/list (choose &quot;Full installer if you want to use official Git...&quot;).  It works fine - comes with a bash shell so you can use git exactly as you do in Unix/Linux.</description>
		<content:encoded><![CDATA[<p>What you want for Windows is msysgit from here <a href="http://code.google.com/p/msysgit/downloads/list" rel="nofollow">http://code.google.com/p/msysgit/downloads/list</a> (choose &#8220;Full installer if you want to use official Git&#8230;&#8221;).  It works fine &#8211; comes with a bash shell so you can use git exactly as you do in Unix/Linux.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: masukomi</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1125</link>
		<dc:creator>masukomi</dc:creator>
		<pubDate>Mon, 08 Jun 2009 02:09:39 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1125</guid>
		<description>Because git originally git didn&#039;t work at all on windows except via cygwin which doesn&#039;t really count. Then other tools started to emerge. So, whenever you read someone claiming it doesn&#039;t work, or work well, on windows, check the date. It was probably written back when this was true.</description>
		<content:encoded><![CDATA[<p>Because git originally git didn&#8217;t work at all on windows except via cygwin which doesn&#8217;t really count. Then other tools started to emerge. So, whenever you read someone claiming it doesn&#8217;t work, or work well, on windows, check the date. It was probably written back when this was true.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: chiguy</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1124</link>
		<dc:creator>chiguy</dc:creator>
		<pubDate>Mon, 08 Jun 2009 01:37:53 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1124</guid>
		<description>I don&#039;t see why people say Git doesn&#039;t work well on Windows. I use it on Windows and I&#039;m perfectly happy with it, much happier than when I was using SVN (with tortoise).</description>
		<content:encoded><![CDATA[<p>I don&#8217;t see why people say Git doesn&#8217;t work well on Windows. I use it on Windows and I&#8217;m perfectly happy with it, much happier than when I was using SVN (with tortoise).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt W</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-1065</link>
		<dc:creator>Matt W</dc:creator>
		<pubDate>Wed, 04 Mar 2009 13:34:44 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-1065</guid>
		<description>EvanED is just plain wrong about &#039;git checkout&#039;.  In actuality, &#039;git checkout &lt;path&gt;&#039; replaces a file in the working copy with NEITHER the version from the tip of the branch NOR the version checked out when you went back in time.  (And actually, when you check out a commit by SHA-1 hash, you&#039;re switching to an unnamed branch, so these two would be equivalent, but neither is what happens.)

What &#039;git checkout&#039; *actually* does (RTFM) when given a path is to replace the working copy file with the version of that file currently in the _index_.  If you haven&#039;t modified the version in the index since you switched branches, then you&#039;ll get the same result as &#039;svn revert&#039;.  To achieve the same result as &#039;svn revert&#039; in all situations, you would first need to &#039;git reset&#039; the file to replace the version in the index with the version from the current HEAD (which would be the commit to which you went &quot;back in time&quot;) and then &#039;git checkout&#039; to replace the file in your working copy with the version in the index.

Git makes a lot more sense once you realize that data _never_ moves between the working copy and the repository directly -- in either direction.  It always goes through the index: &#039;git reset&#039; copies from the repository to the index, &#039;git checkout&#039; copies from the index to the working copy, &#039;git add&#039; copies from the working copy to the index, and &#039;git commit&#039; copies from the index to the repository.

It might also be worth mentioning that &#039;git reset --hard &lt;commit&gt;&#039; and &#039;git checkout -f &lt;commit&gt;&#039; do almost the same thing.  Specifically, they both: update the &#039;HEAD&#039; ref to point at the specified commit, reset the index to the contents of that commit, and check out the index into the working tree.  The difference is that &#039;reset&#039; also updates the ref of the branch that you were on, if any.</description>
		<content:encoded><![CDATA[<p>EvanED is just plain wrong about &#8216;git checkout&#8217;.  In actuality, &#8216;git checkout &lt;path&gt;&#8217; replaces a file in the working copy with NEITHER the version from the tip of the branch NOR the version checked out when you went back in time.  (And actually, when you check out a commit by SHA-1 hash, you&#8217;re switching to an unnamed branch, so these two would be equivalent, but neither is what happens.)</p>
<p>What &#8216;git checkout&#8217; *actually* does (RTFM) when given a path is to replace the working copy file with the version of that file currently in the _index_.  If you haven&#8217;t modified the version in the index since you switched branches, then you&#8217;ll get the same result as &#8217;svn revert&#8217;.  To achieve the same result as &#8217;svn revert&#8217; in all situations, you would first need to &#8216;git reset&#8217; the file to replace the version in the index with the version from the current HEAD (which would be the commit to which you went &#8220;back in time&#8221;) and then &#8216;git checkout&#8217; to replace the file in your working copy with the version in the index.</p>
<p>Git makes a lot more sense once you realize that data _never_ moves between the working copy and the repository directly &#8212; in either direction.  It always goes through the index: &#8216;git reset&#8217; copies from the repository to the index, &#8216;git checkout&#8217; copies from the index to the working copy, &#8216;git add&#8217; copies from the working copy to the index, and &#8216;git commit&#8217; copies from the index to the repository.</p>
<p>It might also be worth mentioning that &#8216;git reset &#8211;hard &lt;commit&gt;&#8217; and &#8216;git checkout -f &lt;commit&gt;&#8217; do almost the same thing.  Specifically, they both: update the &#8216;HEAD&#8217; ref to point at the specified commit, reset the index to the contents of that commit, and check out the index into the working tree.  The difference is that &#8216;reset&#8217; also updates the ref of the branch that you were on, if any.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Мысли вслух: Git или Mercurial &#187; Outsourcing stories</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-914</link>
		<dc:creator>Мысли вслух: Git или Mercurial &#187; Outsourcing stories</dc:creator>
		<pubDate>Thu, 11 Dec 2008 05:26:41 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-914</guid>
		<description>[...] A rebuttal to &#8220;Use Mercurial You Git&#8221;       add to del.icio.us    &#171; Почему консультанта найти проще, чем человека в штат &#124; [...]</description>
		<content:encoded><![CDATA[<p>[...] A rebuttal to &#8220;Use Mercurial You Git&#8221;       add to del.icio.us    &laquo; Почему консультанта найти проще, чем человека в штат | [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: EvanED</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-860</link>
		<dc:creator>EvanED</dc:creator>
		<pubDate>Thu, 09 Oct 2008 22:06:09 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-860</guid>
		<description>I know this was posted a long time ago, but it shows up quite high in a Google for Mercurial vs Git (unfortunately none of the top links really have anything approaching a nice, somewhat objective comparison) and I just had to rant about a couple of my complaints on Git from the relatively little I&#039;ve used it.

&lt;i&gt;When talking about Git’s usability Ian complains that Git installs “nearly 150 distinct binaries” and claims that “Mercurial has one.” What Ian doesn’t mention is that while Git may install nearly 150 files you only have to reference one of them directly just like Mercurial which installs over 150 files (a number which roughly doubles as each .py file begets a binary .pyc file after it gets executed). &lt;/i&gt;

Yes, but while I haven&#039;t used Mercurial, I suspect those go into some Mercurial-specific folder. Git dumps all those git-* commands into bin/.

For my &quot;work&quot; machine, I don&#039;t have root, so I have a bunch of stuff installed with a prefix of ~/.local. And I actually have a separate bin directory &lt;i&gt;just for Git&lt;/i&gt; so that I can do an ls ~/.local/bin and not have 2/3 of the output be Git stuff.

So if I&#039;m right, Mercurial may indeed install 150 Python files, but it probably does it in a less obnoxious way.


&lt;i&gt;&quot;When you “revert changes to a small number of files” Git, like any other version control system, gets a copy from the repository, and what do you call the action of getting files from a repository? That’s right kids, “checking out”.&quot;&lt;/i&gt;

No, that&#039;s not true. For instance, take SVN. If you want to revert changes to a small number of files, you use svn revert, which simply reverts the changes. It does NOT contact the repository, at least in the SVN sense of a repository.

This is both a minor quibble and an important difference. It&#039;s a minor quibble because in some sense it does contact the repository -- it&#039;s just that the repository has a single version of the tree, and it&#039;s the version you got when you last did svn update. And the repository it accesses happens to be stored in the .svn directories locally instead of what you (read: an SVN user) typically think of the repository as.

But at the same time there is an important difference. If you do a git checkout, you get the head of the branch you specify. But if you do svn revert, you get the revision of the file that you last requested. So if I deliberately go back in time with &#039;svn update -r 287&#039; and change a file, I can &#039;svn revert&#039; and I have the file as it was in revision 287. In Git, if I deliberately go back in time with &#039;git checkout 4dfa983d&#039;, change a file, and want to revert it, from my reading I have to figure out that my working copy is based on the revision with hash 4dfa983d and then explicitly request that with the next checkout.

In other words, if I&#039;m working on &#039;master&#039; and do &#039;git checkout master&#039; to revert changes to a file, that&#039;s like doing an &#039;svn revert&#039; then &#039;svn update&#039;.</description>
		<content:encoded><![CDATA[<p>I know this was posted a long time ago, but it shows up quite high in a Google for Mercurial vs Git (unfortunately none of the top links really have anything approaching a nice, somewhat objective comparison) and I just had to rant about a couple of my complaints on Git from the relatively little I&#8217;ve used it.</p>
<p><i>When talking about Git’s usability Ian complains that Git installs “nearly 150 distinct binaries” and claims that “Mercurial has one.” What Ian doesn’t mention is that while Git may install nearly 150 files you only have to reference one of them directly just like Mercurial which installs over 150 files (a number which roughly doubles as each .py file begets a binary .pyc file after it gets executed). </i></p>
<p>Yes, but while I haven&#8217;t used Mercurial, I suspect those go into some Mercurial-specific folder. Git dumps all those git-* commands into bin/.</p>
<p>For my &#8220;work&#8221; machine, I don&#8217;t have root, so I have a bunch of stuff installed with a prefix of ~/.local. And I actually have a separate bin directory <i>just for Git</i> so that I can do an ls ~/.local/bin and not have 2/3 of the output be Git stuff.</p>
<p>So if I&#8217;m right, Mercurial may indeed install 150 Python files, but it probably does it in a less obnoxious way.</p>
<p><i>&#8220;When you “revert changes to a small number of files” Git, like any other version control system, gets a copy from the repository, and what do you call the action of getting files from a repository? That’s right kids, “checking out”.&#8221;</i></p>
<p>No, that&#8217;s not true. For instance, take SVN. If you want to revert changes to a small number of files, you use svn revert, which simply reverts the changes. It does NOT contact the repository, at least in the SVN sense of a repository.</p>
<p>This is both a minor quibble and an important difference. It&#8217;s a minor quibble because in some sense it does contact the repository &#8212; it&#8217;s just that the repository has a single version of the tree, and it&#8217;s the version you got when you last did svn update. And the repository it accesses happens to be stored in the .svn directories locally instead of what you (read: an SVN user) typically think of the repository as.</p>
<p>But at the same time there is an important difference. If you do a git checkout, you get the head of the branch you specify. But if you do svn revert, you get the revision of the file that you last requested. So if I deliberately go back in time with &#8217;svn update -r 287&#8242; and change a file, I can &#8217;svn revert&#8217; and I have the file as it was in revision 287. In Git, if I deliberately go back in time with &#8216;git checkout 4dfa983d&#8217;, change a file, and want to revert it, from my reading I have to figure out that my working copy is based on the revision with hash 4dfa983d and then explicitly request that with the next checkout.</p>
<p>In other words, if I&#8217;m working on &#8216;master&#8217; and do &#8216;git checkout master&#8217; to revert changes to a file, that&#8217;s like doing an &#8217;svn revert&#8217; then &#8217;svn update&#8217;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christoph</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-844</link>
		<dc:creator>Christoph</dc:creator>
		<pubDate>Fri, 15 Aug 2008 09:10:10 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-844</guid>
		<description>Thanks for this lengthy, patient and technically very interesting reply. I found myself reading Ian&#039;s article yesterday and though to myself &quot;Yes - that&#039;s exactly what annoys me with Git&quot;. But you made a very important point in your post: Don&#039;t expect Git to work exactly like other RCS that you might be familiar with. I actually don&#039;t care whether Git is versioning the files in my project or more a versioned filesystem with all kinds of funky objects in the backend. But some workings are just different. And while I still don&#039;t like the index/cache I&#039;ll happily use &quot;git commit -a&quot; and perhaps later find a use case for the index. :)

I think that Ian said Git is seen as a &quot;framework to create your own workflow&quot;. That sounds pretty scary. I need an RCS - not a framework either. If that would rather point out that Git is flexible but you are not forced to do that (similarly to that you are not forced to use &quot;git rebase&quot; unless you see a need) then it would sound much nicer. But if I start going through the tutorial and find myself not understanding even parts of the newbie tutorial then I&#039;m severely screwed. I think &quot;rebase&quot; was one of the features that left me puzzled and made me keep using Mercurial because that was simple enough and didn&#039;t force me to learn new features that I had never missed before. I think I&#039;ll give Git another try.</description>
		<content:encoded><![CDATA[<p>Thanks for this lengthy, patient and technically very interesting reply. I found myself reading Ian&#8217;s article yesterday and though to myself &#8220;Yes &#8211; that&#8217;s exactly what annoys me with Git&#8221;. But you made a very important point in your post: Don&#8217;t expect Git to work exactly like other RCS that you might be familiar with. I actually don&#8217;t care whether Git is versioning the files in my project or more a versioned filesystem with all kinds of funky objects in the backend. But some workings are just different. And while I still don&#8217;t like the index/cache I&#8217;ll happily use &#8220;git commit -a&#8221; and perhaps later find a use case for the index. :)</p>
<p>I think that Ian said Git is seen as a &#8220;framework to create your own workflow&#8221;. That sounds pretty scary. I need an RCS &#8211; not a framework either. If that would rather point out that Git is flexible but you are not forced to do that (similarly to that you are not forced to use &#8220;git rebase&#8221; unless you see a need) then it would sound much nicer. But if I start going through the tutorial and find myself not understanding even parts of the newbie tutorial then I&#8217;m severely screwed. I think &#8220;rebase&#8221; was one of the features that left me puzzled and made me keep using Mercurial because that was simple enough and didn&#8217;t force me to learn new features that I had never missed before. I think I&#8217;ll give Git another try.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ian</title>
		<link>http://weblog.masukomi.org/2008/02/07/a-rebuttal-to-use-mercurial-you-git/comment-page-1#comment-199</link>
		<dc:creator>Ian</dc:creator>
		<pubDate>Fri, 18 Apr 2008 22:45:29 +0000</pubDate>
		<guid isPermaLink="false">http://weblog.masukomi.org/?p=14#comment-199</guid>
		<description>Hi, Kate.  Sorry I didn&#039;t see this post much sooner.  It&#039;s a well-written reply, and a fair one.  This long after the fact, I won&#039;t dig into a point-by-point reply, but in general your responses can be grouped into a few main themes:

1) Git is harder to use because it&#039;s better -- the Blub argument.  That would be an argument for Git over, say, Subversion, but not so much over Mercurial.  Git and Mercurial are quite similar in power.  Git can do some things that would be difficult or impossible in Mercurial, but there is far more overlap than difference.

2) Usability.  It&#039;s true that if you turn on lots of extensions in Mercurial, you can tamper more invasively with history.  (I could perhaps be forgiven for having the misapprehension that git-rebase is a command intended for everyday use, since nearly every tutorial seems to mention and encourage its use.)  Even so, I find that the exposure of all Git&#039;s commands at the top level gets in the way of finding the command I need.  And doing simple things like cloning into a bare repo and then doing a git-fetch should be, well, simpler.

3) Reliability.  That was an error on my part.  I lost data (on a backed-up project, of course), but looking back, this seems to have been due to user traps (or pilot error, if you&#039;re less charitable), and not in some underlying data flakiness.

Again, I&#039;m not seeking to re-ignite the argument.  Quite the contrary -- I&#039;m going back and attempting to correct my misunderstandings.  But your post deserved a response.  So: thanks.  Looking forward to hearing more about the book.</description>
		<content:encoded><![CDATA[<p>Hi, Kate.  Sorry I didn&#8217;t see this post much sooner.  It&#8217;s a well-written reply, and a fair one.  This long after the fact, I won&#8217;t dig into a point-by-point reply, but in general your responses can be grouped into a few main themes:</p>
<p>1) Git is harder to use because it&#8217;s better &#8212; the Blub argument.  That would be an argument for Git over, say, Subversion, but not so much over Mercurial.  Git and Mercurial are quite similar in power.  Git can do some things that would be difficult or impossible in Mercurial, but there is far more overlap than difference.</p>
<p>2) Usability.  It&#8217;s true that if you turn on lots of extensions in Mercurial, you can tamper more invasively with history.  (I could perhaps be forgiven for having the misapprehension that git-rebase is a command intended for everyday use, since nearly every tutorial seems to mention and encourage its use.)  Even so, I find that the exposure of all Git&#8217;s commands at the top level gets in the way of finding the command I need.  And doing simple things like cloning into a bare repo and then doing a git-fetch should be, well, simpler.</p>
<p>3) Reliability.  That was an error on my part.  I lost data (on a backed-up project, of course), but looking back, this seems to have been due to user traps (or pilot error, if you&#8217;re less charitable), and not in some underlying data flakiness.</p>
<p>Again, I&#8217;m not seeking to re-ignite the argument.  Quite the contrary &#8212; I&#8217;m going back and attempting to correct my misunderstandings.  But your post deserved a response.  So: thanks.  Looking forward to hearing more about the book.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
