Snozberry

because blogging ain't such a bad idea Snozberry
Computers & Technology Archive
Monday | 2007.03.05

Note to Apple: Enable Native Gimp Support

I am trying to make the "switch" from Linux to OSX as my primary desktop. One of my major pain points stems from my photo development workflow.

The bottom line is that I depend on using the Gimp and UFRaw to develop my photos (NEF format). This situation is not likely to change for years. I have test driven a university-licensed copy of Photoshop CS2, but its both too slow and too expensive for use at home. Aperature received poor reviews (Ars Technica) and is also priced too high. iPhoto is handy for photo organization and now supports RAW formats, but has nowhere near powerful enough editing tools. Gimp.app is nice, but doesn't work with UFRaw due to library incompatibilities between X11.app, Fink, and Gimp - and that means that I can't work on my NEF files under OS X. Also, running under X11 makes using the software nowhere near as nice as it is under Linux.

To summarize, the lack of good Gimp-plus-UFRaw support under OS X may prevent me from switching.

What's the point of this story, you may be asking? Well, I would like Apple to help complete the already-started port of GTK+ to OS X. This would not only make the Gimp work natively under OS X, but also open up the use of thousands of other applications developed with GTK+.

Everyone has heard that Macs are the best platform for media development. Why not help reinforce that image by making a high quality, free-of-cost image editor available on your platform? After all, I can run the Gimp natively in both Linux and Windows.

Posted by reds at 01:02 AM | Comments (0) | TrackBack (0)
Tuesday | 2007.02.20

iTunes and AirTunes: Feature Request

SCENARIO: I work in multiple locations and with a VPN. This means that often when I come home or disconnect a VPN connection the list of AirTunes speakers is incomplete or wrong. Only while filing this bug, did I realize that this list will auto-refresh within a few minutes. A few minutes is waaay too long to wait!

LIMITATION: Currently, there is no way to refresh the list of AirTunes speakers except to completely restart iTunes.

REQUEST: I would like you to please add a 'Refresh AirTunes List' entry (or perhaps 'Refresh Speaker List') to the AirTunes drop-down list. This entry would appear alongside the 'Computer' entry and other AirTunes speakers and allow the user to manually refresh the list without having to restart iTunes (and lose their current track, etc).

Posted by reds at 03:13 PM | Comments (0) | TrackBack (0)
Tuesday | 2006.08.08

OS X Leopard Time Machine = ZFS Snapshots?

I was just perusing the Apple website looking for some information about what's going on at Apple's Worldwide Developers Conference when I stumbled upon the new sneak peak pages for OS X Leopard. Apparently, one of the new features is called Time Macine.

Could this be the result of a successful ZFS port to OS X? Among other awesome features, ZFS supports easy snapshots.

I've Googled around and can't find anyone else who's suggested this. It's pretty obvious, but you heard it here first!

Posted by reds at 01:10 AM | Comments (0) | TrackBack (0)
Thursday | 2006.07.27

Brother DCP-8065DN Printer

Unhappy with the Brother-generated PPD file for my new printer, I created a modified one based on the BR8440_2_GPL.ppd file at linuxprinting.org. The new file supports duplex printing and doesn't exhibit the banding that the Brother-generated PPD did. Most importantly, however, it doesn't hang the printer after every print job. Feel free to download and redistribute my custom PPD file for the Brother DCP-8065DN printer.

Cheers.

Posted by reds at 05:06 AM | Comments (0) | TrackBack (0)
Sunday | 2006.07.23

Broken NYTimes.com Email Article Feature

Has anyone else noticed that emailed articles from The New York Times appear as being sent from 1969? The problem is that they don't put a Date: header in their messages. I wrote them a note so that they can fix this:

When an article is emailed from nytimes.com the origination date field (i.e. 'Date:' header) in the email message is not set. According to section 3.6 of RFC 2822 (available at http://www.rfc-archive.org/getrfc.php?rfc=2822) this field is required and the format of the date format should conform to the description in section 3.3.

The lack of the 'Date:' header causes some mail readers to assume a very old date for the message, such as the Unix epoch (see http://en.wikipedia.org/wiki/Unix_timestamp), thus displaying it at the tail end of someone's inbox.

Fixing this should be a simple task and would enhance the usability of the nytimes.com email feature.

Thank you,
Chris Horn

Posted by reds at 10:30 PM | Comments (0) | TrackBack (0)
Sunday | 2006.06.04

BRU Backup Script

I just thought I'd link a copy of the script that I use with BRU to backup my computers (2 Linux & 2 OS X) to hard drive media. I use cron to run full backups (level 0) once per week and incrementals (levels 1-6) every night. The script is designed to keep last week's backups (full, plus incrementals) around while you're building a new weekly set. The bottom line is that it works and I rest more easily at night knowing that it's working.

BRU backup script

Enjoy.

Posted by reds at 02:19 AM | Comments (0) | TrackBack (0)
Monday | 2006.03.20

Inexpensive, High Performance Cell Phone

I knew it was possible. Well, here it is in real life (admittedly minus the Bluetooth). Too bad you have to live in a foreign land to use such a phone (and belong to a GSM carrier).

Posted by reds at 02:35 AM | Comments (0) | TrackBack (0)
Monday | 2006.01.02

Better Editing, Feature Request

Quick feedback to Microsoft, but applicable to any document software out there:

  1. I would like to be able to view my document's pages in an "open book" style (called "continuous facing pages" in Adobe Acrobat) while editing at any zoom level. Presently, this is only possible if I set the zoom wide enough to view ALL of pages 1 and 2 simultaneously.
  2. When I view my document's pages in this "open book" view the scroll bars should remain in place. Presently they disappear, which is very frustrating and unexplainable from a usability point of view.
  3. When I move the cursor in this "open book" view, the cursor should not jump from pages 1 to 3, or 2 to 4, when scrolling down. The cursor should follow the text, moving from page 1 to 2 to 3, etc.
With the advent of larger and wider monitors, these features will become essential capabilities that a large number of consumers will demand.
Posted by reds at 05:56 PM | Comments (0) | TrackBack (0)
Tuesday | 2005.11.29

Low Cost Asterisk Home Phone System

It would be nice to have a simple fancy phone setup. By this I mean a phone system that is simple by phone-savvy standards, but fancy by normal-people standards. I think that I may look into it setting up something like this come February. The idea is to purchase two phone services: mobile and VoIP. The goal of the setup would be to place and receive inexpensive international calls via my cell phone, have a fax line, have voicemail, and allow me to purchase a low-cost rate plan from my mobile carrier.

This would be accomplished by building a phone system like the one pictured below. My primary phone number would be supplied by a VoIP provider. Incoming calls would be answered by an Asterisk PBX and redirected either by a default set of rules, or with a phone tree. For me, the really interesting part would be to tie a cell phone into Asterisk via a USB cable. This would allow for calls to come in and out of the cell phone, as well as the VoIP line.

  VoIP -- Asterisk -- Home Phone
             |
Cell Phone --+

The benefit of having the USB cell phone tied into Asterisk is that I could call that phone with my cell phone and place calls through the VoIP line. This would allow me to place calls without using up my cell phone plan's minutes (the call is just an "in network" cell phone call), as well as make very inexpensive international calls (billed at only the VoIP rate). Similarly, anyone calling my VoIP line could use the phone tree to ring through to my cell phone and talk without using up my cell phone plan's minutes.

The facsimile line would simply be some software running on one of my existing computers/servers, and I'm pretty sure that Asterisk can provide a voicemail service.

The real challenge is getting Asterisk to speak to the cell phone via USB, and setting it up to allow dialing numbers out though the VoIP line numbers you punch in after you've called in an authenticated yourself (with some kind of PIN). Incidentally, I'm not worried about having to punch in numbers because I can program my cell phone to dial them for me, complete with pauses and breaks.

The great thing about this setup would be that I wouldn't pay any more for calling than I do now. I'm presently just using a mid-level cell phone family plan, which I could downgrade and use a part of the savings to rent a VoIP service. There would be some up-front hardware acquisition costs, but nothing that wouldn't amortize over a few months.

Fun, fun.

BTW - If anyone reads this and knows how to interface a cell phone with Asterisk, please let me know through the comments. Thanks.

Posted by reds at 11:28 PM | Comments (0) | TrackBack (0)
Saturday | 2005.08.27

Cringely, Nails it on the Head

I'm catching up on my Cringely reading. This article about the utter deregulation of broadband access providers seems right on target - calling a spade a spade. Depressing, but true.

Posted by reds at 06:41 PM | Comments (0)
Monday | 2005.08.15

Open Letter to the Copyright Office

Slashdot ran a story this morning that linked to a Copyright Office request for information regarding the development of a new website that will potentially require Microsoft's Internet Explorer web browser.

On the one hand, I was utterly surprised that these people would even consider doing such a thing in the present day. It's not like no one has ever heard of Firefox, or that web designers don't know that XHTML and CSS are established development standards. On the other, I have grown to almost expect such poor decision making from these people. So, to help guide their way, I wrote a letter and submitted it through an online contact form. It's not a great letter, but it's more than nothing:

I am writing to respond for your request for information regarding whether or not any eligible parties will be prevented from preregistering a claim due to the proposed browser requirements for the preregistration system. The short answer is: "Yes, I will be prevented from using your system."

I, like many other people in the United States, have chosen to not use the Microsoft Windows operating system on the computer systems I use at home and at work. In its place, I use the Debian Linux and Apple Mac OS X operating systems. There are a number of problems with your potential choice to create a web site system that does not interoperate with anything except Microsoft's Internet Explorer (IE) web browser:

1. A recent release of Microsoft's IE is unavailable for these operating system platforms.

2. Several much nicer, standards-compliant web browsers exist today, and I choose to use them (even when I am using Microsoft Windows operating system).

3. It seems illogical to lock a public web service to a single, non-standards compliant, proprietary web browser when open and public standards for web development exist, and are supported by a multitude of browsers on the market - *including* Microsoft's IE.

I have found the Mozilla-based browsers to best suit my needs (Mozilla, Firefox, & Safari). These browsers are available on every major computing platform - Microsoft Windows, Apple OS X, and Linux. It is important that you realize that a standards-compliant web site will be accessible to all of your customers, regardless of the browser that they choose to use. I would recommend that the Copyright Office develop a system that is standards compliant (e.g., HTML/XHTML & CSS), so that all citizens have uniform access to the services that are being provided.

Please see the W3C accessibility guidelines (levels 1 and 2; http://www.w3.org/WAI/), their HTML/XHTML markup standards (http://www.w3.org/MarkUp/), as well as their CSS markup standards (http://www.w3.org/Style/CSS/). I strongly suggest that if you do anything with JavaScript, that you provide a non-JavaScript implementation, as well.

Thank you.
Christopher Horn.

Posted by reds at 11:08 AM | Comments (0)
Thursday | 2005.08.04

Locked in with a Motorola E815

I grudgingly signed up for another two years with Verizon Wireless and picked up a Motorola E815 phone in the process. The phone's okay, but I have a few complaints. I'm going to leave out comments about disabled features, and instead just focus on the usability of the phone:

In all, I have to say that for such a modern, fancy phone I'm remarkably unimpressed with the usability of the device. This device makes my old Kyocera feel as if it had a dream interface! The added features are nice (bluetooth dial-up is awesome!), but I'm kind of worried about how nice this phone will be to use on a day-to-day basis.

Posted by reds at 11:26 PM | Comments (4)
Tuesday | 2005.08.02

Verizon Frustration

I need a new phone (mine's dying) and a new plan; I'm presently a rather satisfied Verizon Wireless (VZW) customer. I'm going to be travelling a lot this coming year (50%), so I'm looking for a rather complete set of features in whatever plan I lock in to. I've looked at all of the carriers, but it seems as if the tussle is really between Cingular and VZW. Unfortunately, each provider has some serious drawbacks: Cingular's GSM network is rather shoddy, and I'm exceedinly put off by VZW's offerings in the realm of Bluetooth and data access.

As I've stated in the past, I could care less about a camera, or a fancy pants color display on a phone. Phone are data devices, and should be designed accordingly. I need a device that can store my contacts, hold my calendar, store some data, and most importantly make phone calls.¹ Since the technology's there, it should also be able to serve as a modem for my laptop, providing it with internet access from virtually anywhere. As with any good consumer device, this phone should do these thing as elegantly as possible, for the longest amount of time possible.

These needs translate into the following set of requirements:

That is all. It is imminently possible to offer equiment and service that provides all of this functionality. Unfortunately, some very clever people have rigged the system so that the only way you can get all of this is with a lot of other crap you neither need, nor want. By this, I'm mostly talking about those weasels over at Verizon Wireless.

You see, Cingular's network isn't very good - especially up in the Boston area, and more rural parts of Rhode Island and New York (where by brother and family live). Thus, it's hard to justify using Cingular. If I could, I would simply pay them approximately $120/month and receive 1500 family-plan minutes (that roll over), unlmited data service, and full Bluetooth functionality. All of my contacts and internet access would be wireless with the Bluetooth. Thus, I just carry around a phone and I'm fully connected basically 100% of the time. The phone even has a small email client so I don't have to whip out my Powerbook to scan for new mail.

Now, let's try to do the same thing with VZW. I can get 1400 minutes of family-plan minutes (with unlmited calling to other Verizon customers), no data service, and effectively no Bluetooth functionality for $90/month. If I want to sync my computer contacts/calendar, I have to use a USB cable - but it's not supported on the Mac. If I want broadband access, I have to purchase a PC card and a data plan that is $60/month for unlimited usage - but can't even be guaranteed that the PC card will work with the Mac! (for the record, all of VZW's data access plans are 2-3x more expensive than Cingular's). So, basically the best I can do is $150/month, the chance of data access on my Powerbook, two devices, and no sync between my laptop and phone.

My short response to this is "Fuck you, Verizon Wireless." The longer answer will probably go along the lines of purchasing the Motorola E815 phone and hacking it to support Bluetooth. This is a decidedly sub-optimal plan, but seems to be my best choice. I will be able to legitimately use 14kbps data service at the cost of airtime, or illicitely use the 60-80kbps service that the phone is capable of accessing (by dialing ##DIALUP), but they will not sell me the service for. Yes, that's right, VZW won't allow you to buy the data service if you use this phone, even though it is capable of using it. For that, you'd have to purchase the Motorola V710 which can't even be hacked to have functional Bluetooth (click the link for more details on that).

To recap - Verizon will give you a phone that has all of the modern bells and whistles built in and ready to go, but then do the following:
  1. Disable OBEX Bluetooth support (file transfer/sync)
  2. Disable DUN Bluetooth support (dial-up networking to use the phone as a modem for your laptop)
  3. Disallow you from purchasing a data plan that works with the phone
  4. Charge you to send files to and from your phone
  5. Basically disable all of the technology that allows the E815 to work with OS X and my Powerbook

Pretty appetizing, huh? Smells like monopoly behavior, to me.

¹ Please notice that most of the verbs I used are passive. I rarely want to manage information on my phone - I mostly just want access to it.

Posted by reds at 06:06 PM | Comments (0)
Friday | 2005.06.10

Beefstew.net Gallery Skin

If you like the look of the beefstew.net gallery you'll want to download the "Grey & Tan" skin I recently created for Gallery 1.5. I'm not entirely sure who wrote the original CSS file that I modified, but my thanks go out to them for sharing their work.

Posted by reds at 07:36 PM | Comments (0)
Wednesday | 2005.05.11

Reporting the Total Number of Shutter Releases on a D70

Yes, this a small little tidbit that's useless to most of you - but hopefully Google will pick this up and make it more widely known. Nikon technical support was prompt in its reply and friendly, but the substance of their messages were useless... So much for tech support.

Customer (Chris Horn)     05/09/2005 09:32 PM

How do I determine the number of photos that have been taken during the lifetime of my D70? Please assume that the filename numbering has been reset...

P.S. - By "filename numbering has been reset" I mean that the "File No. Seq." reset menu has been selected at some point in the camera's lifetime.


Response (Jonathan A.)     05/11/2005 12:30 AM

Dear Chris,

Thank you very much for contacting Nikon Technical Support.

I nor anyone in the technical support department have the details on where the d70 stores the total number of images that it has taken. Only the service centre has the ability to retrieve the information.

Regards,
Jonathan, Nikon Technical Support.


Customer (Chris Horn)     05/11/2005 01:00 AM

I found out where the information is located: the EXIF tag. Please update your response guide, as the answer you provided was incorrect.

There is a "Shutter Count" field that can be read with most EXIF reading programs. In Linux, this tool is called "exiftool". In Windows, "IExif 1.8" can reportedly show the same information. I'm sure there is an OS X program that can display the same information.

Linux freeware is here: http://www.sno.phy.queensu.ca/~phil/exiftool/
Windows freeware is here: http://www.opanda.com/en/iexif/index.html


Response (Jonathan A.)     05/11/2005 02:45 AM
Dear Chris,

Thank you very much for the information. I do not have anyway of verifying that information because we are not made aware of the process. So although this might be correct we have no way of verifying the information. But it does sound correct.

Regards,
Jonathan, Nikon Technical Support.

For the record, the EXIF reading fuctionality in GQview does not report out this field. Bummer, there.

Posted by reds at 01:10 AM | Comments (0)
Monday | 2005.05.02

Patent Abuse

At face value, this looks like a clear case of undue patent litigation. I see the current patent system as one that is untenable and out of control. It is dramatically hindering the rate of innovation in the modern world and either needs to be redesigned, or significantly overhauled. In that process patent durations need to be drastically shortened and the vetting process needs to gain an order of magnitude more processing power.

Posted by reds at 01:45 PM | Comments (1)
Sunday | 2005.03.13

Changing Key Bindings in OS X

This helpful chap has learned how to change some annoying key bindings and shared this knowledge through his blog. For those of you not in the know, key bindings define what a key does, functionally, when you press it. For example, you could program your 'f' key to type 'g' instead - but most people just settle for changing shortcut key combinations and function keys (like home, end, F1, etc.).

Using the codes found in this file (source):

/System/Library/Frameworks/AppKit.framework/Headers/NSEvent.h

he shows us how you can create a special configuration file in your user's Library directory to change what specific keys do when you press them. Specifically, you create the following file:

~/Library/KeyBindings/DefaultKeyBinding.dict

The contents re-define any nasty key bindings that Apple stuck in OS X by default (source). My file now looks like this:

{

/* Home/End keys like normal */
"\UF729" = "moveToBeginningOfLine:";    /* home */
"\UF72B" = "moveToEndOfLine:";          /* end */
"$\UF729" = "moveToBeginningOfLineAndModifySelection:"; /* shift + home */
"$\UF72B" = "moveToEndOfLineAndModifySelection:";       /* shift + end */

/* Page up/down move the cursor, not just scroll */
"\UF72C" = "pageUp:";
"\UF72D" = "pageDown:";

/* cmd + L/R for prev/next word */
"@\UF702" = "moveWordLeft:";
"@\UF703" = "moveWordRight:";

}
Posted by reds at 06:19 PM | Comments (0)
Tuesday | 2005.03.08

TiVo Feedback

Don't get me wrong, I love my TiVo - but it's very frustrating think about what it can do, as opposed to what TiVo management currently allows it to do. For an example of unencumbered PVR development, see the ever improving (and ever more tempting) Myth TV project. Below is some feedback I recently provided to the TiVo firm:

Desired features:
1. I wish I could download unencrypted video files from my TiVo.
2. Automatic commercial skipping (30-second skip is not good enough).

Reasoning:
Viewing recorded broadcast video is well within my fair use rights and I would like to be able to watch video on any computer I wish - be it a computer running Linux, Mac OS X, or even Windows. This is absolutely no different than having a VHS tape and playing it on any player I wish.

I am not the first to think/say that, as a firm, TiVo is certainly not going to survive by playing into the hands of the very firms they seek to out-compete in the marketplace (i.e., Timer Warner, Comcast, Cox, and other cable providers). TiVo management needs to re-examine their position in the market and their relationship with their customers (a relationship that is rapidly deteriorating in dissatisfaction).

Looking at the cost of my TiVo, I have been very strongly considering building a Myth TV computer to replace my TiVo. Going this route will provide me with the two functions that my TiVo is more than capable of performing, but TiVo management chooses to prohibit.

Pre-Packaged Feature Request List:
1. Save recordings to digital media (writable DVD, external hard drive, etc.)
2. Skip commercials automatically
3. Restrict Season Passes to a specific timeslot, if show airs multiple times per day/week
- When I change the channel, don't get rid of the stored live TV cache
- Automatic padding (when nothing conflicts, automatically record extra time on either side of any recording)
- Allow Season Passes to record on any channel that airs the program, not just one channel
- Advanced conflict resolution (find alternate airings, enhance visual display of conflicts, etc.)
- 30-second skip button (essentially already present)
- Record two programs at the same time/record one program and watch another live program
- High Definition recording

Comments:
Music and photos on your TiVo is rather stupid; it's a device geared for watching TV and movies. Focus on the functions that will make it more enjoyable and easy to watch TV. Do not succumb to the failed idea of a digital hub/convergance device. Make TiVo good at what it's primarily used for and then move from there.

Fair use law is on your side.

Posted by reds at 01:21 AM | Comments (0)
Tuesday | 2005.03.01

OS X Gripe: Sloppy Focus

I've been feeling somewhat claustrophobic while using my Mac (something I've been doing more of lately). As I've thought about it and tried to analyze that feeling, I think that I've realized how the windowing environment demands I mouse around and click on so many damn things to get anything done. Thus, a letter to Apple feedback was born:

I know Apple has a history of favoring limited choice in the interest of simplicity - the one button mouse, a standard line of hardware, etc - but for us power users a little configurability goes a long way.

I am a user who absolutely can not feel comfortable in a windowing environment that does not support sloppy focus - that is, the ability to mouse over a window (and be able to enter information) without it coming to the foreground.

I have been struggling to use my Mac more over recent weeks, but honestly just feel a bit stifled by this missing feature (I have been very careful to analyze what exactly is bothering me, as opposed to it "just being different").

I am generally very pleased with OS X, but will find it difficult to justify retaining should this usability feature not be made available. If you are in need of an example, please look to the Blackbox windowing environment (available for Linux & Windows; I use both).

Thank you.

Posted by reds at 09:55 PM | Comments (3) | TrackBack (0)
Friday | 2005.01.14

The State of Technical Support

Even though I called Rio after I sent in this email question and learned from a phone tech that I was basically shit out of luck, I'm pretty sure that they didn't base their email response on the "resolution" of my phone call.

Please note that eventually I ran the installer enough times (while chaning the file permissions of files in the .app package in a shell) to make it not complain about mysterious errors during the install.

My query, sent in through a web form on Wednesday evening:

I'm using 4.7.1 iTunes and can't get my Cali to be detected.

  1. The plug-in installer on the CD fails saying it completed, but with error - check the log file for more detail. I can't find any such log file.
  2. The OS X .zip installer available on your website won't uncompress on my Mac with my 6.0.8 StuffIt Expander. I unzipped it on a Linux PC and then tried the installer. Same result as #1
  3. I tried copying the Rio Plugin.hplg into my ~/Library/iTunes/Plug-ins folder but that didn't do anything.

I would like to get this device detected by iTunes but have been thwarted at ever step. Please remedy this situation.

NAME: Chris H
EMAIL: <censored>
PRODUCT: Rio_RioPort
SERIAL #: <censored>
MODEL #: Cali 256
OS: Mac_X
SOFTWARE: Apple's iTunes
CHIPSET/MODEL: PowerBook G4

The response (Friday evening):

i do not know about i tunes
Regards-

Aaron B
Rio Email Support
customersupport@rioaudio.com

That's it? A one line, uncapitalized, barely-a-sentence response? What a joke! Not only do firms put out sub-par products, with absolutely crappy integration/software - but then they don't even make a minimal attempt to help you get it to work.

While it's not 100% related, this makes me believe that people could probably dump commercial software on their PCs, use open source and be none the wiser! Of course, most current open source software isn't ready for your every-day user, but it's not like support is really an argument in favor of commercial, proprietary software. I've never really thought much of technical support - but I think this represents a new low.

Posted by reds at 07:25 PM | Comments (0) | TrackBack (0)
Thursday | 2005.01.13

Rio Cali

In the previous post, I mentioned how I am returning my day-old Cali. I figured I'd post why, just so maybe someone will change it for the better.

Basically, the Cali sucks to use with iTunes. I don't have too many problems with the actual player (the screen is kinda crappy and hard to read, the memory slot is behind the battery, and the headphones jack is such that the music crackles sometimes), but I have a huge problem with how to get music onto the device. The box advertises that it works well with OS X and iTunes.

Okay, first I had a lot of trouble installing the plug-in for it to work with iTunes. Don't ask me why - it finally worked - but it was not easy. Second, once I got the thing to appear in iTunes I couldn't transfer music to it. I tried dragging some tunes over, but they just wouldn't go. I quickly deduced that this was because they were AAC tunes. Okay, so it was smart enough to not let me put them over, but why couldn't it automatically convert them, on-the-fly, and put the converted ones onto the device? I don't know, good question.

I then tried to convert some tracks from AAC to MP3 with various software, but found that none of the available programs worked very well. Sure, they produced good sounding music (I spent the most time trying to make iTunes-LAME work well), but the damn ID3 tags would get all fucked up (presumably by iTunes; I did some investigation into the problem) and not show track names on the Cali. That is, the songs would just be listed as "01", "02", "03", etc. which is obviously useless.

In the end, I decided that this was all too much effort to expend on a stupid little player and so I'm going to return it pronto presto. On second thought, maybe the lack of a screen on the iPod Shuffle would be a pretty serious problem...

Posted by reds at 07:42 PM | Comments (0) | TrackBack (0)

iPod Shuffle

I think I may purchase one of these things. At first I thought they could only shuffle, which really turned me off - but then a co-worker pointed out that it could also play your music in linear fashion. Now we're talking.

The Shuffle looks good for a few reasons. First, at $100 for the 512MB version, it's actually cheaper than most of the competition. I've been looking around lately and just paid $100+ for a 256MB Rio Cali player for Jenny and me to use whilst running and the like. It turns out I don't like using it at all - basically because it doesn't play AAC encoded music - and am going to return it. Second, I've always thought the need for a screen was overstated. I don't need to know the name of a track that's playing or how much time it has left - I only need to be able to skip to a different album/track and tune into an FM station. Finally, the Shuffle is attractive because it's attractive. There are so many goddamn ugly players out there, with chrome, buttons all over the place and just generally terrible aesthetics that it's nice to see yet another simple, elegant product hit the streets from Apple.

My only big concern with the iPod shuffle is that it'll be difficult to skip to an album you want to hear amidst 512MB of music. That could be a lot of clicks on the track skip button. It may be faster to take a stochastic approach - stick it in shuffle, skip around, randomly samling your collection until you hit the desired album, and then drop it back into the linear play mode to listen to said album (maybe with a few clicks to get to the first track of that album).

While I have you reading, I want to put in a good word for FM tuning on a flash device. FM Is really nice to have in the gym, so you can listen to the TV while you run on the treadmill. Not that I have a problem reading the closed captioning (I have yet to actually listen to the TV at the gym, for lack of a portable FM tuner), but some things are better with sound.

To sum things up, here are the criteria for my ideal portable audio device (I already have an iPod, which is great for trips, but not great for running or other active activities):

  1. Tiny, light and solid state.
  2. Plays AAC & works easily with iTunes.
  3. Memory is a standard removable card (i.e., SD or CF).
  4. Device has an FM tuner.
  5. You can plug the device directly in, like the iPod shuffle.
  6. Decent track/album navigation on device.
  7. Elegant, simple design aesthetic.

The Shuffle hits just over half of these wishes, which is more than most devices, but still not great. I don't know why it's so hard for companies to develop such a player, but I forcast that the first to do it will become incredibly popular. That is, if they can market their device successfully.

Posted by reds at 07:29 PM | Comments (2) | TrackBack (0)
Monday | 2004.11.22

Cringely Looks at Consulting

A fascinating pair of atricles come out of Cringely. The first opens a discussion on Microsoft entering a new market (health care info system interfaces) and the second contains an anonymous consultant's rebuttal and some further discussion of the market's dynamics from Cringely.

I really like Cringely's writing in general and for this latest topic my personal experience observing Booz Allen Hamilton in action (and even Mitretek Systems, to a lesser degree) definitely coincide with his observations. Good stuff, all around.

Posted by reds at 02:33 PM | Comments (0) | TrackBack (0)
Friday | 2004.08.06

A Perl Gift Registry is Born

I have just completed creating a Perl gift registry. It uses a SQLite database backend and the CGI and CGI::Session modules to create what amounts to a pretty slick app (I'm not biased or anything).

Download giftreg.tar.gz today and give it a whirl! [NOTE: last updated 2004-08-26]

Features:
Posted by reds at 02:13 AM | Comments (4) | TrackBack (0)
Thursday | 2004.07.15

Invention Idea

What the world needs is a new kind of KVM. It actually wouldn't be a KVM per se (the device I envision doesn't handle the video), but not many people would know what I was talking about if I said we need a new KM device.

Manufacturers and other developers of ideas, feel free to take this idea, just be kind and give me a few of the devices and a few hundred/thousand dollars in return. Yeah, I'm that cheap.

Now that I have a notebook, I'm interested in using my fancy-pants Kinesis keyboard with it. What would be dreamy is if there were a device designed to share a USB keyboard and mouse between a desktop and a bluetooth enabled laptop. Although I just entered, I know this market has to be big. Think of all the people with a laptop and desktop, who don't want to type on the laptop's built-in keyboard when it's sitting on the desk next to their 'real' keyboard! It's not even like the market is restricted to users who own laptops with integragted bluetooth - there are a bazillion USB bluetooth fobs on the market. Anyhow, back to my idea.

The device would have the normal spots to plug in a USB keyboard and mouse. There would be just one wire coming out of it, though. That would be a USB cable that plugs into the stationary desktop computer. Power and is supplied to our mythical device through the USB cable, which also connects the keyboard and mouse to the desktop. As you probably have guessed by now, the keyboard/mouse connection for the laptop is accomplished wirelessly through bluetooth!

If I had some capital and access to some energetic young engineers, I could get very rich! C'mon, somebody develop this! I want one!

Posted by reds at 12:18 AM | Comments (0) | TrackBack (0)
Friday | 2004.05.07

Note to Apple

I sent this in response to some speculation in the news of an iTunes price hike:

Raising prices would be a really foolish thing to do. If the record label cartel trys to externally force a price hike (which could arguably destroy the iTunes Music Store), you should lobby the government to take antitrust action against them. Below are some reasons why music obtained in soft-copy form should cost less than content on physical media.

If you increase the cost of music obtained online, making it comparably priced with physical CDs you can be assured that I will never again purchase music online from you.
Posted by reds at 01:46 PM | Comments (0) | TrackBack (0)
Monday | 2004.05.03

Center for National Software Studies

I just received a notice (at work) that this CNSS group is having a meeting. Curious about what this group is all about (it sounds like it has potential, right?), I popped on over to their site and read their "Charter/Mission" statement. I have to say, I'm not impressed.

The general flavor of the group seems to be a protectionist bunch of people trying to turn software into another area under the umbrella of "national security". Why does everything these days have to be about protecting things? Why can't we just develop cool new stuff and call it a day? Too much of the government's efforts these days go into protecting things. I swear we're going to protect everything right until we're protecting nothing. Perhaps the government should look into supporting free, open software that operates like the nation's road infrastructure - everyone can use and depend on it to get their real work done. Perhaps the government should encourage the strength of our software industry by not trying to "protect" it from foreign competition!

Re-reading the site, perhaps I'm a bit off in left field with the above take. The second time the message seemed much more innocuous, but I still read a common theme of maintaining security, preventing piracy, and making sure all is well with the new nation infrastructure. To me, that smells a lot of a paranoid, conservative approach to investigating the things they're talking about.

Who knows. I just know that I'm so utterly fed up with national security and protecting every damn fucking thing you can think of that I could choke the next person who even thinks about mentioning it.

Posted by reds at 04:44 PM | Comments (0) | TrackBack (0)
Saturday | 2004.04.24

Wireless (802.11) Woes

There's this new access point in the 'hood that's stealing Jenny's wireless connection. No, it's not a computer connecting to our access point and using our bandwidth - it's a rogue access point that grabs Jenny's machine and tries to serve it access. I actually wouldn't mind too much if it stole the connection and then linked her to the world, but the blasted thing is running WEP and winds up killing her access to the 'net!

Before you say, "Just set a preferred AP to connect to", I'll inform you that I did that on day one. Furthermore, I know the laptop is not fux0red because I used it without any trouble in Wisconsin on four different APs - and also have used it at GWU and a friend's apartment with no problem. Here at home, though, this "3G-Wireless" station is being greedy. KisMAC doesn't list a known manufacturer for the station and I suspect it's doing more than just snatching with our connection to my base station because periodically ALL THE APs in the area disappear from OS X's list. Interference, indeed. The only way to get them to reappear is to sleep the machine and wake it again.

I'm going to put up a notice to see who's running the AP in the hopes that I can take a look at it and fix the bloody thing! Losing a connection every five minutes really tries one's patience.

Has anyone else had the problem of an AP being "greedy" and trying to serve you when you're already being served?

Posted by reds at 01:21 AM | Comments (2) | TrackBack (0)
Friday | 2004.04.16

Thursday Update

I've decided (with a little prodding) to just post the summary I wrote for my boss.

The Condor conference is going quite well. Today consisted of several tutorials, several somewhat technical descriptions of some new Condor capabilities (mostly involving batch computing across grids much larger and more complex than ours) and a discussion of Condor on Windows (there were several discussions; I chose this one because it seemed most pertinent to RAND's grid).

During the tutorials, I learned some tips and tricks that may make writing the config files slightly easier and more powerful, as well as
how the "preprocessor" in Condor reads in the config files (more precisely, how it evaluates the macros). I received a helpful refresher of the many states a job can be in (matching, running, suspending, preempting, killing, etc). I picked up a tip for making authentication-required grids more manageable (something I think I'll pursue - making authentication required for submitting jobs) and another couple on how to debug config errors.

During some of the talks, I began to have second thoughts about the general closed architecture of our grid, but then didn't seem to think it was all that bad when I discussed other Windows grids with a group ofabout 10 other conference attendees and Colin Stolley. Micron had a rep here who manages a grid of 10,000 nodes and University of Cambridge had a guy with 900 nodes. Both used different approaches, but the Micron one seemed best suited to us (we're not managing a lab of network-booted identical computers in a student lab).

I learned in depth how Micron manages their Condor installs (it's all tied into Active Directory - which I think RAND now uses) and may want to explore deploying Condor in a similar manner at RAND. His approach certainly scales - I mean 10 THOUSAND nodes!

Red Hat has apparently fallen out of favor with a lot of people now that the "Red Hat" distribution proper is done, with Fedora and its server something replacing it. As commercial dists go, SuSe seems to be the preffered choice. A research group in Tokyo I spoke with is using it in conjunction with Debian (they use SuSe where the support is required - 'production servers' - and Debian on 'research workstation' machines). RAND may want to consider a similar tack; Condor is looking to change which Linux it builds on and our relatively small grid isn't going to pull a whole lot of weight compared these big, thousand node deployments.

I learned of a couple different pieces of software that will detect what software is installed on a client machine. The upshot of this is you can use the script to build machine-specific config files that define macros that can be used in a job submission to determine which machines a job can run on. Assuming Micron would share their detection scripts, or the Condor-supplied tool will work (currently an open question - I have to do some research) this would allow us to run SAS jobs on the grid. I know this will make more than just a few people's mouths water.

That's all, I think.

Posted by reds at 02:36 PM | Comments (0) | TrackBack (0)
Sunday | 2004.03.21

Miscellaneous Tips & Tricks

This is a long entry, so I'm going to hide it from the main page. Read on to learn how to get WEP working with your Mac OS X client (rediscovered last night while setting up wireless for some friends) and how to get multiple output source mixing in Linux with ALSA.

Okay, when setting up wireless in OS X with a third-party access point there is a trick to getting WEP to work that's not really documented. I discovered this after wasting an hour using the key that was selected as the "default key" in my Netgear access point. When you are prompted to enter your WEP key, choose the hex option and then enter the FIRST WEP key that is listed on your access point's configuration web page. To simplify the entry of the WEP key itself, you can copy the key from your browser into Textedit, select the key and then drag that selection into the OS X key entry dialogue box. With the latest OS X, you shouldn't put a $ sign before the 26 character long alphanumeric key (like you used to have to do). Easy peasy.


The other tip of the day is a to enable multiple applications to play sounds to your sound card in an ALSA environment. The problem is this: only one application can normally play a sound at a time. This means that if you're listening to a MP3, you can't hear the beep indicating you have new mail.

You might be tempeted to say, well just use aRts (KDE's mixing engine of choice) or some similar mixing system. Well, okay, but then if you have an application that doesn't use aRTS (like mplayer), then you won't have any sound from your mixing system while mplayer is hogging (blocking) the sound card.

Enter a built-in, little known feature of ALSA called dmix (direct mixing). This is mixing software that's been written right into ALSA. There's an example of how to enable it on that page that makes it seem a bit difficult, but I found it was much easier than I expected. Debian had already created a pcm.dmix section in my /usr/share/alsa/alsa.conf configuration file. It looks like this:

pcm.dmix {
        @args [ SLAVE FORMAT RATE ]
        @args.SLAVE {
                type string
                default "hw:0,0"
        }
        @args.FORMAT {
                type string
                default S16_LE
        }
        @args.RATE {
                type integer
                default 48000
        }
        type dmix
        ipc_key 5678293
        ipc_key_add_uid yes
        slave {
                pcm $SLAVE
                format $FORMAT
                rate $RATE
        }
}

Therefore, all I had to do was change the pcm.default section to look like this:

pcm.default {
        type plug
        slave.pcm "dmix"
}

and add the following block:

ctl.dmix {
        type hw
        card 0
}

Voila! I can now play multiple songs (for example, one in mplayer and one in xmms) and have them magically mixed for me. Plus, when I receive new mail, the beep gets mixed right in with everything else!

Posted by reds at 05:30 PM | Comments (0) | TrackBack (0)
Friday | 2004.03.19

Fancy-Pants New Computer

I'm in the mood for a newer machine. Unfortunately, I'm going to have to wait. Not only do I not have money for this, I'm saving (well, trying to save) for an aluminum PowerBook. That doesn't stop me from looking, though. Here's what I would build if someone forced computer-only cash in my hand (Since I already have a decent computer, I only need to upgrade these core components):

MSI K7D MASTER Dual AMD Athlon MP $185.00
2x AMD Athlon MP 2400+ 2.0GHz Socket A CPU $280.00
512MB DDR266 PC2100 CL2.5 ECC Reg Double-Row     $120.00
Total:  $585.00

For the curious, I already have a nice video card (Chaintech GeForce FX 5200 based w/ 128MB DDR & DVI), disk subsystem (Adaptec AHA-2940U2W w/ an Atlas 10k III & an older 9GB IBM drive) and two monitors! I would need to buy a new sound card (mine's *gasp* ISA), but that's not a really significant cost.

Note to self (19 May 2004):

Gigabyte GA-7DPXDW-P $180.00
2 AMD Athlon MP 2400+ $218.00
512MB PC2100 DDR ECC Registered    $149.00
Total: $547.00

Another note to self (21 May 2004):

MSI K8T Master2 FAR $210.00
1 AMD Opteron Model 240 $190.00
512MB PC2700 DDR ECC Registered    $160.00
Total: $560.00
Posted by reds at 01:07 PM | Comments (1) | TrackBack (0)
Thursday | 2004.03.18

Microsoft Portable Audio/Video Device

So, Slashdot has a blurb about MSFTs "iPod Killer" Readied for Europe. I can't help but wonder who Microsoft thinks they're servicing with this development. I mean do they really think that people will tote around this rather large video device on their commute to work so they can watch a movie? What is their obsession with portable video, anyway?

To answer my rhetorical question, I suppose it is the next logical technological step forward from audio. Whether it's a natural successor to useful portable devices, though, is another question. I think these portable video people really need to get out of their technological shoebox and think about the question "Do people really need/want portable video?" I think the answer is a resounding no, but that's just me.

Posted by reds at 03:32 PM | Comments (0) | TrackBack (0)
Tuesday | 2003.12.09

Stylistic LT Approach

So, I've figured out how I'm going to do it. Rather than have one large internal flash disk with the whole system on it, I'm going to use two flash disks. This way, I can keep the the system's root filesystem on my PC and won't have to disassemble the whole unit every time I want to update the system software.

I could perform updates from the device itself, but that wouldn't allow me to manually strip things down before sticking them on the flash. Also, it would require more writes to the flash than just periodically updating everything at once. As if those weren't enough reasons, in the event of any failure on the handheld I probably wouldn't have a well-maintained, accurate backup tree on my PC.

This approach does mandate that I either disassemble the unit to upgrade the kernel, or update said kernel from the device itself, but I'm not particularly bothered by this. First off, updating the kernel is actually quite simple - basically involving nothing more than using lilo to write the MBR with a couple of new files. And since it's much easier for me to create those files on my PC, I will always have them there in case something goes wrong on the handheld. Keeping four files in sync across the two devices is much easier than a whole filesystem full of files.

The setup will look like this:

Tonight I'll stop by CompUSA and buy a PCMCIA comact flash adapter. I can't seem to find the little 8MB card that came with Jenny's digital camera, so I'll probably buy one of those, too. Then, my goal for tonight is to build a functioning initrd image to mount ("pivot") the root partition to the PCMCIA adapter compact flash card. I'm hoping this will go quickly and I'll have time to start building my root filesystem. At the very least, I'd like to have a shell up and running on the LT by bedtime (which is early tonight).

Posted by reds at 02:40 PM | Comments (3)

Fujitsu Stylistic LT

As you may have seen a while back, I had purchased a Compaq iPaq that was going to be the platform for my audio remote control application. I changed my mind; the iPaq's screen was really too small to be of any practical use. You basically couldn't view any web pages except the scaled down front page of Google. The concept is still good, though, so a replacement was in order.

I sold the iPaq on eBay (for more than the purchase price, mind you) and used the proceeds to purchase a used Fujitsu Stylistic LT. It's old, slightly beat up hardware, but it works. Last night I successfully removed its miniature 4GB hard drive and booted it with a linux kernel (2.4.23, if you must know) off a 128MB compact flash card. Tonight, I'm going to build its file system (I think I'm going to use initrd for this) and try to fire up X.

When I get everthing working, I'll make a small HOWTO page and link it from here.

Posted by reds at 08:51 AM | Comments (5) | TrackBack (0)
Monday | 2003.12.08

A Normal User's Linux Experience

As you all know, I put YDL on Jenny's G3. It's gone pretty well, but I now have a true appeciation for the fact that linux ain't ready for prime time desktop use.

First, off, a little about my usage habits: I've used linux for the past 5 years, or so. I'm a Debian guy, who uses blackbox as a window manager. For the less informed, that means that I don't use any desktop environments like KDE or Gnome. I don't have a "desktop" that I can put files and icons on. Although I remember being slightly unconfortable with this 5 years ago, it didn't take me long to realize that I really prefer it this way. Even when I'm on a Mac or Windows, box, I keep the desktop very clean and only use it as a very temporary way-point for files (usually archives). I have four virtual desktops, but no little graphical indicator to spatially align them. I like to think of mine as four in a linear row, but that's just my mental model. They are in no way actually linked to one another.

Jenny, on the other hand is most comfortable on a Mac. She likes her desktop (stores basically all of her stuff on it) and is pretty uncomfortable with multiple desktops. I've got her using them, but it's only on a trial basis. If she says no next week, then they're out of the picture. She uses Windows at work, but doesn't like it at all; I have to agree with her, it's nowhere near as elegant as MacOS. Needless to say, she's not super pleased with linux. She enjoys the stability, but that's about it. To look at the good and the bad, we really have to go on an application by application basis:

Posted by reds at 03:46 PM | Comments (1) | TrackBack (0)
Saturday | 2003.11.22

YDL on Jenny's G3

So, after much frustrataion with Mac OS 9.2.2 on Jenny's laptop (Lombard G3; bronze keyboard) it was decided that Linux should be installed. That's right, Jenny agreed with me that it'd be worth a shot to see whether she'd be happier using Linux.

The prime problem was that the network card she's using (a wireless 802.11b job using third party drivers) would hang every few minutes. It wasn't ridiculously bad in OS 9.1 (every half hour, or so), but when I upgraded her to 9.2.2 it would barely work for a few minutes. Bad news.

So, out came Yellow Dog Linux. The installer is sweet: very easy and surprisingly featureful. It's apparently just Redhat's Anaconda program (screenshot). Let me tell you, Linux installers have come a long way if this is now considered the standard. I always thought Debian's text based installer wasn't so bad, but this new stuff is a whole lot nicer than even the Windows installer!

I'm a little bit wary of using a Redhat based OS, but it's looks as if the folks over at Terra Soft did a very nice job of making everything appear as one system (KDE and GNOME co-exist). For Jenny, who could care less about the differences between the two environments, this is very important. I sure hope that everything plays nicely. I also chose YDL because I really don' t have the time right now to tweak out a Debian install to be perfectly user-friendly.

Ooh! It's up. Whoo, slick initialization. Hey, it's a lot faster than Mac OS! Hardly a surprise, but nice to see that this older hardware can still keep up! Okay, off to bed.

Posted by reds at 12:35 AM | Comments (0) | TrackBack (0)
Tuesday | 2003.11.04

A Question: How Do You Choose Your Music?

Okay, so you decide it's time to listen to some music. How do you choose what to listen to? If you're dealing with CDs, do you just open up the case and start browsing? Do you think of what genre you want to listen to and then try to find it? Do you usually think of an album, band or track? Do you choose your music all of these ways?

I'm trying to think of a design for the interface to my music server project (i.e. personal programming tutorial). I think a user should be able to search for a string in a group's name, album title & song title, or some combination of the three (checkboxes). When browsing albums, I think I'm going to take a TiVo-like tiered approach, offering to limit the browse list first by genre, maybe by alphabet. I'm also struggling with the differences between classical albums and popular music. Classical music is typically arranged quite differently from pop, or jazz.

In classical, you first think of the composer, then the piece, then the performer (e.g. Philadelphia Philharmonic). With pop, you think of the group, then the album, then the track. With jazz, you think of the primary/featured artists, then the song, then, maybe, the album.

So many choices. How should I constrain the user so that I don't obliterate him/her with choices?

Posted by reds at 08:32 PM | Comments (0) | TrackBack (0)
Saturday | 2003.11.01

Dual Head Computing Comes to #1109

Dual Head Setup
Well, well, well. The dual ouput nVidia FX 5200 based card (vendor) I ordered came on Friday. I set it up then, but wasn't happy with the way I had it configured. In my first attempt I tried an X config that had the screens acting as one large one. Not only did it make my window manager look funny, but there was weird corruption in the display that looked like memory errors on the video card; probably a driver bug.

I was about to return the card, but figured I'd try out a setup that treats the two monitors as separate displays (the only drawback being that you can't drag windows from one screen to another - something it turns out I don't want, anyway). FYI, this is described in Appendix R of nVidia's XFree86 documentation.

So, just now, I finally got my window manager setup properly to handle the two screens and let me tell you, this is fucking amazing. I can now keep documentation and lesser-used crap on the old monitor, while keeping my main apps running with less clutter on the new (huge) flat panel. Also, with this configuration, there hasn't been any corruption of the screen! I'm keeping my fingers crossed.

Posted by reds at 08:39 PM | Comments (0) | TrackBack (0)
Monday | 2003.10.20

Birth of an Audio Server Project

iPAQ 3850

So, I have a new project. As you may have guessed, I need to learn C++ - for me, for grad school. To aid in this process, I've purchased a few text books. To help kee me motivated, I've decided to implement a project I've been thinking about for some time now. Of course, this project larger is than I can probably handle, but whenever it finally gets finished it will be way cool to use.

The project is a variant of what many are already working on: a music server. The special feature of this music server will be its interface. As you can see in the picture, I have purchased a slightly used iPAQ handheld computer (model H3850) from a local guy who was selling it through craigslist. It came with an 802.11b wireless CF card. This means that I now have a color device with 240x320 pixels to display my little application that will control the music being streamed from a server to a little device in the stereo rack. In less technical language, someone with too many CDs to keep track of will be able to store them on a computer (probably in the Ogg Vorbis format) and control their playback from the comfort of anywhere within reach of their 802.11 wireless network.

My key design criteria is a very accessible interface, one that my parents would have little or no trouble learning. At the same time, I want to allow those so inclined to readily change parameters and file formats (to use MP3, for example).

If you'd like to help, I'm probably going to be setting up a CVS server rather soon - after I actually have started learning something of C++. Right now, I'm planning to start with the GUI so that I get a good idea of what application code needs to be put in place. If any of you sage programmers care to comment on this approach, I'd really like to know if this sounds heinously wrong.

Posted by reds at 11:00 PM | Comments (0) | TrackBack (0)
Thursday | 2003.09.25

LyX is Wonderful

I've begun to write my research goals, as a first step to actually writing applications. The program I'm using is called LyX - it's sort of a user-friendly front-end for LaTeX. It's a very simple and elegant interface and really does let me focus on what I'm writing. It's amazing. Did I mention that it can also run natively on Mac OS X?

I've been looking for a tool to let me do "word processing" in Linux and this is definitely my ticket. Sorry AbiWord (buggy) and OpenOffice (slow & ugly), I'm no longer in the market for a word processor, I'm going to be "document processing" from now on.

Posted by reds at 08:34 PM | Comments (0) | TrackBack (0)