• A couple of things I’d like to point out about the Space Pen

    So it’s tax season, and the old urban legend of “we spent $X on a space pen, and Russia used a pencil” story is making the rounds as an example of wasteful government spending. I’d like to point out a couple of things that we should all keep in mind :

    (1) The story is false. While the program was started by NASA, the project was abandoned as too expensive. The actual Space Pen  was developed using private capital, by Paul C. Fisher. See Here and Here.

    (2) It’s a FREAKING SPACE PEN. This is a technological achievement! This is American Engineering at its FINEST, and something to be proud of.

    (3) What kind of havoc does pencil shavings have on an air-filtration system and zero g? Can’t have a pencil without a sharpener, and those things are messy. Unless you like floating in a haze of graphite dust.

    (4) Are you honestly saying the Soviet Russia was better than America in the 60′s & 70′s? Oh, wait…

    (5) This was over 40 years ago. You sound like a spouse/significant other who keeps bringing up the time you did that thing – you know the one – a long time ago and even though they said all was forgiven, they bring it up every time you have an argument, even though it has no bearing on the point they are trying to make.

    If you want to have a serious talk about wasteful spending, let’s talk about black budgets, two wars, oil company subsidies, bank bailouts, and equally relevant budget items. Let’s not talk about an urban legend that is both false and therefore has no bearing on the argument at hand. Frankly, I’d rather spend the money on TEN SPACE PENS than paying oil companies to be profitable.

    I mean, come on people, IT IS A  FREAKING SPACE PEN, developed and marketed by a private company in the US, and used by both NASA and the Russian Space Program now. Sounds like a win to me.



  • A note about my vape-gear

    MAGFest was, as usual, lots of fun. And I got a LOT of questions and compliments on my vape (aka e-cig) gear over the course of the weekend. So, for all an sundry (and in particular Bear & Megan) here is the list of gear I had with me this past weekend. I figure posting it here will help me remember, and someone else might be interested….

    Where I buy it all (almost) : The Puffing Monkey of Raleigh.  They have everything but the Vapor Chef liquids in stock. Tell them I sent you.
    https://www.facebook.com/ThePuffingMonkey

    Hardware setup – you can find all of these online, or at The Monkey :

    Kamry K1000 pipe (black and purple)
    Innokin Itaste MVP2 box
    Volcano Lavatube V 2.5
    Kanger Unitank
    SMOK PBC V1 Tank

    Juices :

    From http://www.volcanoecigs.com/e-liquid/
    Choconilla Haze
    Salted Caramel

    From http://fogsauce.com/
    Five Pawns Grandmaster
    Jolly Rogers Captain’s Custard
    Jolly Rogers Pumpkin Custard

    From http://vapegoddess.net/
    Vape Goddess Ginger Fetish
    Shoreline Rincon

    From http://thevaporchef.com/
    Vapor Chef Honey Pearry



  • The 2013 that is and was.

    The last day of 2013. Huh. That went quick. So did my promise to update blog(s) with more than music playlist more often….

    So in case you missed it, 2013 is the year Ursula and I got married, in a surprise ceremony before a week-long cruise to Alaska. It was brilliant, and I suppose we should throw a party on this coast at some point. Then again, the only way we had time to get married was to sneak it in between all the other things we do, so…. *grin*

    For many – including us – 2013 was a year of triumph, heartbreak, new friends, old friends, new adventures in places new and old, new projects, ongoing projects, unexpected victories, and spectacular screw ups. So a typical year. Overall the good outweighs the bad, and with 2014 looming around the corner, I’m ready to do it all over again.

    Still, the standout moment for 2013 for me is the Wedding + Alaska.  The high point in a year of awesome. And there is more to come…

    Y’all be safe out there, and I’ll see you in 2014!

    And now, the obligatory list of other places to find me/us :

    Podcasts

    Social Media

    And where to find me/us in 2014!



  • OpenVZ DIsk Monitors on OpenNMS

    At work, we run a lot of Parallels Virtuozzo, which is a commercially supported version of OpenVZ. There are a couple of challenges monitoring OpenVZ, since it abstracts out a lot of the OS and snmpd can’t get the data.

    Thankfully, there is the ability to extend snmpd with scripts. The basic extend functionality is covered in the man pages, so I’m going to focus more on the OpenNMS side of things.

    First up, create a script to grab the disk stats from the OpenVZ host. The script I use to get the disk usage stats is :
    #!/bin/bash
    DF_DATA="$(df / | grep / | tr '%' ' ')"
    TOTAL=$(echo $DF_DATA | awk '{ print $2 }')
    USED=$(echo $DF_DATA | awk '{ print $3 }')
    FREE=$(echo $DF_DATA | awk '{ print $4 }')
    PCNT=$(echo $DF_DATA | awk '{ print $5 }')
    echo $TOTAL
    echo $USED
    echo $FREE
    echo $PCNT

    Then we add the following to snmpd.conf and restart the daemon:
    extend vzdisks /usr/local/sbin/vzdisks.sh

    At this point, you shoudl be able to run snmpwalk and see the data :
    ksonney:~# snmpwalk -c nocstats -v 2c localhost .1.3.6.1.4.1.8072.1.3.2.4.1.2.7.118
    NET-SNMP-EXTEND-MIB::nsExtendOutLine."vzdisks".1 = STRING: 188743680
    NET-SNMP-EXTEND-MIB::nsExtendOutLine."vzdisks".2 = STRING: 15437520
    NET-SNMP-EXTEND-MIB::nsExtendOutLine."vzdisks".3 = STRING: 173306160
    NET-SNMP-EXTEND-MIB::nsExtendOutLine."vzdisks".4 = STRING: 9

    (you can see all the extends you have running by using the OID .1.3.6.1.4.1.8072.1.3.2.4.1 – everything after that is the unique identifier for the particular entend)

    At that point, you can start working on the OpenNMS configuration. Since I run more than one extension, I have a file called etc/datacollection/extensions.xml. The clause I use for the vz disks :

    <datacollection-group name="extensions">
    <group name="vzdisk-stats" ifType="ignore">
    <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.7.118.122.100.105.115.107.115" instance="1" alias="totalDisk" type="octetstring" />
    <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.7.118.122.100.105.115.107.115" instance="2" alias="usedDisk" type="octetstring" />
    <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.7.118.122.100.105.115.107.115" instance="3" alias="freeDisk" type="octetstring" />
    <mibObj oid=".1.3.6.1.4.1.8072.1.3.2.4.1.2.7.118.122.100.105.115.107.115" instance="4" alias="percentDisk" type="octetstring" />
    </group>
    <systemDef name="Net-Snmp Extensions">
    <sysoidMask>.1.3.6.1.4.1.8072.3.</sysoidMask>
    <collect>
    <includeGroup>vzdisk-stats</includeGroup>
    <includeGroup>mysql-backup-stats</includeGroup>
    </collect>
    </systemDef>

    </datacollection-group>

    Add the following line to etc/datacollection-config.xml :
    <include-collection dataCollectionGroup="extensions"/>

    And then add in the OpenNMS Configuration for graphing the stats (etc/snmp-graph.properties.d/vzdisk.properties) :
    # Virtuozzo reports
    reports=netsnmp.vzdisks, netsnmp.vzdiskuse
    # Custom NET-SNMP Script extend: Disk stats from Containers
    report.netsnmp.vzdisks.name=Virtuozzo Disk Status
    report.netsnmp.vzdisks.columns=percentDisk
    report.netsnmp.vzdisks.type=nodeSnmp
    report.netsnmp.vzdisks.command=--title="VZDisk Percent Used" \
    --vertical-label="Percent Used" \
    DEF:pdisk={rrd1}:percentDisk:AVERAGE \
    LINE2:pdisk#0066FF:"Percent Used " \
    GPRINT:pdisk:AVERAGE:"Current \\: %8.0lf" \
    GPRINT:pdisk:MAX:" Max \\: %8.0lf\\n"
    report.netsnmp.vzdiskuse.name=Virtuozzo Disk Use
    report.netsnmp.vzdiskuse.columns=totalDisk,usedDisk,freeDisk
    report.netsnmp.vzdiskuse.type=nodeSnmp
    report.netsnmp.vdiskuse.command=--title="VZDisk Usage Stats" \
    --vertical-label="Disk Space in Bytes" \
    DEF:tdisk={rrd1}:totalDisk:AVERAGE \
    DEF:udisk={rrd2}:usedDisk:AVERAGE \
    DEF:fdisk={rrd3}:freeDisk:AVERAGE \
    AREA:udisk#0066FF:"Used " \
    GPRINT:udisk:AVERAGE:"Current \\: %8.0lf" \
    GPRINT:udisk:MAX:" Max \\: %8.0lf\\n" \
    STACK:fdisk#00aa00:"Free Space " \
    GPRINT:fdisk:AVERAGE:"Current \\: %8.0lf" \
    GRPINT:fdisk:MAX:" Max \\: %8.0lf\\n" \
    GPRINT:tdisk:MAX:"Total Disk Size \\: %8.0lf\\n"

    At this point, if you restart OpenNMS, it should start pulling the data. Give it about 15 mins for the data to start being pulled in, and you should see a graph for percent disk usage showing up.

    For a little advanced fun, you can add a threshold to the threshd-configuration.xml and get notifications when it goes over :

    <package name="vzDisk">
    <filter>IPADDR != '0.0.0.0' &amp; (nodeSysOID LIKE '.1.3.6.1.4.1.8072.%')</filter>
    <include-range begin="1.1.1.1" end="254.254.254.254"/>
    <include-range begin="::1" end="ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"/>
    <service name="SNMP" interval="300000" user-defined="false" status="on">
    <parameter key="thresholding-group" value="vzDisk"/>
    </service>
    </package>

    And for thresholds.xml :
    <group name="vzDisk" rrdRepository="/opt/opennms/share/rrd/snmp">
    <threshold description="Virtuozzo Disk High Threshold"
    type="high" ds-type="node" value="85.0" rearm="84.0"
    trigger="2" ds-label="VZ DIsk usage" filterOperator="or" ds-name="percentDisk"/>
    </group>

    Restart OpenNMS, and you should be good to go.



  • One voice, one vote

    Um, hi. I haven’t forgotten about this side of my blog, I’ve just been busy. Almost too busy. And I have a backlog of things to post here, so…

    Let’s start with what’s been going on in NC. Anyone who has been watching the news in NC knows what sort of politics are going on here. And after some talk last night with Ursula, I got off my ass and started to DO something.

    This morning, I :
    - Signed up to be part of the Rapid Response Internet Task Force
    - Increased my EFF donation
    - Called my US House Representative (David Price), to register my displeasure with his vote against the NSA Amendment. The girl who answered the phone also asked if I would like a response, which I would, and am hoping Rep. Price has a good reason for voting for continued NSA monitoring of all US citizens
    - Called the NC Govenor’s office to ask that he keep his campaign promise and veto the Motorcycle Abortion Bill.
    - Called my NC Senate Rep, who actually answered her own phone. I was shocked! I was calling to thank her for fighting the good fight for the women, children, and disenfranchised in NC. In her words “they have undone 17 years of work” with this session. I promised that we would keep up the fight, and that we hope she does too.
    - Called my NC House Rep, and left a message thanking her for fighting the good fight.

    I’m not sure what kind of difference this will make with Rep. Price, Gov. McCrory, or NC Rep. McManus. I do know that Sen. Kinnaird knows how I feel, and it was amazing to be able to talk to her.

    If you live in NC, here are some reminders :
    - We need to work to reverse the Voter ID law. This is a horrible law. In the mean time, start talking to all the people you know to make sure they have proper ID for the polls at the next election.
    - We need to keep the pressure on Gov. McCrory to veto the Abortion bill
    - Call or email your reps! They don’t know if you are happy or unhappy with them if you don’t call or email!

    If you live in the US, and are as concerned as I am about the things we are finding out about the NSA surveillance :
    - Call your Reps! Give them your views!
    - Support the EFF

    And in any case, get up, get out, and get active.

    (And I do not know how many watch lists I got myself on. So if the Black Helicopters come for me, you’ll know why)



  • A pot of Chilli – Nov. 2012 version

    ’Tis the season for crock-pot cooking, and I do so love to have a pot of chili when the temperature drops. I make mine from scratch, no recipe, and it’s different almost every time. I’ve been really happy with some past versions, but I’m pretty sure I knocked this one out of the park. And since Ursula is raving about this batch’s flavors, it’s time to post this variation.

    Be warned that I’m guessing on some of the amounts – I was pouring some stuff in, and not actually measuring. Also, this is a “cook ahead” kind of meal – I did all the prep while cooking last night’s dinner, and we ate it tonight…

    Kevin’s 2012 Chili
    Prep Time: 20-30 mins
    Cook Time : ~23 hours

    Ingredients :
    1 lb. ground goat
    1 lb. stew beef, cut into ~1/2 pieces
    1/4-1/2 lb leftover roast turkey, diced
    2 cans chili flavored stewed tomatoes (I used Harris Teeter brand), drained
    1 qt frozen diced fresh tomatoes – DO NOT THAW
    1 can each chick peas, red kidney beans, and black beans, drained
    1-2 tbs Sriracha
    8 oz STRONG decaf coffee (I used a Fog Lifter K-Cup)
    1/4-1/2 cup Soy Vay Veri Veri Teriyaki
    Lee & Perrin’s Worcestershire Sauce
    1/4 cup GOOD Tennessee Whiskey[1]
    7 1/2 oz shredded Cougar Gold[2] cheese (about 1/4 a wheel, optional)

    Put the frozen tomatoes into a big crock pot. Do not thaw them. Brown the ground goat, and add that to the crock pot. Brown the stew beef, searing and caramelizing, but not cooking past medium-rare. Add *THAT* into the pot, juices and all. Now add all remaining ingredients, except the cheese. Set to high and cook for 4-6 hours, stirring occasionally. Set to Low and cook for the next 10-14 hours, stirring occasionally.[3] If yours has a “keep warm” setting like mine does, just let it do that until dinner time, and – guess what! – stir occasionally. Check flavor every few hours to “tune” it if needed. Serve in a bowl with a spoon, and sprinkle cheese on top if desired.

    [1] I used the Jailer’s, and Ursula yelled at me for about 10 mins to use the crappy stuff for cooking. I will defend myself with the words of Justin Wilson : “Don’t cook with it if you won’t drink it”
    [2] http://cougarcheese.wsu.edu – We love this stuff. I’d say “We put this shit on everything!” but Frank’s Redhot Sauce might sue.
    [3] For this stage, I’m talking every 4-6 hours here. Last thing before bed, first thing in the morning, and maybe when you wander past later in the day.



  • Timeline of a Meal

    7:35 am – Take pork roast, fresh (not hard) apple cider, one dark beer, and one apple out of the fridge.
    7:37 am – Get out the big damn slow cooker
    7:40 am – quarter & core the apple
    7:42 am – Put everything in the slow cooker, set to high for 6 hours
    1:30 pm – clean 1lb fingerling potatoes
    1:35 pm – clean and slice in half 1/2 lb Carrots
    1:40 pm – clean and chop up lb sunchokes
    1:50 pm – throw all that in the slow cooker with the roast
    1:52 pm – for the hell of it, add in about 1 tbl fresh chopped ginger
    1:55 pm – half a large onion in quarters? Sure, let’s add that too
    1:57 pm – Set to cook on High for 4 more hours
    5:50 pm – Pull it all out of the liquid, separating the meat from the veg
    5:55 pm – Serve with the cooking liquid as a sauce or gravy. Salt to taste

    The meat just falls off the bone, and the veg is JUST RIGHT. Oh and the flavor? Lovely stuff.



  • Dear friends and fans in the NorthEast US

    So I’m looking at the maps, predictions, and storm tracking for Hurricane Sandy. As someone who has grown up in NC[1], let me tell all our friends, family, and fans in the North East – be ready[2]. Were this a normal storm, it’d be a pain in the ass, but the mix hitting all at once looks pretty rough. Head inland if you can, follow the advisories, and if they tell you to evacuate, do it.[3]

    I’ll admit, if it were down here, I’d be pretty “meh” about it. “Oh, and Category 1? Wet and Windy, no worries.” I don’t generally get worried until a storm reached Category 3. All the bad ones we’ve gotten this far in are Cat 3 or higher at landfall. However, y’all aren’t subjected to these sorts of storms the way we are, and don’t build or plan for them the way we do. Be prepared, be informed, and be safe.

    [1] Where hurricanes have been a way of life for the last 300+ years and where we learn how to track storms and follow the news on them before age 10. Since 1950, we’ve had over 180 tropical storms of one sort or another, and Hurricane Hazel is still fresh in people’s minds, with Hurricane Fran a reminder of how bad it can get.
    [2] Kage has a good reference for you.
    [3] No, really. DO IT.



  • Bubonicon and That Worldcon Thing

    I promised a report on both Bubonicon and Worldcon, and since I’m home fighting off the con-crud today, I figured it’s as good a time as any.

    In short – both are AWESOME. Bubonicon is possibly one of the best cons we’ve attended, since the staff and fans are nice, and the regular attendees include SF/F royalty. We didn’t have a table, so Ursula could spend more time with the fans and attendees, and it was AWESOME. The entire con was just pure fun, and in some cases, almost a warm-up for WorldCon, since we would be seeing many of the authors and fans there the following weekend. If you are a SF/F writer, this is one of the “must go” cons for you, since it give you the opportunity to talk with your peers, both past, present, and future.

    And see them we did, as we were off to Worldcon about two days after we got home. We were going just for the Hugos, but were able to spend a lot of time at the SofaWolf table meeting fans. And in addition to that, we were able to meet some of OUR favorite authors and creators (and see many of our new friends from Bubonicon). We took the time to see how the sausage was made at the Business Meeting[1], which was really eye-opening. Did you know that a room with about 120 people at WorldCon makes decisions like what Hug categories stay and which go? We didn’t, but now we do[2]. I could go on about how awesome the Foglios are, how much of a class act people like Howard Taylor and Adam Christopher are[3], the fun we had with friend and roommate Mur Lafferty, and the trip to the Asian grocery with Duncan and Takaza[4], but I’m guessing no one cares about that right now.

    You want to hear about the Hugo.

    If you’ve been living under a rock, you might have missed that Ursula’s Digger was nominated for Best Graphic Story. And – spolier alert! – she won. It was AMAZING.

    We were on pins and needles all night, we sat in the audience and held hands tighter and tighter as the category got closer, and then they announced her name and it was just WOW. I lost it and sat there in tears of joy while she delivered her speech like a pro. She looked FABULOUS on stage with all the winners. We went to the after party, and had a lot of fun. The fans were amazing, stopping and congratulating her whenever they saw her. My lady is now part of SF/F history, her comic has the recognition we all felt it deserved for YEARS, and I couldn’t be more proud.

    And if I didn’t see the photos on the internet, I’d hardly believe it.

    On Monday morning, we were just another couple at the airport, two more people in line for the TSA, and one more car driving home. We had our traditional after-con meal of Burger King (oo, fancy us), and came home to clean up after the beagle, hug the collie who missed us greatly, and remind the cats that no, this is really our bed, not theirs. Get the kids off to school, grab some milk at the grocery…you know, normal things. maybe it was all a dream….

    …but there she is, standing next to Cat Valente and Neal Gaiman, holding a rocket. So it must be true. We figure we’ll both be a little giddy for a week, while we adjust to being home, and then it’s back to the grind.

    It was a good set of trips, but it’s good to be home – where the cats keep us humble, the dogs adore us, and the frogs sing their songs of love out in the pond every night.

    And once we recover, I’ll start thinking about next year.

    [1] Where we helped make the Graphic Story Hugo permanent, and fought the opening round of creating a Young Adult Hugo, although we lost that vote – this time
    [2] And, I’m sa to say, mostly older fans, many of whom admit their ignorance, and use that as a selling point as to why a category shouldn’t exist.
    [3] I could give you a list of awesome people who we were able to meet, hang out with, and get to know, but man, it is a long list…
    [4] There will be more on that, including audio if it came out, on KUEC.



  • Quick update from Worldcon

    I have been remiss in updating my main blog, but things, as you may know are afoot. We are about 5.25 hours away from the Hugo Ceremonies, and Ursula and I are a bit of a wreck. We are distracting ourselves as best we can. Wish us luck, and I’ll have a full report on this and Bubonicon next week.