::::: : the wood : davidrobins.com

My name is David Robins: Christian, lead developer (resume), writer, photographer, runner, libertarian (voluntaryist), and student.

This is also my son David Geoffrey Robins' site.

Trip to the Florida Keys

News, Bad Drivers, Photography ·Sunday March 24, 2013 @ 13:35 EDT (link)

Image of
We took a trip to the Florida Keys this weekend, since we'd never been. It was a nice enough experience, but we probably wouldn't do it again. The beaches aren't as nice as the local ones, like Fort de Soto, and it's very touristy, crowded, with all the requisite bad drivers and flim-flam merchants ("SANDAL FACTORY OUTLET!", street vendors hawking crap—I have nothing against street art, just crap), all overpriced and rather tawdry. It's not my kind of vacation and you're not missing much to skip it (and the whole Miami mess, for that matter).

We left Friday evening after I got home from work, and stayed at the Homestead/Miami South Hampton Inn, getting up around 0800 and leaving after the complimentary breakfast. We decided to drive straight through first to spy out the land, all the way to the end of US-1 in Key West. Traffic wasn't too bad, although at points it's down to a single lane and you're at the mercy of the slowest person ahead. The views were beautiful as we drove along, especially when the road curved and it was possible to see beaches and homes on the shore.

We stopped at Higgs Beach in (the town of) Key West (free parking) to get our bearings (and a little earlier at a visitor center to pick up some spam with a few useful maps embedded), and walked around the beach and went into the water for a short while. The Joe Allen Garden Center at the West Martello Tower, maintained by the Key West Garden Club (for donations) was nearby; a real hidden gem and I'm glad we had the chance to go in and walk around a little. I even went back to the car and got my macro lens (105mm AF Micro-Nikkor) to take some better closeups of the various flowers (included above; hover over the picture for navigation/expansion controls; requires Javascript). It was a beautiful day for it, and even without a tripod I was able to get some good shots at f/8 and above.

We stopped for lunch and then drove back along the main highway to Anne's Beach, a small beach a little ways off the road, also rather rocky and with coarse-grained sand like Higgs, so we didn't spend a lot of time; got in the water, swam a little, avoided the seaweed, then continued back. We were on the lookout for key lime pie on the way back, and found Mrs. Mac's Kitchen ("Eat well, laugh often, live long") where we had key lime martinis (I didn't expect them to be so frozen) and I had (my first) slice of key lime pie and Honey had peanut butter pie.

After that we were pretty much headed right back; it was getting late, and we had many miles to go… we got a little snarled up around Miami but got home around 0200 Sunday.

Books finished: Dinosaur Brains, A Fine and Private Place, The Art of Readable Code.

Learning Haskell

News, Technical ·Thursday March 7, 2013 @ 23:47 EST (link)

For the past week or so, I suppose now, I've been learning Haskell—I was in search of "a better functional language" (or, perhaps, more fundamentally, a powerful language, which tends to imply functional or functional additions) to learn or revisit (e.g., Scheme, Lisp). Python recently annoyed me again because of its intentional crippling (no, not the whitespace; that's absolutely great; it's very clean; looking at Ruby again, after a long hiatus, and seeing the dirty proliferation of closing end statements made me shudder a little), which the idiots try to tout as a feature, e.g., restricting lambdas to a one-line expression and not allowing assignment in conditionals. Despite distaste for Java I considered Clojure as a "Lisp with more libraries", but rejected it because it can't do tail recursion optimization (it can fake it; no thanks).

