tag:blogger.com,1999:blog-103142652024-03-07T14:32:02.371-05:00The AFroNaut Bloggethmeditations and musings from your friendly neighborhood free radical.AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.comBlogger77125tag:blogger.com,1999:blog-10314265.post-49768377319110485482014-10-30T16:33:00.001-04:002014-10-30T16:36:24.177-04:00Find Drupal Installs on Your Server<p>Need to find Drupal installs on your 'Nix webserver? Run this on your docroot:
<code><pre>sudo find . \( ! -path '*/sites/*' ! -path '*/profiles/*' ! -path '*/themes/*' ! -path '*/modules/*' \) -iname 'CHANGELOG.txt' | xargs grep -m 1 'Drupal' -s1</pre></code></p>
<p>Output will look something like this:
<code><pre>./cms/core/d7/drupal-7.32/CHANGELOG.txt-
./cms/core/d7/drupal-7.32/CHANGELOG.txt:Drupal 7.32, 2014-10-15
./cms/core/d7/drupal-7.32/CHANGELOG.txt-----------------------
--
./cms/core/d8/drupal-8.0.0-beta2/core/CHANGELOG.txt:Drupal 8.0, xxxx-xx-xx (development version)
./cms/core/d8/drupal-8.0.0-beta2/core/CHANGELOG.txt-----------------------
--
./cms/core/d6/drupal-6.33/CHANGELOG.txt-
./cms/core/d6/drupal-6.33/CHANGELOG.txt:Drupal 6.33, 2014-08-06
./cms/core/d6/drupal-6.33/CHANGELOG.txt-----------------------</pre></code></p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-58110256403447269312013-11-25T16:00:00.001-05:002013-11-25T16:00:37.404-05:00Drupal Block Title vs. Subject<p>I couldn't find a post about the use of a "title" versus a "subject" in a custom block when building a module in Drupal 6. Running across this funny quirk in code and figured I'd share.<p>
<p>I have a module that defines a custom (navigation) block and was trying to change the title. I found that when I tried editing the title through the admin UI (<pre>admin > build > blocks > custom block name</pre>) nothing changed. That is the default title of the block as defined in the module was still there.</p>
<p>Here's how the block was defined in code:<br/>
<code>
// start navigation_block()
function super_events_navigation_block($op = 'list', $delta = 0, $edit = array()) {
...
$blocks = array();
switch($op){
case 'list':
$block[0] = array(
'info' => t('Events Archive Navigation'),
'region' => 'right',
'status' => 1,
'weight' => 0,
'cache' => BLOCK_NO_CACHE,
);
return $block;
case 'view':
switch($delta) {
case '0':
$block['title'] = t('Event Archives');
$block['content'] = theme('super_events_navigation_events');
break;
}
return $block;
}
} // end navigation_block()
</code></p>
<p>Note the following line:<br/>
<code>
$block['title'] = t('Event Archives');
</code>
</p>
<p>Apparently this works for displaying a title for a custom block, however it cannot be modified. Change this line so instead of "title" as the key you have "subject" as follows:<br/>
<code>
$block['subject'] = t('Event Archives');
</code>
</p>
<p>Now the block's (display) title is changeable through the admin user interface.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-31384252646561880762012-10-18T13:19:00.001-04:002012-10-18T13:20:15.450-04:00The Poet - a poem<p>The Poet (inspired by Dylan Thomas's reading of "Poem in October". Sorry Dylan.)</p>
<p>the poet who loves his own voice's song<br/>
waxes on and on about nothing.<br/>
charming women of a certain sort<br/>
their perfume stiff and cloying <br/>
as their flowered dresses<br/>
and unfriendly looks.<br/>
all poisoning my taste for poetry books.</p>
<p>~afn</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-81679701281842657782012-09-25T23:09:00.001-04:002012-09-25T23:30:40.114-04:00Aliens (1986) as Political Metaphor<p>If you haven't seen it recently, Aliens (1986) is worth a look.</p>
<p>I mean, a corporate shill seeking profits at all costs. A former warrant officer who's been through hell, trying to make her way back to the world is called to a suicide mission under false pretenses. She's accompanied by a contingent of (Colonial) Marines slated to do the corporation's heavy lifting under false pretenses of their own: a pittance with the promise of greater glory and national duty. Only to be sacrificed as expendable in the face of an apocolyptic menace. The baddest among the heroes' ranks, two women and a little girl, all of whom are the embodiment of survival. And to top it all off, a faceless corporation acting as puppet master.</p>
<p>All I'm saying is when the hell did Wall Street and CEO's become the nation's heros? After this movie, I couldn't even watch "Mad About You", I hated Paul Reiser's character in "Aliens" (Burke) so much. I could hardly feel warm and fuzzy about a CEO, post-Union Carbide and in the midst of savings and loan bailouts. And in the balance, we have Ellen Ripley, Vasquez, and Newt. The working class mother, the soldier, and the future. Battered and bloodied but unbowed. There go you heroes! And in a final ballet of mecha-Tai-Chi who should arise as humanity's salvation? Ripley. Even when she's down, you can never count her out! We may not have Ripley yet, damned if we need another Burke.</p>
<p>And as the creepy skittering noises post-credits prove, even with Ripley on our team, we might not be able to "sleep all the way home", but at least we've got Hope.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-47094321778822661892012-03-04T16:36:00.001-05:002012-03-04T16:37:58.045-05:00Drupal 7 + OpenID: First AttemptSo it worked, but with caveats. Here's what worked:<br />
<ul><li>associating exiting account with Google profile for OpenID (e.g. https://profiles.google.com/profilename)</li>
<li>logging into existing account using Google profile OpenID</li>
<li><a href="http://drupal.org/project/openid_selector">OpenID Selector</a> module for logging into existing account</li>
</ul><span class="fullpost">Here are the caveat:<br />
New logins using OpenID did not create new account. My attempts to login were met with the message:<br />
<blockquote>Complete the registration by filling out the form below.</blockquote>Unfortunately, for said form...and for me, no form below to be found. I am using a custom theme, to which I've added a custom (very simple) maintenance page template. So at this point, I'm trying to figure out what variables and custom functions I need to add to get the registration working. No luck yet (and marginal incentive as there's other more pressing stuff to finish), but here are some links I'll be checking out when I have a moment:<br />
<ul><li><a href="http://api.drupal.org/api/drupal/modules!openid!openid.module/function/openid_authentication/7">openid_authentication() function documentation</a></li>
<li><a href="http://drupal.stackexchange.com/questions/3324/theming-the-user-registration-form">Themeing Drupal 7 User Registration Form</a> - from <a href="http://drupal.stackexchange.com">StackExchange's Drupal Answers</a></li>
<li><a href="http://beyrent.net/blog/2011/05/theming-drupal-7-user-registration-form">Theming the Drupal 7 user registration form</a> - from <a href="http://beyrent.net">beyrent.net</a></li>
<li><a href="http://drupal.org/node/350634">Customizing and Overriding User Login page, Register, and Password Reset in Drupal 6 and 7</a> - from <a href="http://drupal.org">d.o</a></li>
</ul></span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-69996024400671281302012-03-01T22:54:00.002-05:002012-03-01T22:55:27.470-05:00Drupal 7 Notice: undefined index node workflow_tokens()Was getting the following messages on my Drupal 7 site:<br />
<blockquote>Notice: Trying to get property of non-object in workflow_tokens() (line 189 of /var/www/drupal/sites7/all/modules/contrib/workflow/workflow.module).<br />
<br />
Notice: Undefined index: node in workflow_tokens() (line 188 of /var/www/drupal/sites7/all/modules/contrib/workflow/workflow.module).<br />
</blockquote><span class="fullpost">First I tried updating the workflow status for all the content I'd created for the site (about 12 nodes of sample content) to publish. Still saw the error, then remembered that earlier, I was getting notices from the Page Title module:<br />
<blockquote>Notice: Trying to get property of non-object in views_page_title_pattern_alter() (line 47 of /var/www/drupal/sites7/all/modules/contrib/page_title/modules/views.page_title.inc).</blockquote>I redefined the default for the page title settings to use the content page title token rather than the node title. Then defined the titles (using the node title token) for the custom nodes I'd defined on my site. This seemed to resolve the workflow_tokens notices.<br />
Lookinig at the code it seems like the node argument required for the workflow_tokens function was not properly defined by the time lines 188 and 189 were reached in the processing. Not sure why this was occurring or how the Page Title module was impacting the function so if anyone can shed some light on that it could be helpful down the line.<br />
</span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-15661627525630266722011-09-16T08:57:00.000-04:002011-09-16T08:57:54.488-04:00Drupal Coding Lifeline<blockquote><code>dpm(get_defined_vars());</code></blockquote><p>That little bit of PHP is an absolute lifeline for module and theme coding in Drupal. If you need to know what variables are available in a given context, that's what to use. Works in .tpl.php files and in .module or .inc files, especially where hook_theme may be in use. print_r and var_dump are of course reliable standbys, but time and time again, dpm() has rescued me from hours of very painful head banging against desk.</p><br />
<p>Far better explanations and listings of Drupal debugging tools and their usage are both here <br />
<br/>- http://www.thingy-ma-jig.co.uk/blog/02-10-2007/hugely-useful-hugely-undocumented <br />
<br/>and here <br />
<br/>- http://blog.anselmbradford.com/2009/03/14/2-invaluable-drupal-development-tips-list-all-available-variables-and-backtrace-a-page/</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-19994015025799841742011-03-19T23:37:00.000-04:002011-03-19T23:37:16.385-04:00If You Liked "Exit through the Gift Shop"...<span class="fullpost">Make sure you check out the following:<br />
<ul><li>Bomb It</li>
<li>Style Wars</li>
<li>Wild Style</li>
<li>Downtown 81</li>
</ul>Great documents of the origins and legacy of graffiti art.<br />
</span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-18911435780146542442011-03-19T22:08:00.000-04:002011-03-19T22:08:23.363-04:00Feed Your Face - Get Your FB Page's Status Feed into Your Own Website<span class="fullpost">Needed to get facebook page's feed into a site. Here's how:<br />
<a href="http://itslennysfault.com/get-latest-status-from-facebook-fan-pages-in-php-multiple">Get latest status from facebook fan pages in PHP (part 2: multiple entries)</a><br />
<br />
Much thanks to <a href="http://itslennysfault.com">Lenny Urbanowski's blog</a>.<br />
</span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-8032541506065733972010-11-20T16:01:00.002-05:002010-11-20T16:06:48.550-05:00From Palm to Droid - the final moveFinally moved my addresses from my Palm to my Droid today. Some fits and starts, but ultimately got there. Basically I exported the addresses from Palm Desktop to a CSV (http://kb.palm.com/wps/portal/kb/common/article/36288_en.html), then imported the CSV into GMail Contacts (http://mail.google.com/support/bin/answer.py?answer=14024).<br />
<br />
The export was easy at first glance. Enter the Address section of Palm Desktop (old version used with Centro, so non-WebOS). Select all contacts in the address list then select Export... from the File menu. You may be prompted to show hidden data which likely, you'll want to do if you're migrating fully from one platform to the other.<br />
<br />
With the export was complete, I opened up the CSV in OpenOffice Calc. Of course MS Excel, Google Docs or even Lotus 1-2-3 will do. I found that the data came over without column headers. It may be that there was a selection to include the headers in the export that I missed. In any case, I spent about 15 minutes labeling the columns and doing some necessary cleanup of the data export (moving misaligned/misassigned data into appropriate column, deleting empty columns, etc.).<br />
<br />
<br />
Saving the cleaned up spreadsheet as separate file, I went back into GMail and followed the contacts import instructions (More Actions - Import Addresses, choose local file, click OK, click Import). Worked like a breeze. I even got a message that duplicate addresses were merged automatically. Woohoo!<br />
<br />
Reviewing the uploads, it looks like any fields that weren't recognized or couldn't be mapped directly to an existing contact field were added to the notes field and labeled with the header from the CSV. This happened with most of my addresses. In the CSV street address, city, state, zip, etc were each in their own fields. Likewise, Palm Desktop allowed for multiple addresses (work, home). In the CSV cleanup I'd created separate Home labeled fields and Work labeled fields. In the end it looks like the Home City and Home State, where present, were loaded successfully to the contact's address field. The street address and work address info where present, was dumped to the Notes. Likewise for birthdays (which I'd labeled "Date of Birth) and custom fields.AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-66202137246983624722010-08-23T00:43:00.002-04:002010-08-23T00:47:58.144-04:00Of Bits and Paper<p>I am watching the documentary <a href="http://video.google.com/videoplay?docid=-768956312207897325#" target="_blank">When the Moors Ruled in Europe</a>. I marvel at the facts presented in this account of Europe's history from the Dark Ages through the Renaissance, and am struck by the documentary's relevance at this point in America's history.<p><p>The fact presented early in the documentary that most struck me was that one of the most transformational influences that Muslims brought to Europe was the introduction of paper-making. At the time, vellum and parchment were difficult and expensive to produce and therefore rare. Likewise, the prevailing culture held literacy as the province of the privileged anointed few. In this context, the ability to produce paper inexpensively amounted to nothing short of a revolution. And this technology was brought by a culture that believed in the democratization of literacy and learning. The intersection of technology and a new way of thinking transformed life in a way that allowed light to begin to shine through the clouds of the Dark Ages.</p><p>In today's context where we find ourselves debating the merits of a free and open internet against those who seek to impose a caste system of access, this piece of history resonates deeply. Especially as we see in elements of our society a resurgent wave of bigotry and xenophobia being fired scattershot at all Muslims, we would do well to remind ourselves of how and where are cultural heritages are deeply intertwined, and with them, our shared fate. As fundamentalism on both sides of the divide fight against the very ideas of enlightenment, scientific curiosity, exploration, and understanding, we need to revisit the lessons and gifts that the early Muslim emigres brought with them to the land of the vandals, instead of seeking to vandalize their culture, and with it, our own.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-32956966676410067792009-06-06T10:42:00.003-04:002009-06-06T10:46:26.736-04:00The Freshest Kids - a review<p>The Freshest Kids is a true and vivid history of Hip Hop. To many people, breakdancing died an embarressing death in the eighties as a played out fad. To many people like me, when the commercial fad ended, we were still amazed to see its heartbeat continue however faint in its hollowed out husk, only to see it come roaring back to life. In my case, at the Chinatown Y in Boston, where a group of Asian, Black, Latino, and a smattering of White kids were busy adding hand springs, flips, and other acrobatics to the traditional windmills, backspins, and body rockin.</p>
<span class="fullpost"><p>The Freshest Kids puts 2 and 2 together, showing but 4 the the strength of the artform, its rough and ready roots, and the heart and soul of its originators, Madison Avenue might well have won the day. But all things that are hard fought, well-crafted, and elemental are indeed enduring. So it is with the B-Boys and B-Girls, God bless them all.</p>
<p>A story of the human spirit, it reminds us to be inspired by kids, their creativity, ingenuity, and explosive power when you remove the shackles of pretense and oppression in its other other pernicious forms. Because these kids with less than nothing, took only what they brought with them and made something that reaches through space - across the world to people and places they'd never seen - and time - back to ancestors they never knew they had. They truly are and ever will be The Freshest Kids.</p></span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-25999827853356064092009-04-28T12:40:00.002-04:002010-05-16T22:43:34.983-04:00GOP Legislators Fought Pandemic PreparednessThe tyranny of small(-minded) government...- @~When David Obey (D-WI), a longtime champion of pandemic preparation, included $900 million for that purpose in the stimulus package, he was ridiculed by conservative operatives and congressional Republicans. The Republicans essentially succeeded: the Senate version of the stimulus included no money whatsoever for pandemic preparedness.<br/><br/><a href='http://www.thenation.com/blogs/thebeat/430261?rel=hp_picks'>read more</a> | <a href='http://digg.com/politics/GOP_Legislators_Fought_Pandemic_Preparedness'>digg story</a>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-22453501360361420262009-04-15T22:31:00.015-04:002010-05-16T22:31:33.512-04:00Filemaker Table Joins - FINALLY!!!<span class="fullpost"><p>I've been searching high and low for any way to perform a table join in Filemaker using a foreign key relationship without using a blasted portal! With a little bit of ingenuity and a lot of brute force, I finally found a way. I'm hereby declaring April 13th forevermore <span style="font-weight:bold;">Victory over Filemaker Day</span>! Here's how I did it.</p></span>
<p>Say you want to list organization affiliations on a given contact's record and you have two tables:
<ul><li><span style="font-weight:bold;">organizations</span>: with the fields - <span style="font-style:italic;">organization_id</span>(PK) and <span style="font-style:italic;">organization_name</span></li>
<li><span style="font-weight:bold;">contacts</span>: with the field - <span style="font-style:italic;">organization_id</span>(FK)</li></ul></p>
<p>To display a list of organization names on the contact record:
<ol><li>Create a layout based on the <span style="font-weight:bold;">contacts</span> table.</li>
<li>Go to <span style="font-weight:bold;">Manage...</span> in the <span style="font-style:italic;">File</span> menu and in the <span style="font-style:italic;">Relationships</span> view (looks like an ERD or schema) link the <span style="font-weight:bold;">contacts:organization_id field</span> to the <span style="font-weight:bold;">organizations:organization_id</span> field.</li>
<li>Now go to the <span style="font-style:italic;">Tables</span> view and select the <span style="font-weight:bold;">contacts</span> table.</li>
<li>Select the <span style="font-weight:bold;">contacts</span> table and add a <span style="font-style:italic;">calculation</span> type field: <span style="font-weight:bold;">calc_organization_names</span>.</li>
<li>For the calculation, insert the following formula which will take the matching organization names based on the table relationship and replace the line feeds with a comma:
<ul><li><span style="font-weight:bold;">Substitute ( List ( organizations::organization_name) ; ¶ ; ", ")</span></li>
<li>You may use a calculated field in the formula, e.g. if you wanted to concatenate <span style="font-style:italic;">organization_name</span> with <span style="font-style:italic;">organization_city</span>.</li>
<li>NOTE: Unfortunately cannot combine fields directly within <span style="font-weight:bold;">List()</span> function (with multiple fields the first field's values get listed followed by the second, and so on).</li></ul>
</li>
<li>Click <span style="font-weight:bold;">OK</span> to save the database changes then return to the new <span style="font-style:italic;">contacts</span> layout.</li>
<li>If it wasn't added automatically, add the newly created <span style="font-weight:bold;">calc_organization_names</span> field to the layout.</li>
<li>If you already have the appropriate data filled into the tables, you should be able to see the comma-separated organization lists as you browse through your contacts.</li></ol></p>
<p>For me this was a huge victory because finally it meant getting Filemaker to behave more like a proper database as opposed to the kneecapped desktop-based monstrosity I've come to know over the years. Being forced to use this on projects instead of the real SQL databases (MySQL, PostgreSQL, mSQL, Oracle,...), this comes at nothing less than sweet relief!!! (Sweeter relief if I didn't have to use Filemaker at all, but that work's in progress. One step at a time.) Thanks to my colleagues who've put up with my ceaseless bellyaching about Filemaker over the past few months.</p>
<p>...but what the heck. One more rant for the road:</p>
<p>The Foreign Key Relationship is <span style="font-style:italic;">basic</span> database functionality. It shouldn't be SOOOO hard to find out how to implement this properly on anything calling itself a database. Yet for all my searching I found absolutely no documentation pointing to me a solution that didn't involve <span style="font-style:italic;">portals</span> which lock it into a stupid scroll box in layouts, hamstringing further use of the resultant data.</p>
<p>So short of buying a Filemaker book that may or may not have the answer I needed, paying for a training class or one of those infernal pay-as-you-go help forums I was stuck coming up with the solution above k-solo. Yes, that makes me a cheap bastard, but it's the principal, dammit!</p>
<p>SQL's been around since the 70's and is a de facto standard for relational database interaction. If you produce a product that mimics a relational database, then pay your developers properly, give them a few more Red Bulls and let them make it work the way a database is supposed to. Or at least document it properly so these basic functions aren't hidden! Cute quirky history with Apple aside, obfuscation doesn't equal value!!!</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-44081300788186784112009-04-09T23:34:00.002-04:002010-05-16T22:32:16.753-04:00getting drupal's big picture<div><div class="goalentry"><p>The Pro Drupal Dev book is great. Halfway through having learned about modules, nodes, hooks, menu items, etc I was having trouble pulling together the big picture: how do all these make a site?</p><p>Took a step back and thought about a target site archetype: sections, pages, page types, page sections/modules. Mapping the site out this way, creating a page taxonomy (page types and their content components) I was better able to relate to the nodes I’ll need, modules, and even admin behavior and permissions (what should be enabled/disabled, and for whom).</p><p>This will help a lot as I go forward with the reading (will probably be revisiting a few chapters) and will probably be revisiting this (both the notes I took and the exercise itself) several times in the near future.</p></div><div class="goalprogresslink">See more progress on: <a href="http://www.43things.com/people/progress/theaphro/12325012">learn drupal</a></div></div>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-24342801216892113682009-03-22T12:50:00.014-04:002010-05-16T22:34:17.981-04:00Support a Music Revolution - Ardour.org<span class="fullpost"><p>More importantly, keep someone doing good in the world out of the kindness of his own heart from having to quit his altruism altogether.</p></span>
<p><a href="http://ardour.org/revolution" target="_blank">Ardour</a> is an Open Source digital audio workstation. Think ProTools, FL-Studio (formerly known as FruityLoops), ACID Pro and other home to professional studio production tools. Now think FREE as in beer and speech. The tools above range in price from $200-$2000 per license. Ardour is an industrial strength tool, that's free AND runs on a similarly free operating system - Linux (something those other clowns DON'T do).</p>
<p>As <a href="http://ardour.org/credits" target="_blank">Ardour's creator</a> put it, when you buy a car, <a href="http://ardour.org/revolution" target="_blank">the hood isn't welded shut</a>. Likewise with Ardour, except you don't have to pay anything for it. You download it, you install it, you own it, and it's TRULY yours. Tinker with it, install it anywhere you want as many times as you want, upgrade it for free, copy and share it with all your friends. ALL of them! Let's see Microsoft offer you all that!!</p>
<p>Huh? What's that? You don't make music and you don't use Linux, so what does this mean to you? Think of a kid with an old used hand-me-down computer running a free operating system (Linux) who uses a beat-up hand-me-down guitar and this free audio production software to make beautiful music that will finally blow all the nauseating crap you hate off of the airwaves once and for all.</p>
<p>It's a dream, I know, but that can't happen if the developers can't afford to support it, upgrade it, and keep it solid and competitive. Doing that is a <a href="http://ardour.org/development" target="_blank">fulltime job</a> that <a href="http://ardour.org/credits" target="_blank">Ardour's creator and contributing developers</a> do for free. All they ask is a dollar and a dream...<a href="http://ardour.org/revolution" target="_blank">a dream of better software</a>, a dream of better music.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-41631841016497811192009-03-21T23:42:00.010-04:002009-03-22T14:09:08.464-04:00In Pencil<span class="fullpost"><p>We write our lives in pencil.<br/>
Press firmly with our good deeds.<br/>
Press gently with mistakes.<br/>
Let the errs be soon forgotten,<br/>
That the good shall take their place.<br/>
And there they'll be remembered<br/>
'Til the paper fades away.</p>
</span>
<p>~AFN. 3/21/2009</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-2359101767934502662009-02-22T13:12:00.015-05:002010-05-16T22:33:34.378-04:00Problematic Post-ing<p>The New York Post's recent editorial cartoon associating the shooting of a chimpanzee with the authorship of the economic stimulus bill is problematic on several levels.</p><span class="fullpost"><p>Since the dawn of the Atlantic slave trade, Black people have been categorized through “science”, religion, and social morés as being sub-human: something more akin to apes, than Homo sapiens. It was this classification among others that was used as justification of <a href="http://www.iabolish.org/slavery_today/primer/types.html" target="_blank">chattel slavery</a> that brought Africans to the Americas and other parts of the world. As supposed non-humans, we were not to bear any rights justified for humans let alone the landed gentry of a “free society”. It was thereby taken for granted that we were subject to capture, enslavement, and subsequent trade; and that we were to be used as a disposable commodities, abused, killed, or discarded at the society's whim.</p><p>Undermining this fallacy and blank hypocrisy was chief in the grueling transformation of social consciousness undertaken by the abolitionist movement. Challenging this archetype ultimately led to <a href="http://en.wikipedia.org/wiki/Slave_Trade_Act_1807" target="_blank">the passage of the Slave Trade Act</a> which ended the United Kingdom's slave trade and lead to the much later abolition of slavery in the United States.</p><p>Sadly it did not end there, as shown through a continuing century-plus of Jim Crow laws and other racial subjugation in the form of segregation and social stigma. The Post's tone-deaf editorial cartoon and it's subsequent luke-warm apology demonstrate how this pernicious association continues to play out even to this day.</p><p>Granted, the cartoon in part lampoons the recent <a href="http://www.cnn.com/2009/US/02/16/chimp.attack/index.html" target="_blank">police shooting of a pet chimpanzee in Connecticut</a>. However as the dialog balloon tags the violent act of the shooting (implicitly justified) with the writing and passage of the stimulus bill (implicitly unjustified) it takes on a sinister tone if not one of outright incitement. The message is simple. Resolve political disagreement through violence. Coupled with the racial overtones and the fact that we have unprecedented numbers of Black Americans holding high office and appointments (including President Obama and members of his cabinet) the message goes beyond sinister to a vicious call for the deletion of 400-plus years of social progress.</p><p>I would expect any newspaper, even The Post to hold itself to a higher standard. The press was nicknamed the <a href="http://en.wikipedia.org/wiki/Fourth_Estate" target="_blank">fourth estate</a> for its role as steward and guardian of democratic ideals. The Post's negligent eye, and self-serving extenuation demonstrate its opposition to those ideals where its interests are involved. I can only hope that with the era ushered in through President Obama's election, we will also see the demise of this irresponsible brand of journalism and the institutions that support it.</p>
</span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-32569615328356058212009-01-25T22:52:00.001-05:002009-01-25T22:52:49.589-05:00How to take a hike<div><div class="goalimage"><a href="http://images.43things.com/i_did_it_entry/7023xl.jpg"><img src="http://images.43things.com/i_did_it_entry/7023pw400.jpg" class="goalimagetag" alt="" /></a></div><div class="goalentry"><p><strong style='color:#693; font-size: 16px;'>"Taking a hike is the best (and first) thing I've done so far this year!!!"</strong></p>
<p><strong style='color:#369; font-size: 16px;'>How I did it:</strong> The key to taking a hike is preparedness. Know your destination. Dress appropriately and bring along some gear that may be helpful or at least fun.<br><br>I looked up several potential destinations in my local area. I found several helpful sites, local and national that pointed me in the right direction, which I'll list below. The beauty of looking up potential destinations is that it also gets you really excited about finally going. No I can't wait to go again and have plenty of options for when I do!<br><br>Being that it's still winter in New England, I took a look at a few sites discussing winter hiking and being prepared for them. My three biggest take aways from those were:<br><ul>
<li>dress warmly</li>
<li>stay hydrated</li>
<li>don't get lost</li>
</ul>
Wasn't sure I was actually going to go until yesterday evening. So I decided on an easy one: The Cliff Walk in Newport, RI. I guess folks would consider it a walk more than a hike, but navigating ice sheets covering the path, scrambling down boulders to take a shot closer to the water's edge, and a section of the path that's more boulder hopscotch than "path" a winter's hike maketh. Suffice it to say: check!<br><br>The beauty of the Cliff Walk is that this activity is a two-fer. I went on a hike AND took pictures at the beach during the winter. Check and check! Well I'll actually now have to go take pictures at the beach in spring summer and fall to truly call the second one a check, but you get the idea.<br><br>Anyway, as I said before, the whole adventure has gotten me primed to go on several more hiking adventures over the course of the year as I'd hoped it would. Great goal, and cheers to anyone also planning to do it!</p>
<p><strong style='color:#369; font-size: 16px;'>Lessons & tips:</strong> Here's what I wore for my winter hike:<br><ul>
<li>hot chillies long johns (just the pants)</li>
<li>t-shirt</li>
<li>turtleneck</li>
<li>cotton sweater (overkill once I got going but helpful later in the day)</li>
<li>microfleece zip-top sweater</li>
<li>"army" cargo pants - (great for holding my digital camera, extra film and usuals: keys, wallet, phone)</li>
<li>Kinco WarmGrip work gloves - better for taking pictures w/o having to take gloves off</li>
<li>microfleece hood - never needed to pull up the hood, but it doubled as a scarf and stayed out of the way better than a regular scarf</li>
<li>basic comfy hiking boots - mine are a pair of 5-year old Rockport XCS's</li>
</ul>
Here's what I carried for my winter's hike (note this was a photo-excursion as well):<br><ul>
<li>1 full 700mL Nalgene bottle - with water...this time ;-)</li>
<li>Hot Fingers Skiing and Snowboarding gloves - just in case. They're bulky and I never needed them so they stayed in the backpack.</li>
<li>1 35mm SLR camera</li>
<li>1 extra roll 24 exp 200 asa film - I'm from the old school...</li>
<li>1 digital camera - ...but I'm all about learning new things!</li>
<li><ul>
<li>also note: phone doubles as handy camera/camcorder. see posted photo</li>
</ul></li>
</li>
<li>Road map - in car for getting down to Newport (just in case)</li>
<li>Google Map directions to Cliff Walk starting point - I luv Google Maps for the phone (<a href="http://www.google.com/mobile/default/maps.html">http://www.google.com/mobile/default/maps.html</a>) as long as you only check directions at stoplights!</li>
<li>Extra change: for emergency calls and tolls ($4.00 round trip to Newport)</li>
<li>Back pack - gotta carry that stuff around somehow</li>
</ul>
What I wish I brought:<br><ul>
<li>SD card for my digital camera</li>
<li>Extra batteries for my digital camera</li>
<li>Trail map/guide - would have been nice to see the full extent of the trail before hand and know a little bit more about the sights along the path. I felt like an idiot having to ask about the Vanderbilt mansion (<em>The Breakers</em>) which is one of Newport's biggest attractions!</li>
</ul>
What I wish I'd done before I set off:<br><ul>
<li>Remembered the items listed in the preceding section</li>
<li>Double-checked the film in my SLR - wasn't loaded properly on the first half of the walk, so wasted roll and opportunities. But first time I've used it in years so it was nice enough to have it around my neck, let alone actually try to take some real pictures with it.</li>
<li>Packed extra socks - may sound stupid, but if for any reason your socks get messed up on a hike (wet, hole, porcupines), you gotta keep your feet happy.</li>
</ul>
I texted friends last minute the night before to see if anyone else wanted to come along, but all in all, I'm glad I did this one on my own. I got to spend 3 solid hours out there, just me and the waves and the winter sky. It was a beautiful day. I'll definitely enjoy the company on future hikes, but all in all, glad that today was all mine.</p>
<p><strong style='color:#369; font-size: 16px;'>Resources:</strong> Sites about Hiking and Trails in RI:<br>
<ul>
<li><a href="http://www.riparks.com/Activities%20Page.htm#Hiking">http://www.trails.com/stateactivity.aspx?area=10074</a></li>
<li>
<a href="http://www.riparks.com/Activities%20Page.htm#Hiking">http://www.riparks.com/Activities%20Page.htm#Hiking</a></li>
<li>
<a href="http://www.visitrhodeisland.com/what-to-do/hiking/">http://www.visitrhodeisland.com/what-to-do/hiking/</a></li>
<li><a href="http://activities.wildernet.com/pages/summary.cfm?areaid=RI&amp;amp;rectype=Hiking%20%26%20Walking&amp;amp;startrecord=1&amp;amp;CU_ID=1">http://activities.wildernet.com/pages/summary.cfm?areaid=RI&rectype=Hiking%20%26%20Walking&startrecord=1&CU_ID=1</a></li>
<li><a href="http://www.visitrhodeisland.com/what-to-do/nature-trails/hiking-nature-trail/">http://www.visitrhodeisland.com/what-to-do/nature-trails/hiking-nature-trail/</a></li>
</ul>
<br>Sites About Hiking in Wintertime:<br>
<ul>
<li><a href="http://www.backpacking.net/winterhiking.html">http://www.backpacking.net/winterhiking.html</a></li>
<li>
<a href="http://home.comcast.net/%7Egaryt1/winter.html">http://home.comcast.net/~garyt1/winter.html</a></li>
<li><a href="http://sports.meetup.com/26/pages/Winter_Hiking_Gear_and_Clothing/">http://sports.meetup.com/26/pages/Winter_Hiking_Gear_and_Clothing/</a></li>
<li><a href="http://www.backpacker.com/february_1999_destinations_winter_hiking_for_beginners/destinations/718?page=1">http://www.backpacker.com/february_1999_destinations_winter_hiking_for_beginners/destinations/718?page=1</a></li>
</ul></li></p>
<p><strong>It took me 1 day.</strong></p>
<p><strong>It made me invigorated</strong> <img src='http://www.43things.com/images/icons/i_face_happy_on38.gif' align='absmiddle' width='15' style='border: 0;' /></p></div><div class="goalprogresslink">See more progress on: <a href="http://www.43things.com/people/progress/theaphro/12123356">take a hike</a></div></div>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-62920633308397673532008-12-12T15:24:00.002-05:002010-05-16T22:35:30.836-04:00There's more to the HeliOS storyAfter a teacher put a kid in detention and confiscated the Linux CD's he was handing out when that kid was demonstrating a Linux computer donated by the HeliOS project, then contacted HeliOS claiming that handing out software free-of-charge was probably illegal, public outcry at Slashdot and Digg followed. Of course, there's more to this story...I was impressed with this story because it exemplified the term "learning moment". And it resulted in the type of real learning, both technical and social, that work with Open Source uniquely brings.<br/><br/><a href='http://linuxlock.blogspot.com/2008/12/character-assasinations-aint-us.html'>read more</a> | <a href='http://digg.com/linux_unix/There_s_more_to_the_HeliOS_story'>digg story</a>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-5950052884876308302008-11-05T01:56:00.002-05:002008-11-05T02:07:40.641-05:00Election Day - III<span class="fullpost">
<p>A New Hope...<br/>
11/5/2008</p>
<p>Yes we can...yes we did...and yes, we have only just begun!!! This is a day that I did not think I would see in my lifetime. And I gladly eat those words and sentiments whole. With approx 65% of the voting population represented we have not simply made but mandated the choice of Barack Obama as our president-elect. Know that this is a victory for America by Americans from all walks of life, truly representing the America that is and that we hope her to be.</p>
</span>
<p>I can say for my part I will hold my head higher tomorrow knowing that my country and my home has chosen to reaffirm the democratic ideals which we hold sacred, and demonstrated the commitment to uphold them, to renew them, and to make them even better than they were when handed down to us. God truly continues to bless us all.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-4488299724604417462008-11-04T12:35:00.004-05:002008-11-04T13:55:52.563-05:00Election Day - II<span class="fullpost"><p>I Came...I Saw...I Voted<br/>
11/4/2008</p>
<p>Well, got my Dunkies and got to the polling place right at 6:55a. A little line had formed outside the Veterans Club as we waited for the doors to open. The group there was somewhat mixed. Some seemed to know each other or were simply politely chatting. I kinda stuck out. Only guy above 6 feet, among other things ;-) But among those not chatting there seemed to be a quiet tension. A sense of purpose that they seemed to want to talk about but feared brining to light. That's certainly how I felt.</p>
<p>The polling station opened a little late, so unfortunately no "in and out in 2 minutes" like the old timer in front of me reminisced about when the clock struck 5 after. I was about 20th in line, but quickly became 7th in line when it split between A-L and M-Z. Lucky break!</p>
<p>The lady checking names took about 3 minutes to find mine. Par for the course when you're also a tall (formerly) skinny guy with a funny name. I handed her my registration card to make it a little easier. It wasn't. Oh well.</p>
<p>Something on the ballot reminded me of a <a href="#zdposter">poster</a> I saw on <a href="http://www.designforobama.org">designforobama.org</a> that read, "Don't trust Zapf Dingbats". The thing about it was the logo, the same five pointed star I've seen on the McCain posters and commercials (since he picked Palin anyway) was there on the ballot next to "Democrats" in the Straight Ticket section at the top of the page. The logo next to the "Republicans" selection was the miniaturized eagle and shield combo with lightening bolts and flamethrowers, etc. Don't trust Zapf Dingbats indeed! Wonder whose idea that was? Imagery's a powerful thing. I wondered how many older voters that may throw off on both sides of the ticket. Just to be on the safe side, I went to the Presidential Election section and filled in my line for Obama and Biden. Not a moment I'll soon forget (sorry to rub it in Agz) .</p>
<p>I would however like to forget that I nearly jammed up the voting machine by letting the corner of my folder get sucked in a bit when I fed my ballot sheet through. A more than gentle tug got it free. Shoulda put down the damn coffee. Such an addict.</p>
<p>The highlight was when the woman walking out next to me said: "Make history. Check that off the to do list." I gave her a hale and hardy amen, then scooted off to work, blasting <a href="http://www.last.fm/music/Rage+Against+the+Machine/_/People+of+the+Sun">People of the Sun</a> the whole way — a not-so guilty indulgence.</p>
<p>Go vote!!! And watch the dingbats.</p>
<p><a name="zdposter" href="http://www.designforobama.org/index.php?p=272&page=1&obama=f6c3c19af828347fbf19ba9528e27b32"><img src="http://www.designforobama.org/prints/view/602_72efe69957574ef0f93f1f5cb56833eb_c7e.jpg" title="Don't Trust Zapf Dingbats" alt="Don't Trust Zapf Dingbats - Design For Obama Campaign Poster"/></a></p>
</span>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-20081133185347852922008-11-04T06:31:00.002-05:002008-11-04T06:34:44.263-05:00Election Day - I<p>Election Day<br/>
11/4/2008</p>
<p>I forgot that I forgot to set my alarm back an hour. So when I set my alarm last night and saw it set to 8am, wondering why the hell I'd set it so late, it didn't occur to me that resetting it for “6:45”, I'd actually be up at 5:45 am.</p>
<p>I said my prayers, for Barack, for his family, for the country and for us all. I thought of my grandma. Told her picture about what's going on today. I wished that she and all my grandparents could be here to share this historic day.</p>
<p>I'm not sure what the polls will be like. It's 6:30 now. Thinking I might be on the early side for my polling station. But going to go ahead now and make a move to the polling station. With a quick Dunkie's stop first.</p>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-5484482220656577302008-11-03T20:17:00.001-05:002008-11-03T20:17:29.377-05:00Obama On Grandmother And Campaign: "Bittersweet"I don't often cry these days, but today I cried. To see a man fighting through his own tears to share his grandmother's story and to inspire us to fight on her behalf and the quiet heroes like her, I cried.God bless you and your family, Senator Obama. We are with you.<br/><br/><a href='http://www.huffingtonpost.com/2008/11/03/obama-on-grandmother-and_n_140698.html'>read more</a> | <a href='http://digg.com/politics/Obama_On_Grandmother_And_Campaign_Bittersweet'>digg story</a>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0tag:blogger.com,1999:blog-10314265.post-5715685624811922222008-10-14T23:38:00.001-04:002008-10-14T23:38:06.065-04:00Steven Petrow: Joe Biden's Tears RememberedCharacter isn't just a word or a resume checklist. It's the sum of an individual's lifetime that occasionally condenses to a single moment. This would be one of those moments. Please read the full post.<br/><br/><a href='http://www.huffingtonpost.com/steven-petrow/joe-bidens-tears-remember_b_133902.html'>read more</a> | <a href='http://digg.com/2008_us_elections/Steven_Petrow_Joe_Biden_s_Tears_Remembered'>digg story</a>AFroNauthttp://www.blogger.com/profile/17571860545921328683noreply@blogger.com0