<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title><![CDATA[Dan Lowe]]></title>
  <link href="http://tangledhelix.com/atom.xml" rel="self"/>
  <link href="http://tangledhelix.com/"/>
  <updated>2012-05-13T23:02:41-04:00</updated>
  <id>http://tangledhelix.com/</id>
  <author>
    <name><![CDATA[Dan Lowe]]></name>
    <email><![CDATA[dan@tangledhelix.com]]></email>
  </author>
  <generator uri="http://octopress.org/">Octopress</generator>

  
  <entry>
    <title type="html"><![CDATA[iTerm2 keymaps for tmux]]></title>
    <link href="http://tangledhelix.com/blog/2012/04/28/iterm2-keymaps-for-tmux/"/>
    <updated>2012-04-28T07:48:00-04:00</updated>
    <id>http://tangledhelix.com/blog/2012/04/28/iterm2-keymaps-for-tmux</id>
    <content type="html"><![CDATA[<p>As I&#8217;ve <a href="http://tangledhelix.com/blog/2010/12/06/iterm2-iterm/">said before</a>, I&#8217;m a huge fan of <a href="http://www.iterm2.com">iTerm2</a>. I am also
a huge fan of <a href="http://tmux.sourceforge.net/">tmux</a>, the terminal multiplexor. If you&#8217;re not familiar with
tmux, it&#8217;s conceptually the same thing as <a href="http://www.gnu.org/software/screen/">GNU screen</a>, with some
differences, and (in my opinion) some advantages. For example:</p>

<ul>
<li><p>In screen, each instance is its own completely separate process. With
tmux, the first time you run it, you start a server, but subsequent runs
will instantiate clients that connect to that existing server. Why does
that matter? Because it means you can lop a window off of one tmux
session and glue it onto another. It also means you can view the same
session from multiple clients simultaneously (say you left tmux attached
at the office, you can attach to that same session at home without
disrupting the session you left attached at work). You can even
<a href="http://readystate4.com/2011/01/02/sharing-remote-terminal-session-between-two-users-with-tmux/">share a session with someone else</a>. All of that&#8217;s
possible because it&#8217;s all going on in the same server process.</p></li>
<li><p>tmux supports multiple panes within a window, where screen supports only
windows.</p></li>
<li><p>If you don&#8217;t set a window title, tmux will auto-set it for you based
on what you run in that window. So it might start as &#8220;bash&#8221; and change
automatically to &#8220;vim&#8221; or &#8220;top&#8221; or &#8220;tail&#8221; depending on what you run
inside. That is pretty handy to tell what&#8217;s going on in what window
even if you don&#8217;t take the time to set a name for it.</p></li>
</ul>


<p>It so happens that the authors of iTerm2 are tmux users as well, and they have
integrated a tmux mode into iTerm2. It&#8217;s an early stage thing, so you have to
forgive it, but at this point it still has some drawbacks. I am not going to
talk about that integration much in this post, but I wanted to point out that
it exists, that I know about it, and explain why I don&#8217;t use it.</p>

<ol>
<li><p>You can only connect iTerm2 to one iTerm2-aware tmux session at a time.</p></li>
<li><p>They communicate via a special protocol. In practical terms, this means
you &#8220;spend&#8221; a window for that channel. It sort of sits around lingering.
To be fair, they added an option to auto-hide it on connect so it goes
away by itself.</p></li>
<li><p>Because this is still under development, you currently have to run
the right version of iTerm2 with the right version of patched tmux.
That can be a headache if your server side is used by multiple people.
It also means an upgrade to iTerm2 sends you off to recompile tmux
before you can use it in integrated mode again.</p></li>
</ol>


<p>For these reasons, I have set aside the iTerm2 tmux integration and I&#8217;m
just using regular tmux again. I&#8217;ll check it out again someday after it has
matured (and preferably been built into tmux mainline so I don&#8217;t have to
patch a copy myself).</p>

<p>But after using the integration, I found I was longing for easy hotkeys to
navigate around my windows and panes in tmux. (Using the integrated mode, you
use the iTerm-native hotkeys because it treats the tmux windows and panes as
native iTerm tabs and panes).</p>

<p>I was frustrated by this because in tmux you use a prefix key for everything,
so going to the next window means using <code>Ctrl-B n</code> and going to another pane
might be <code>Ctrl-B H</code>. You can remap a lot of things, but it&#8217;s never as easy as
native keys like <code>Shift-Cmd-Right</code> or similar that we are used to using on
Macs and PCs.</p>

<p>At first, I played with the tmux mouse mode. It&#8217;s actually pretty nice.
Assuming you send mouse events through to the server, tmux will recognize them
(if you turn on the appropriate options), allowing you to select windows and
panes using mouse clicks. You can even resize panes. Unfortunately, that comes
at a cost: it breaks using normal mouse selection to copy from iTerm2 window
into other programs on your Mac. Not good.</p>

<p>Then, I found &#8220;Send Hex Code&#8221;.</p>

<p>Angels rejoiced. Benjamins fell from the sky. My doctor told me to eat more
ice cream.</p>

<p>Send Hex Code is just an unassuming option in a pulldown in the iTerm key
mapping preferences. But when I saw it, I knew it was the solution to my
problem. The thing is, you can represent any ASCII character as a hex value,
and sending a sequence of ASCII characters is exactly what I needed to do.</p>

<p>I looked up some ASCII and ANSI hex values.</p>

<ul>
<li><a href="http://ascii-table.com/">ASCII code</a></li>
<li><a href="http://ascii-table.com/control-chars.php">Control characters</a></li>
<li><a href="http://ascii-table.com/ansi-escape-sequences.php">ANSI escape sequences</a></li>
</ul>


<p>My first goal was to navigate between windows. The default maps for that are:</p>

<pre><code>^B n        next window
^B p        previous window
</code></pre>

<p>Let&#8217;s rewrite those as hex bytes.</p>

<pre><code>0x02 0x6E   next window
0x02 0x70   previous window
</code></pre>

<p>Next goal: navigate between panes in all four directions. This was stickier
because it involves arrow keys, but! arrow keys are just escape sequences. So
a few more hex bytes are all we need.</p>

<pre><code>^B &lt;arrow&gt;      move to pane in &lt;arrow&gt; direction
</code></pre>

<p>The ANSI arrow sequence is <code>&lt;Esc&gt;[&lt;direction&gt;</code> where direction is one of
<code>[A, B, C, D]</code> (mapped to <code>[up, down, right, left]</code>). Rewritten as hex:</p>

<pre><code>0x02 0x1B 0x5B 0x41     move to pane above
0x02 0x1B 0x5B 0x42     move to pane below
0x02 0x1B 0x5B 0x43     move to pane at left
0x02 0x1B 0x5B 0x44     move to pane at right
</code></pre>

<p>Lastly, I wanted to be able to resize any given pane in any direction using
key bindings. I added some bindings to <code>~/.tmux.conf</code> (borrowing directional
keys from my favorite editor, <a href="http://www.vim.org/">Vim</a>).</p>

<pre><code>bind-key J resize-pane -D
bind-key K resize-pane -U
bind-key H resize-pane -L
bind-key L resize-pane -R
</code></pre>

<p>Those bindings rewritten as hex values:</p>

<pre><code>0x02 0x4B   resize upward
0x02 0x4A   resize downward
0x02 0x48   resize leftward
0x02 0x4C   resize rightward
</code></pre>

<p>Armed with all of my hex sequences, I headed to the iTerm2 preferences. Under
the &#8220;Keys&#8221; section, you can add new items to the global shortcut list. (You
can also do this in a profile&#8217;s key settings if you have a reason to not want
bindings to be available to all profiles.) I added the below sequences,
binding them to hotkeys.</p>

<pre><code>Mac hotkey      Hex sequence            Purpose

Opt-Up          0x02 0x1B 0x5B 0x41     Move to pane above
Opt-Down        0x02 0x1B 0x5B 0x42     Move to pane below
Opt-Left        0x02 0x1B 0x5B 0x44     Move to pane at left
Opt-Right       0x02 0x1B 0x5B 0x43     Move to pane at right

Ctl-Opt-Up      0x02 0x4B               Resize upward
Ctl-Opt-Down    0x02 0x4A               Resize downward
Ctl-Opt-Left    0x02 0x48               Resize leftward
Ctl-Opt-Right   0x02 0x4C               Resize rightward

Cmd-Opt-Left    0x02 0x70               Move to window at left
Cmd-Opt-Right   0x02 0x6E               Move to window at right
</code></pre>

<p>The panel to enter each key binding into looks like this.</p>

<p><img src="http://tangledhelix.com/site-images/2012-04-28-iterm2-enter-hex-code.png" width="420" height="171"></p>

<p>And this is what my final key map looks like.</p>

<p><img src="http://tangledhelix.com/site-images/2012-04-28-iterm2-shortcut-keys.png" width="878" height="554"></p>

<p>Now I can move between tmux windows with <code>Cmd-Opt-{left,right}</code>, move among
panes with <code>Opt-{direction}</code>, and resize with <code>Ctrl-Opt-{direction}</code>. It&#8217;s
really nice.</p>

<p>Lastly, a few finishing touches for my <a href="https://github.com/tangledhelix/dotfiles/blob/master/tmux.conf">tmux.conf</a>. The colors I use
here assume <a href="http://ethanschoonover.com/solarized">Solarized Light</a> for the iTerm color scheme. They may
look awful with another color scheme (or they may look fine).</p>

<pre><code># Watch background windows for activity
setw -g monitor-activity on

# Make the active pane more visible
set -g pane-border-bg default
set -g pane-border-fg white
set -g pane-active-border-bg default
set -g pane-active-border-fg green

# Make the active window's name stand out
setw -g window-status-current-fg brightwhite
setw -g window-status-current-bg black

# Use color to indicate activity in a background window
# (Note this is inverted, fg means bg and vice versa.)
setw -g window-status-activity-fg white
setw -g window-status-activity-bg brightred
</code></pre>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Why I left Google]]></title>
    <link href="http://tangledhelix.com/blog/2012/03/13/why-i-left-google/"/>
    <updated>2012-03-13T22:45:00-04:00</updated>
    <id>http://tangledhelix.com/blog/2012/03/13/why-i-left-google</id>
    <content type="html"><![CDATA[<blockquote><p>A user exodus from Facebook never materialized. I couldn&#8217;t even get my own teenage daughter to look at Google+ twice, &#8220;social isn&#8217;t a product,&#8221; she told me after I gave her a demo, &#8220;social is people and the people are on Facebook.&#8221; Google was the rich kid who, after having discovered he wasn&#8217;t invited to the party, built his own party in retaliation. The fact that no one came to Google&#8217;s party became the elephant in the room.</p><footer><strong>James Whittaker</strong> <cite><a href='http://blogs.msdn.com/b/jw_on_tech/archive/2012/03/13/why-i-left-google.aspx'>Why I Left Google</a></cite></footer></blockquote>



]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[A Precious Hour]]></title>
    <link href="http://tangledhelix.com/blog/2012/03/11/a-precious-hour/"/>
    <updated>2012-03-11T00:38:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2012/03/11/a-precious-hour</id>
    <content type="html"><![CDATA[<blockquote><p>My deep-rooted fear of becoming irrelevant is based on decades of watching those in the tech industry around me doing just that &#8211; sitting there busily doing things they&#8217;ve convinced themselves are relevant, but are just Faux-things-to-do wrapped in a distracting sense of busy. One day, they look up from their keyboard and honestly ask, &#8220;Right, so, what’s Dropbox?&#8221;</p><p>Screw that.</p><p>Other than spending time with my family, my absolute favorite time of the week is Saturday morning. I sleep in a little bit, walk upstairs, start the coffee process, and wander over to the computer. There&#8217;s a Dropbox folder titled &#8220;Latest Rands Articles&#8221; and right this moment there are 65 articles in progress there. After a brief stumble of the Internet, a precious time begins. I have precisely the right music on, in the center of my screen is a wall of words, and in that moment I&#8217;m decidedly not busy, I&#8217;m not working &#8211; I am building a thing and I need this time every single day.</p><p>Starting at the beginning of February, I made a change. Each day I blocked off a precious hour to build something.</p><p>Every day. One hour. No matter what.</p><footer><strong>Michael Lopp</strong> <cite><a href='http://www.randsinrepose.com/archives/2012/02/29/a_precious_hour.html'>A Precious Hour</a></cite></footer></blockquote>



]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[The Piracy Threshold]]></title>
    <link href="http://tangledhelix.com/blog/2012/02/18/the-piracy-threshold/"/>
    <updated>2012-02-18T14:55:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2012/02/18/the-piracy-threshold</id>
    <content type="html"><![CDATA[<blockquote><p>The majority of people have a basic desire to be honest - and I mean actually honest, rather than some limited definition based strictly on the law. People will go to reasonable lengths to be honest. It makes us feel good about ourselves, and it confers a certain immunity from legal problems.</p><p>But then you fuck us. First you fuck us with exorbitant pricing. Then you fuck us with inconvenience by not making your content universally available when we want it. Then you fuck us by treating every paying customer like a criminal.</p><p>Fucked by money, fucked by convenience, and fucked by judgement. We know that you hate us, and you’d better be aware that we absolutely hate you too.</p><footer><strong>Matt Gemmell</strong> <cite><a href='http://mattgemmell.com/2012/02/17/the-piracy-threshold/'>The Piracy Threshold</a></cite></footer></blockquote>



]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Tablet Computers Take Wait Out of Waiting Tables]]></title>
    <link href="http://tangledhelix.com/blog/2012/01/16/tablet-computers-take-wait-out-of-waiting-tables/"/>
    <updated>2012-01-16T23:43:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2012/01/16/tablet-computers-take-wait-out-of-waiting-tables</id>
    <content type="html"><![CDATA[<blockquote><p>Wouldn&#8217;t the better solution just be to have an app, or web app, that users pull up on their phone? That is: why should a restaurant pay to provide the hardware that most are already carrying with them?</p><footer><strong>Ben Brooks</strong> <cite><a href='http://brooksreview.net/2012/01/stop-gap/'>Tablet Computers Take Wait Out of Waiting Tables</a></cite></footer></blockquote>


<p>No.</p>

<p>A geek would happily install an app on their phone. To us, it would seem
nifty, fun, and easy.</p>

<p>A regular person would walk in, find out they have to install an app on their
personal phone <em>to order lunch</em>, then walk out and find a restaurant whose
head was not up its own ass.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Stop whining and start hiring remote workers]]></title>
    <link href="http://tangledhelix.com/blog/2012/01/07/stop-whining-and-start-hiring-remote-workers/"/>
    <updated>2012-01-07T00:26:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2012/01/07/stop-whining-and-start-hiring-remote-workers</id>
    <content type="html"><![CDATA[<blockquote><p>Every day I read a new article about some company whining about how hard it is to hire technical staff. Invariably it turns out that they&#8217;re only looking for people within a commuters distance of their office. I refuse to feel sorry for such companies.</p></blockquote>


<p><a href="http://37signals.com/svn/posts/3064-stop-whining-and-start-hiring-remote-workers">Stop whining and start hiring remote workers</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Now mirroring the "op" utility]]></title>
    <link href="http://tangledhelix.com/blog/2011/12/14/now-mirroring-the-op-utility/"/>
    <updated>2011-12-14T09:41:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2011/12/14/now-mirroring-the-op-utility</id>
    <content type="html"><![CDATA[<p>As a system administrator, <a href="http://swapoff.org/op.html">op</a> is one of my favorite tools. I have
<a href="http://tangledhelix.com/blog/2005/10/09/op-vs-sudo">explained</a> why already, so I won&#8217;t go into it here.</p>

<p>If you clicked the <a href="http://swapoff.org/op.html">op</a> link above, you may have noticed that it goes to
a 404 page. (If you&#8217;re in the future maybe it works again; congratulations!)
At least, as of December 2011, it is a 404 page and it&#8217;s been that way for at
least a year now. The maintainer of the site (Alec Thomas) tells me that his
server crashed some time back, and he hasn&#8217;t had the time to get all of the
old content back online. His site mentions an upcoming daughter, and those of
you with kids are already nodding your heads, because you know exactly how
this story goes.</p>

<p>In any case, since there is currently no other place online to download this
code so far as I know, I dug up a tarball and mirrored it on <a href="https://github.com">GitHub</a>.
You can get the latest code for op at <a href="https://github.com/tangledhelix/op">tangledhelix/op</a>.</p>

<p>My C skills are not up to par, so I am not currently planning to do anything
with the code except host a copy of it. If Alec never gets back to it, and
I decide to brush up on C in the future&#8230; well, we&#8217;ll see.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[GitHub: vim-octopress]]></title>
    <link href="http://tangledhelix.com/blog/2011/12/04/github-vim-octopress/"/>
    <updated>2011-12-04T16:02:00-05:00</updated>
    <id>http://tangledhelix.com/blog/2011/12/04/github-vim-octopress</id>
    <content type="html"><![CDATA[<p>I wrote a <a href="http://www.vim.org">Vim</a> syntax mode for <a href="http://www.octopress.org">Octopress</a>.</p>

<p><a href="https://github.com/tangledhelix/vim-octopress">https://github.com/tangledhelix/vim-octopress</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[When even the death penalty doesn't deter copying]]></title>
    <link href="http://tangledhelix.com/blog/2011/08/08/when-even-the-death-penalty-doesnt-deter-copying/"/>
    <updated>2011-08-08T01:29:36-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/08/08/when-even-the-death-penalty-doesnt-deter-copying</id>
    <content type="html"><![CDATA[<p>A bit of history to give some perspective on our modern issue of piracy (music
and movies):</p>

<blockquote><p>A few centuries ago, the penalty for unauthorized copying was breaking on the wheel. It is a term we&#8217;re not very familiar with these days, but it was a form of prolonged torturous death penalty where the convict first had every bone in his body broken, and then was weaved into the spokes of a wagon wheel and set up on public display. The cause of death was usually thirst, a couple of days later.</p></blockquote>


<p>Back then the issue was duplicating popular fabric patterns. Yes, that was
really a thing. And note that this didn&#8217;t happen to only a handful of
offenders. Sixteen thousand people suffered this fate. Over <em>fabric patterns</em>.</p>

<p>The brutality of our forebears never fails to amaze me.</p>

<p>But it&#8217;s the end result of this practice that I find the most fascinating:</p>

<blockquote><p>Capital punishment didn&#8217;t even make a dent in the pirating of the fabrics. Despite the fact that some villages had been so ravaged that everybody knew somebody personally who had been executed by public torture, the copying continued unabated at the same level.</p></blockquote>


<p>I guess some things never change.</p>

<p><a href="http://torrentfreak.com/and-when-even-the-death-penalty-doesnt-deter-copying-what-then-110807">And When Even The Death Penalty Doesn’t Deter Copying — What Then? | TorrentFreak</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[This is why your newspaper is dying]]></title>
    <link href="http://tangledhelix.com/blog/2011/07/27/this-is-why-your-newspaper-is-dying/"/>
    <updated>2011-07-27T17:27:50-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/07/27/this-is-why-your-newspaper-is-dying</id>
    <content type="html"><![CDATA[<p>Ryan Cash complains about online newspaper sites:</p>

<blockquote><p>Another HUGE complaint I&#8217;d like to add to Brad&#8217;s list is when these websites draw a story out over 10 pages.</p><p>Welcome to the Internet &#8212; a place where physical pages don&#8217;t exist, and there&#8217;s no such thing as &#8220;no space left&#8221;. There is absolutely NO REASON for any story to span over more than one single page.</p></blockquote>


<p>I wholeheartedly agree.</p>

<p>But the problem here isn&#8217;t cluelessness on the part of the editors. The problem
is that newspapers aren&#8217;t in the business of providing news, and they never
have been. They are in the business of gathering page views. They used to call
it circulation, and they used to sell half-page ads, classifieds, and coupon
inserts, but it&#8217;s the same game as it ever was (except less profitable).</p>

<p>Back in the 90s, I toured a local NBC affiliate&#8217;s offices with a friend who was
in the news business. Two things I heard that day have informed my opinion of
commercial news ever since.</p>

<p>My friend, a local news producer for many years:</p>

<blockquote><p>How we decide what&#8217;s on tonight&#8217;s news: News is whatever I say it is.</p></blockquote>


<p>Down in the bowels of the building was a room where two men watched a wall of
monitors. A videotape robot busily swapped tapes behind them. This room aired
the commercials.</p>

<blockquote><p>This is the only room in the whole building that matters. What you think of as TV is just the stuff we cram in between commercials to keep you from changing channels.</p></blockquote>


<p><a href="http://ryancash.net/post/8131787194/why-traditional-newspapers-fail-online">This is Why Your Newspaper is Dying</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[How to build a universe that doesn't fall apart two days later]]></title>
    <link href="http://tangledhelix.com/blog/2011/07/10/how-to-build-a-universe-that-doesnt-fall-apart-two-days-later/"/>
    <updated>2011-07-10T16:42:01-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/07/10/how-to-build-a-universe-that-doesnt-fall-apart-two-days-later</id>
    <content type="html"><![CDATA[<p>Some excerpts from a speech by Philip K. Dick in 1978. I can&#8217;t decide if he&#8217;s
extremely insightful or completely crazy.</p>

<blockquote><p>It was always my hope, in writing novels and stories which asked the question &#8220;What is reality?&#8221;, to someday get an answer. This was the hope of most of my readers, too. Years passed. I wrote over thirty novels and over a hundred stories, and still I could not figure out what was real. One day a girl college student in Canada asked me to define reality for her, for a paper she was writing for her philosophy class. She wanted a one-sentence answer. I thought about it and finally said, &#8220;Reality is that which, when you stop believing in it, doesn&#8217;t go away.&#8221; That&#8217;s all I could come up with. That was back in 1972. Since then I haven&#8217;t been able to define reality any more lucidly.</p><p>It is my job to create universes, as the basis of one novel after another. And I have to build them in such a way that they do not fall apart two days later. Or at least that is what my editors hope. However, I will reveal a secret to you: I like to build universes which do fall apart. I like to see them come unglued, and I like to see how the characters in the novels cope with this problem. I have a secret love of chaos. There should be more of it. Do not believe&#8212;and I am dead serious when I say this&#8212;do not assume that order and stability are always good, in a society or in a universe. The old, the ossified, must always give way to new life and the birth of new things. Before the new things can be born the old must perish. This is a dangerous realization, because it tells us that we must eventually part with much of what is familiar to us. And that hurts. But that is part of the script of life.</p><p>I watch the children watching TV and at first I am afraid of what they are being taught, and then I realize, They can&#8217;t be corrupted or destroyed. They watch, they listen, they understand, and, then, where and when it is necessary, they reject. There is something enormously powerful in a child&#8217;s ability to withstand the fraudulent. A child has the clearest eye, the steadiest hand. The hucksters, the promoters, are appealing for the allegiance of these small people in vain. True, the cereal companies may be able to market huge quantities of junk breakfasts; the hamburger and hot dog chains may sell endless numbers of unreal fast-food items to the children, but the deep heart beats firmly, unreached and unreasoned with. A child of today can detect a lie quicker than the wisest adult of two decades ago. When I want to know what is true, I ask my children. They do not ask me; I turn to them.</p></blockquote>


<p><a href="http://deoxy.org/pkd_how2build.htm">How to Build a Universe That Doesn&#8217;t Fall Apart Two Days Later</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[How to land your kid in therapy]]></title>
    <link href="http://tangledhelix.com/blog/2011/07/06/how-to-land-your-kid-in-therapy/"/>
    <updated>2011-07-06T17:00:37-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/07/06/how-to-land-your-kid-in-therapy</id>
    <content type="html"><![CDATA[<p>On artificially inflating a child&#8217;s sense of self-worth:</p>

<blockquote><p>Meanwhile, rates of anxiety and depression have also risen in tandem with self-esteem. Why is this? &#8220;Narcissists are happy when they&#8217;re younger, because they&#8217;re the center of the universe,&#8221; Twenge explains. &#8220;Their parents act like their servants, shuttling them to any activity they choose and catering to their every desire. Parents are constantly telling their children how special and talented they are. This gives them an inflated view of their specialness compared to other human beings. Instead of feeling good about themselves, they feel better than everyone else.&#8221;</p><p>In early adulthood, this becomes a big problem. &#8220;People who feel like they&#8217;re unusually special end up alienating those around them,&#8221; Twenge says. &#8220;They don&#8217;t know how to work on teams as well or deal with limits. They get into the workplace and expect to be stimulated all the time, because their worlds were so structured with activities. They don&#8217;t like being told by a boss that their work might need improvement, and they feel insecure if they don&#8217;t get a constant stream of praise. They grew up in a culture where everyone gets a trophy just for participating, which is ludicrous and makes no sense when you apply it to actual sports games or work performance. Who would watch an NBA game with no winners or losers? Should everyone get paid the same amount, or get promoted, when some people have superior performance? They grew up in a bubble, so they get out into the real world and they start to feel lost and helpless. Kids who always have problems solved for them believe that they don&#8217;t know how to solve problems. And they&#8217;re right&#8212;they don&#8217;t.&#8221;</p></blockquote>


<p>On not acknowledging that your children have flaws:</p>

<blockquote><p>&#8220;A principal at an elementary school told me that a parent asked a teacher not to use red pens for corrections,&#8221; she said, &#8220;because the parent felt it was upsetting to kids when they see so much red on the page. This is the kind of self-absorption we&#8217;re seeing, in the name of our children&#8217;s self-esteem.&#8221;</p><p>Paradoxically, all of this worry about creating low self-esteem might actually perpetuate it. No wonder my patient Lizzie told me she felt &#8220;less amazing&#8221; than her parents had always said she was. Given how &#8220;amazing&#8221; her parents made her out to be, how could she possibly live up to that? Instead of acknowledging their daughter&#8217;s flaws, her parents, hoping to make her feel secure, denied them. &#8220;I&#8217;m bad at math,&#8221; Lizzie said she once told them, when she noticed that the math homework was consistently more challenging for her than for many of her classmates. &#8220;You&#8217;re not bad at math,&#8221; her parents responded. &#8220;You just have a different learning style. We&#8217;ll get you a tutor to help translate the information into a format you naturally understand.&#8221;</p><p>With much struggle, the tutor helped Lizzie get her grade up, but she still knew that other classmates were good at math and she wasn&#8217;t. &#8220;I didn&#8217;t have a different learning style,&#8221; she told me. &#8220;I just suck at math! But in my family, you&#8217;re never bad at anything. You&#8217;re just better at some things than at others. If I ever say I&#8217;m bad at something, my parents say, &#8216;Oh, honey, no you’re not!&#8217;&#8221;</p></blockquote>


<p>On over-indulging your children:</p>

<blockquote><p>This same teacher&#8212;who asked not to be identified, for fear of losing her job&#8212;says she sees many parents who think they&#8217;re setting limits, when actually, they&#8217;re just being wishy-washy. &#8220;A kid will say, &#8216;Can we get ice cream on the way home?&#8217; And the parent will say, &#8216;No, it&#8217;s not our day. Ice-cream day is Friday.&#8217; Then the child will push and negotiate, and the parent, who probably thinks negotiating is &#8216;honoring her child&#8217;s opinion,&#8217; will say, &#8216;Fine, we&#8217;ll get ice cream today, but don&#8217;t ask me tomorrow, because the answer is no!&#8217;&#8221; The teacher laughed. &#8220;Every year, parents come to me and say, &#8216;Why won&#8217;t my child listen to me? Why won’t she take no for an answer?&#8217; And I say, &#8216;Your child won&#8217;t take no for an answer, because the answer is never no!&#8217;&#8221;</p></blockquote>


<p><a href="http://www.theatlantic.com/magazine/print/2011/07/how-to-land-your-kid-in-therapy/8555/">How to Land Your Kid in Therapy - Magazine - The Atlantic</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[How to spot a psychopath]]></title>
    <link href="http://tangledhelix.com/blog/2011/07/06/how-to-spot-a-psychopath/"/>
    <updated>2011-07-06T05:19:07-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/07/06/how-to-spot-a-psychopath</id>
    <content type="html"><![CDATA[<blockquote><p>After the conference, though, Hare seemed introspective. He said, almost to himself, &#8220;I shouldn&#8217;t have done my research just in prisons. I should have spent some time inside the Stock Exchange as well.&#8221; &#8220;But surely stock-market psychopaths can&#8217;t be as bad as serial-killer psychopaths,&#8221; I said. &#8220;Serial killers ruin families,&#8221; shrugged Hare. &#8220;Corporate and political and religious psychopaths ruin economies. They ruin societies.&#8221;</p></blockquote>


<p><a href="http://www.guardian.co.uk/books/2011/may/21/jon-ronson-how-to-spot-a-psychopath">How to spot a psychopath | Jon Ronson | Books | The Guardian</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Why is JSON so popular?]]></title>
    <link href="http://tangledhelix.com/blog/2011/06/27/why-is-json-so-popular/"/>
    <updated>2011-06-27T23:10:45-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/06/27/why-is-json-so-popular</id>
    <content type="html"><![CDATA[<p>This is exactly right, and it&#8217;s the same reason I&#8217;ve been using <a href="http://www.yaml.org/">YAML</a> a lot
lately.</p>

<blockquote><p>There is a reason why JSON is becoming very popular as a data exchange format (more important than it being less verbose than XML): programmers are sick of writing parsers! But &#8220;wait&#8221;, you say &#8212; &#8220;surely there are XML parsers available for you to use so that you don&#8217;t have to roll your own&#8230;&#8221;. Yes, there are. But while XML parsers handle the low-level syntactic parsing of XML tags, attributes, etc&#8230;, you still need to walk the DOM tree or, worse, build one yourself with nothing but a SAX parser (Objective-C iPhone SDK I&#8217;m looking at you!).</p></blockquote>


<p><a href="http://blog.mongolab.com/?p=23">Why is JSON so popular? Developers want out of the syntax business. | MongoLab</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Sometimes less is more]]></title>
    <link href="http://tangledhelix.com/blog/2011/06/26/sometimes-less-is-more/"/>
    <updated>2011-06-26T03:39:50-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/06/26/sometimes-less-is-more</id>
    <content type="html"><![CDATA[<blockquote><p>After a minute or two you don&#8217;t even think about it. This is how it should be: formatting is of no interest to the writer. Only one thing matters: words.</p></blockquote>


<p><a href="http://www.davidhewson.com/blog/2011/6/17/iawriter-sometimes-less-is-more.html">davidhewson.com - Blog - IAWriter: Sometimes less is more</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[The clock in the mountain]]></title>
    <link href="http://tangledhelix.com/blog/2011/06/18/the-clock-in-the-mountain/"/>
    <updated>2011-06-18T12:45:34-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/06/18/the-clock-in-the-mountain</id>
    <content type="html"><![CDATA[<blockquote><p>There is a Clock ringing deep inside a mountain. It is a huge Clock, hundreds of feet tall, designed to tick for 10,000 years. Every once in a while the bells of this buried Clock play a melody. Each time the chimes ring, it&#8217;s a melody the Clock has never played before. The Clock&#8217;s chimes have been programmed to not repeat themselves for 10,000 years. Most times the Clock rings when a visitor has wound it, but the Clock hoards energy from a different source and occasionally it will ring itself when no one is around to hear it. It’s anyone&#8217;s guess how many beautiful songs will never be heard over the Clock&#8217;s 10 millennial lifespan.</p><p>The Clock is real. It is now being built inside a mountain in western Texas. This Clock is the first of many millennial Clocks the designers hope will be built around the world and throughout time.</p></blockquote>


<p><a href="http://www.kk.org/thetechnium/archives/2011/06/the_clock_in_th.php">The Technium: The Clock in the Mountain</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[n+1: sad as hell]]></title>
    <link href="http://tangledhelix.com/blog/2011/06/14/sad-as-hell/"/>
    <updated>2011-06-14T19:56:02-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/06/14/sad-as-hell</id>
    <content type="html"><![CDATA[<blockquote><p>This anxiety is about more than failing to keep up with a serialized source, though. It&#8217;s also about the primitive pleasure of constant and arbitrary stimulation. That&#8217;s why the Facebook newsfeed is no longer shown chronologically. Refresh Facebook ten times and the status updates rearrange themselves in nonsensical, anachronistic patterns. You don&#8217;t refresh Facebook to follow a narrative, you refresh to register a change&#8212;not to read but to see.</p><p>And it&#8217;s losing track of this distinction&#8212;between reading and seeing&#8212;that&#8217;s so shameful. It&#8217;s like being demoted from the category of thinking, caring human to a sort of rat that doesn&#8217;t know why he needs to tap that button, just that he does.</p></blockquote>


<p><a href="http://nplusonemag.com/sad-as-hell">n+1: Sad as Hell</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[The Internet is not an elephant]]></title>
    <link href="http://tangledhelix.com/blog/2011/04/25/the-internet-is-not-an-elephant/"/>
    <updated>2011-04-25T03:13:22-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/04/25/the-internet-is-not-an-elephant</id>
    <content type="html"><![CDATA[<p>Now and then you hear an old-timer rant about how we young people never sit
down and write a real letter anymore. (Young in this case is probably defined
as under 75.) We&#8217;re too busy with our email, our Twitter and Facebook, our IMs
and texts.</p>

<p>Clearly, they are technically correct. Nobody writes letters anymore. It&#8217;s
archaic, a relic of a bygone era. It&#8217;s simple economics. In the old days,
a letter was the best option to reach across a great distance and communicate
with someone. Technology has changed the equation; many better options now
exist.</p>

<p>Think of the oldest person you know. Consider life when they came of age.
That&#8217;s when we set our expectations of how the world is supposed to work. I&#8217;ll
use my wife&#8217;s grandmother as an example. She will turn 91 in a few weeks,
meaning she was born in the spring of 1920, in rural Poland. Since then she has
seen a lot, including the inside of a Nazi work camp.</p>

<p>What was life like when she came of age? Well, she lived in the country. She
probably walked everywhere. Maybe she had a bike, maybe not. There was no
Internet. There were no mobile phones. The television would not be invented
until she was eight years old, but I suspect she did not personally see one
until she emigrated to the United States after World War II. A trip to the next
town over would probably have been a major undertaking, let alone a long trip
(even one to a country next door, a fairly short trip by modern first-world
standards).</p>

<p>I am not saying she rants about people not writing letters; I can&#8217;t say I have
ever heard her say anything on the subject. But within her life experience,
a letter was the best option for most of the time. Only after she was entering
her 70s were better options coming into play: cheap long-distance rates and the
Internet.</p>

<p>As I age, I find myself thinking about the longevity of the information
artifacts we generate. In the beginning, I was mostly worried about digital
photos. How could I ensure they survived? Unlike film negatives, digital
storage technology changes quickly. Think fast: here’s a ZIP disk. Can you read
it? No? What about this 5.25&#8221; floppy? 3.5&#8221;? What is the likelihood that the
JPEG format will be readable by computers in common use when I am
a grandparent?</p>

<p>These days, I am concerned about digital artifacts as a whole. My life is
ever-increasingly digital, as it is with all of us. I have scanned and shredded
most of my file cabinet. I get my bills via email. I communicate with everyone
online, leaving no persistent trail (or so I hope). I haven&#8217;t used a film
camera in years. My magnetic-tape videocamera is in a bag somewhere, but my
Flip Mino and my iPhone shoot video all the time.</p>

<p>For the past ten years, I have been a member of <a href="http://www.pgdp.net/">Distributed Proofreaders</a>,
whose mission is to help <a href="http://www.gutenberg.org/">Project Gutenberg</a> digitize public domain works for
safekeeping and distribution. We scan old books using OCR software, and then
the hive mind goes to work. I and many others proofread scanned text. Others
take the output from proofreaders and add formatting markup (italics,
footnotes, etc.). After several rounds of work, a completed ebook is handed off
to Project Gutenberg for publication. It is, for me, important work that I am
happy to help with. Time will destroy all old books eventually; I believe they
should be preserved for future generations.</p>

<p>I am currently working on a biography about <a href="http://en.wikipedia.org/wiki/William_Cowper">William Cowper</a>, a writer and
poet who lived during the latter half of the 18th century. As with many such
books, it is full of correspondence, which tells the story of his life. You get
a feel for who he was, how he lived, how his relationships worked. I had never
heard of William Cowper before I began scrutinizing these scans for errors, but
I now find myself fascinated with his story.</p>

<p>I wonder: will anyone be able to write such books about us in a hundred years?
How would they go about it? There will be so little left behind. Will your blog
still be running for someone to analyze? Where will your emails be accessible?
Your tweets? God help you, your Facebook photos from college?</p>

<p>They say the Internet never forgets, but I&#8217;m not so sure. I suspect that over
a long enough period of time, the Internet will in fact forget. It will forget
us all.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Apple iPad 2 review]]></title>
    <link href="http://tangledhelix.com/blog/2011/03/20/apple-ipad-2-review/"/>
    <updated>2011-03-20T21:04:58-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/03/20/apple-ipad-2-review</id>
    <content type="html"><![CDATA[<blockquote><p>What&#8217;s so amazing is that Apple hasn&#8217;t even needed the fastest chips on the market to guarantee a silky smooth, memorable tablet experience for its users. The original iPad performed incredibly well. The new iPad 2, however, just screams. Any slowdowns in entering menus, or launching apps, or waiting for a Web page to render have been completely eliminated. This is incredibly important, because the experience Apple promises, and delivers, is an instant love affair with its iOS devices; something that to this day, no other manufacturer can come close to matching. Not by a mile.</p></blockquote>


<p>This is why I waited out the first iPad and didn&#8217;t order until the second
version. I remember when Apple made this jump with the iPhone and figured I&#8217;d
skip their first attempt this time around.</p>

<p>(No, I don&#8217;t have mine yet. The earthquake in Japan distracted me that morning
and I didn&#8217;t get around to ordering until 10:30, so I have another two and
a half weeks to wait).</p>

<p><a href="http://www.bgr.com/2011/03/18/apple-ipad-2-review/">Apple iPad 2 review | BGR</a></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Changes]]></title>
    <link href="http://tangledhelix.com/blog/2011/03/19/changes/"/>
    <updated>2011-03-19T07:03:22-04:00</updated>
    <id>http://tangledhelix.com/blog/2011/03/19/changes</id>
    <content type="html"><![CDATA[<p>1992:</p>

<p><em>Friday, 3am. I wake up. Groggy, confused. This isn&#8217;t my bed. Where am I?</em></p>

<p>Conclusion: PAAARRRRTTTTYYY!!!</p>

<p>2011:</p>

<p><em>Friday, 3am. I wake up. Groggy, confused. This isn&#8217;t my bed. Where am I?</em></p>

<p>Conclusion: Must have fallen asleep in my kid&#8217;s room at 8pm again.</p>
]]></content>
  </entry>
  
</feed>