I'm using, unsurprisingly, the Learn You A Haskell For Great Good! tutorial, and I'll probably read Real World Haskell after that. Haskell takes functional programming to a whole new level; although this post, Why I Prefer Scheme to Haskell, makes a good point on the fanatical purity of the language making it difficult to insert trace statements (and here's someone going the other way: Hello Haskell, Goodbye Lisp). I haven't written anything big in it yet, but I may start using it for small utilities here and there at home or work.

Books finished: The Pragmatic Programmer, Code Simplicity.

Camping Survival: trials and tribulations

News, Guns, Economics ·Friday February 15, 2013 @ 20:54 EST (link)

Honey writes:

I ordered the Glock t-shirt for David's birthday on January 23, 2013 and received it on January 30, 2013. I gave it to David for his birthday (on that day) and he looked at it and realized that the Glock logo on the shirt was not correct: parts of the G symbol are rounded instead of square. I called campingsurvival.com (the place that I bought it online) and talked to JoAnn on January 31, 2013. I informed her that I bought the shirt as a gift and that my husband was not happy with it and it I needed to return it. She told me that she had to get in touch with the supplier and that she would get back to me in a day or two. She told me that she had to e-mail them, so that I would know that I may not hear from her until the next day (which was Friday). I gave her until Tuesday, February 4 before I e-mailed Andy (got his contact number via the website). I informed Andy of the situation and his reply was to call the Camping Survival phone number again, and talk to them and that they should be able to handle this return. On February 6th at 12:30 I spoke with Jovi and here are the notes from that conversation:
They need an RMA #, so they are going to contact the supplier, Jovi will talk with JoAnn tomorrow, and if JoAnn isn't in, then Jovi will take care of it.

She should get in touch with me via e-mail in a couple of days!
I never heard back from her or JoAnn, so I decided to call them yet again. On February 11, 2013 I called campingsurvival.com again and spoke with Jovi; she asked me if I had heard back from JoAnn and when I said no, she asked me to hold a minute. She came back and said that JoAnn was on the phone at the moment, but that she would talk to her when she was finished. Jovi also told me that if JoAnn hadn't heard anything from the supplier that she would personally call them and get back to me today. I finally received an e-mail from her stating that the supplier does not do returns, but that they would do an exchange. So I called Jovi back and finally told her the reason that I was returning the shirt. I explained to her that it shouldn't matter why I wanted to return it, but that since it did matter, I told her that the Glock logo on the T-shirt is not correct and that it was not as advertized (the picture on the web site had the correct logo) and if they would not take the return that I would have to charge it back on my credit card. She asked me to hold again and came back a couple of minutes later telling me that "You never told us that was why you wanted to return the shirt" and I explained that it shouldn't matter (and their web site return page didn't say anything about a reason), but since they wanted to know I did explain the problem. She informed me that they would accept the return and she asked me if I had to correct address; I repeated the address from the invoice that was sent to me via e-mail and she said that was the correct address. She told me that they would determine if the T-shirt was as advertized or not and that if it was I would be reimbursed for everything but the original shipping costs and that if the T-shirt was determined to be as advertized that I would be responsible for the 5% fee for the return.

I informed Jovi that I would be sending the shirt back and asked what information I should include (I told her that I do not have a printer and that I was going to include a note and asked what to put on it). She told me that I should tell why I'm sending the shirt back and put the packing slip number on the note. She said no other information was needed because she was putting the notes down in her computer on the invoice. I told Jovi that I was going to be putting a tracking number on this package so that I would know when they received it. I asked if I would be e-mailed about the decision once the shirt was received back at their store and she told me that yes I would receive an e-mail telling me what the decision is about whether the shirt is as advertized or not!

20130215: I received an e-mail from Tim at campingsurvival.com stating that the T-shirt was as advertized and that they were crediting my card the price of the shirt minus 5%.

I wrote Tim back informing him that the shirt was not as advertized because the shirt logo on the website was different from what was actually on the shirt. I also mentioned that it is not a correct Glock logo. I informed him that I would be doing a full charge-back on my credit card (American Express, which allowed for charge backs for items not as advertised or companies not living up to their return policies).

At 4:31pm I received an e-mail from Assistant Manager, Adam Judware telling me that he is working with their supplier to find out why the images are different. He also said that he would credit me the rest of the amount on my credit card (he said that Tim had already credited me $14.20 and that he, Adam would tell whomever I spoke to on the phone to credit the rest $7.58). Adam asked me to call back to campingsurvival.com to give them my credit card number again, so that the rest of the amount left could be credited to my card. He apologized for the inconvenience and told me that if there was anything else I needed to talk to him about that he would be happy to help me.

I spoke with Jovi on the phone around 4:50pm; she apologized as well and also told me that they were working on getting the image difference corrected. She took my credit card number and told me that she was glad that they were able to resolve the issue and that she hoped I was happy with the outcome (she said all of this in a nice way).

The postage to send the shirt back to campingsurvival.com first class with a tracking number was $3.99; but everything else was eventually refunded.

David adds:

While it did eventually work out, it took them far too long and gave Honey so much of a runaround that I don't think I'd shop there again—besides the cost of the return with tracking, which we felt was necessary after all the trouble we'd already had, a lot of Honey's time was wasted.

Books finished: Reamde, Unleashing the Ideavirus.

Olive Garden with Chris and Janet

News ·Friday February 1, 2013 @ 22:49 EST (link)

Friday evening we went to Olive Garden in Pinellas Park with some friends from the area; Chris, who I had met before (first contact on Facebook, and then we went out shooting at Wyoming Antelope), and his, hm, permanent girlfriend? (not married but together seven years) Janet, whom I had not met before. We got there at 1900 and neither of us had thought to make reservations, so we had a 35-minute wait, but the time passed pretty quickly talking about guns and anarchy and life.

