OBTAINIUM
Guest Menu
login
Obtainium


justfred
Photo Gallery
Contact
Resume
Pinzgauer
Genealogy
Roadside Furniture
This or That

programming
Source
Help

Archived Entries
Macworld
  (2008-01-17 10:55:00)
Another reason not to vote for Hillary
  (2007-12-03 21:23:00)
Hard Drive Jukebox
  (2007-11-01 15:29:00)
All hallows
  (2007-10-31 16:10:00)
Apple Mail Signature Export
  (2007-10-31 11:13:00)
You have been eliminated
  (2007-10-29 14:42:00)
Blog Action Day - Environment
  (2007-10-15 10:55:00)
Spacebar
  (2007-09-24 14:40:00)
Wow of the day - Google Maps for Treo
  (2007-08-15 16:21:00)
"whizgiggled"?
  (2007-08-06 11:06:00)
How not to design the user experience
  (2007-08-02 10:29:00)
Contact Info Changed
  (2007-08-01 09:27:00)
iSwag
  (2007-07-26 12:33:00)
Your post very interesting, on it is what is not present on other sites. ;)
  (2007-07-24 19:57:00)
Tell me your secrets
  (2007-07-16 11:34:00)
iPhone and AT&T
  (2007-07-10 14:43:00)
Keepsakes and other stuff
  (2007-07-10 10:57:00)
Nokia 770 Internet Tablet
  (2007-07-09 11:24:00)
The mechanic's car is always the last to be fixed
  (2007-07-09 11:15:00)
Beer Snob Disclaimer
  (2006-09-27 21:05:00)
Wikitravel
  (2006-09-27 20:51:00)
Blogspam
  (2006-09-22 14:31:00)
Survivor South Pacific?
  (2006-09-20 13:50:00)
Godzilla
  (2006-09-20 11:34:00)
Gratuitous Self-Linking
  (2006-07-09 19:13:00)
Forever Stamp
  (2006-05-04 08:10:00)
Response
  (2006-02-17 10:14:00)
I hate iTunes
  (2005-12-23 18:30:00)
New Phone, New Phone Company
  (2005-12-12 14:31:00)
Up and Running
  (2005-11-14 15:33:00)
Complain, complain
  (2005-10-20 00:00:00)
So Long, Scooter
  (2005-08-16 00:00:00)
Hints
  (2005-07-11 18:22:00)
Very Strange Sims.
  (2005-07-08 20:08:00)
Stock Tip Spam
  (2005-07-06 14:47:00)
Mac on Intel
  (2005-06-07 09:48:00)
People who are on my list
  (2005-05-27 08:29:00)
Remember, Tuesday is Soylent Green day
  (2005-04-05 15:00:00)
St. Patrick
  (2005-03-17 14:05:00)
Special VFR
  (2005-03-10 13:04:00)
I Follow Roads
  (2005-03-02 17:17:00)
Standard USB Cables
  (2005-03-02 16:42:00)
Teachers
  (2005-03-01 14:29:00)
Sleep Mode
  (2005-02-28 09:28:00)
Hackers and Crackers, Phreakers and Jackers
  (2005-02-25 15:12:00)
Open Minded
  (2005-02-22 13:07:00)
Albatross!
  (2005-02-06 14:55:00)
Aspirations
  (2005-01-18 21:49:00)
e-scammerce
  (2005-01-17 12:38:00)
Projects
  (2005-01-11 18:10:00)
Bicycling from Colorado
  (2005-01-04 11:55:00)
Adventure Theme Park
  (2005-01-03 13:18:00)
Spoilage Sensor
  (2004-12-02 11:35:00)
Device Proliferation
  (2004-11-30 22:38:00)
Debits and Credits
  (2004-11-30 21:01:00)
six seven charlie
  (2004-11-29 13:44:00)
Supermarket
  (2004-11-23 12:22:00)
Nixie Tubes
  (2004-11-16 23:03:00)
Abandoned Furniture
  (2004-11-16 22:47:00)
Yeah, I'm here
  (2004-11-16 22:29:00)
Skype
  (2004-10-06 08:15:00)
