Friday, July 19, 2013

Obviously Secure

Empty your water bottle, stow it in the suitcase. Empty your pockets: wallet, cell phone, coins, keys. Put stuff in your laptop bag. Keep your license and boarding pass out. Smile, be friendly, don't be irritated or grumpy, don't look suspicious.

OK, now get the baggie of liquids out, get the laptop out, wait till the last minute to step out of the flip-flops, put 'em all in trays, push the bags and the trays into the gaping mouth of the RapiScan 620 DV... Wait just long enough to be reasonably sure they won't be burped up, forcing the lady behind you to deal with them.

Stuff the license in your pocket, show your boarding pass one more time, step through the metal detector, pause for the slight delay caused by the re-scan and eventual manual probing of the suspicious bag of the dude in front of you. Wait just a few seconds for the guts of the RapiScan to digest your stuff.

OK, you're nearly there. You are now deemed safe for air travel by the Men In Blue. But the dude who was in front of you is now behind you, waiting for his bag, hopefully not having to explain why he's trying to transport so many batteries on an airplane. Or God forbid, a sole nail file.

You do not have a shoe bomb, your water does not have any explosives mixed in with it because THAT'S RIGHT, YOU DON'T HAVE ANY WATER, your laptop cannot possibly be used to trigger anything except blog comments at this point, you ARE who your ID says you are, and there is no possible way you could be a threat to anybody for any reason while on your upcoming flight. If there was, surely they would have prevented your passage.

So, now you can reverse the whole process and put yourself back together. Mostly.

Collect your bags and trays, pooped out irregularly from the butt of the RapiScan.

Empty your trays, put your flip-flops back on as soon as possible, get your laptop and baggie of liquids, stash 'em where they belong.

Get your pocket contents back out and put them back in your pockets. Put your license away. Now keep the boarding pass in your pocket.

And, now, finally ... you can get your empty water bottle out of your suitcase, fill it up at a water fountain, take a nice long swig, and bask in the glow of your ... safety.

After all, we all know the screeners are perfect and never miss a thing. I mean, they spend a whole few seconds on EACH bag and tray. Plus, the visualization software they use to scan the bags for bad stuff is certified to have NO BUGS WHATSOEVER. I feel so warm, and fuzzy, and safe. And secure.

Thanks, Men In Blue.

Monday, June 10, 2013

Desperately Seeking Sugar Daddy

Come on, Internets. You have 13 hours left to prove how big you are...

Kickstarter project ends tomorrow morning. I need 861 more honorable mention pledgers, ... or 2 corporate sponsors, ... or 1 sugar daddy.

Tuesday, June 04, 2013

The End Approacheth: One Week Until 11:11 am on June 11...

Less than one week to go. At this time next week, we will find out whether ActiViz .NET has enough financial support to continue, or whether it will hibernate until somebody comes along and gives it a resurrecting kick.

I'm talking, of course, about my kickstarter project again. I just updated the project page with some pictures and some explanations that my non-geek "regular people" friends have a chance of understanding.

