My Wife Cried At the Bar Today

No, this isn’t the title of my new country/western song.nancy

As most of you know, my wife Nancy is shaving her head tomorrow and donating her long locks to WIgs for Kids.

She and I have been raising money for St Baldrick’s to fight children’s cancers. She set a goal of $10,000 to reach, back in November of 2014, and it came to fruition today…one day before the event.

We went to Lures in Crownsville for lunch. Honestly, we went there because I had a craving for a burger, but also one of our favorite bartenders’ last day was today. After we ordered our drinks, Nancy started getting notifications about donations to her St Baldrick’s fund. Little by little, it looked like she was going to make her goal.

Mike, the bartender, walked over to me and slipped me a fifty, and said “Please add this to her fund.”  He then walked over to another person sitting at the bar, and explained what Nancy was doing.

The guy introduced himself, and said “I own this place…Hey Mike? Take $100 out of the till please?” and boom Nancy had $150 that quick.

A little later on, we got an enormous gift from my best friend (names redacted due to not contacting him yet) which put her at $10K. We both got misty from the money from our local joint, but then our friend put Nancy at the goal?  Yeah, there was some eye leakage.

Bottom line? Not only do our friends kick ass, some folks we only know from a restaurant have helped restore faith in humanity.

Thank you, humans.

 

The Fathers Day Incident

996591_10201681871310912_1009678729_n

Don caught a Hodges!

258272_2134444163023_6014404_o

Cap’n Chris driving my boat!

 

 

 

 

 

 

 

 

 

DISCLAIMER: I, AND MY CLOSE FRIENDS, HAVE A VERY WEIRD AND TWISTED SENSE OF HUMOR

(If you share this link on Facebook, please DO NOT tag folks involved in this story)

What do I mean by this? Myself, my wife, and damn near all my friends and family laugh at things that we probably should not laugh at. I can’t speak for my other friends, but I laugh at inappropriate stuff to help me deal with whatever I’m going through.

Continue reading

#wpmom and the WordPress Community

I have been involved in the WordPress community for about 6-7 years, and I’ve always been impressed with the people that I’ve met. Coming from a .NET programming background, the WordPress community could not have been more different. I’m not bashing on .NET, it’s just that with the advent of social media, specifically Twitter, I’ve received more help in this community than any other I’ve been part of in my professional life. I could list many a story on how this community has raised money for folks wanting a new computer, needing medical care, and at one point helped buy a person a house.

A friggin’ house, y’all.

Yesterday, I got the news that a WordPress colleague, Kim Parsell, had passed away. The how and why are not important. The point is that WordPress has suffered a huge loss. I don’t know when I followed Kim on Twitter, but it’s been years. She was given the nickname WordPress Mom, shortened to a hashtag #wpmom, because she genuinely cared about others. Her maternal instincts would make sure that Jan ate lunch. She would remind Andrea to get up from the computer for a few minutes during the day. She repeatedly reminded me that it’s a bad idea to tell my customers to “go shit in a hat”.

I finally met her at WordCamp Baltimore in 2012, and to be quite honest, at first, she kinda bugged me. Jesus, she could talk! About anything, and everything. I remember her being interested in almost everybody, and having that camera of hers either in her hands or around her neck at all times. She took some amazing photographs. At some point on that Saturday, she went from being annoying to endearing. I enjoyed hanging out with her that day, and looked forward to seeing her again. I figured BFE, Ohio isn’t that far from Baltimore, so we’d see each other again soon. Welp….

I could sit here and type how her passing made me lose my shit during the football game yesterday, or how I dreaded going to work this morning…knowing that I’d be on Twitter and be reminded about her death all day, crying into my keyboard, trying not to let coworkers see. But this post isn’t about me. This post really isn’t even about Kim’s passing so much as it’s about how awesomazing the WordPress community is.

At 2:37pm today, I saw a tweet that Kim’s son, Gary, needed some help.

Hi everyone. This isn’t the sort of thing I normally do, but with the recent loss of my mom, I am having to postpone the starting of my new job and money is running very thin. I would appreciate any help you could give to help me pay my bills while I grieve for the loss of my mother. Anything you can give is appreciated. Thanks, Gary Thrasher #wpmom #mymom

I clicked the link and saw something that made me lose it again right there at my desk:

$760 of $1000 raised by 8 people in 42 minutes

At the time of this writing, 29 people have donated $1,760 in four hours.

Go ahead and wrap your brain around that.

My long-winded point to this post? I’ll miss the hell out of #wpmom, but I have never been more proud to be associated with a community like I am with WordPress.  I’ve seen the wagons circled in support of folks when their code is stolen, pirated, or their copyrights infringed. This is the first time I’ve seen the WordPress folks circle their wagons on a personal level (as it happened). Seeing a community come together for #wpmom’s son made my heart melt.

To anyone and everyone in the WordPress community that has reached out and helped a colleague, thank you.

I’m convinced Kim is out there somewhere, looking down and appreciating what you are all doing….

Unless she’s talking St Peter’s ears off at those gates 😉

Help My Wife Fight Cancer

I apologize – only to a certain extent – for the click-bait of that title.

nancyrenn1

Look at those locks!

To clarify, my wife, Nancy, does not have cancer. She is helping fight children’s cancers.  At this point, I will pretty much do anything in order to help my wife make her goal of $10,000 all in support of the St. Baldrick’s Foundation.

Background

As some of you know, I had a cancer scare five years ago. Thankfully, it wasn’t cancer, but it was a huge wake-up call that cancer is real, and it could affect me (and my loved ones).  In the past five years, I’ve gone out of my way to help raise money and awareness to help wipe out this horrible disease.

I’ve shaved my head twice for St Baldrick’s, done Movember a couple times, and donated to countless charities to fight cancer. I’m such a sucker for donations that I even offered to shave my eyebrows at the St Baldrick’s event last year for $600. Turns out my friends are awesome/horrible…I got the money in less than an hour.

But this post isn’t about me…

…this is about my lovely wife.

I thought I couldn’t be more proud of Nancy after what she’s done professionally, but I was wrong.  She and I had previously volunteered our time to help set up and organize the St Baldrick’s event at Fadó in Annapolis, MD, but only I had shaved my head. During the planning of the last St Baldrick’s event in February of 2014, she decided that she wanted to participate as a shavee. The last time Nancy got any sort of haircut was in August of 2013.

For those of you that don’t know Nancy, she’s a lawyer. She is currently Associate Area Counsel with the IRS. This might not mean much to folks that don’t/haven’t worked in the government, but it means she is a lawyer as well as a manager of other lawyers, while employed by the US government. The gov’t can be a bit conservative on personal appearances, especially at her level, a GS-15. On top of that, she’s a female, and current society doesn’t look upon females with shaved heads as easily as men. She really didn’t care, she just wants to help out, and both myself and our friends that she’s shared this with cannot be more supportive. Even her office is supportive.

Everything was coming together, her working with her office, deciding how to wear her long hair until March of 2015, and then something happened that made her really want to participate.

Rebecca, a little girl she didn’t know at all, died

I found out that Eric Meyer‘s daughter, Rebecca, was battling cancer at the beginning of 2014. He’s a web developer that I have followed for years on Twitter. I don’t feel comfortable typing a lot about Eric and Rebecca here on my own blog post, but I must say that one of the major reasons that Nancy wants to shave and raise money is to honor Rebecca.

When I first read about Rebecca, I told Nancy about her and would update Nancy about her when I knew anything new. It wasn’t until after I shaved my head in March of last year that I realized that the Meyer family was involved with St Baldrick’s.  Carolyn, Rebecca’s sister, had shaved her head for the cause. I would have loved to gone back in time and given all my donations to Carolyn.

Sadly, on June 7th, 2014, Rebecca passed on her 6th birthday.

I broke down and cried, and Nancy decided that she would honor Rebecca with her St Baldrick’s donations.

This is what Nancy posted on her St Baldrick’s page:

Cancer has affected so many people that I am close to, and I have seen too many people die from it. When the victim of this horrible disease is a child, the injustice seems even more poignant. This was brought home last year when, just a short time after last year’s event, my husband’s friend lost his 6-year-old daughter to cancer. This year, I am joining my husband by shaving my head to raise money for children’s cancer research. I have also been letting my hair grow for the last year so that I can donate the hair they shave to Wigs for Kids.

Childhood cancers are different from adult cancers and childhood cancer research is extremely underfunded. So please help me raise money for cures by making a donation. Every dollar makes a difference for the thousands of infants, children, teens, and young adults fighting childhood cancers.