Time passes
  (2004-09-23 21:41:00)
040827.1047 Bretram's Brewery, Salmon, ID.
  (2004-08-28 20:04:00)
040825.1103 Route 95, Idaho
  (2004-08-26 12:20:00)
040824.1856 Wolf Lodge West, Spokane WA
  (2004-08-25 08:21:00)
040824.1202 Winthrop, WA - Winthrop Brewing Company
  (2004-08-24 13:27:00)
040819.1651 Bainbridge - Seattle Ferry
  (2004-08-20 16:59:00)
040818.1044 Kalaloch Lodge, Olympic Peninsula, WA
  (2004-08-18 14:05:00)
040816.1140 *$ NE Portland
  (2004-08-17 12:29:00)
040814.0954 Route 101 Restaurant, Florence, OR
  (2004-08-14 10:31:00)
040813.1522 El Sombrero, Coos Bay
  (2004-08-13 15:22:00)
040812.1852 Humboldt Brews Taphouse, Arcata
  (2004-08-13 10:09:00)
Artios
  (2004-08-11 10:16:00)
Lightbulb Jokes
  (2004-08-11 07:45:00)
040810.1138 North Coast Brewery Taproom, Ft. Bragg
  (2004-08-10 15:41:00)
040809.1823 Gualala, CA
  (2004-08-09 19:25:00)
040808 Sunday
  (2004-08-08 08:08:00)
040806.0746 Oakland
  (2004-08-06 10:27:00)
Photos
  (2004-08-05 09:43:00)
040804.2004 Sardine Factory Monterey
  (2004-08-05 09:40:00)
040804.1354 Gorda
  (2004-08-04 18:54:00)
Wednesday 040804 - Cambria - Out of Range
  (2004-08-04 12:29:00)
Tuesday 040803 - SLO Brewery, San Louis Obispo
  (2004-08-03 20:08:00)
First to leave for Burning Man
  (2004-08-03 15:04:00)
The Story So Far
  (2004-07-29 11:37:00)
New digs
  (2004-06-23 16:47:00)
SQL Server mini-rant
  (2004-06-23 09:23:00)
The argument that would not die
  (2004-06-15 12:26:00)
Banana Republican
  (2004-06-11 11:15:00)
You're still here?
  (2004-06-08 17:55:00)
Comments
  (2004-05-21 16:16:00)
I don't do Windows
  (2004-05-20 10:02:00)
T-shirt Origami
  (2004-05-19 14:29:00)
Technology Consultant
  (2004-04-29 15:29:00)
Home Automation
  (2004-04-15 22:38:00)
Spring Forward
  (2004-04-05 10:20:00)
Poisson d'Avril
  (2004-04-01 09:58:00)
Spam, by George!
  (2004-03-30 11:55:00)
Pop a cap
  (2004-03-29 11:08:00)
Dis shizzle is f'd up
  (2004-03-23 12:02:00)
To always move forward
  (2004-03-18 14:58:00)
Not as good as the book
  (2004-03-03 14:58:00)
Between Iraq and a hard place
  (2004-02-26 15:19:00)
Bourbon Street Sambadrome
  (2004-02-24 09:53:00)
Green Hornet
  (2004-02-19 19:39:00)
When they pry it from my cold dead fingers
  (2004-02-19 11:39:00)
Friday the 13th
  (2004-02-13 10:52:00)
Dishwasher Salmon
  (2004-02-10 15:00:00)
Welcome to 1984
  (2004-02-03 11:49:00)
Isle of Survivor
  (2004-02-02 11:10:00)
Your needs, your needs - what about MY needs?
  (2004-01-30 14:50:00)
Yet Another Virus Alert
  (2004-01-26 23:11:00)
Computergate
  (2004-01-23 11:50:00)
Considered Harmful
  (2004-01-23 11:40:00)
Wherefore
  (2004-01-18 21:22:00)
Burning Man 04
  (2004-01-16 14:33:00)
Blame it on Wal-Mart
  (2004-01-14 18:55:00)
If more people used Macs
  (2004-01-13 17:01:00)
Book 'em
  (2004-01-09 12:13:00)
