Heal Your Church WebSite

Teaching, rebuking, correcting & training in righteous web design.

April 12, 2017
by meandean
Comments Off on Spring Cleaning 2017

Spring Cleaning 2017

As if anyone follows this nearly abandoned blog anymore, here’s what I’m up to:

You're only 2 clicks from joining the healyourchurchwebsite.slack.com community.

You’re only 2 clicks from joining the healyourchurchwebsite.slack.com community.

First, set up a slack channel to rebuild the community, build interest, have the community help decide the direction of this blog moving forward.  Think of it as your chance to boss me around with  your great ideas. It doesn’t cost to give it a try.

Second, it’s time for …

Spring Cleaning 2017

Let’s either reboot, or retire this blog.

  • I’ve already made private close to 775 out of 1050 blog posts I feel are no longer relevant.
  • The privatized blog posts will eventually be removed altogether and put into a deep freeze reference somewhere.
  • I’ll continue to chip-away at the content until I get things down to about 200 relevant posts.
  • Move any code snippets over to github, linking to them from here.
  • Expect a significant change in formatting, probably a parallax-ish.
  • Likely implement some sort of slack invite call-to-action button thingy here.
  • I’m doing alot with elasticsearch and azure search these days. Natural language processing too. Need to figure out how to perhaps introduce a little machine language fun as part of this blog. Dunno yet. Depends on what y’all say in the slack channel.

If you can figure out my early adopter gmail address from my last.first name (ahem) feel free to reach out for an invite to healyourchurchwebsite.slack.com.  I’m also easy to reach on at twitter.com/@deanpeters.

Apologies in advance to all those visiting this blog in hopes of updates on XP, Movable Type, dhtml, and other acts of obsoletism.

December 24, 2013
by meandean
1 Comment

Bad idea design poster #10 – Feature Creep

The misguided notion that somehow more is always better.

  • Main Entry: Feature Creep
  • Pronunciation: /fee-cher,kreep/
  • Function: intransitive verb
  • Etymology: Middle English feture crepen, from the act of over-building something
  • Date: December 24, 2009

Remember folks, flee from temptation to ‘gizmo’ up your site.

The misguided notion that somehow more is always better.

Instead, focus on workflow – that is the things your users want/need to do/learn from visiting your website.

January 3, 2013
by meandean
Comments Off on Church Marketing Sucks – An Infographic of their Top 10 Posts for 2012

Church Marketing Sucks – An Infographic of their Top 10 Posts for 2012

If you aren’t a regular reader of ChurchMarketingSucks.com, then either you like wandering in the church communications wilderness, or you just haven’t had time to add their RSS feeds to your aggregator … go ahead … I’ll wait.

Now that we’ve taken care of that piece of business, I thought I might bring to your attention their listing of their top 10 posts for 2012. Why? Glad you asked.

As your church &/or charity finalizes your communications strategy for 2013 — assuming your organization plans such things in advance — I thought it might be helpful to create a colorful handout of CMS‘ top 10 list so you could better identify targets for tactical textual content.

Infographic: Top 10 Posts at Church Marketing Sucks for 2012

Infographic: Top 10 Posts from Church Marketing Sucks for 2012

Once you’re done downloading this infographic, why not show some love and link on over to Church Marketing Sucks and read the rest of their top 10 posts for 2012 article?

Credit & Thanks to:

December 1, 2012
by meandean

Social Media is for engaging in dialogs, not a platform to pound the pulpit!

Dear social media friends & circles, if you use Facebook & Google+ as you would a blog, then don’t get upset if I ‘defriend’ & ‘uncircle’ you.

A Failed Social Media Strategy

Last night I ran out of patience with an individual on Google Plus (G+), who though they meant well, were entering a series of multi-paragraph posts on their stream, with quotes, photos and all.

  • Basically, they were treating G+ like a blog.

As Annoying as this was on my laptop, I ignored the situation. However, spending time on my new Samsung Droid Charge, I found right flicking finger blistered beyond belief as I had to page past several screens of this user’s tomes to see what anyone else was doing.

As soon as I ‘uncircled’ them, my GPlus mobile user experience went from ARGH to Aaaahhhh.