Thank you very much for your support!

Conclusion

I have been on the fence for weeks about posting this, specifically about using information about Eric and Rebecca. I feel like I’m mooching off someone’s tragedy to make money and I feel dirty. It is NOT my intention to do that. Nancy and I were truly and honestly moved reading Eric’s posts.  We’re not trying to profit from anything, we just want to help stop cancer that kills children.

With that said, I felt I needed to post this to share how much Nancy is investing with this. She’ll be a 40 year old female lawyer with a shaved head that works for the government. It’s honestly not nearly as easy as it sounds.  I cannot be more proud of her, and I will be tweeting/facebooking the hell out of her link until March 15th when she gets the shave :)

Please share this post wherever you can, via twitter, FB, email, etc….I don’t care.  Let’s kick cancer in the nards!

Links:

In Memoriam: Rebecca

To donate to Nancy:  https://www.stbaldricks.org/participants/mypage/738756/2015

The Shirt Stay Incident

When I was stationed in Maryland back in 96-99, I would sometimes have to report for duty up at Ft Meade, MD. Due to the high profile of my duty station at the time, Commander, Naval Security Group, I was required to wear my dress uniform more often than not.  I had no problem wearing it, but the Navy summer dress uniform had a major problem: the shirt tended to creep up and become untucked over the work day.  The solution? Elastic!  shirtstays

I purchased shirt stays from the local NEX (Naval Exchange), and here’s how they work: You attach the top parts to the front tails of your shirt, both on the left and right side, then the other two are snapped to the left and right rear tails of your dress shirt.  Once attached to your shirt, you would put on your socks, and pull down the elastic bands and attach to the top of your socks.  Once they were properly attached, you’d put on your dress pants and shoes.

To make it even more secure, us sailors would wrap the shirt stays around our legs. I would attach the upper clasp to the front-left tail of my shirt, and wrap the elastic down around my leg and attach it to my sock on the back of my thigh.  Then the front-right tail of my shirt would be attached to the back of my right sock.  Then I’d reverse it for the rear tails…attach them to the front of my socks.  It kept my shirt tucked in at all times, and it looked AWESOME.

I used shirt stays safely for about three or four years without incident.  Hell, I just typed “used without incident”.  Back then, my brain never thought that there would ever be an incident.  I was sadly mistaken.

I don’t remember exactly who I was with, but one fateful day I went out on a smoke break with a buddy (from here on out known as Buddy).  Buddy and I had to walk almost a full city block from our office at CNSG to the smoking area out in the front of the building.  Buddy and I were about halfway to the smoking area and I felt a little nudge on my right sock.  The front part of my right sock felt like it sagged a little bit.  I kind of looked down, acknowledging that something was a bit off kilter, and then Buddy said “Dan, are you listening?”

“Oh, sorry…what was that?”, I said as we turned a corner in the basement of the building.  The hallway got a bit brighter, and Buddy got quiet…we were walking up on the quarterdeck of CNSG.

To those not in the Navy, when approaching/crossing the quarterdeck of any Navy ship or shore station, you always show respect.  Think of it as walking into a church/library combination where you are on your best behavior, and also talking with your lowest voice.

Buddy said “Hold on…”, as we walked towards the quarterdeck.  The Officer Of the Day (OOD) just happened to be walking back from the cafeteria (I know, “galley” in Naval terms, but we were on a shore site….and the Philly Cheese Steaks were better than anything you’d get on a ship!) with his lunch, so we moved out of his way.

This is when my life was truly altered.  I remember Buddy walking along side of me on my right, and the Lieutenant acknowledged Buddy and I as he walked past.  As I moved to my right, I felt something move on my right sock…

Then everything happened in slow motion.

I felt the clasp become undone on my sock and then felt physics come into play. Upon reflection there was no sound to what happened next, but if it were a movie, it certainly would have sounded like a balloon popping. The metal clasp on the front of my right sock opened and the elastic contracted at damn near light speed, inside my pant leg, as I was walking.

My right leg was extended forward and I felt the metal clasp shoot up my leg, again, remembering this all in slow motion.  The lower clasp shot up and…doing what elastic does…it didn’t just stop once the elasticity was expended.  It continued further up.

