Category Archives: Programming

From Bubble Graphs to Mind Maps

Bubble Graphs

I can honestly say there are almost no learning techniques from Jr. High that I have carried forward through my short academic life into business. However, there is one gift that a now nameless, faceless teacher once gave me. That gift was the ability to put my thoughts on paper first, and then dork with them and refine them. She (I think it was a “she”) called them “Bubble Graphs”, but the point was to brainstorm about a topic for a speech, a paper, or an argument and document things. Then go back and do the organization and structuring of those thoughts, with a final output being an outline.

Those of you who have conversed with me for more than a few moments know that my brain multi-threads pretty well when thinking, speaking, and typing. It doesn’t do so well with multi-tasking actual work, but it is highly optimized for thinking. This becomes problematic when my environment puts certain constraints on me, like for instance time, energy, and sleep. So, in time I developed a method of getting my rapid, fluid thoughts out of my brain and onto one of these “Bubble Graphs”.

I started using them in Junior High in Extemporaneous Speaking contests, and then used them at Baylor on almost every paper I wrote and every speech I gave as a Speech Communications major. This approach even helped when I entered the business world as I created Powerpoints, training documentation, technology proposals, project plans, and conducted audits of companies. For me, it was simply the best way to get the unstructured data that flowed rampantly in my brain onto paper, and then decide how the concepts were related, what was worth keeping, and how the final deliverable would be structured. I now know this method to be the same as a concept map.

Mind Maps

About four years ago I stumbled on some software that would allow me to do “mind mapping”. The differences between a mind map and a concept map are subtle. Basically a mind map tends to be more structured in format and there is typically no direct grouping of concepts other than by what the structure and hierarchy of the mind map document provides. That said, the process for creating a mind map and a concept are essentially the same.

Mind mapping software enables a person or persons to quickly document ideas on a screen with almost no technical difficulties that would hamper the creative process. And yet, these ideas can be restructured very speedily by simply dragging and dropping an idea underneath another idea. This creates a very agile approach to document individual or group ideation, whether it be mission statements, business plan outlines, venture capital pitches, or things as abstract as meal recipe organization. It can even help with brainstorming about lengthy blog posts (see my mind map for this post below).

FreeMind Mind Mapping Software

After trying many different mind mapping software products over the last four years, I have finally settled on one that I can’t get enough of. FreeMind is the tool I have recommended recently to a number of other internet professionals. Regardless of the varying ways they think, they almost always come back and say “the more I use this, the more I use this”. Once you really “get” this process and this kind of tool, you begin to find heaps of other ways in which it will help you.

I recently used FreeMind on a consulting engagement where I was asked to make recommendations about how to turn their business around. I took notes of each stakeholder conversation in individual text documents, but then used the mind map to tie all the concepts, problem spaces, and solutions together. This aided me in understanding a large, complex problem at a single glance. It came in handy when it was time to draft the deliverable document of my recommendations.

Also, recently, I used FreeMind on a 150+ page web project to develop the navigation scheme (Information Architecture) that will easily expand in the future to more than 500 pages. The two freelance designers I was working with were able to collaborate on my work by simply opening my file and changing things up. On this same large project, 15 of us used FreeMind during a series of meetings to create a massive mind map that profiles our eight core audience member types. We included each of those profiles characteristics, needs, and the many ways we felt we could meet their needs based on what resources we have available to our organization. This was an invaluable tool in not only understanding our audience, but in helping us as a team to decide which of the 8 types of people coming to our website would be our core focus, which would be of secondary focus, and who we would try to serve as we could.

Why I Love FreeMind

  • Free to use(yep, it’s open source)
  • Cross platform
  • Scalable for very large maps
  • Easily installed and updated
  • Has numerous export options (images, PDFs, outlines in various file types)
  • Built with Java and XML

There seems to exist a little online community around the FreeMind software, which is maybe best illustrated in this online list of mind maps that you can explore for ideas on how to do your own. I am especially fond of this start on Calvinist “Sects”.

Mind Map for This Blog Post

FreeMind Mind Map

Where is Jason?

Everywhere and nowhere, that is where. In addition to some significant life changes I hope to blog about next month, I am in the midst of a big web ministry project at the church where I work. We changed our audience focus from insiders to outsiders, and are completely redoing our site visually and architecturally.

I did heaps of research on Church web sites, and was fortunate enough to partner with some of the greatest design and technology folks doing stuff for ministries. BUT, I missed one site that would have changed my entire perspective on this deal. Unfortunately, I am almost done… and it is too late to reverse course. I am just sick I didn’t see this before starting my project.
Bobby Chandler, one of two designers on our church staff, has the scoop.