NPR Math
  (2003-12-30 16:03:00)
Device Hell
  (2003-12-24 10:35:00)
Writing Guilt
  (2003-12-22 17:26:00)
gps
  (2003-12-11 13:17:00)
html word processor
  (2003-12-08 17:03:00)
Headphones
  (2003-12-04 12:07:00)
Do What I Mean
  (2003-12-01 13:09:00)
Job Interview
  (2003-10-15 11:49:00)
No wonder I feel so peaceful
  (2003-10-13 09:50:00)
Tell me where I can put this
  (2003-10-10 12:28:00)
Off in all directions
  (2003-10-01 09:45:00)
Copying
  (2003-09-09 12:34:00)
Been a long time
  (2003-09-02 10:45:00)
PC Technician
  (2003-07-23 10:55:00)
We must be crazy
  (2003-07-07 16:03:00)
I met Larry Flynt
  (2003-07-02 12:55:00)
I met Randy Fry
  (2003-07-02 10:48:00)
Cigars
  (2003-06-18 17:14:00)
Mail
  (2003-06-18 10:02:00)
Music Rights
  (2003-06-13 11:49:00)
Business Card Cubes
  (2003-06-10 09:59:00)
100 things
  (2003-05-06 17:44:00)
Apple Music Store
  (2003-04-28 17:49:00)
Back in Business
  (2003-04-23 15:11:00)
Iraqi freedom? How about tax freedom?
  (2003-04-15 13:43:00)
Yamaha papercraft
  (2003-04-14 15:07:00)
Analogy of the Day
  (2003-04-10 15:06:00)
Stories
  (2003-04-10 11:24:00)
Statues
  (2003-04-09 09:38:00)
Welcome, Lydia!
  (2003-04-03 15:49:00)
Aint life grand?
  (2003-04-02 16:15:00)
SB 708
  (2003-04-01 20:48:00)
AJR 15 (?) - Support of Troops and Bush
  (2003-04-01 20:43:00)
The more things change...
  (2003-03-26 11:32:00)
Pictures, Pictures Everywhere
  (2003-03-17 13:01:00)
Repetitive Motion Disorder
  (2003-03-14 14:03:00)
IIS Insanity
  (2003-03-06 16:44:00)
Diet Mountain Dew
  (2003-03-05 22:37:00)
Math Question
  (2003-03-05 10:37:00)
You found me!
  (2003-02-20 11:47:00)
Fry's
  (2003-02-18 10:12:00)
Sometimes W and Y
  (2003-02-14 15:20:00)
Dude...
  (2003-02-10 14:12:00)
Hello?
  (2003-02-10 10:17:00)
Address server
  (2003-02-03 16:49:00)
Virus alert (not)
  (2003-02-03 16:36:00)
Sucking sound
  (2003-01-13 11:58:00)
New powerbooks
  (2003-01-07 21:35:00)
More spewage
  (2003-01-03 09:58:00)
Old Mans War
  (2003-01-03 09:51:00)
Nucular
  (2003-01-02 14:38:00)
Merry Christmas
  (2002-12-23 12:56:00)
How much is a billion?
  (2002-12-17 11:59:00)
Instant Cluster
  (2002-12-04 12:02:00)
Pictures!
  (2002-12-02 10:40:00)
California Coastline
  (2002-11-12 14:01:00)
Creative financing
  (2002-11-06 10:04:00)
Yo he votando...y usted?
  (2002-11-05 19:27:00)
More Annoying Ads
  (2002-10-29 09:30:00)
With Any Hardware Purchase
  (2002-10-21 11:29:00)
Can someone please explain this to me?
  (2002-10-18 21:23:00)
Wardriving
  (2002-10-18 09:31:00)
Usable Help
  (2002-10-15 09:32:00)
Apple Developer Connection
  (2002-10-09 23:13:00)
Virus Alert
  (2002-10-08 08:34:00)
Archive Entries
  (2002-10-03 20:57:00)
Millionare
  (2002-10-03 19:26:00)
YES NO ALWAYS NEVER
  (2002-10-03 15:38:00)
Do you want to save?
  (2002-09-28 11:43:00)
