Older blog entries for MichaelCrawford (starting at number 137)

Recommend a Better Sound Card?

The cheap sound card I use in my PC picks up a lot of electrical noise. Digital circuitry emits a lot of RF noise, and this is picked up in the analog circuitry of my sound card as a crackle and buzzing sound. Also, if I try to digitize sound input, the audio files will have a lot of the same kind of noise.

The noise on playback didn't bother me when I used speakers, but tonight I switched to using headphones, which make the noise much more obvious.

I'm looking for a new sound card that will have as little of this noise as possible, and ideally will be of very good audio fidelity. It turns out that one can get sound cards as fancy as one cares to pay for, that are mostly used for professional audio production or for home recording studios by musicians, that have as much as 32 bits per sample and many channels, but those are expensive and require special application software.

I'd like a good 16 bit stereo sound card that I can use for playing Oggs and MP3s, maybe do some Voice over IP, and for playing CDs on my PC. But I want this card to be as good as possible given that it's just 16 bit stereo.

Ideally it would have an external pod containing all the analog circuitry, so the audio circuits would be isolated from the electrical noise inside the PC case. All the professional sound cards do this, but I don't know if any consumer sound cards do.

My hopeful new sound card will need to work with Linux, BeOS and Windows 2000. Extra credit if the card's vendor provides complete hardware specs to Free Software developers.

If you'd like to email me your recommendation send it to crawford@goingware.com

Thanks for your help.


I've been playing piano again. I've played since 1984, but haven't practiced regularly for about five years. For the last week I've played every day, and now I'm playing for an hour a day.

I taught myself to play the piano. I think I did so in the most difficult way imaginable - I would just hit keys randomly and listen to see if the combinations of notes sounded nice. I had studied clarinet and drums in school, but never much liked the way I learned, and had such a bad experience with a cruel music teacher in eighth grade that I stopped playing music entirely until I was 20.

For some reason, although I could play well when I was a kid, I never could read sheet music. I always had to get someone to show me how to play a new piece. I could play a song well once I had it memorized, and then the sheet music helped as a reminder, but I never could just pick up a new song from the music.

I didn't mind this random way of learning the piano back when I started. It didn't bother me that I didn't know how to play, just banging on the keys was one of the few things that gave me any peace back when I was crazy. That and drawing.

A nice thing about it though was that after a while I learned to improvise, and I could play at some length coming up with new stuff all the time, and actually have it sound good. I even composed a few songs. I've met a lot of piano players, who could play much better than I, who expressed envy that I could compose. They only knew how to play music someone else had written.

The problem was that I stopped improvising much after I had a few songs I could play really well. Not knowing how to read music I couldn't learn anything new. The last time I really put much effort into the piano was when I recorded Geometric Visions in the Spring of '94. I stopped abruptly when I got really depressed and didn't play much at all until 1997.

In '97, I decided the best way to start composing again would be to finally learn to read music, and to learn some music theory. I took lessons - the first in thirteen years of playing - from a wonderful teacher named Velzoe Brown, back in Santa Cruz.

I was just starting to figure out how to learn a new piece from its music when I got this really bad cold and stopped my lessons, and just never took them up again. Not too long after that I started my business and didn't have time for much of anything for quite some time. When I lived in Newfoundland my piano was in storage, and even after I got it moved to my place in Maine I only played occasionally, sitting down maybe once a month to play my old pieces.

I think maybe because I've been really stressed out for a while now I finally got the idea to calm myself by playing the piano again. At first it was really disappointing, as I made lots of mistakes, forgot sometimes how my pieces went, and my fingers didn't have the strength they once had. It made my right hand and forearm hurt to play my piece "Recursion".

Happily, I persisted and in a few days the strength returned to my fingers. This couldn't have been from exercise strengthening the muscles, I think it's more that my fingers have got limbered up and used to moving that way again. Maybe all the typing I do has kept my fingers strong.

I have a book of exercises called The Virtuoso Pianist by Hanon. The author says the purpose of the exercises is to give one's fingers strength and agility, and (importantly) strengthen all the fingers equally. If one learns by playing songs, some fingers will become better than others at playing, so it will be difficult to learn to play songs that use other fingers. But Hanon promises that if one practices each of The Virtuoso Pianist's exercises regularly, one will be able to play anything well.