I'm not a huge fan of Italian food, but I had the "Mixed Grill" which was very good (perhaps because it didn't have any cheese in it): chicken and steak skewers with potatoes and vegetables. We were there until around 2130, just having a leisurely good time, and will try to do it again in not too long.

Books finished: Stop Stealing Dreams, Chaos Theory, Foundation's Edge, The Corridors of Time, Clean Code, Children of Morrow, Getting Things Done, Every Day Is an Atheist Holiday!, The Bootstrapper's Bible.

Christmas in Canada

News ·Monday December 31, 2012 @ 13:53 EST (link)

And this is the way of it (dates in December, of course).

14: Struck out for WV after work—on the road by ~1800 (I went in to work early).

15: Stopped in WV for the day and for Honey's birthday.

16: Arrived in Canada in time for Brockview's Christmas program.

19: Went to the Yades at 6pm; had Chinese food, played some board games; Bethany Trotter was there a bit later and so Jon brought out some of his firearms, including a pellet gun we shot from the porch. Had a great visit.

21: Scott's party! Honey couldn't come because she (thought she) was getting together with Bethany. Good time, played a fun (yet awful!) game called Cards Against Humanity. Quite a snowy night, low visibility, high slipperiness, so I had trouble finding the place especially as Google Maps took me down a road that didn't exist so I ended up driving up and down a stretch of Highway 20 looking for a road that wasn't there until I called and got better directions. Met Patrick there briefly, and found he's a fellow voluntaryist and gun enthusiast (via Facebook, later).

22: Uncle Murray had us over in the afternoon (3-5pm) as well as various other cousins for food and drink and cheer.

23: Went to Thorold South for their talent show in the morning and food later; good show, little long, good food too though.

24-26: Family Christmas, details are secret.

27: Took the Trotters to Swiss Chalet, an then back to their place for coffee.

28: Took Emily and Julia to Fonthill's only hangout, the MyPlace Bar and Grill; got to talk a little, had some fun.

29: Left in the morning so we would get there for church Sunday. Very snowy roads, especially US-19.

January 1: Left for home to be back at work for the next day.

Books finished: All Marketers Are Liars (With a New Preface), Tribes, The Personal MBA, Jack: Straight from the Gut, Linchpin, The Dip.

Roundcube is in, Horde/IMP is out

News, Technical ·Thursday November 29, 2012 @ 21:16 EST (link)

Horde/IMP (webmail) is out; it didn't manage to come back after the crash and Roundcube is much nicer, easier to setup, etc. I'm even using it myself (I had installed Horde for Honey), rather than Mutt, although mass operations/moves are better done from the command prompt.

The only few issues with it are (1) not moving to the next message after deletion, (2) having to re-select a message to operate on it (e.g., delete) if the preview pane is up after it is selected, and (3) sometimes it sorts new messages last, even sorting by date; it seems to do that mainly with injected (programmatic) mail.

Books finished: Purple Cow, What the CEO Wants You To Know, Hogfather.

Thanksgiving in WV

News, Work, Guns ·Monday November 26, 2012 @ 22:00 EST (link)

Freedom Scientific had a company picnic Wednesday the 21st (1pm at Lake Seminole park); I was going to work offsite then, but switched to Monday to make the picnic and so we had the same amount of time for Thanksgiving. There was a good showing—not too many had left for vacation early—and they grilled some pretty good burgers. I brought a past Office ship gift, an HD video camera, and tried it out for the first time taking some videos (still haven't edited them yet…). We left after we ate, and didn't stay for games; we had a lot of driving (13-14 hours).

We didn't leave the apartment until 1845; we drove straight through and arrived in the morning around 0830, and slept some. Went to papa (Honey's grandfather)'s for Thanksgiving later on. Got some work done Friday and Saturday. Friday afternoon I went shooting "up the mountain" with Ray and my father in law; we shot paper targets and glass coke bottles. The distance (about 50 feet) was a little long for pistols, but doable, and really too close for the Ruger 10/22.

Friday evening went to see Breaking Dawn Part 2 with Honey, Emily, and Honey's mom—ate at Chick-fil-A first (which worked out well because I wasn't tempted to buy any overpriced movie food/drink). Honey's papa asked me to speak Sunday evening, so I spoke from Nehemiah 8 about the reading of the book of the law. We left Monday morning, rolling out around 0645 and getting home around 2130 (stopped at a gun store on the way in Georgia; bought a pistol rug for the new gun).