UI Rant - Contextual Menus
  (2002-09-26 15:25:00)
Burning Man 2002 Pictures
  (2002-09-04 14:38:00)
Do you want to restart the computer now?
  (2002-08-23 08:53:00)
Burn
  (2002-08-21 22:26:00)
Archive
  (2002-08-19 16:51:00)
Email hassles
  (2002-08-19 16:20:00)
OSX Terminal
  (2002-08-06 18:04:00)
Powerbook Suggestions
  (2002-07-27 13:52:00)
Beach Burn Raided by Terrorists
  (2002-07-23 21:24:00)
Microsoft Upgrade Disadvantage
  (2002-07-18 11:48:00)
Your Papers Please
  (2002-07-18 11:35:00)
"conversation with Safeway"
  (2002-07-12 13:23:00)
Caffienated Soap
  (2002-07-12 12:35:00)
Quiet Week
  (2002-07-09 18:33:00)
Phonetic Alphabets
  (2002-07-02 12:13:00)
Ward Cleaver Day
  (2002-07-01 09:29:00)
Diet Mountain Dew Code Red
  (2002-06-27 11:58:00)
Firewire Disk Mode
  (2002-06-27 11:25:00)
And speaking of religion...
  (2002-06-26 16:02:00)
Separation of Church and State
  (2002-06-26 13:23:00)
Got Obtainium?
  (2002-06-26 09:55:00)
Family Medical Leave Rant
  (2002-06-26 09:31:00)
I Predicted It First!
  (2002-06-24 14:35:00)
Parking
  (2002-06-21 15:41:00)
NPR
  (2002-06-20 11:30:00)
Trailmate
  (2002-06-20 09:45:00)
MP3 Player
  (2002-06-13 13:07:00)
Money
  (2002-06-13 12:07:00)
Media Ownership
  (2002-06-13 11:22:00)
Good idea, boss!
  (2002-06-12 17:59:00)
Fireworks
  (2002-06-12 10:28:00)
Stingrays
  (2002-06-12 00:18:00)
Eclipse
  (2002-06-09 21:00:00)
Welcome
  (2002-06-09 20:00:00)

obtainium blog

Moving boxes2008-10-27 11:49:00
 Advice for moving, having helped someone else last 2 weekends: Go to Uhaul (or the used box place) and buy some boxes. Same-sized boxes (or at least, only 2 or 3 sizes) - not Heinz 57 variety of old boxes that don't match and smell like cat pee. Fill the boxes (preferably with similar contents that can be labelled, for your own sanity). Get some standard labels and put them in the same place on each box (top left corner, whatever). Be sure every box is closed and taped and labelled BEFORE you ask a dear friend to pick it up and move it. I can move 5 of these boxes on a hand truck. with the same effort as a single, beaten and torn up old hand-me-down-box with the lid open overflowing with crap. And I don't have to look at your mess as I move it. A small investment in boxes + closed, taped and labelled == happy friends that might be willing to help you move next time.
 (link) (comments : 0)

Shut up2008-10-16 17:49:00
 Browsers should treat sound on websites like they do popups, and assume they're only slightly less offensive than viruses. For websites that play sound, display a warning, "This website wants to play a sound." followed by my favorite set of options, yes/no/always/never. There would then be an option setting to ask or never ask, and a list of sites for which sounds are allowed (Pandora can go ahead and play).
 (link) (comments : 0)

McCain – time to lay off the mud slinging2008-10-09 11:08:00
 John,

You’ve lost the presidential race. Not you alone, so much as George Bush and the exploding economy. The astonishingly horrible woman you chose as a running mate did not change anything for the better, nor did your insistence on tax cuts for the rich and shameless.

Barack Obama is going to be our next president. It’s all over but the hanging-chad-counting. (That is, assuming your friends at Diebold haven’t set up yet another November Surprise – that would be even less believable than last time.) Come January we’ll be swearing in "that one". It’s time for you to take the high road and stop smearing our next president.