Father of the TV Remote Control Dead at 93

I am a big fan of This Week with George Stephanopoulos. Mainly because I get to hear quippy commentary from George Will during the round table portion of the show. But they also have a section of the show called “In Memoriam” which reviews the “important” people who died that week, and displays the total number and list of soldiers names who have passed away in Iraq and Afghanistan during the week.

This month they listed a little-known person named Robert Adler, who literally changed my life. Co-inventor of the TV remote control, Robert Adler was quoted at a later point in life as saying “This thing has so many buttons. I don’t know what most of them are for and frankly I could not care less.” Proof that the people who invent the technology are not always the first to value its use. Zenith has a great write-up on Rober Adler’s work for them.

Last night I adjusted my Select Comfort bed’s Sleep Number with a remote control. This morning I awakened my Mac Mini computer using the remote control which came with it. I used the TV remote to turn on the TV which the Mac uses for the display, before using my Apple wireless mouse and keyboard. As I walked to my car in the apartment parking lot, I opened and closed our garage with a remote control to get some things I needed. I unlocked my car security system using a remote control. Tonight when I go home, I will use a remote to open the security gate of the apartment complex in which I live. When I am at my buddies later in the night, we no doubt will use his TiVo remote a hundred times during Lost and last week’s The Office episodes.

The remote is an integral part of my life that I take for granted. I grew up with it, so I use it without much thought in the same way kids use cell phones today as an extension of their person. Sure, Robert Adler was just one of the ones who perfected the idea, and now it takes on many different forms using many different wireless technologies (Adler’s used ultrasonic waves). Still, the convenience the remote control brings to my life makes the original nickname Zenith used way back in 1950 of “Lazy Bones” a really great tag for its presence in my life. Thanks Robert Adler. You made things easier on all of us!

Why Netflix Gets It and Blockbuster Does Not

So I attempted to cancel my subscription a few moments ago because of a bad experience, and had to fill out a survey to get it done. There was a comment field where they asked “How Can We Improve? Would you mind taking a minute to explain why you’ve decided to cancel your account?” So, I was willing to help out and wrote the following in my very sick state (the flu or a cold maybe). Upon submission of the survey, a form error was returned on the comment field which reads: “Please type in 255 characters or less for your comments.”

Apparently, Blockbuster doesn’t want all of my comments or a true discussion with their would-be customers. So, I am posting this to my blog for the world to see and adding the link to the comment field in the subscription cancellation field (I doubt they will read it). The first amendment has never been so sweet, has it?

Basically, you guys don’t understand the value of a life-time customer. I went into the store as a Netflix customer who was having a lonely weekend, with not enough movies to entertain me. The wife and I had decided to rent three movies. I saw your TV ad earlier in the day, which communicated to me that I could sign-up for your service and pick up/drop off movies either in the store or online. So, I went to the store to sign up and get three movies.

The high-school aged kid that was there communicated that I would even get a third-movie free tonight with a special coupon they had there. So, I signed up while in the store with him by my side. Filled out the preferences, all my account info (which you already had because I have been a customer for over 10 years), and entered my credit card detals.

I then took my three movies to the counter, where the kid gave me a total of $9.94. I said, “What are you talking about…. I just put in my credit card information in for the monthly service, now I am ready for my movies”. He informed me that the service was only for movies that come through the mail… and that when I return movies at the store that I receive through the mail, then I can get coupons for movies through the store while I wait for more movies to arrive through the mail. I was shocked and confused. I simply said, “But *I am* waiting for my movies to come through the mail”. All he was empowered to do was blink I think, cause he didn’t even call over the manager.

Not being one to quit easily, I communicated that part of the reason I had signed up in store and was willing to move away from Netflix was because it seemed like I could get get the benefit today of Netflix plus in-store pickup. He could not clearly communicate to me the reason why picking up a movie in-store is different than getting it through the mail. From my perspective, I signed up for a Blockbuster service that allowed me to have X number of movies out at any given time, and return in store or via the mail. All I wanted was three movies so I could snuggle up with my wife.

So, Blockbuster, If you really want me as a life-time customer, give me the benefit of what I have paid for NOW. Keep the details of your inventory system, your cost centers, your work-flow, your finances, etc. out of my way and out of sight. Customers don’t care about your pain and are apt to forget you if your pain in getting products to market gets in our way… which is why I am sitting home with the flu today, unwilling to drive down the street and rent from blockbuster.

Thankfully my single Netflix movie came last night… and guess what, they sent it to me when my list was empty, anticipating the type of movie I would enjoy. And it looks like they got it right. They understand that to keep a customer you have to lower the barriers that get in the way of the customer relationship. Blockbuster, you could learn a lesson there.