I’ve had similarly ‘defriend’ some on  Facebook as well, though for the most part, only in those cases, I’ve basically start out by ‘hiding’ all posts by an overzealous associate before going with the nuclear option.

And for what-its-worth, I make good use of gmail’s filtering capability for spammy newsletters that don’t respect the ‘unsubscribe’ option hey offer.

So what’s in it for me?

So what can we learn from the above kvetch-fest? Plenty, glad you asked.

Whether you engage in social media for personal fulfillment or as part of a larger digital marketing strategy, the point of social media is to ENGAGE others IN a DIALOG.

If you want to get all preachy and pound the pulpit and/or go all prose on your organizations next big shindig, then may I recommend some of the following tactical approachs?

  • create a killer blog post to present your idea or event;
  • give the blog post a ‘pheromone infused’ title;
  • make sure the 1st paragraph has ‘crack-like’ compelling content;
  • add #hashtags to your blog post’s tags;
  • using the above, create a magnetic 100-120 character meme/excerpt to post on Facebook, G+, Twitter, LinkedIn, etc …; and
  • now go take a look at your work on a variety of platforms (mobile, laptop, tablet, etc …), and tweak those that appear annoying, ill formatted and/or ineffective.

Finally, and more important than any of the above — make sure to follow-up with folks who post comments, re-tweet and/or reach-out to you based on your awe-inspiring words of wisdom.

Bottom Line

So here’s my call to action:

  • use blogs for providing compelling content;
  • use social media to engage others in dialog;
  • develop a tactical approach that uses the right tool for the job for your digital marketing strategy; and
  • have a digital marketing strategy.

Agree, disagree, have an opinion? Why not force me to practice what I preach and leave a comment?

Social media icons galore!

November 17, 2012
by meandean

Digital Marketing is about Vision, Strategy, Tactics and Activity – in that order

Successfully marketing your church or charity in the digital domain is more than adding a “Like Button” to your blog.

Social media icons galore!I’ve become aware of this after the popularity of my “Facebook Like Button Plugin for WordPress.”

In the past year, I’ve received a number emails requesting features and implementation requests that seem to think that this Facebook service can solve all their social media marketing needs.

So it pains me when I have to reply with a ‘no’ to some very nicely worded requests.

I generally spare such a request of the technical limitations of Facebook’s API. I also spare them the bitter reality that there is no “magic bullet” when it comes to digital marketing.

So to make up for the latter omission, I’ve written below what I believe it takes for a church or charity to survive their drive along the information highway – specifically in terms of online outreach and ministry:

  1. Vision;
  2. Strategy;
  3. Tactics; and
  4. Activities

… in that order.

Problem is, most organizations I’ve seen fail on the web do so because they jump into activities without understanding that success needs to have:

  • measurable objectives;
  • focused, targeted audiences;
  • feasible short, medium and long term plans; and
  • return on investment.

I’ll blog later about these “haves” in a future post. For now, let’s define what I mean by Vision, Strategy, Tactics and Activities … in that order.


  1. Grow organization that …
  2. … serves their local community of Lutherans …
  3. … by feeding their faith; and…
  4. … equipping them to feed others.


  1. Bring in more visitors.
  2. Get visitors to become members.
  3. Get members to become active participants.
  4. Get active participants to become evangelists.


  1. Attracts more visitors through popular digital venues.
  2. Provide online content that allow visitors to comfortably explore your organization.
  3. Provide online tools that help members plug-in to programs and collaborate.
  4. Provide online training and services that help evangelists get the word out.


  1. Get the sermons, lessons online, videos and photos onine; and track it all with Google Analytics.
  2. Create a community presence via a Facebook and/or LinkedIn group, and don’t forget Disqus.
  3. Integrate tools such as BaseCamp for program management and Google Apps for document processing.
  4. Enlist tools such as SurveyMonkey and MailChimp to equip individuals in the field.

If you’re finding that your organization is not getting anything but a passing interest from your online activities, then why not take a step back and consider the above?

If you still feel that a rocking WordPress theme for your church website is the key to your organization’s digital marketing management, then I’d ask you to consider what measurable results you received from similar efforts in the past?

As always, comments, questions and criticisms are welcome, so long as their couched in love.