The skeletons in your closet are a lot bigger than Barack’s, John. Ayers? How about the Keating 5 and G. Gordon Liddy? Why do you think haven’t the Democrats brought these up more often? Maybe it’s because they’re trying to lead a civil, positive campaign, while constantly defending themselves from your incessant, petty negative attacks.

The best thing you could do right now is frame your campaign as positive goals for the country. Remind Barak of the other 40-some percent of the people he’ll be presiding over. Remind the country that even though you’re not going to make it, the rest of your supporters: the gun-nuts; the anti-abortion nuts; the anti-gay-marriage nuts; the oil barons and the trust-funders who think taxes are for the plebeians; the self-righteous, hate-filled, intolerant jesus freaks; and everyone else who has a PAC supporting your campaign, will need some lovin’ after the election. Just because they’re wrong, doesn’t mean we should ship them all off to Alaska or something – though if they want to go on their own, it appears they’d be welcome, at least in the big cities. But contrary to W’s example, the people whose party did not win the election deserve representation as well.

Come November 5, your political career will be over. Why not end it on a positive note? Reach across the aisle one last time and give Barack a hand up, instead of taking a vindictive last swing at him. If you can do this, I promise – we’ll all vote for you for "Miss Congeniality".

Sincerely,

A Patriotic American.

 (link) (comments : 0)

Types of Comments2008-07-30 12:30:00
 

One of the most neglected features of programming languages is the comment system. Not that there isn't discussion of the nature of programming comments - people are endlessly pondering how many comments to use, how to write code that's "auto-commenting",

As I see it, there are three major categories of program comments: descriptive, to-do, and comment-out. Programming languages should support native ways to differentiate these types of comments; none that I know of does and most don't have very many styles of comment at all.

Descriptive comments are the standard, and the ones everyone talks about. They include program "headstones" that describe what the program is supposed to do, inputs/outputs, log history of changes, etc.

/*
program: whatever

revision history:...

author:...
*/
...
//this function turns a 6-digit date string into a unix date
...
$foobar = $foo ^ 2 / $bar; //standard accounting forumula

To-Do comments are dropped into programs while you're working on - a "note to self" about something that needs to be fixed, or might be a problem later. I use php-style hash comments for these, but most languages don't support different styles of comments, so I do a standard comment followed by a hash (//#!error or REM #?values should be global, for example). I use #! for action items, things that are likely to crash if they aren't fixed, #? for things that probably should be fixed but probably won't cause a crash. Then before a program is released, I can look for #! that must be fixed, or #? that need attention. Finally, I also use to-do style comments for printing/hiding debug messages while I'm working on the code; before release these should be removed.

#!this will fail if we get more than 10 users
#!divide by zero error
#?will a salesman ever sell more than 10,000 items?
#?this code is ugly, could be refactored
#echo "$user : ".print_r($user, true);

Comment Out are comments that are applied to actual code, to disable it while leaving it in place. Sometimes this is to test different methods; sometimes it's no longer used but you're keeping it for reference; usually you're trying taking it out to see what it does. In PHP I use # for these, to differentiate them from descriptive // comments.

#old version
#$foobar = $foo ^ 2 / $bar; //standard accounting forumula
#new version, double the results
$foobar = 2 * ($foo ^ 2 / $bar) ; //standard accounting forumula
...
/* Removed: we no longer need user ID
    $user_id = lookup($user_value);
    if ($user_id = 0) {
        $user_id = request_from_server($user_value);
    }
*/

I tend to like descriptive comments to be lined up with the code, and todo/comment-out shifted to the left so I can see them when I'm looking through the code:

                //loop through users, capitalize their names
                foreach ($users as $user) {
#echo "$user : ".print_r($user, true);
                    $user->name = ucase($user->name);
#don't ucase user address
#                    $user->address = ucase($user->address);
#!user phone number needs to be parsed
                }
Code editors that auto-indent code (Visual Studio) and langauges that are indent-dependent (Python) defeat this strategy.

 (link) (comments : 0)

Buddhaphone2008-07-08 10:48:00
 Yes, I'll be getting an iPhone 2.0 (or as I'm choosing to call it, hoping it will catch on, the "Buddhaphone") but not this weekend when it first comes out, because I have to wait for my Verizon contract to run out at the end of the month. In the meantime, I'll probably download the new software for my iPod Touch.