Now, to all you other companies out there, if you care for me as the customer and want me to evangelize your products, you will empower me to do so as early as you can… with no hassle or waiting, or uninformed high-school kids.

Netflix Gift Certificate I Can Send to Friends

E-zekiel Content Management System Failure

Those of you who build websites know sometimes the things you attempt simply will not work. Either the technology won’t cooperate or it is designed in a way you don’t expect. Once in awhile you come across an infrastructure item that has a bug or an odd behavior. Even less often do you come across a security problem that is a result of poor engineering.

The thing that makes what I am uncovering tonight so worrisome is that the company who provides the service is bound to know it exists. It is too simple to have been missed. As such, I let the company behind E-zekiel know by email that I am publishing this blog entry exactly 48 hours after emailing them. Hopefully they will fix the problem and this will be an artifact of what can go wrong in web programming and nothing more. Otherwise, I *think* we are all free to link to any URL we want and say what we want. For those who might critique that 48 isn’t long enough, I ask that you research the company to see how long they have been running their operations with such a glaring information security problem.

At the suggestion of a friend, I looked into the E-zekiel Content Management System. Some of the churches I have helped over the years use this CMS application service provider. I had previously evaluated the platform for a talk I did at MinistryCom. My conclusion was that I could recommend it for small churches on a small budget. My friend, Nathan Smith, came to other conclusions. But this week I took another look at how the E-zekiel URL scheme works. What I found was shocking.

Within the URL on any page hosted on the E-zekiel system is a SITE ID and a PAGE ID. For example, the URL string …/details.asp?id=29646&PID=361947 would have a SITE ID of 29646 and a PAGE ID of 361947. While their SITE IDs are unique per customer, their PAGE IDs are global across all their clients. All PAGE IDs are in the same database table I would guess. This model is normally not a problem in centrally hosted applications, because they are engineered to make sure the PAGE ID gets correlated to the appropriate SITE ID. But as they implemented it, you can insert any PAGE ID of any E-zekiel customer’s page into the URL at any other E-zekiel customer site (and thus design).

Under the right circumstances, this allows any number of social engineering opportunities. For instance, someone could use automated methods to generate URLs and then promote those links elsewhere on the internet. Suddenly you could have a generic donation opportunity on thousands of pages that get indexed by search engines. Someone searches for “Example Baptist Church + Giving” and they get the donation page content of a fake non-profit for an easy bait and switch. After all, the user saw the donation opportunity on their preferred organizations website didn’t they? (As an aside, what ECFA implications would this have I wonder?)

Or, a group of covert liberals could put a political endorsement for a given Presidential candidate on every E-zekiel Church site. While it is true that the actual sites of the churches would not link directly to the endorsement or donation opportunity, there are enough known link propagation methods to make the links as popular as they need to be to get some search engine traffic to thousands of E-zekiel hosted domains. Suddenly you have churches trying to defend a political endorsement they say they never made. But the web user saw it on the churches website, didn’t they? Flickr screenshots would be all the rage. I can see it now!

The following links (hopefully they won’t work by the time you read this) are examples of the problem and DO NOT represent things that are part of Bob Buford’s ministry and life. I respect the man and am picking on his site only because I favor his design over other sites built with the E-zekiel tool and because highlighting his site might bring some attention his way from a demographic that otherwise might not know who he is.

The Ministry Leadership Development program that is not Bob’s, but is Beeson Divinity School’s.
What Bob Buford Believes (maybe/maybe not).
Bob Buford’s Giving Campaign (not really).
Bob Assigning Copyright To Someone Else (not really).
E-zekial Selling Services on Bob’s Site.
Bob Teaching Others How to use E-zekial (not really).

There are literally millions of ways in which this bug/feature could be used to make ministries look bad or confuse their message. Post some in the comments if you can think of some good ones. True, I have been a little doomsday in this write-up. Even so, for now I am changing my recommendation from “buy” to a “beware” on the E-zekiel Content Management System.

I will update this post if I learn more or when they fix the problem.

[UPDATE 01/14/07 – 9:55 pm CT]
Upon sending an email to as well as the email of their employee responsible for bug tracking, I received the following, which I imagine is an autoresponder:


This is just a quick note to let you know has received your support request. A member of our Technical Support Team will address this issue immediately.
Barring any special circumstances with your situation, we will have you an answer today or at the very latest within 24 business hours.

If you have any additional questions or concerns or if we have not responded within 24 business hours please call us.

Technical Support is available:
Monday through Friday
8:00am to 6:00pm Central Standard Time
Toll free: 1.888.942.6607.

Thank you for choosing

PS: Be sure to check out our online Help manual at