There are sixty exercises total. I think I had learned to play the first fifteen of them before I stopped practicing regularly. I could only remember a couple at first, so a few days ago I dug through my stuff until I found my book, and yesterday I played the first ten.

I've decided I will learn one new exercise each day until I know them all, and learn to play them well. They're not all that interesting to listen to, being designed just to exercise one's fingers, so I never learned to play them very fast. I could tell yesterday that I had trouble playing several of them, so I would stop and play them again slowly until I could play them well.

Today I played eleven of the exercises, repeating a few of them several times, and after I played them I played them again in reverse order. That took an hour.

Tomorrow or maybe the next day I'll start using my metronome to improve my timing, and over the next few days I'll speed it up. Hanon says one should be able to play all sixty of his exercises in an hour.

My timing has never been very accurate or steady. That's never bothered me. With my own pieces I slow down or speed up as I feel like while I play, but with most pieces others have written that just sounds really bad.

In a month or so I expect I'll be as good again as when I stopped my lessons in 1997, and then I'll start looking for a piano teacher.

As I write this I'm listening to Philip Glass' Metamorphosis. I would like very much to learn to play it. I heard Glass play it live, back when I lived in Santa Cruz, and I think it is my favorite piece of all the music in the world. I would be thrilled to learn to play it, but I have a long way to go. I still can't read music, and Metamorphosis is about a half hour long.

You'll find Metamorphosis on Glass' album Solo Piano. I think it's out of print now but perhaps you can find a copy used.

Do You Read Romanian?

I am looking for someone who is fluent in Romanian to proofread a translation that someone very kindly made for one of my articles.

I have every reason to believe he did a good job, but as I don't know a word of Romanian, I have no way of knowing what his translation says. It would make me more comfortable to have a proofreader check it out before the translator and I publish it.

The article is under a Creative Commons license.

Hopefully it wouldn't require more than a couple hours of work.

If you can help, please email me at crawford@goingware.com

Please help me disinfect my mailboxes

I have received 260 megabytes of email in five days. 80 megabytes was received just in the last day. Almost all the email I receive now is the Swen virus. Please help me find a way to deal with it.

Because I get a lot of email in the best of times, I read my email with elm while ssh'ed into my hosting service. Once a month or so I copy my mail spool file to my home directory, truncate my original spool file, compress my copy, and scp it to my home computer.

There is a limit to how big a mail spool file elm can open. I already use elm because it can handle larger mailboxes than any of the other mailreaders I know, but elm will fail to open a mailbox if a new mail is received while it's in the process of opening my mailbox. Bigger mailboxes take longer to open, so after I've been collecting mail in my spool file long enough elm can't open it.

That used to be a monthly occurrence. This last time it took four days before elm stopped working. I fear I won't have that long.

I can't just download my email with POP and filter it on my own machine because I am stuck on a modem connection. I need to have my connection free for other work.

What I need is the source to a command line virus filter that I can compile at my hosting service and install in my home directory. It would be sufficient to have a tool that filtered out any messages that had attachments, but it would be best if it could distinguish virus attachments from attachments that people legitimately sent to me.

My hosting service just installed spamassassin, but it seems spamassassin is not catching the virus. It's not just me, they're discussing it on the spamassassin-talk mailing list. I tried to train it by running sa-learn on a mailbox containing nothing but viruses, but it didn't help.

Also I don't think I have spamassassin configured well enough yet that I can just have it automatically delete spam. I need to have it moved into a seperate mailbox file, but to my knowledge elm doesn't have filtering. All spamassassin is doing now is adding "***** SPAM ******" to the subject lines of every spam except the virus.

Please help me before my hosting service's hard disk explodes.



High Anxiety

Yesterday I completed an eight month embedded programming project. It has put me into a bad position financially because I submitted my fixed bid with the expectation that it would take three months.

I will get the largest check of all from the project once the client is completely satisfied my work is finished. Because I'm so behind I won't be flushed with spare cash as I thought when I started the project, but at least I will be able to breathe easy long enough to get some new projects done.

My client has been evaluating my code all this afternoon. It's pretty involved, a port of the Apple FireWire Reference Platform to the TI DSP/BIOS real-time operating system. I had to write a device driver for the TI TSB12LV01B FireWire link layer chip. It's really a pretty complicated chip.

