Scott Parish: Blog

Sun, 22 May 2005
Music to my ears

I try to keep from gushing about products, but these new headphones are just too amazing. Getting fed up with my ipod earbuds i decided to buy something decent. As usual, Consumer reports had nothing to help me out. Luckily i ran across a site Goodcans.com, which highly rated Grado's line of headphones. While the site was highly biased (they are also selling headphones), i decided to go ahead and check out the SR80s. It took some hunting to find a local shop that carried the things, but i finally found Sound Mind Audio here in Austin.

Never have i heard sound like this before. Its painful to listen to any of my other speakers or headphones now. The best way to describe the sound is that its like my head's pressed up against the instruments. The only problem i've had is that they don't blare when they're loud. More then once i've been working away and found that i've bumped the volume up way too loud. It doesn't sound loud, but i'd like to keep my hearing around too.

I'm afraid i'm on my way to becoming an audiophile.

[2005.05.22 21:54] | [reviews] | #
Thu, 19 May 2005
Support our ribbons

Support our ribbons reminds me that i never made that sign i intended to hang in my car window: "God bless Iraq (Matt 5:44)"

[2005.05.19 17:39] | [humor] | #
Namespaces, environments

Eric got me interested in Plan 9, especially it's 9P protocol (see The use of name spaces in Plan 9 and The organization of networks in Plan 9).

The synopsis is that Plan 9 treats everything as either a file or a collection of files. If you want a program (or script) to interface on a network socket, rather then using calls like socket() and bind(), you open files in directory specified by convention. This is really interesting in that when you are creating a new programming language, you only have to import the system calls for interacting with the file system (~13 if i understand correctly), and your new language can interact and control _any_ of the system devices, network, etc. 9P is a simple protocol that implements these file system interfaces over a simple channel. Plan 9 also has per process filesystem name spaces; each process can mount/bind to change its view of the filesystem. With a network channel and 9P it can mount a file system from another computer. The remote computer's file system includes all of its device files though, so if our process binds the portion of its file system implementing networking, for example, our process has essentially gained the ability to proxy through that computer. Since all system interactions are done through the files system, with proper permissions anything can be used remotely!

I've been thinking more about capability based languages and operating systems. From my understanding, such a system can be built on scope: if code only has access to what it has been given (which should be only what it needs), and if there is no global/static state including library calls granting it access to such, then it is secure.

Between Plan 9 and capabilities, namespaces are apparently quite an important topic. So important that... why shouldn't they be first class?

Searchings doesn't turn up an overwhelming amount of material on first class namespaces. First off, mit and umb schemes apparently have first class name spaces. They have a 'make-environment' call, and an optional argument to the eval function, specifying an environment. Not real exciting.

On the other end of things, there's Symmetric Lisp, which completely remolds lisp with first class namespaces. Interestingly, things like structures, classes, modules or packages, closures, and even streams can be modeled using these namespaces! The final surprise is that they get parellelizable code for free! (see Environments as first class objects and A programming language supporting first-class parallel environments)

Finally, Erlang make concurrency incredibly simple. They have a function like primitive that you wrap your function call in. The primitive runs that function as a separate process (possibly on a separate computer) and returns a handle which can then be used to pass messages. It makes concurrent programming incredibly simple.

Now, if i could only make a capability based language with first class concurrent environments.

[2005.05.19 05:10] | [articles/technical] | #
Wed, 18 May 2005
How we got here

History was one of the classes in school i found little use for. Not that i don't enjoy history or see its importance; its just that the emphasis was always towards, what i considered, the least import: names, dates, locations--and almost always centered around politics and war. Much more useful to my mind is what happened, why, and what were the repercussions.

Small | Medium | Large

Enter How we got here: A Slightly Irreverent History of Technology and Markets, by Andy Kessler. In about 200 pages, he describes the parallel evolution of modern technology and economics while staying relevant, often downright amusing, and finally thought provoking.

One topic touched briefly on, making me completely rethink my view of, was the backing of money with gold. I'm not sure which economics book or pseudo-economic propagandist i'd bought into, but i've had the lurking view that money should be backed by something--gold generally comes to mind. On second thought, gold really has no intrinsic value. Fools' gold illustrates this quite nicely:

If people were stranded in some remote location without food, water, and shelter, a mountain of gold would serve no more purpose than so much sand. It would have no price. Gold has no intrinsic value. It merely has a price which is the result of complex factors associated with its subjective price value compared to other commodities. Industrial usefulness of gold as well as human subjectivity that desires gold for personal adornment, etc., does assure that gold will fetch a price in a modern market. But what price? -- Robert Carroll

In any case, i now how some new theoretical filters for viewing the world of technology and money, and i love new philosophical filters.

[2005.05.18 02:07] | [books/technical] | #
  Categories
/ (77)
articles/ (33)
  health/ (1)
  humor/ (2)
  religious/ (7)
  technical/ (19)
books/ (9)
  general/ (5)
  health/ (1)
  technical/ (3)
humor/ (6)
meta/ (1)
poetry/ (1)
quotes/ (11)
rambles/ (8)
reviews/ (1)
speeches/ (6)
  technical/ (3)
tips/ (1)
  mac-osx/ (1)

Archives
2005-Oct
2005-Sep
2005-Aug
2005-Jul
2005-Jun
2005-May
2005-Apr
2004-Oct
2004-Sep
2004-Aug
2004-Jul
2004-Jun
2004-May
2004-Apr
2004-Mar
2004-Jan
2003-Dec
2003-Nov
2003-Oct
2003-Sep
2003-Aug
2003-Jul
2003-May
2003-Apr
2003-Mar
2003-Feb


RSS

blog powered by: pyblosxom

Copyright 2000-2003 Scott Parish
All rights reserved.