[UPDATE 01/15/07 – 3:20 pm CT]
Followed the links in my article to check up on how E-zekiel was coming and it appears they have implemented some kind of fix. They appear to be presenting a 404 page, though it is showing up more like an iframe. So far, I have not heard back from their support team.

[UPDATE 01/15/07 – 4:15 pm CT]
Just received an email from a fellow named Todd Cotton from Axletree Media, the company behind the E-zekiel Content Management System. It addresses my proposed “misuse of an undocumented content sharing feature”. Very thoughtful and careful response I thought (see below).

Though, I seriously have questions about leaving this functionality in place for 8 years at the risk of their non-profit customers credibility… especially one that only took five minutes to “turn off”. Social engineering is not new… and Todd clearly has some context of other companies having messed up in the past. So in that regard, I am disappointed and think they should be more responsible by auditing their system periodically for feature bloat and vulnerabilities of all sorts. Even so, he did own the mistake. I recognize a humble and professional response when I get one. So, say all you want about the interface of E-zekiel or it’s lack of quality templates out of the box, I am impressed with how he handled this and I am changing my recommendation from a “beware” to a “be sure to look at all your options”.

To Todd, keep up the open dialogs with both customers and critics. You guys do a heap of good in a niche space that is not easy to run a profitable business in. There are plenty of churches using your stuff every single day and wouldn’t live without it.

Todd’s Email:

Jason, I appreciate your informing us of the potential misuse of an undocumented content sharing feature in the E-zekiel content management system. When we initially launched E-zekiel, we built the system to allow customers to seamlessly publish and subscribe to content from other E-zekiel sites. Because of denominational differences among the several thousand churches we serve, we left the plumbing for content sharing in the application, but never wrote an interface for it.

Obviously, times have changed and the eight-year-old feature stub needed to be removed. We still plan to implement some form of content sharing in the future. However, in light of the social engineering problems that have plagued companies from AOL to MySpace, we will certainly take great care in engineering a safe and effective content sharing solution.

Since your email was sent at 9:30 Friday evening, we were unable to meet your 48-hour deadline. However, the content sharing feature was turned off within five minutes of receiving a copy of your email this morning.


Todd Cotton
V.P. Technology and Engineering
Axletree Media, Inc.

49 Simple Strategies for Better Blogging

Tony Morgan has a great little list of 49 ways to blog better. In my view, these kinds of lists are great for newbies like me, as well as old hats who have been doing this for awhile.

Now recently, at the church where I work, we have had a request to set-up pastors to blog. Everyone, including Rick Warren is doing it, right? Now, my first instinct is to utter an exuberant YES! But when you start realizing these folks know nothing about blogging, or the web in general. They are content consumers, not authors. We struggle to get them to write a newsletter article. But now, they see their ministry friends blogging and they want in. So, if we do it (and we should), then this will require some training and some guidance. Note that these guys don’t just want individual blogs where they reflect and muse on ministry. They want the blogs to be the format by which they engage the constituent/member/attendee online. I may post later on all the options we are considering.

Thankfully, some others have forged ahead of us. Kem Meyer has her blogging policies/guidelines which she adapted off of Fellowship Church and IBM, Yahoo, & Sun policies. My impression is that each organization is different and desires to control the message at different levels. I mostly agree with Kem that lesser is more. I think we should have organizations where we reign folks in through real conversations where love and grace are the theme and “the rule-book” is a last resort that HR uses when all else fails. At the same time, traditional communications strategies and workflow strongly demand to control the message… so some compromise will have to be made or the blogging pastors are bound to get discouraged.

One other bright and shining resource is the future book “The Blogging Church” It has an accompanying blog which is a little helpful as well. I suspect the conversation will heat up there after the release of the book. Their blog also has a nice list of blogging churches and blogging pastors that you can check out to get a feel for how ministers are using.

I am in North Carolina at the Web Empowered Church Conference

Last year, I brought Kasper to Texas and put together a little conference for church technologists around the Typo3 Content Management system. This is the main tool I use day in and day out in Web Ministry at the church where I work. Web Empowered Church has also been a major advocate for the use of Typo3 in churches, and was kind enough to sponsor the conference for a second year. WEC is a ministry of The Foundation for Evangelism. So, we are at Lake Junaluska, North Carolina. Beautiful place near Asheville. I hear I am near the Biltmore Estate… but doubt I will be able to see it while here. I am going white water rafting on Saturday with the folks here. Should be interesting considering most of these guys are geeks… so hopefully the guide will do most of the paddling and steering. I fly home Sunday night to an empty house. The girls are hanging out in Natchitoches, La. with Ashley’s parents.