My right foot touched the ground just as the metal clasp finished its slingshot journey up my leg, right into the worst possible location:  My boys.

If you are a male, imagine the feel of a rubber band being extended and shot onto your boys from a distance of three feet.  If you are female, think of…uh…I dunno….the worst rubber band pain? I honestly don’t know.

The next thing I know, I’m laying on the ground in front of an admiral’s quarterdeck, in a fetal position, with tears coming down my face.  My mouth is wide open in a cry of pain, but there is absolutely no sound coming from me.  I am cupping what I think is left of my twigs and berries.  At that point, I honestly thought, due to the pain, that everything had been cleanly severed and I’d never ever have kids.

My next memory is the LT kneeling down and…I smell his cheese steak.  Yeah, that’s my thought process…FOOD.

“Petty Officer Gilmore, are you OK?  What’s wrong?”, said the LT.

He’s holding my shoulder in one hand, and his carryout cheese steak in the other.  I tried to stand up and just kind of laid there, whimpering.

“Sir, I’m fine…I just had a…uniform accident. My shirt stay…kind of….didn’t”

Once I said that, I heard a guffaw from Buddy.  I rolled over (still laying on the ground in dress whites) and saw Buddy laughing so hard he was crying and doubling over.  I can’t blame him, as I would have probably laughed my ass off as well.

So, a few minutes later, there I am, outside an admiral’s quarterdeck, sitting in a leather bound chair.  Many a sailor has already passed by me, giving me a weird look, mainly because I was still holding my junk in pain.

In conclusion, Buddy and I went and smoked, I stopped wearing shirt stays, and I missed out on that Philly cheese steak for lunch….

 

How would YOU build this solution?

In my organization, we have a 24×7 help desk, and they asked me to create a custom theme for their use to track system outages, and provide daily summaries to upper management. This will be on a WordPress Multisite installation and the subsite will be private for only the helpdesk and management.

I first installed Advanced Custom Fields and WP Posts 2 Posts based on recommendation from Jesse Peterson.  I created two custom post types, Outage and Summary.  What I want to do is have each outage be a separate post, and at the end of the day, the Summary post type would list each outage that happened on that day.  In addition to the outages, the summary would also have info pertinent to that day, such as personnel, etc.

Jesse showed me an example of how he did it on one of his sites, and it looked really slick.  I’d like to have the main page be a chronological list of outages and summaries (got that part done), and in the right primary column, list the summaries in order.  When I click on the summary, I want the list of outages on the main content portion.

I’m not looking for folks to write code, but I’m curious how you would go about creating this solution.

My Movember, 2012

As most of you know, when I try to grow facial hair, I tend to look like a 13 year old Guatemalan boy.  On estrogen.  With that said, for the last four years, every November I’ve been growing a moustache ridiculing myself for money. What is this madness? Why would I do something like this?  What drives me to continue?
Continue reading

Programatically Changing Users’ Roles in WordPress Multisite

Background:

I inherited three different WordPress installations (each one on a separate closed network) from a developer that was leaving our contract for a government civilian position.  I had a grand total of five days to pick his brain about WordPress, and our infrastructure.  It sucked, greatly.

We had two custom Roles in our installations: Blog Owner, and Team Admin.  Blog Owner (listed as ‘owner’ in the database) was the role assigned to the Administrator of a personal blog (a blog with only one user, and said user was the administrator).  Team Admin (listed as ‘teamadmin’ in the database) was the role assigned to users that were Administrators for a “Team Blog”, basically a blog with multiple user accounts associated to it.  Why did we go this way? I have no clue.  I was not part of our organization at that point.

When I upgraded everything to WordPress 3.2.1, Administrators, Blog Owners and Team Admin’s seemed to lose some abilities.  In particular, they did not have the ‘edit_theme_options’, or ‘list_users’ capability.  Upon further research, it seems that I now have two major problems:  The upgrades did not recognize my custom roles, and thereby did not apply the appropriate capabilities to those roles. I looked through the database and saw that I’d have to change over 9,000 records in the wp_usermeta table, on one network alone.

Did I mention that on one network I have over 6,590 blogs, with over 12,000 users?  Yeah, that’s a lot of user editing that I would not do by hand.

Solution:

After much discussion via Twitter, I came up with the following little piece of code that is working for me, and I hope it helps with others.  With regards to the paths, I have this as a php page in a subdirectory of the home directory of our WordPress installation, hence the ‘../’ in each require statement.  Edit that as you need.

global $wpdb;
ini_set("display_errors", "1");
define("WP_INSTALLING", true);
require('../wp-config.php');
require('../wp-blog-header.php');
require('../wp-includes/registration.php');
get_header();
/*
*  Edit this variable to reflect the custom role you want to change.
*/
$role_to_update = 'a:1:{s:5:\"owner\";b:1;}';
$results = $wpdb->get_results("select * from wp_usermeta where meta_value=". $role_to_update .";", ARRAY_A);
if (is_array($results))
{
foreach ($results as $result)
{
//  This line pulls out the blog_id from the meta_key, i.e., 'wp_BLOGID_capabilities'
$blogid = mb_substr($result['meta_key'], strpos($result['meta_key'], '_') +1, strrpos($result['meta_key'], '_') -3 );
$user_id = $result['user_id'];
switch_to_blog($blogid);
$user = new WP_User($user_id);
//  Make sure you have the correct role here that you want to remove.
$user->remove_role('owner');
$user->add_role('administrator');
restore_current_blog();
}
}
echo "DONE!";

This is quick, dirty, and ugly, but it’s working for me. I would LOVE feedback on how to do this better, cleaner and/or more efficient!

You Can Help, You Just Might Not Know It Yet

I have been a WordPress developer for about 3 years, coming from a .NET background.

I run three different installations of (finally) WordPress 3.2.1 on three separate networks.

I converse on a daily basis with some of the best and brightest of WordPress developers, from the hobbyist to the WordPress core developers.

I have been repeatedly invited down to Washington D.C. to have dinner and/or beer and catch a Caps hockey game with one of the core devs who is also an Automattic employee.

I was asked to present at a potential WordPress conference in D.C. about how the Intelligence Community uses WordPress.

I have in my iPhone the number to the author of one of the biggest selling WordPress technical books available (Two editions!).  I was interviewed for those books.  In fact, he may or may not owe me money…need to look into that again.

I met Matt Mullenweg. I had a beer with him in San Francisco.  I told him how I utilize WordPress in my professional career, and he said “WordPress is used in the Intelligence Community? COOL!”  That’s pretty much one of the coolest things that could have been said to me.

With all of that said:  None of that goes to my head.  I am not trying to brag, just making a big point.

I am a newb, a functional WordPress idiot. 

Compared to all of those folks above (and many more folks), I am pretty much a drunken silverback gorilla trying to create source code with one hand behind my back and my good thumb removed.  I ask people questions about WordPress multiple times a day via Twitter.  I’m like your best friend’s little brother tugging on your shirt sleeve asking “Hey, can I play too?!?!?”  That’s how I see myself.  I know we all start at the bottom, and I’ve received nothing but awesome help from everyone involved in the WordPress community.

I was mentioned by Jane Wells in a her blog post “In Praise of the Forums”.  She makes really good points about how we, as a community, need to help each other, and the WordPress.org Support Forums are a great place to help out. Personally, if I post a question in the forums, I try to answer/comment on at least five threads.  I may not be able to fix a person’s problem, but at the very least, I’ll steer that person in the right direction.  The best case scenario is that I fix the person’s problem and learn something in the process.  Win-Win.

Now, what’s with the title of this post?  Well, don’t scare the newbs.  When I first started going to the forums, it was to leach knowledge.  I was scared and intimidated to provide help.  I won’t rehash what Jane posted, but it all boiled down to “Holy crap, the mod’s know 109348 times more stuff than me, so I’ll let them handle it”.

I was way wrong.

We, as a community, need fresh blood helping out in the forums.  Just because you haven’t had a slew of core edits added to trac doesn’t mean you can’t help out.  There are a lot of simple fixes.  You, as a WordPress dev, may be surprised at how much you could help.  Please, take 5-10 minutes out of your day, scroll through the threads, and see if you have any ideas  on how to help out someone else.

In the small amount of time that I’ve been on the forums I’ve been hit up on Twitter asking for help.  That kind of blew my mind.  Someone wanted my help.

I’m contributing, however I can. Contributing to a much bigger thing.  It feels good, and it really made me smile.