The code was testing reliably for me before I sent it, or I wouldn't have sent it. While I have every reason to believe it will work well for my client too, I have been tormenting myself with all the things that could go wrong.

If he finds any problems, I'm sure I could fix them, but I'm in such a bind financially that a delay of even a few days would be disastrous.

I've been climbing out of my skin since yesterday. My wife was feeling good that I'd finished, but now I'm making her anxious too.

So now I just wait to hear my client's report, and try to find someway to avoid going out of my mind.

15 Sep 2003 (updated 15 Sep 2003 at 03:10 UTC) »
The Recording Industry Association of America

Lorraine Sullivan got sued by the RIAA. She says she would fight the lawsuit if she were able, but she is just a poor college student. She is asking for donations to pay her $2500 settlement, but has raised only $184 so far.

Traffic to the copy of Links to Tens of Thousands of Legal Music Downloads that I have on my own website has increased significantly since RIAA filed suit against 261 file traders on September 8th. I'm reporting some statistics for the article on this page. Notably, my article has been #1 at Google for the query legal music downloads since the middle of July, and the number of referrals I get for that and a lot of other queries has been rising steadily since the 8th.


My article Links to Tens of Thousands of Legal Music Downloads got posted to the front page at Kuro5hin Friday afternoon.

It seems to be having an effect. iRATE's user base jumped from 700 to 1700 in two days. A Google search for "Links to Tens of Thousands of Legal Music Downloads" went from 28 hits friday, to 217 saturday, to 457 today.

It's tied with several other pages for twelfth place in the Blogdex top fifty, which tracks weblogs looking for the most talked about links.

The last thing I did when I finished the article before submitting it to Kuro5hin was to place it under the Creative Commons Attribution-NoDerivs license. If you agree with what I have to say in the article, please copy it to your own website or to other message boards. The copy I keep on my own website uses only very simple markup and is almost entirely self-contained, to enable easier copying.

Help Test iRATE radio

iRATE radio is nearing its 0.2.1 release. Many problems have been fixed, so it's expected this version will dramatically increase its popularity. But your help is needed for the final testing to discover any remaining problems.

iRATE radio is a collaborative filtering client/server mp3 player/downloader. The iRATE server has a large database of music. You rate the tracks and it uses your ratings and other peoples to guess what you'll like. The tracks are downloaded from websites which allow free and legal downloads of their music.

iRATE radio is a Java program. It is available compiled native for Windows or Linux with GCJ, or as OS-independent bytecodes for any platform as a Java WebStart download.

I'm really impressed with what Sun has accomplished with WebStart. You really should try it out just to see how WebStart installation works. We could all learn a lot from that. However, WebStart on Linux doesn't work by just clicking a link. You have to download a small file, then give it as a command-line argument to the "javaws" program. On Mac and Windows, you just click a link and your program gets installed. It even checks for a digital signature on the binary.

For Mac OS X you will want the WebStart download. It is trivial to install; just click the link and in less than a minute you'll be running iRATE. For Windows, use the GCJ version, or if you'd like to test WebStart on Windows, you'll need to install the Java Runtime Environment 1.4.


I was pleasantly surprised to find today that my article Links to Tens of Thousands of Legal Music Downloads is the #1 search result at Google for the query legal music downloads.

My article ranks just ahead of Apple's music page which is in the #2 spot and covers iTunes, the iTunes Music Store and the iPod.

Heh. Wonder if anyone at Apple has noticed yet?

I'm especially pleased because legal music downloads has been the most frequent search query people have used to find my page for as long as the search engines have known about it. Traffic to the article has dropped since I stopped karma-whoring it all over slashdot, but I have noticed its picking up again in the last few days because of google.

It ranks #1 or #2 for a lot of other keywords as well.

I'm still working on the article. When I'm completely satisfied that I'm done working on it (hopefully soon) I'm going to put a Creative Commons license on it, and encourage copying. I'm also waiting for iRATE radio 0.3 to be released, as I can tell from testing the development snapshots that 0.3 will be a lot more reliable than the current 0.2 version. Also once I'm done I'm going to submit it for publication at Kuro5hin.

