Bill Powell Is Alive [The Den]
{ Three Acres and a Penguin }

Meadow Valley Farm: Indiana raw cheese

begun: 2008 Aug 27, 9:05 Wed | updated: 2008 Aug 27 11:14 | tags: ,

If you live near Lafayette IN and you're interested in local raw cheese, join us for bulk orders at Meadow Valley Farm.   more »

Firefox tweaks

begun: 2008 May 07, 20:47 Wed | updated: 2008 Aug 27 10:43 | tags:
update: New handy keys I hadn't noticed for Vimperator.

If you're going to use Firefox, I've found the following essential.   more »

Fuzzy Time (and an updating bash prompt)

begun: 2008 Aug 15, 9:50 Fri | updated: 2008 Aug 15 10:37 | tags: ,

So today's the Solemnity of the Assumption, which means this freelancer takes the day off. And what better way to spend free time than to take time to blog about time? About altering your very conception of time. In short, about fuzzy time.

"Fuzzy time" means using phrases like "half past three" and "quarter to one" instead of 3:37 or 12:41. This casual rounding happens all the time in conversation, but internally, I at least tend to watch the minute hand, if not the second hand. What does that do to my sense of time passing?

You may suppose me, for the sake of argument, sitting at lunch in one of those quick-lunch restaurants in the City where men take their food so fast that it has none of the quality of food...They all wore tall shiny hats as if they could not lose an instant even to hang them on a peg, and they all had one eye a little off, hypnotised by the huge eye of the clock. In short, they were the slaves of the modern bondage, you could hear their fetters clanking. Each was, in fact, bound by a chain; the heaviest chain ever tied to a man--it is called a watch-chain.

Chesterton, "The Angry Street"

I remember my Spanish teacher explaining that when North Americans are waiting for someone, they get irritated in five-minute increments, but Central Americans tend to get irritated in increments of a half hour. Of course, as a freelancer on a computer, the tardiness I'm generally fuming at is my own. That's an awful lot of angry energy to be wielding all the day long; I'm on both the giving and the receiving end.

A computer is singularly equipped to provoke this malaise because a tiny clock can be so conveniently placed in constant view. Chesterton, I think, would have turned his screen clock off entirely, with a mild oath, but I decided to try a pleasant compromise. More than a compromise, perhaps; for already my fuzzy clocks are getting me to think in terms of "five to ten" and "half past six". With no clock at all, I'd probably still be incessantly wondering (and checking) the "real" time.

I first found out about fuzzy time during the brief fuzzy-headed time when I was running KDE. The clock on the KDE panel has a fuzzy time setting. I don't remember the exact way to set it, but I'm sure you can find out how easily enough if you want. There may be similar settings on Windows and Mac applications. I saw at least one "Fuzzy Clock" Mac app in my searches. But of course I must leave that sort of thing to those who want it.

A fuzzy clock for Firefox

If you spend a lot of time browsing, Firefox is a great place to put your first fuzzy clock. The Fuzzy Time addon puts a "fuzzy clock" in your status bar. You can set the fuzziness level, and even learn a little bit of Spanish or Hebrew by choosing a different locale.

A fuzzy clock on your bash prompt.

But if you spend lots of time on the command line, you'll want fuzzy time on the prompt. First, we'll need a command line tool that simply spits out the current fuzzy time, and there's already a great one in Python. I'm not sure I found the site of the original source, but I got myself a copy of fuzzyclock here (sig) and it works. It installs like any normal Python script, and also lets you set the fuzziness level.

fuzzyclock

gives you the time in a five-minute increment, while

fuzzyclock -f 2

gives a fifteen-minute increment, and

fuzzyclock -f 3

only tells the hour. I'll leave level 4 for you to discover.

Now, how do we get this to show on our prompt? The default bash prompt is usually something like:

you@yourhost $

Of course, you can set this to something more interesting by setting the PS1 variable. You can try it right now with

export PS1="Hi, Mom, I'm in \w and it's \t $ "