New Sig P226 Elite Dark

News, Guns ·Wednesday November 21, 2012 @ 18:38 EST (link)

I finally "pulled the trigger" on a new handgun: a SIG P226 Elite Dark in 9mm that I'd been looking at for a long time. 15 round magazine (illegal in Canada, Commiefornia, and much of the Nazi Northeast; my one handgun that takes a magazine with ≤ 10 rounds, my Springfield 1911 EMP, is still illegal at least in Canada for having "too short" a barrel).

I bought it on Wednesday the 14th (GunBroker auction, from Osage County Guns in Missouri; there were no opposing bidders). I declined the insurance and used a credit card instead (which provides insurance of its own); I had it sent to a local FFL dealer, Wain Roberts Firearms, because they offered a $15 FFL transfer fee for members of Florida Shooters Network. I picked it up Monday the 19th. I was worried they'd give me grief about the three day waiting period since I don't have a Florida concealed carry permit, but apparently they knew the three days started from the purchase date, which would have been the 14th, as the invoice showed.

I took it to shoot at my club, Wyoming Antelope, on Wednesday morning; great gun, crisp trigger; I was shooting nearly as well with it as my Glock 34 almost immediately, keeping in the black center ring at 30 feet without difficulty.

Books finished: Execution.

Looking at cars

News ·Saturday November 17, 2012 @ 16:07 EST (link)

We hit a few car dealerships along US-19 today: I had thought about moving up from my 2000 Toyota Solara SLE to a Lexus or similar; so since a number of dealerships were nearby on that road, we hit Toyota (to look at Avalons mainly), Acura (TL), Lexus (ES350), Infiniti (G37) (and the Mercedes dealer next to it, E-class), and BMW (528i).

Avalon didn't compare well to Acura or Lexus, and cost about as much, so it got ruled out; I loved the Acura TL; the Lexus ES350 was nice but not as sporty as the TL and the interior looked a bit blocky; the Infiniti lacked interior features and had an annoying high "hump" at the back due to the RWD drive train; and BMW and Mercedes wanted too much for too little. We had to wait a very long time for an Infiniti salesman to talk to us; contrariwise we were likely positively influenced toward Acura by the friendly and genuine-seeming salesperson we talked with (Chris Duncanson). (Sure, they're all trying to make a sale, but some can fake sincerity better than others, er, I mean I'm too cynical and different salespeople give different impressions.) The Lexus salesperson seemed to be a good guy too. Lexus had a beautiful white/black leather IS 350C convertible on the floor.

But ultimately the TL is winning—specifically, the SH-AWD model with the Advanced package in either red/black (it might not come that way, so perhaps red/gray) or black/black; it's priced competitively, has a great reputation, is somewhat more sportier than the Lexus (in return for less of a smooth ride perhaps, but I'm not that old yet), and I like the interior design and features. Naturally I looked at reviews on sites like Edmunds.com and on AcuraZine's forums (even joined to get access to a file showing how to replace the internal HDD).

Books finished: Gödel, Escher, Bach.

The mail server is back

News, Technical ·Friday November 16, 2012 @ 17:02 EST (link)

Most of the rest of the mail files have been recovered and internal DNS and the mail system is mostly back—Courier-IMAP, Qmail, SpamAssassin—except for an internal webmail system (Horde/IMP), which is giving trouble and has always been a bletcherous piece of PHP crap anyway. It's nice to be receiving and sending mail locally again. Given that it was down for two weeks I may have missed some mail that hasn't been resent, or been bounced from some mailing lists; others are amazingly resilient (or perhaps, "stubborn") and have kept on sending to me. All configuration files were recovered, so it was just a matter of merging them with the reinstalled Gentoo packages, and tracking down a few unexpected errors via log files and adding the daemons to system startup. Now that it's stable it's been backed up (rsync) and will be periodically.

Recovery of some mail files was laborious; a group of inodes were destroyed covering some mail directories and files; the directories were recovered by a disk scan: first, the . entry points to its own inode, and second, by looking for blocks that look like directories containing distinctive maildir files (starting with the Unix time) and subtracting off known/reachable blocks to yield orphans (much like a mark and sweep garbage collector). Another similar scan was done for files that look like mail messages (with a Delivered-To: header in the first 256 bytes). I also recovered a few from Mutt's cache, removing dupes using a python program mapping file digests to filenames. All in all, I wrote about 1000 lines of C++ (saved some work by using libext2fs) and 500 lines of Python (to process block lists etc.).

<Previous 10 entries>