Check it out, and most importantly, share this link with your geek friends. And your friends who have geek friends. (They're the ones most likely to know somebody who actually uses ActiViz .NET...)

If we don't hit the goal of $11,000, then NO money changes hands and the project will remain unfunded. Please help spread the word if you can: I don't want YOUR money. I want you to tell the people who really need this thing to fly, just so they become aware of it. And then I want THEIR money.

So ... even if you already shared the link two weeks ago: share it again. There's so much stuff flying past everybody these days, it's easy to miss things. A little repetition doesn't hurt.

Thanks, friends!

Wednesday, May 29, 2013

Kickstarter Rocks!

I'm finally doing it: I launched my first Kickstarter project earlier this month, raising money for an open source software project. It's got 12 days and a bit to go. We're 10% of the way there. Will we make the goal? I don't know... We'll soon see.

In fact, you can see, too. It's all public, right here: -- it ends at 11:11 am on June 11th.

I would like to thank the people who have already pledged real money to this campaign: about half are people who really want the end result, and the other half are dedicated friends and family, whose moral support I have always known to be rock solid, but whose financial support of this project kind of took me by surprise. I am humbled, touched even, and honored to have you all in my life. You know who you are.

Kickstarter is awesome. I have been a backer of 5 projects since last summer. And I'm sure there are more in my future. It's a fabulous way to raise money toward completing artistic, technological, culinary endeavors and more. Stuff that you wouldn't normally be able to do because it costs more than you have, and there's no obvious way to get from A to B without having a rich uncle. Or worse, having a miserly rich uncle. Or so I'd imagine.

Karen Sabo, the creator of the first Kickstarter project I backed last summer said to me "I love crowdfunding, don't you? It's so Stone Soup." And it really is, isn't it?

It's "crowdfunding." Everybody who cares about your project kicks in just a little bit, and they help you spread the word, and before you know it, you have enough money to do the awesome thing you've envisioned.

I'm a numbers guy: I'm constantly figuring, counting things, and running what-if scenarios through my brain. The average Kickstarter pledge is about $70. For my $11,000 project, it would only require 158 people pledging at the average level to fund it. Or 1,000 people coming in for honorable mention at the $11 level. Or 10 people who really, really care about it coming in at the $1100 level. It is sooo possible.

But consider this: even better than the money perhaps, executing a Kickstarter campaign shows you something tangible about your endeavor. It proves that some number of people really do care about the art you're building. Even the campaigns that don't hit their goal end up with some pledgers. That, to me, with this specific project, is the real reason I'm running this Kickstarter campaign. If it succeeds, then I will have tangible proof that doing the work is worthwhile, and there are people who care enough to make it happen.

And if not, ... well, I've already made contact with a small number of people who really do care, and that just may inspire future actions: Kickstarter campaigns or other endeavors.

How about you? Need some money to finish a project you've always wanted to do, but have never tackled simply for lack of a large enough bank balance? Kickstarter might be for you. First, pledge to support a project that resonates with you. Perhaps even mine. :-)

Then check out their guidelines, and see if you can't come up with your own project to bring to life.

Sunday, May 19, 2013

Rush Still Rocks


The quintessential power rock trio.

They totally rock. Still. And they appeal to the thinker in me. And they do odd musical things now and again, like sections of songs in 7/4 time. And instrumental songs, where the music speaks for itself, no need for words. (YYZ, La Villa Strangiato, The Rhythm Method...)

And they don't care about blending in and being like the rest of the bands. They've got their own thing going, they do it well, and they still rock, after nearly 40 years together.

Cool facts about YYZ, sure you've heard them before: the percussive beginning of that song is the Morse code representation of the letters YYZ, which is the airport code for their home airport in Toronto.

I realized back at the end of last year / beginning of this, that I was lacking 12 of their studio albums. So I'm on a mission this year to collect one each month, and by the end of the year, I'll have them all in my music library.
  • January: Counterparts
  • February: Fly By Night
  • March: Hemispheres
  • April: A Farewell to Kings
And now, in May, this month's acquisition was their original studio album, the self-titled Rush, including the final classic track, "Working Man."

Five down, seven to go.

As my cousin Erik pointed out to me: "If you don't have La Villa Strangiato running in the background of your psyche 24/7, you are not a true Rush fan." Well, obviously, La Villa Strangiato is *always* running in the *background* of my psyche... but in March, I actually listened to it in the foreground about 38 times while I was working. I tried to learn bits and pieces of it on my guitar, too, but dang! Some of those riffs are fast in there.

If I had HBO, I would have watched the 2013 induction ceremony on TV last night, recorded last month out in LA -- Rush was finally inducted after years of being overlooked. A well-deserved honor indeed. Congrats Geddy, Alex and Neil -- and keep on rockin'... At least for a little while longer.

Rock on, eh? Ten bucks is ten bucks.

Friday, March 08, 2013

My Next Prediction: Tesla Model S for the win

The Tesla Model S is the next game changer.

I do not frequently make predictions, but I don't see how the world can stay the same old, same old after Elon & co. rolled this thing out.

Last time I wrote about a game changer was a bit over 3 years ago about Apple's introduction of the first iPad model. Was I right? I don't know, you be the judge. Have any computer manufacturers struggled or gone out of business since then? Have millions upon millions of iPads been sold?

Anyhow... the facts now: the Tesla Model S is affordable to richer folks right now, and it runs COMPLETELY and ENTIRELY without using any gasoline. Not one single drop. Fuck you, Exxon-Mobil. Every single mile driven in one of these cars is powered by pure electricity, which could potentially be powered 100% by solar, wind and hydro sources. In fact, with the Tesla provided, solar powered, free (ok, really "included in the rather high sticker price") so-called super-charging stations scattered about the highways of America, you may be able to charge your car entirely on their dime and the constant influx of power from our brilliant closest star. Last time I checked, the sun keeps rising every day.

Personally, I cannot afford one yet. But as soon as I can, or as soon as they come out with a $20k or $30k model, sign me the fuck up. This car's the future, and I've wanted it since I was a kid.

The writing's on the wall. The future is now. The oil & gas companies can kiss the long run goodbye right now. And the other car companies can follow Tesla's lead, or say bye bye real soon. It's a new game, starting now.

Wednesday, February 27, 2013

Windows Dev and Dashboard Prompt

First set up a cmd file (a batch file with a *.cmd extension) whose sole purpose is to set environment variables.

Mine, called DashboardEnv.cmd, looks like this on one of the machines where I have Visual Studio 2010 Express Edition installed:

    @call "%VS100COMNTOOLS%\vsvars32.bat"
    @set PATH=C:\Program Files\Git\bin;%PATH%
    @set PATH=%USERPROFILE%\DevBox\cmake-\bin;%PATH%
    @set PATH=C:\Python27;%PATH%
    @set PATH=C:\Qt\4.8.4-vs10\bin;%PATH%
    @set PATH=C:\dev\tools\bin;%PATH%

As you can see by inspecting that file, it sets up the environment just like a Visual Studio command prompt, and then adds a bunch of useful stuff to the PATH environment variable: git, cmake, python, qmake, ninja and jom, to name a few. I have ninja and jom in the C:\dev\tools\bin directory -- they could be anywhere, you just have to add the right directory to the PATH here in this script.

Next, set up a cmd file in the same directory as the environment batch file to display a "developer cmd prompt."

Mine, called DashboardPrompt.cmd, looks like this:

    @call "%~dp0DashboardEnv.cmd"

    @title Dashboard Prompt

    @echo Environment set by "%~f0"

    @call "%COMSPEC%"

If you prefer the "git bash" prompt to the raw Windows cmd prompt, you can change the call COMSPEC line to:

    @call "C:\Program Files\Git\bin\sh.exe" --login -i
After you have both of those setup, double click the prompt cmd file to test it out. Then you can create a shortcut to the prompt cmd file, put it on your desktop, or whereever you like, and then just double-click the shortcut to get a new instance of your customized developer prompt.

Some things I do to make the command prompt itself slightly less intolerable:
  • edit the command prompt window properties: with the window open, click on the icon in the top left corner, and choose "Properties" from the menu
  • modify the properties of the window to allow "select-and-Enter-key to copy, right-click to paste" behavior by choosing the "QuickEdit Mode" checkbox
  • set the screen buffer height (number of scroll back lines) to 9999, the max allowed
  • set the window size to something larger so you can see more text at once (120 by 40-50 is nice depending on your usual screen)
  • set the font to Lucida Console, and choose a font size large enough to read
  • if prompted, check "modify the shortcut that started this prompt" on the way out
Now that you're all set up for an interactive prompt with the right environment... here's the reason why separating it into two scripts is good for you. You can easily run any other script with the very same environment by adding one line at the top of it:

    @call "%~dp0DashboardEnv.cmd"

The %~dp0 there means "drive letter (d) and full path of containing directory (p) without any double quotes (~) of this script file (arg 0) including the trailing '\' character (implicit in p)" -- so if you write a script that references another script in the same directory, using %~dp0 is a reliable way to reference it, regardless of how the batch file was invoked. See the output of "help for" in a Windows command prompt for all the gory details about possible letter codes you can use in such constructs.

So: to run dashboards or other automated builds with the same environment that you use for interactive development, you can write a script that uses your Env.cmd file.

Mine, called RunDashboards.cmd, looks like this:

    @call "%~dp0DashboardEnv.cmd"

    @title Run Dashboards

    @echo Running script "%~f0"
    @echo.  started on %DATE% at %TIME%

    @echo Updating VTKLargeData...
    @cd "C:\dev\My Tests\VTKLargeData"
    @git pull

    @echo Updating VTKData...
    @cd "C:\dev\My Tests\VTKData"
    @git pull

    @echo Running VTK Release dashboard...
    @cd "C:\dev\My Tests\VTK"
    @ctest -S C:\dev\EasyDashboardScripts\EasyDashboard.cmake,ninja-Nightly-Release

    @echo Running VTK Debug dashboard...
    @cd "C:\dev\My Tests\VTK"
    @ctest -S C:\dev\EasyDashboardScripts\EasyDashboard.cmake,ninja-Nightly-Debug

One nice thing about guaranteeing the right environment is set for running a script like this is being able to just use "git" and "ctest" in the script itself.

Obviously, you'll need to adjust path values according to tool installations on different machines.

For more details on setting up to run dashboards on Windows, see this page over on the CMake blog. (Also published on the Kitware blog.)

Good luck -- tweet me @DLRdave or ping me on G+ if you use this technique.

Monday, December 31, 2012

'Twas the (Charitable Giving) Season

It's that time of year again. A chill wind blowing, long, dark nights, ... balanced by warm fireplaces and Christmas tree lights.

And time to figure out how to spread some Christmas cheer without filling the world with more "stuff."

As with recent years, we are continuing our tradition of donating to charities in honor of our loved ones instead of spending money on "too many" gifts. I encourage you to consider doing the same, and helping those who are less fortunate than we are.

We've donated to the following charities this Christmas season. We would encourage you to do so too, with the charitable organizations that are closest to your hearts. Write up a blog post, or put it on Facebook, or send us a note. We'd love to hear about what charities you love to support.

Give generously!

Here's wishing you and yours a Merry Christmas and a peaceful and prosperous New Year!

Sunday, September 02, 2012

Worn out

Today, Sunday September 2, 2012:

distance: 8.01 miles

time: 94.27 minutes

average pace: 11.77 minutes per mile

calories burned: 1065

fainted after the run: nobody

calories re-ingested at Perecca's after we were done: unknown, but of course, enough to call it brunch with a cupcake dessert...

Here's a picture of the bottom of my shoe:

Think we'll be ordering new Five Fingers on Amazon later today.


Saturday, April 14, 2012

Chunk of Change for Charity

Back in February, DLR softWare LLC made its first charitable donation, based on the proceeds from Sgt Fitness sales in 2011.

Thanks to all the Sgt Fitness users out there, and those of you that voted for your favorite charity through the online voting booth at, I wrote a check for $60.00 to The 3-Day for the Cure.

Spread the word: there are those you know who could actually use a dose of discipline from the old Sarge. And every copy sold through the app store adds $1.25 to the next chunk of change for charity.

Stay fit!


Saturday, April 07, 2012


Got a really cool present from my honey this year for my birthday (and a great card, too!). Thanks, baby! It's a t-shirt that looks like this:
IMG 1115
If it seems familiar, it may be that you read this post of mine from August, 2010:

My writing's been immortalized on a t-shirt! And I get to wear it whenever I want!
I'm a lucky man. Grateful for what I do have this month, not so concerned about what I don't have. Tell me, though... what sounds younger: 45 years or 4.5 decades? My grandparents always told me you're only as old as you feel, and you can stay young at heart your whole life through. I always did think they were pretty right-on.

Saturday, March 31, 2012


March, 2012: it was weird around here. It was just as warm as June or September usually is for about two weeks right in the middle of the month.

But that was mostly a good thing: I started riding my bike to work early this year, the week after we changed the clocks to what the Europeans call "summer time." (Stupid time changing. But that's another topic...)

RunKeeper tells me I've made 6 round trips to work on my bike this month. I swear I did 7, though: I must have forgotten to use the RunKeeper on one of my commutes that first week, because I swear I did 2 the first week, then 3, then 2 again. Apparently I only tracked one of those ones the first week, though. Maybe I didn't have enough battery power that day. I can't remember, it was a few weeks ago already.

Proud of this, though: I already cracked 40 minutes on one ride in this month.

Rock on.


Wednesday, February 29, 2012

Hello Leap Day

February 29th. An extra day. But it's a Wednesday this year, so in some ways, it hardly seems like it.

What are you going to do with it?

Just in case you're not sure, Seth Godin has some good ideas.

If none of that sounds appealing to you, you should check out Austin Kleon's new book, Steal Like an Artist. It's chock full of inspiration.

If you're still not inspired, you're gonna have to write your own blog. That's all I've got for today. :-)


Sunday, January 22, 2012

Bye bye "Big Money"

Can big money buy the Internet? No, I don't think it can. The Internet's simply too big to buy.

Here's a brilliant idea: let's eliminate money from the political campaigning process. We could eliminate "big money" completely, and take back Capitol Hill. Can you imagine: regular people being elected, and staying regular people for their entire duration in D.C./Albany/Sacramento/Olympia? And then going back to regular lives after their one or two terms?

Joel Spolsky got me thinking along these lines this morning with this Google+ post, and call me crazy, but I think he's got some valid points there.

In fact, I'd suggest taking it even one step further than simply giving away ads on the Internet for free: let's figure out how to ban the *sale* of TV, radio and Internet advertisements for anybody who's running for an elected position. And let's say that anybody who owns an outlet that contains advertising in their stream must provide 5% of that advertising time *for free* on an equal/rotating basis to *anyone* who wants a piece of it that is running for elected office.

It would soon "not work" -- because there would be so many candidates with so many free messages that the channel would be swamped, and the channel "owners" would simply not be able to show as many ads as they were receiving, let alone rotate through them on any sort of equality basis.

But, if we did this, even though we recognize in advance that it would not work well once a certain volume of candidates is reached, the people with money would have to figure out another way to influence the vote rather than simply spending a ton of cash on ads.

Of course, the people with money would still have an advantage. They'll be able to afford to actually physically go to many locations and appear in person in front of people. But for every other medium (aside from an actual physical presence) where money can buy influence, I think we should make the sale and purchase of such influence illegal. We should hold the SuperPacs, the TV stations, anybody who's involved responsible, and be able to charge them and proseucte them for violations. Possibly even taking things so far as to invalidate election results when violations occur.

What if we lived in a world where anybody could advertise their own political campaign free of charge in online video snippets? How would that change things?

Worth some thought, worth some discussion... even worth some action.