Loading...
If the page contents do not appear, it may mean that JavaScript is disabled in your browser. Please enable JavaScript to view this.
Random tidbits, thoughts, ideas, reviews, etc.Aaron Goes Yakkity Yak Photo: Daisies in the Trees on Cedar MountainIPv4You are not logged in. Click here to log in. | |
Here are a few of my latest Yakkity Yak web log entries. Don't forget to check out my GPS cache hunt adventures, Astounding Adventures. Or click here for the RSS feed.
Use Google to search aarongifford.com:
A Super-Fun Hike (Two Months Ago)
Sunday, 30 May 2010 9:08 PM MDT
Yakkity Yak, Astounding Adventures
This evening I downloaded a bunch of old waypoints and tracks from my GPS and plotted them in Google Earth (using a Ruby script to covert the GPX data to KML). I found this route that Kendall and I hiked one eveing, on Tuesday, 16 March 2010. It was a BLAST!
I need to do that one again. It's especially nice in the evening. You arrive at the edge overlooking State Route 18 and Snow Canyon, a perfect place to watch the sun set over the sandstone crags of Snow Canyon State Park. And traversing the rim of the southern Diamond Valley extinct volcano cinder cone is fun too. I think Kendall said they used to refer to this (or a similar hike) at Red Mountain Spa as "Jones' Bones"--due to the, ahem, remains atop the hill. (Don't worry, they're just old, bleached animal bones someone found, collected, arranged in a display beside the trail to look a bit like human remains.) Insecure Companies Leak My Email Address: Vonage and Zions Bank
Wednesday, 26 May 2010 9:25 AM MDT
Yakkity Yak
I'm one of those paranoid people who creates a new email address for each and every different service I sign up for or organization I give out my address to. That allows me to track down problems more easily, and also, should I start receiving junk mail at an address, identify the organization who leaked my information.
For the past few years, I've been getting junk email to an address I created exclusively for and only used for communicating with Zions Bank, an address that would be relatively difficult for a spammer or junk emailer to guess. Fortunately the junk mail volume is fairly low, but it does make me wonder, how did a bank, those financial organizations we trust with our money, managed to drop my email address into the hands of spammers? Just today I got my first item of junk mail addressed to my old Vonage VoIP email address. Several years ago, I was a Vonage customer. I created the email address back then exclusively for communications with Vonage, and it too would be relatively difficult for a junk mail sender to guess out of the blue, even using a dictionary to brute-force attack my mail server. I haven't been a customer of Vonage for years, but now I start getting junk email via the address that only Vonage should have had on record. Oops! Looks like Vonage's customer data is insecure just like Zions Bank's customer data. It's difficult to want to trust either of these organizations in the future. At least it (so far) appears to only be my email address, and not other personal information. I don't see any unusual activity to indicate identity theft, but I'll certainly keep my eyes open. Good luck, Zions Bank and Vonage, in earning my trust in the future. Once trust is broken, it's difficult to earn it back. [UPDATE: 06 September 2011] Fidelity Investments now joins the list of email leakers in this Hall of Shame. [EDIT: Link to 'blog entry added 17 Apr. 2012] I suppose I have to include The Official Time Waster's Guide forums as well. Apparently in April of 2011, a hacker exploited a software bug and stole the forum database. Fortunately the passwords were hashed (sort of like being encrypted). In late August, I discovered junk mail addressed to my unique address, and so logged into the web site and changed my email address and posted alerts to other users about the problem. A quick Google search had turned up a few posts about the hack including links to the user database. Sadly after I reported the problem, the forum administrators decided to retire the site, because upgrading the software to close the security hole would require too much time. I totally understand, but nevertheless am a bit sad. (Even though I didn't frequent the site much.) [UPDATE: 17 April 2012] I forgot to add Equifax to the Hall of Shame back in December. This should remedy that omission. Best Stereo Computer Speakers - EVER!
Thursday, 13 May 2010 8:11 AM MDT
Yakkity Yak
Just like I said two years ago, the Klipsch ProMedia 2.1 speakers still hold the title in my book, the Best Stereo Computer Speakers. I've yet to hear anything that bests them.
Why am I repeating myself? I recently bought another set for another computer system. That's why. And I'm listening to my iTunes music collection on my pair right now as I write this. They sound wonderful. They sound even better after a few weeks of use than they do fresh out-of-the-box. New, the set isn't cheap at around $150, but likewise, that's a great price for speakers that sound this good. Amazon.com often has them available, usually via various sellers. I grabbed my latest pair from the local Best Buy at about the same price. Progress Update
Wednesday, 31 March 2010 8:21 AM MDT
Yakkity Yak
Nineteen months ago I gave a progress update on my get-out-of-debt status. Slowly (a bit more slowly than I should), I'm still inching toward that goal. Whereas that year-and-a-half ago, my non-mortgage-debt-to-mortgage-debt ratio was 55% (roughly), it has now inched own to only 35.7% (and remember, I'm on a 15-year fully-amortized mortgage, so what I owe on the house has decreased too over the intervening period by about six percentage points).
I paid off the 14% credit card I mentioned. Unfortunately I replaced it with a short-term zero-percent loan that I'll have paid off in full by September. And yes, I did pay off my RAV4 completely only a few months after my last update. It's wonderful not having a car payment! (Though that only makes me guiltier for not having done better, considering the cash-flow improvement that made.) What I really need to do is start a future-car savings payment instead, so next time I buy a car, I can pay cash up front (no loan). And I'm never going to buy new again. The first year depreciation is terrible on new vehicles. Ug! I say my progress has been slower than it should because a few times over this year-and-a-half, I've slipped back into old bad habits, having spent money upgrading my PC, television, and replacing my living room sofa and love seat set. The furniture is responsible for my short-term zero-percent loan I mentioned above. My remaining outstanding debt is at amazingly low interest rates. I have to be grateful for that. All of my debt (house included) is under 5%, all rates fixed (so long as I maintain on-time payments) for the life of the loans. That's hard to beat (much to the consternation of the loan salespeople who call me offering credit consolidation loans, none of whom can come close to even matching the rates I pay). That is really helping me pay down principal.. As for saving and investing, recent surgery (Sept. 2009) ate up my savings even with great insurance paying the bulk of the bills. My SIMPLE IRA (that's my employer-sponsored retirement plan) has finally recovered from the stock market plunge of the past few years. Still, I'm behind where I should be in retirement savings. As for non-IRA investing, I still own several Vanguard index funds (two are non-IRA, one is in a Roth IRA) and recently resumed monthly automatic contributions to those which I'd suspended for about a year. This progress update is really to help motivate me to dig in, renew my zest and zeal, and work harder at getting debt free. And yes, I'd like to call in on the Dave Ramsey radio show and shout "I'm debt free!" when I reach my goal. I hereby commit publicly to update my progress monthly. That will help me stay on track. Big Rock in a Hidden Nook
Thursday, 18 March 2010 10:28 PM MDT
Astounding Adventures, Yakkity Yak
So Kendall and I went hiking again. This time we parked at the new Washington, Utah exit against the base of the red cliffs Interstate 15 passes by and started up the road, into the Red Cliffs Desert Reserve along the Grapevine Trail.
We followed the path (it was a dirt road) as it wound up the hill then headed northward beneath power lines that feed a well in the sandstone watershed foothills of Pine Valley Mountain. About two-and-a-half miles up the road, the road ended (at the wellhead) as did the power lines, and before us, in a sandy bowl, was a big chunk of sandstone at the very bottom of the bowl, surrounded on the west by black basalt cliffs from an extinct volcanic vent (an old cone stood above the cliffs, likely the source of the ancient lava flow), and on the east by the sandstone foothills of Pine Valley Mountain. Despite the path being a road instead of a hiking trail, it travels through beautiful desert terrain. The weather was cool, a storm mounting north of us atop Pine Valley Mountain, the sun sinking quickly in the west, the air pleasantly cool as the distant storm blew soft tendrils of breeze down from the mountain towards us. And the sandstone playground at the end of the hike was well worth it! Grapevine Trail ends and Bracken's Loop Trail begins at the rock. I don't know what the rock's called, so I started calling it Bracken's Rock. At the base of the rock, Grapevine Wash forks and winds around the rock base on either side, carving the sandstone, sculpting it as only nature can. Both Kendall and I had to scramble up the rock to the top, just to say that we did. I sat for a bit on the top, then stood, as the breeze picked up and began gusting from the north as the distant storm boiled and brewed above on the mountain slopes. Before we left, Kendall and I had to test the acoustics by singing at the top of our lungs. Sure enough, the black basalt cliffs on one side and sandstone hills on the other provided perfect echo surfaces, singing right back at us. We departed Bracken's Rock following the Bracken's Loop Trail northeastward along the base of the basalt-sprinkled hillside, then eastward, then up out of the wash bottom to the base of the sandstone cliffs there, then southward. Since we didn't have a map and weren't sure how long Bracken's Loop would be, and since it was getting dark quickly, the sun having set some time ago, we decided it was best to turn south, and followed a fork of the wash along the sandy bottom bottom, then linked up again with the original Grapevine Trail. The hike back was enjoyable in the dark, the storm behind us on the mountain blowing cool, cool air against our backs, and the lights of Washington glimmering here and there before us. We rounded the end of a hill and angled westward again, and suddenly, spread before us, below us, were all the lights of St. George and Washington, revealed in their glory. It was beautiful. Thankfully, the lights of the communities reflected of the cloud cover to light our path, since no stars were visible, and the sliver of moon we'd seen earlier was now obscured by thickening cloud cover. When we arrived back at the vehicle, my GPS claimed our adventures had taken us 6.28 miles. Not bad for me, considering that post-Sept. surgery I could barely walk a few city blocks (back in October). Thanks again, Kendall, for some good, fun exercise in the beauty of Southwestern Utah's spectacular desert landscape. P.S. Kendall, you'd better post some of your pictures. A Pleasant Evening Hike
Thursday, 11 March 2010 7:35 PM MST
Yakkity Yak, Astounding Adventures
Kendall stopped by and grabbed me from work this afternoon before the sun went down so we could get out in the beautiful weather and light and go hiking. We wanted some place close by, so we chose the Chuckwalla, Turtle Wall and Beacon Hill trails (the three form a loop) in the lower Red Cliffs Desert Reserve.
It was a beautiful late afternoon/early evening, the sun hitting the red cliffs at a lowering angle, the air crisp and cool. We parked at the Chuckwalla trailhead lot immediately off Utah State Route 18 just north of where it crosses Snow Canyon Parkway in St. George, and started down the trail, descending into the canyon past a cliff wall packed with people rock climbing. There was quite a crowd on the cliffs. The trail was down hill for the first part, descending into the canyon carved by Halfway Wash. It was nice, as it got me limbered up, warming me up for the rest of the hike. The Chuckwalla trail descends to the Halfway Wash floodplain, then follows it northward. After a while following the wash north, at a trail intersection, we turned westward, crossed Halfway Wash, and immediately started up the hillside, and were soon walking on slick rock, weaving along the base of the cliffs on the Turtle Wall Trail. I've got to say, the Turtle Wall Trail in the evening light is stunning! Just a hair past the two mile mark, we reached a look-out point overlooking the Entrada golf course, green fairways nestled in black basalt ancient lava beds far below us. After a pause at the overlook, we headed northward, until we intersected the Beacon Hill Trail, where we turned eastward and churned through the sand, then descended back into Halfway Wash. As we descended again, the sun hit the sheer red rock cliff face in front of us on the western side of Halfway Wash, below State Route 18 (but you can't see it from the road). What a beautiful sight! Once at the bottom of the wash again, we followed the trail southward, back to our point of origin. It was a hike made-in-the-shade (literally, as the sun was so low that by this time the canyon bottom was in shade). The hike ascending back up the eastern side of the wash to the parking lot was the perfect end to the hike, even though by now my fingers were a bit chilly and I was ready to get in the vehicle and warm up a bit. Thanks, Kendall, for stealing me away to get some exercise outside! Comment by 'Yer Mom' posted on Sat. 13 Mar. 2010 at 12:36 PM MST (-0700)
Subject: Hiking in general... Could an old woman like me make the hike? I WANT to go. Who will steal me away from work? Golf School Ruby Style
Sunday, 07 March 2010 12:38 AM MST
Yakkity Yak
I've been schooled while playing code golf with Ruby (or Ruby Golf). This weekend I posted a message to the Ruby Talk mailing list, linking to a little 276-character base-64 encoder written in Ruby I'd had fun writing. (Yes, there are FAR better ways to do base-64 encoding in Ruby—I wrote it purely for the fun of exploring the language.)
When programmers (geeks/nerds) start swapping bits of code that do one little thing, trying to shorten and tighten the code to the smallest size possible, it's called code golf. The goal is to have the lowest score (the smallest code size) that accomplishes the task. So my post to the list opened up base-64 encoding to other code golfers who read the list. Then Stefan responded with his version. Wow! I've been schooled! My amateur status as a code golfer has been exposed! His version taught me a few things about Ruby I was unfamiliar with, things like using ? for character literals (I'd read about that before, but having never used it, promptly forgot it). I was doing this to create an array containing all the characters from A to Z: ('A'..'Z').to_a
Using ? to create character literals in Ruby 1.9, I could have instead done: (?A..?Z).to_a
Net savings: 2 characters. Stefan's code taught me about using the asterisk * character (the splat pseudo-operator) inside of method calls to expand or explode Ruby Range objects (or Enumerators) into full Arrays. I'd used splat before to expand arrays into arguments when calling functions once or twice, but never to expand Ranges that way. Sweet! It's not a true operator, and it only works inside of a method call parameter list, I believe. So (using ? character literals) whereas I could create a Range and use the Range#to_a method to create an array: (?A..?Z).to_a
Stefan taught me I could instead do: [*?A..?Z]
Net savings: 4 characters. My original code created a string: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz++/' It was used as the set of base-64 digits for base-64 encoding. My code created that string like this: (('A'..'Z').to_a|('a'..'z').to_a).join+'0123456789+/'
Stefan shortened that in Ruby 1.9 to: [*?A..?Z,*?a..?z,*?0..?9]*''+'+/'
That's a savings of 20 characters (23 characters over my first/original version that used an extra Array#join call). Notice that instead of using Array#join() he does *'' instead, which is an alternative that's shorter. My algorithm for base-64 encoding took the original data as a String, unpacked each character into an array of integers (Fixnum), then used the Array#inject() method to iterate over each one and generate a base-64 encoded string. I used inject as an alternative to Array#map() so I could have a three-item Array to store stateful information in. I stored the result string, the number of unused bits I still needed to process from the previously processed byte, and the actual unused bits themselves. When inject was finished, it returned the three-item state, which I had to do a final processing step on—handling any as-yet-unprocessed bits and extracting the encoded string, and adding any required padding. Stefan instead took the original input data, unpacked it into a giant string of zeros and ones, binary bits. He then padded it with zeroes at the end until the string length was a multiple of six (since each base-64 digit represents six bits). He then used String#scan with Regexp /^.{6}/ to dice the bit string into an array containing six-character (six-bits each) strings. Then he used Array#map to iterate over each six-bit string, convert it using String#to_i from a base-2 string representation to the actual integer number, and used that number as an index to look up the correct base-64 encoding character. Thus he mapped the string array to an array of base-64 encoded digits. He then used *'' to join the character array into a string, and finally added any needed padding. His methodology switch saved a whopping 104 characters over my inject method. I was delighted that my little bit of fun inspired a pro code golfer to teach me a thing or two. You can follow the email thread in the Ruby Talk archives at: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/358586 I also posted my original version and have since added Stefan's version on my web site: base64.rb Amateur Ruby Golfer, Aaron out. Gorgeous Hike to Snow Canyon Overlook
Tuesday, 02 March 2010 9:13 PM MST
Astounding Adventures, Yakkity Yak
On Saturday, 27 Feb. 2010, my brother Kendall and I decided to go hiking. It was a beautiful day—overcast with low clouds encroaching and enveloping the surrounding mountains, threatening to rain. When you live in red rock desert county, rainy days bring out the desert colors. Temperatures were in the forties (Fahrenheit), but with no wind, with a light jacket, that's perfect for hiking.
Kendall's Utah State Park pass was about to expire, so we decided to visit nearby Snow Canyon State Park. As we reached the intersection with State Route 18, we decided to turn north on 18 and enter the park at the north entrance just north of Winchester Hills. Before we reached the entrance, however, we decided to continue past, up through Diamond Valley, and a tad beyond, to the Red Mountain Trail trailhead. I wanted to revisit a hike I'd made years ago to a virtual Geocache at the top of Snow Canyon, a hike Kendall had done many times as a guide working for Red Mountain Spa. Just outside of Diamond Valley, as State Route 18 made a bend towards the north, aiming us almost directly at the cinder cone up ahead that stands above the community of Veyo, between Veyo and the even-closer Dammeron Valley, we stopped, leaving the road, turning left (west) onto a dirt road—well more of a dirt driveway and parking lot among the juniper and piñon pine trees beside State Route 18. There we parked, amidst a herd of trucks attached to horse trailers. Apparently the equestrians were out in force this cloudy, cool day. And indeed they were! We saw riders galore as we embarked on the sand-and-rock Red Mountain Trail, beginning our slow ascent, twisting through the trees up the gentle hillside slope. Having had significant surgery in September of 2009, returning to a semblance of normal life only by December, I certainly could feel my frailty as the trail wound ever higher up the hill, heading first southwestward, then nearer the ridge summit, turning south to follow the summit towards Snow Canyon. I was soon huffing and puffing, but grateful that I could do this hike. Once we reached the top of the ridge, we paused and looked around a bit, sipping our water bottles. Pine Valley Mountain remained enshrouded in clouds, only the lower foothills, sprinkled with a light dusting of new snow, visible. Wisps of clouds trailed gently down the slopes, a warning to us that should the weather change, the sky could quickly lower and envelope us in mist, rain, or even snow. We resumed our hike southward, and remained dry for the time being—well, free of rain, though not completely dry, as hiking even with a light jacket in cool air had me sweating. The recent-rain-moistened red sand of Southwestern Utah beneath our feet really made the brilliantly white, thin patches of melting snow that lurked atop the ridge wherever shade afforded protection from the sun's warmth stand out sharply in contrast. Wow! Beautiful! We stopped several times the latter part of our hike out to the top of the canyon and snapped photos. It's always beautiful to see open white and red sand and also undisturbed cryptobiotic soil crusts, sandstone rocks, lichen-encrusted rocks, manzanita shrubs, their thick oval green leaves contrasting their smooth reddish bark, yucca, cacti, junipers, and significantly taller piñon pine trees—they seemed to grow better or at least taller at the somewhat higher altitude nearer our destination. The last part of the trail, instead of a rough, broken-sandstone-rock old jeep trail, was a soft, sandy path, the sand growing deeper—making me even more grateful that it was wet which makes it firmer, and walking easier. Kendall, ahead of me, followed the trail around a bend, through a cut about his height in a sand dune. On the other side of that dune, in a few more steps, we caught sight of the sandstone hilltops that surround Snow Canyon. A few more steps, and suddenly, a giant gaping chasm opened beneath our feet, and sheer sandstone cliffs halted our forward progress. We had arrived! Wow! What a view! Stretching before us, beneath us, were the several merging canyons in Snow Canyon State Park. White sandstone dominated to the left (east), red to the right (west), and in the misty distance, we could see parts of Santa Clara and parts of the Dixie Downs and Green Valley area of St. George. On the black lava basalt-edged bench to the right, perched Winchester Hills and The Ledges golf course. (Those who own homes there have a stunning view looking down into Snow Canyon from the western side.) In the far, far distance, a thin horizontal line was visible, the Hurricane Cliffs, and perched atop, a flat, familiar pyrmidal shape was visible, Mount Trumbull in Arizona, close to the edge of the Grand Canyon. I could also make out the closer Seegmiller Mountain south of St. George. Mount Bangs and Black Rock (south and southwest of St. George) were too cloud-enshrouded, as were West Mountain, Scrub Peak and the rest of the hills and mountains I grew up calling Utah Hill (part of the Beaver Dam Mountains west of St. George). Hike Destination at maps.google.com We spent quite some time there at the rim of the canyon. When we finally gathered our things for the return journey, weather looking even more ominous, a few droplets of water warning us of what could be coming our way, it was hard to depart that stunning locale. Wow, wow, wow, wow, WOW! I was in natural beauty overload. Despite the low clouds and what looked like fresh snow on the foothills of Pine Valley, it didn't actually rain on us until we were nearly back to our vehicle, and then it only sprinkled tiny droplets, almost a mist, so that we were barely wet when we did arrive. Once back in my RAV4 (the RAV4's steering fixed under warranty the day before the warranty expired, thank goodness!), the rain picked up just a bit, though it never really rained hard at all. It was beautiful. On our way back home, we did enter Snow Canyon State Park at the north entrance, and idled leisurely down the road, pausing so I could take a few more photos. What a beautiful place! I love it! Thanks for the hike, Kendall! It was great to finally get back there. All in all, having measured our route in Google Earth—check out the Google Earth screenshots of the route I've included with this post—we hiked only 4-and-a-half miles, two-and-a-quarter out, two-and-a-quarter back. For me, post surgery, that's doing well. I hope to be able to do longer hikes this spring and summer. In case you wonder where exactly our hike terminated, check out the embedded Google Map with the green arrow (at least it SHOULD be green—it was in my web browser) right at the top of the canyons where we stopped. What a blast! A Decent Windows Console (At Last—Maybe...)
Saturday, 13 February 2010 2:11 PM MST
Yakkity Yak
At last, a decent console for Windows exists. (Well, maybe...)
For many years on Windows, I used PuTTY SSH to connect to remote systems via telnet and SSH. It's an excellent SSH client and terminal console program all-in-one (along with some other SSH-related utilities). I've really enjoyed it. In 2006 when I switched from a PC laptop to a Macbook Pro (running Apple's Mac OS X which includes a bunch of Unix functionality), I was spoiled. Apple's Terminal application made PuTTY look cheesy by comparison. Not only that, but the Mac had a real, live shell on the very same system that I could use easily within Terminal.app, or I could use the built-in command-line (CLI) SSH program to connect remotely. I loved (and still love) it! This past autumn, I acquired a new Windows 7 PC workstation. So it was back to using PuTTY for me. But PuTTY and Windows 7 together are missing a few things:
But at that point, Console just wasn't quite there. Today I gave it another try. And the beta version I'm playing with WORKS! At last, I can nearly duplicate Terminal.app's functionality on Windows. I can have a local shell, execute local EXEs within a useful console, and (with the Cygwin OpenSSH package) SSH and telnet into remote systems. I like it! I don't love it like I do Terminal.app on the Mac, but I do like it! (Well, maybe... I've just noticed some terminal quirks that might change my mind.) I still wish there were a console that was Terminal.app's equal. Until there is, Console + Cygwin is the next-best thing. Learning to GEM-ify
Saturday, 16 January 2010 4:08 PM MST
Yakkity Yak
I finally GEM-ified my implementation of the MikroTik RouterOS API I wrote in Ruby (part of one of the projects at work). This is the first time I've packaged Ruby code as a GEM. It's been educational. I do still have more work to do (especially on the RDoc documents), as well as add a few more features to the library.
The whole thing is online here: http://www.aarongifford.com/computers/mtik/ The documentation starts there too. The RDoc stuff is at: http://www.aarongifford.com/computers/mtik/latest/doc/ I've also put some stuff up on the MikroTik wiki: http://wiki.mikrotik.com/wiki/API_Ruby_class | |
Copyright © 1993-2012 - Aaron D. Gifford - All Rights Reserved |