October 10, 2011
by meandean
Comments Off on What to do when your Twitter Account gets Compromised

What to do when your Twitter Account gets Compromised

Despite employing strong passwords that I change regularly, despite deleting unsolicited Direct Messages (DM) and mentions with links to unknown destinations, a simple “fat finger faux pas” event lead to me granting a 3rd party Twitter application permission to spam my followers. For that I apologize — and as part of my penance, have provided some useful advice, images and even a script to help you remedy that situation if you should ever similarly fall victim so such malware.What to do when your Twitter account gets hacked

I woke up a little after 1:30AM last night because I though I had heard some racoons helping themselves to my  trash can as if it were a salad bar. Once that venture into suburban sanitation security was resolved, I checked my Samsung Droid Charge for any incoming notifications.  One that caught my attention read:

Strange link via DM from you just now.

As I dug in, I realized that my Twitter Followers were being sent a DM with a link to a third party Twitter Application, which when clicked, would begin the process of similarly turning their Twitter account into a spam-sending zombie.

First thing first, I read the instructions on Twitter’s help page entitled “My Account Has Been Compromised, ” which advised me to:

  1. Change your password (go ahead, make it  a strong password)
  2. Revoke connections (to any 3rd party application you think suspicious &/or are no longer used)
  3. Update your new password in your trusted third-party applications

Which I did immediately. I then went into Twitter and began to manually delete the messages the pusilanimous 3rd party program had sent. It wasn’t long into this tedious process that I realized “… this is how I got hacked, the malware link is WAY too close to the delete link.”  I’ve attached a screenshot of a test DM to demonstrate the usability issue I’m trying to describe:

How the Twitter delete DM links can sometimes be too close to a malware link

A bit of context, earlier in the evening while watching the 1st quarter of the Packers/Falcon’s game, I received an obvious malware DM. I pulled up Twitter in my browser on my Droid rather than the mobile App because there’s less keystrokes to deleting such conversations. Unfortunately, I clicked the Malware link. I remember that happened because I quickly hit the back key and then deleted — not thinking anything would happen because of my miscue.

I was wrong. Later, sometime during the 4th quarter while searching stats on the Pack’s stunning 2nd half comeback, I saw on my little Droid browser a page that looked like Twitter, asking me to log back in. I was busy with the game, I’d seen Twitter do this before. What I didn’t see that the link was  actually pointing to a misspelled site: Twittler.com!

So despite all my talk about strong passwords, ignoring unsolicited candy from strangers, and other such stuff, I granted a 3rd party application permission to spam the h-e-double-toothpicks out of my followers. Worse, just about the time I was through deleting all the rogue messages, I received another communique that reminded me that followers who get email notifications of DMs were still going to see the link.

So at about 2:45AM, I set out to write a script that would send DM notifications to all my Twitter Friends — technically, those individuals of whom I follow, who also follow me. I won’t go into too much gory detail, other than the resulting replies indicated grateful followers, who while suspicious, were glad to get the personalized Direct Message warning from me.

I chose PERL, because while other languages may be better for long term projects, I knew I could field a solution within an hour and a half by taking advantage of the Net::Twitter module provided at the CPAN library; along with a fresh set of API consumer and access from the Twitter Developer’s page.

I call this script “DM_mea_culprit.pl,” and since it can be used to send a bulk messages to all your Twitter followers, please resist temptation and limit its use it for good:

# Summary:
# --------------------------------------------
# Sends a Direct Message to Friends - those people on Twitter
# whom I follow who also follow me
# Arguments:
# --------------------------------------------
# none yet, we'll get that done on the next version
# Example Use:
# ---------------------------------------------
# perl DM_mea_culprit.pl > run01.log.txt

use Net::Twitter;
use Dumper;