Usually, this variable is set in your $HOME/.bashrc or $HOME/.bash_profile or whatever gets sourced when you log in. The \w prints your current working directory, and the \t prints the time. If you fire up man bash and scroll down to PROMPTING, you'll find all kinds of neat codes you can use in PS1 to give you other updated information. This is probably worth a look if you've never customized your prompt. You can even do colors (though that's another post).

Until recently, I'd had the prompt displaying the "real", or rather conventional, time for years. Every command reiterated the current minute, and it could start to feel like a death by a thousand cuts.

So how can we replace this with the soothing continuity of fuzzy time? There's another secret bash variable called PROMPT_COMMAND, which will get run every time you hit Enter and get a new prompt. If you use PROMPT_COMMAND to export a new value PS1, you can update your prompt every time.

Now, the obvious thing to do is this:

PROMPT_COMMAND='export PS1="\u$( fuzzyclock ) $"'

(Note \u for user; you can put whatever other text you want in the prompt.) However, this technique will cause a slight delay, as fuzzyclock has to get called every time you hit Enter. This gets frustrating quickly. Also, unless you only run one command every fifteen minutes, it seems out of line with the overall fuzzy time concept.

Fortunately, bash can cat a short file very quickly. (It could probably display an environment variable even more quickly, but, embarrassingly, I couldn't get that to work with a cron job.) So all we need to do is write a short script that saves the current time in a short file, and then use cron to run that script every minute (or fifteen). Then, we use PROMPT_COMMAND to display this short file whenever we get a prompt.

First, in your $HOME/.bashrc (or $HOME/.bash_profile):

PROMPT_COMMAND='export PS1="\u$( cat $HOME/.cronprompt ) $ "'

Put whatever else you want in that PS1, remember.

Then in your crontab file (perhaps $HOME/.crontab):

*/1 * * * * /PATH/TO/cronprompt.sh &> /dev/null

*/1 means once a minute, which I think is often enough for our fuzzy purposes. You could run it every five minutes (*/5) if you're extremely jealous of wasted CPU cycles. The &> /dev/null is rather important, unless you want an confirmation email every minute.

Don't forget to update cron by

crontab $HOME/.crontab

or wherever your put your crontab file. Just changing your crontab file won't do anything without actually running crontab on it. You can check that it "took" with crontab -l.

You'll need cronprompt.sh actually to be where you told cron it is. This script can be as short as one line:

echo ": {$( fuzzyclock )}" > $HOME/.cronprompt

Whenever cron runs cronprompt.sh, .cronprompt is updated. Thanks to our setting for $PROMPT_COMMAND above, .cronprompt gets output afresh every time you get a prompt.

You can use this cronprompt.sh concept to add other cool updated information, such as a reminder using remind, but I'm going to save that for another post.

(Note: after I did all this, I found a script called uberprompt, which seems to have a similar approach for setting a prompt title on the fly, but I didn't try it.)

A fuzzy clock for Vim

Now that you've gone to all this trouble to have fuzzy time on the command line, why not put it on the status line in Vim?

In your $HOME/.vimrc:

"fuzzytime
function! Cronprompt() 
    "Note that you must change YOU to your user name.
    "For some reason, $HOME doesn't expand in .vimrc, at least for me.
    for line in readfile("/home/YOU/.cronprompt",'',1)
        return line
    endfor
endfunction
se  statusline=%-5F %m%r%w%y%=%{strftime('%a %e %b %I:%M %p')}%6L%{'L'}%3{' b'}%n %{Cronprompt()} (%l,%c)%5P

Again, note that you must change YOU to your user name, so that Vim can find .cronprompt. You don't need all that stuff I have in statusline, just %{Cronprompt()} (though you probably want handy items like the name of the file you're editing). I just thought I'd show you my statusline. Note that I've kept a strftime function that includes the conventional time too. This might defeat the purpose, but presently I still time my work day, and sometimes the Vim clock helps because it stays "frozen" if I get up from the computer. Maybe fuzzy time will help me stop this habit. But see :h statusline if you want to customize this arcane variable.

Go forth and saunter

I wouldn't be surprised to find that if there were some way of totaling the amount of time I sometimes spend worrying over and checking the time, it would come to fifteen minutes or even a half hour a day. Like all slaveries, a hyper time sense might turn out to be inefficient, even by its own standards. I like fuzzy time so far, and I hope you give it a try.

Nathaniel David Arrives Early

begun: 2008 Aug 07, 23:19 Thu | updated: 2008 Aug 10 03:44 | tags: ,

Here is a picture of our third child:

BABY IMG: Nathaniel smiling, maybe

You can almost imagine he's smiling, which is not bad for the evening of his birth.

BABY IMG: Nathaniel peeking

Unfortunately, even the healthiest of babies seems to look a little beat up when they first get out. Fortunately, the skin clears up surprisingly fast.

BABY IMG: Nathaniel investigating his changing table

BABY IMG: Nathaniel almost smiling again

I wrote a minor epic when our first child was born, and waxed at some length for our second. For Nathaniel, I trust you'll be satisfied with this interesting fact: Nathaniel arrived early -- that is, he arrived before the midwife. And that arrival was lovely.

As you can deduce from the pictures, it has been rather awhile since he was born (cough), and Nathaniel has even been duly baptized. He was a little young for the snappy white suit that one of the other boys sported, but I'm starting to wonder if our plan to use one unisex baptismal gown for all the kids is going to work.

BABY IMG: An unfortunate and temporary resemblance to Mother Ginger

I'm just glad that whoever stuffs other people's babies into flower suits and fake pots and courts future lawsuits by hawking them on greeting cards wasn't around to get visions of Mother Ginger.

(Which reminds me: all baby pictures on this site are copyrighted and may not be used for anything except excessive viewing by friends and relatives. I've been considering a more distributist license for most of my online content, but family pictures will be locked up permanently, or until such greeting cards finally inspire universal cultural outrage. Go wear your own sunflower suit.)

Anyhow, I'd forgotten what a newborn is like. I'm beginning to despair of even attempting to describe certain happenings until I learn how to draw or write verse. But here Nathaniel is, whole and entire, another stranger claiming Preferred Member Status in our little club. We all give him a warm welcome, and look forward to a fuller acquaintance.

The Dangers of Linux

begun: 2008 Jul 30, 8:25 Wed | updated: 2008 Jul 30 06:42 | tags: ,

Linux Addiction?

I'll be surprised if this comic isn't all over the place in a few hours, but you may as well see it here.

COMIC: Parents, talk to your kids about Linux...befory somebody else does.

Of course, writing drivers for hardware is a wee bit easier when the companies actually talk to you. The laugh for me might not be what the author intends; not because peripherals are always broken on Linux (they aren't) but because the power of Linux makes the newbie redefine "broken" so rapidly. In Windows, "broken" used to mean that the computer crashed more than once or twice a day. In Linux, a "broken" Xorg might just mean that some default setting in the distribution prevents me from running multiple instances at the same time. "Broken" starts to mean, "it won't do exactly what I'm imagining it could." Linux can become the most addicting computer game ever devised.

The Distributist Review

begun: 2008 Jun 25, 2:09 Wed | updated: 2008 Jun 25 01:46 | tags:

Another long absence, and again a lovely excuse. I invite you to peruse The Distributist Review.

Distributist Review logo

How To Read a Book

begun: 2008 Jun 25, 2:25 Wed | updated: 2008 Jun 25 01:46 | tags: ,

I'd like to start taking some notes on books I read for this blog (I mean den), on the off chance that someone will find them useful. And what better book to begin with than How to Read a Book by Mortimer Adler?

Unfortunately, this entry also happens to be an experiment in combatting insomnia, and the experiment is rapidly succeeding. I'll get what I can for now.

There are piles of books on how to read books. I think I read this one because when I flipped it open, he was talking about Aristotle or Aquinas, or probably both. Also, you can open to any page and immediately get a crisp, didactic fellow; it doesn't take long to see why he likes Aristotle.

It's been a few days since I finished it, and I have yet to return and review (I'm attempting this major new habit, for reasons which will eventually be explained), but there are at least two tremendous insights in this book.

  1. Dive into the index.
  2. A book doesn't stretch your understanding unless you don't understand it the first time through.

Since even one such major insight is coming to seem above par for the average book, I'm quite pleased.

Dive into the index.

Adler presents a somewhat typical "preview" method, which includes the table of contents and the first and last chapter. If you don't have the habit of reading (not skimming) the table of contents, that itself can change your whole outlook of a book. Instead of dripping it word by word into your system, as from an IV, you soar at once over the whole sea, getting the lay of the coasts, the coves, the treacherous reefs.

But Adler takes it a step further; the index. If the table of contents is a birds-eye view, the index is an enchanted ball pit. I don't think Chuck E. Cheese had come on the scene yet when this book was written (though this was the revised edition); if it had, I'm sure Adler would have seized the metaphor. Even after making an index, I had never stopped to think what a brilliant pile of jewels is carefully stashed in a book's back room; you can dive right in and swim about through a jumble of all the book's main ideas. You can touch any enchanted word, and be carried right into the thick of the book.

In the past, I'd seen indexes as purely utilitarian, only consulting them when I already (thought) I knew what I wanted, grumpily sifting through the rainbow to find my particular dented yellow ball. Now, Adler suggests reading the thing, perusing it, noting which words have oodles of references; in short, swimming about.

Or again, perhaps the index is a sort of "Wood between the Worlds," as in the Magician's Nephew, or even a world of magic doorways like in Monsters, Inc.

Freed from the constraints of conventional prose, the index is almost solid idea; few prepositions, no articles or adverbs, no mitigating phrases. Try to read and visualize even one page of an index. You'll find yourself flying all over your mental landscape.

No substitute for reading the book, of course. But the relationships that leap into view may not even have been sensed by the author. You really can feel that you're diving, that real things crowd and squirm and wiggle about you like fish in the sea.

Read books you don't understand.

Adler reserved his enthusiasm for great books; in fact, he helped edit the Brittannica edition of "Great Books of the Western World," which still graces many a library shelf. Up to now, the series has seemed sufficiently cumbersome and intimidating to ward me away, although I do think that even as a child I liked the variation in the binding color scheme (so unlike an encyclopedia). I've read some of the authors, but avoided that edition. Now perhaps I'll check it out.

Adler thinks that if you understand a book too well on your first read, it doesn't have much new understanding to give you. You can always find new information, but the book that will really knock you over is the one that stretches your very understanding of the world. And, obvious as this ought to have been to me, your understanding can only be stretched if at first it doesn't reach.

This opens whole new vistas of actually reading some of the more intimidating names. Not only might I not mind those initial sensations of inertia and despair as the air thickens and grows dense; I might begin to welcome them. The usual signs of panic might become signs of promise. In this direction likes an uncharted cavern; I can tell by the closeness of the air.

The Syntopicon

Sleep is coming for me, and I'll have more to say on this soon, I hope. I'd like to summarize his techniques (so I can use them myself), and I'd also like to peruse his Syntopicon, volumes 2 and 3 of the Great Book state which were a nearly epic attempt to categorize and index over a hundred main ideas throughout the Great Books set. Adler wanted you to be able to compare quickly what was said by, say, Aquinas and Freud, on, say, the subject of love.

At first glance, this seems like a job for The Internet, but I'm not so sure. The Wikipedia article on the Syntopicon currently includes the main ideas, each of which is linked (in a slightly self-congratulatory fashion) to that idea's page on Wikipedia. You can judge for yourself whether the current Wikipedia page on any of these topics is comparable to a hundred passages or so from the "great writers", even if you do feel compelled to keep them at bay in quotation marks.

On the flip side, the idea of cross-referencing all these ideas in English translation is somewhat depressing. I say that as a college-educated monolinguist, still trudging my native slopes while the children of illegal immigrants gleefully navigate multiple worlds. Call me a wannabe philologist, but if they were going to spend all that money, Homer should have been in Greek. Maybe I'd learn it.

Speaking of money, that Wikipedia article has a fascinating (and hopefully true) account of just how expensive it was to cross-reference all these Great Books. Today, the two volumes of the Syntopicon aren't even on the shelf at the Purdue library; the rest of the Great Books series is there, but you have to go to the repository for the Syntopicon.

I have to actually read the thing a bit before praising it too much. But the idea is exciting. And the name sounds awfully cool. And the thought of multiple people getting paid for multiple years to read these books makes me wish they were releasing a revised edition.

On the other hand, it only really works if it piques you into reading at least some of the books in full. Otherwise you're depending on Adler & Co. not to have missed anything.

Reading techniques

Getting back to the actual book I did read, I also liked the various techniques Adler presented for reading. But through the wiki-like magic of the den, I will leave this tantalizing information for a future revision. (Though you can start here if you're impatient.) Good night.

Frequently Aggravating Questions

begun: 2008 Apr 24, 23:58 Thu | updated: 2008 Jun 10 01:36 | tags:
update: Added "send public comment" option.

Confused by the site? Stop in here.   more »

Penny Justice Update

begun: 2008 Jun 07, 22:30 Sat | updated: 2008 Jun 07 20:35

Sorry I've been away, but I've been updating Penny Justice. Take a look.

Penny Justice logo

Contact

begun: 2007 Nov 27, 00:03 | updated: 2008 May 21 22:56 | tags: ,
update: New P.O. Box!

I suggest something called e-mail. It's nifty.   more »

Now available as bpalv.com!
Stop typing that amusing but neverending old
billpowellisalive-with-lots-of-tiny-l's-and-i's.com,
and try bpalv.com today!

Frequently Aggravating Questions

Helpful Pages

Feed: RSS 2.0 | Atom

Search

Tags/Categories/Ideas/Glue

(A supposedly easy and delightful way to navigate this site. Click one. It'll make sense soon.)

Archives

< August 2008
SuMoTuWeThFrSa
      1 2
3 4 5 6 7 8 9
10111213141516
17181920212223
24252627282930
31      
2008 2007 2006 2005 2004 2003 2001 2000 1999 1998 1997 1996

Rules

Do not link to dates or tags. They are capricious. They fear commitment.

Do not assume everything is tagged.

Do not boss around visitors to your web site.


[Powered by PyBloxsom]