The Palm Treo 650 hasn't been bad - with Missing Sync it syncs to my Mac fairly well. Verizon's coverage is great, I'll miss that with AT&T. But Verizon is also about way behind the technology curve; they recently announced and available upgrade to the Palm Centro (the new, smaller version of the Treo) that's been available on ATT for over a year now.

The Palm has convinced me of the value of a smartphone, though, and the new iPhone should go above and beyond that. On a daily basis I use mobile web to look things up on Google and Yelp, and check that websites are working; Google Maps is now indispensable, paper maps to the contrary. The address book is my main reference (especially since it's well-sync'd with my desktop), as well as the calendar, even though I still manage to miss birthdays and other notable occasions. I keep notes - grocery and affinity card numbers, shopping lists, busy day todo lists, ideas for t-shirt slogans ("Mentally Confused and Prone to Wandering"), beers I've tried, medical history... I used to use Pocket Quicken a lot but when my desktop Quicken fell down and couldn't get up it took a lot of my enthusiasm away. I rarely use the camera - and I think people who go around holding up their phones and clicking pictures seem nearly as idiotic as the ones who keep a bluetooth headset in their ear when they're not talking on it. And of course I've got an HP-12C emulator - there's a hacked one for the iPhone as well (and even an HP-16C!) - hope they'll make it to the new iPhone, hacked or not.

I actually read a book this weekend ("Down and Out in the Magic Kingdom" by Cory Doctorow) on my iPod Touch. The battery doesn't last all that long when you've got the backlight on the whole time, and you have to keep swiping the screen to scroll but all in all it wasn't that bad an experience, and you can't beat the portability.

 (link) (comments : 0)

Yelp2008-07-01 14:29:00
 

I signed up on Yelp about a year ago, looked around, didn't find a whole lot of reviews. Recently returned because the guys on the radio were talking about it - and now it seems to be approaching useful mass.

So stop reading here, there's nothing new (by a long shot!) - go to Yelp - read reviews, sign in, write some reviews. Link me as a friend, if you're so inclined - address is fheald at this website's domain name.

 (link) (comments : 0)

Interrupting cow2007-09-28 11:34:00
 
"May I take your order?"
"Yes, I'd like a chicken sandwich..."
     "Do you want the combo?"
Why do they insist on interrupting me to ask me if I want the combo? (A: because that's what management has instructed them to do). If I want the combo, I'll order the damned combo. Otherwise don't interrupt me, just take my order.

At the very least, wait until I've completed my order, to suggest the combo - if I haven't ordered it already. If I order sandwich, potatoes and a drink - don't ask me if I want the combo - the computer should just add it up - why do I care how my order is entered into the computer - if you want to give me a discount for carbs, why ask for my permission? I'm certain the computer is smart enough to figure it out. But even Carl's new automated ordering systems (or as I like to call them, auto-servitrons) interrupt you with the combo question.

Maybe they're just trying to wear me down so I'll always order the combo. I know they hate it whenever someone asks for something removed or changed - which people seem to be more likely to do lately. Ever seen a menu with "no substitutions"? I think that's what they're working towards - you get the fries whether you want them or not, don't ask us for no pickle no onion haf caf double mocha with a twist. Special orders don't upset us, because we just ignore them anyway.

Thing is, I don't eat the potatoes (or rings or fried cheese or even zucchini) anymore. Yes, I could improve my health by not eating in these places at all. But I know from experience that I will just make junk food at home, take longer, and leave a mess in the sink - so I might as well ask for it from a clown instead.

 (link) (comments : 0)

Flag Burning2006-09-22 08:09:00
 "I prefer a man who will burn the flag and then wrap himself in the Constitution to a man who will burn the Constitution and then wrap himself in the flag." --Texas Representative Craig Washington, quoted in Molly Ivins' syndicated newspaper column, June 30, 1997
 (link) (comments : 0)

 

blog.php v070913 database localhost
All materials not otherwise specified are copyleft 2003 Frederick Heald.
This site is created and hosted on Macintosh OSX!