# NOTE: you will need to get consumer keys and access tokens from the
# Twitter Development Center: https://dev.twitter.com/start
my $nt = Net::Twitter->new(
traits => [qw/API::REST OAuth/],
consumer_key => $YOUR_CONSUMER_KEY,
consumer_secret => $YOUR_CONSUMER_SECRET,
access_token => $YOUR_ACCESS_TOKEN,
access_token_secret => $YOUR_ACCESS_TOKEN_SECRET,

# this information is useful to log at the beinning of the script
# .. it includes how many more messages you can send w/in the hour
my $ratelimit = $nt->rate_limit_status();
print Dumper($ratelimit);

# construct the outgoing direct message
my $omsg = "please do NOT open any URL you may have received from me last night as a DM. It was malware.";

# get all the ID's of people I follow
my @ids;
for ( my $cursor = -1, my $r; $cursor; $cursor = $r->{next_cursor} ) {
# for a larger net, consider followers_ids()
$r = $nt->friends_ids({ cursor => $cursor });
push @ids, @{ $r->{ids} };

# walk through all the IDs
foreach my $id (@ids) {
if($id) {

# get an array that describes the friendship
my $friend = $nt->lookup_friendships({ user_id => $id });

# get their screen name
my $screenname = $friend->[0]->{"screen_name"};

# see how you're connected to this friend
my $connections = $friend->[0]->{"connections"};

# important -- do they follow you?
my $isfollowedby = $connections->[1];

if($isfollowedby) {
my $dmsg = "\@$screenname, $omsg"; # personalize the DM
my $smsg = $nt->new_direct_message($id, $dmsg); # send the DM
if($smsg) {
print "message '$dmsg' successfully sent to #ID".$id."\n";
} else {
print "WRN:".$id."\t@".$screenname."\texperienced a message fail\n";
sleep (2); # don't overrun Twitter
sleep(3); # don't get blacklisted

# Now send out a generalized message to the peeps;
my $res = $nt->update({ status => "TO MY FOLLOWERS: $omsg" });

# last bit of logging
print "This work is done\n";
exit 1;

All that said,  here are some things I’m doing to do moving forward to avoid such instances.

  1. continue to change my password periodically, using something very strong;
  2. periodically review my third-party application connections, removing anything that looks suspicious and/or is no longer in use;
  3. always use the Twitter Mobile App to delete DMs with bad looking URLs when on my Droid smartphone;
  4. take a harder look at the URL when asked to log back into Twitter (or Facebook for that matter);
  5. perfect the above script — adding logic to delete spammy DM’s while sending out the warning; and
  6. being the Social Media API junkie that I am, perhaps re-write this in Python.

Please feel free to add your recommendations to the list above — and again — apologies to my Twitter followers for the hassle.

May 17, 2011
by meandean
Comments Off on Bad idea design poster #11 – Canned Content

Bad idea design poster #11 – Canned Content

One of the things myths I’ve heard from attending my share of  Word Camp Raleigh events is that template systems are somehow a magic bullet to a successful online marketing campaign.

Canned Content, about 1/2 as interesting as lima beans with 1/3 the taste and 1/10 the nutrition.

Not that there’s anything wrong with terrific tools such as  Thesis, Headway, Genesis, and Builder; nor the premium themes one can purchase for them.

Rather I’m hoping that along with the discussion of getting a fast start with premium framework themes and plugins that we also remember what usability guru Jakob Nielsen said about ‘Information Foraging‘ back in 2003 when describing how to catch and keep visits from data hungry first time visitors:

The two main strategies are to make your content look like a nutritious meal and signal that it’s an easy catch. These strategies must be used in combination: users will leave if the content is good but hard to find, or if it’s easy to find but offers only empty calories.

Basically, Nielsen is detailing how to attaining user-activity goals through the careful crafting compelling content and the navigation to it – known in the web strategy/analytics world as a ‘conversion funnel.

So it is my hope that amid discussions on how to make our blogs look  ‘different like everyone else’ via various rendering engines, that we also take some time to talk about how-to develop a sensible information architecture that best suites the goals of your church and/or charity.

Put another way, we need to remember that if  “Web users behave like wild beasts in the jungle …,” then we probably want to avoid taunting such ‘Informavores‘  with ‘canned content’  when in fact only raw meat will satisfy their hunger.

In other words, just because a number of the speakers are justifiably and understandably using this conference as an opportunity to sell their template and plugin wares – it shouldn’t be to the exclusion of those in attendance whom are seeking help with all the other aspects that go along with establishing an effective web presence.

Meanwhile, if you’re headed into town, let me know. If you can’t make the event, keep in mind that there’s a “SitePoint Podcast coming to WordCamp Raleigh.”