#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.

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.
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!

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!
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.

Religious Tolerance

I grew up in Snellville, GA, a suburb of Atlanta.  I was raised as an Episcopalian; Catholic light, half the guilt. I was baptized around 10 years old, had read the bible, and learned Christianity mostly from my mom.  My dad? He was more of the mind that you are no more a Christian for going to church as you are a car if you are in a garage.  I learned a great deal about religion and Christianity as a child/teen.  One of the biggest lessons I learned was that Jesus was our savior and died for our sins.  He was also preaching love and forgiveness, and that God would be our final judge.  I kinda dug that.  A lot. Continue reading “Religious Tolerance”

My Religious Beliefs

They may not sit well with you.  Or you over there.  Yeah, you.
Organized religion kills
I do not like organized religion.  This does not mean that I am not a Christian, or that I do not believe in God or that Jesus is my personal savior.  It simply means that I do not like an organization that has perpetuated its existence through war, rape, murder and conquering lesser developed groups of people.  The Crusades, all nine of them, from 1095 to 1272, was mass murder blessed by the Pope and the Vatican.  The Trail of Tears, 1830-1835, was one of the most despicable things done by our own US government.  By 1837, over 46,000 of these “Godless heathens”, who were here first by the way, were forced out of their homes and relocated to present-day Oklahoma.
Those are just two examples of organized religion doing bad things, specifically Christianity.  There are a ton of other examples, but not only from Christianity, but from EVERY religion.  Jesus taught forgiveness.  He also said that God is the only true judge.  How arrogant is any organized religion to believe they are justified to judge above God?
Respect each other’s beliefs
Many of my closest friends don’t truly know my religious beliefs.  Why is that? Because they are mine.  It’s kind of like folks knowing the size and shape of my penis.  It’s mine (ok, and Nancy’s), and it’s none of your business.  I keep my beliefs private, and frankly, I wish more people would as well.  If you have faith, good for you.  If you are Christian, Muslim, Jewish, or whatever, good for you.  I seriously mean that, and I write it with no sarcasm intended at all.
My mom is a very devout Christian, and while we can debate theology, she is extremely open minded.  She practices tolerance.  I firmly believe that Jesus practiced tolerance as well.  I’m convinced that if Jesus were to come back today, he would condemn so-called Christians that spout that ALL Muslims are terrorists.  Just because someone’s religion doesn’t agree with you, and some bad apples of another religion fly planes into buildings and kill ~3000 people doesn’t mean that EVERY member of said religion is a cold-blooded murderer that hates freedom, puppy dogs, and boobies.
Please be tolerant on Facebook
I have many friends on Facebook that will post content that promotes their religion.  “Keep Christ in Christmas” is currently the big one this time of year.  I know that if I posted a response, showing that Jesus wasn’t born on December 25th, but that it was the Christian church incorporating Pagan celebrations to help get more followers, I would piss off a lot of folks.
It seems to me, on Facebook, that it’s okay to profess your love of Jesus and/or God, but if I were to post ANYTHING that doesn’t jive with your beliefs, I’m being offensive.  This boils down to the simple cliche of “You can dish it out, but can’t take it”.  If you think it’s okay to post about how great your religion is, you should be tolerant of folks that don’t believe.  We go back to that whole thing about Jesus forgiving folks.
In the same vein, I will NEVER degrade you or your beliefs.  We go back again to respect.  Have respect for others’ beliefs.  The golden rule.  Do unto others as you would have them do unto you (or something like that).  I will see some nonsensical shit being spewed on Facebook, but will look at it, realize that the person truly believes it, and let it go.  I respect their views even thought I don’t agree with them.
I think we should all do such a thing.
Bottom line….
Tolerance.  Don’t judge.  It’s not your place.  Acceptance. Accept acceptance.  It will make your life easier to live.

Programatically Changing Users’ Roles in WordPress Multisite

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.
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);
*  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'];
$user = new WP_User($user_id);
//  Make sure you have the correct role here that you want to remove.
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.