Because it's an opinion piece, I'm going to use the license that doesn't permit derivative works, which unfortunately also forbids translations. I'm going to encourage translations though, which as the copyright holder I can arrange privately.

7 Aug 2003 (updated 7 Aug 2003 at 23:25 UTC) »
Help Me Promote Web Browser Standards Compliance

or... !@#$%^&*() Microsoft!

I need your help to encourage visitors to my website to use standards compliant browsers. Read on:

My wife the web designer has created a beautiful new design for my website using valid CSS and XTHML 1.0 strict. You can see her idea for my new homepage and compare it to what I have now, which I designed myself. (She's improved her design based on comments we received, so what she has now actually looks a little better than that.)

The only problem is that she checked it in Internet Explorer 5.0 on Mac OS X, and found that it looked terrible. IE 5 doesn't do CSS very well. It has particular trouble with positioning, in this case the "float" property. The whole page is laid out wrong.

I didn't think that was a big deal, until I checked my web server logs for last month. I used Analog to processor my log file, with the "BROWSERSUM ON" command in the config file to give a browser summary. Note that my site had 67,368 requests, of which 27,439 were requests for pages. This showed that 14% of my visitors were using IE 5 (it looks OK in 5.5 though):

no.:  reqs: pages: browser
---: -----: -----: -------
  1: 36317: 12284: MSIE
   : 27131:  8454:   MSIE/6
   :  9047:  3767:   MSIE/5
   :   134:    60:   MSIE/4
   :     4:     2:   MSIE/3
   :     1:     1:   MSIE/10
  2: 17488:  6155: Mozilla
   : 13824:  4532:   Mozilla/1
   :   109:    38:   Mozilla/0
   :     3:     1:   Mozilla/00000000
  3:  1762:  1762: SKT15SK12001112816018091692007058;18;2;28;130
  4:  1767:  1154: Netscape (compatible)
  5:  2555:   824: Opera
   :  1600:   513:   Opera/7
   :   500:   174:   Opera/6
   :   452:   134:   Opera/5
   :     2:     2:   Opera/3
   :     1:     1:   Opera/4
  6:   650:   608: Googlebot
   :   650:   608:   Googlebot/2
  7:   538:   529: Scooter
   :   538:   529:   Scooter/3
  8:  1030:   445: Netscape
   :   824:   377:   Netscape/4
   :   112:    31:   Netscape/6
   :    51:    20:   Netscape/3
   :     4:     1:   Netscape/7
  9:   444:   442: sitecheck.internetseer.com (For more info see: http:
   :   444:   442:   sitecheck.internetseer.com (For more info see: http://sitecheck
 10:  1106:   370: Galeon
   :  1087:   364:   Galeon/1
 11:   946:   363: Konqueror
   :   900:   351:   Konqueror/3
   :    46:    12:   Konqueror/2

Yes, your eyes do not decieve you - there are still people visiting my site who use IE or Netscape 4, and even 3!

Bonita googled high and low looking for a workaround, and found many other web designers asking the same question, but no solution was to be found. She and I have agreed that we don't want to lay out my site using tables (as my original site does now) but to use CSS for all the presentation markup. I've been careful to support old web browsers on my site for a couple of years since compliant browsers have become readily available, and I feel it's time to move on.

I have made the decision that my website isn't going to support such old, uncompliant browsers as IE 5 and Netscape 4 (I checked, and Netscape 4.7 renders the page about the same way that IE 5 does).

Instead, I'm going to place a link on each of the most popular pages of my site that will take the reader to a page that explains that my site is designed using current W3C standards recommendations, and that the reader is going to need a standards-complient browser to view the site. I'm going to specifically say that Explorer 5.0 and Netscape 4 won't work.

Here's where you can help me: Bonita searched all over the W3C's website looking for an article that would explain what W3C standards compliance means when it comes to browsers, and why users of browser software should care. She wants to find an article that will convince readers to upgrade their broken old browsers. You may find this surprising, but she couldn't find one.

Perhaps one of you know of such an article anywhere on the web, and could tell me the URL? You can post it in your diary, so we'll all see it in the recentlog, or you can email it to crawford@goingware.com

Thanks for your help.

(PS. I thought diablo3d's joke was so funny I emailed it to Bonita.)

128 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!