Rounded Corners using CSS

I’m hoping to get around to a site review, but until then, here are four informative articles, and one link to four more, on how to display rounded corners without the benefit of using the HTML <table> tag.

Posted in Uncategorized

ESV Bible RSS Feed using PHP

As promised, the ESV Bible RSS Feed, now peachy PHP flavor! To get this done, I dipped back into two past articles. One entitled Using PHP from the command line. This is necessary as we want to add our application to the CRONTAB. For those of you new to this site, and for those of you who are not fluent in classical geek, CRON is the scheduling process associated with various flavors of *NIX, such as Linux. The CRONTAB is the table where jobs are enumerated and defined. Here is a past article of mine which points to some effective CRON tutorials you might find useful.

The other tool we need is an effective way of slicing-n-dicing RSS files. As I stated in yesterday’s article, RSS is an XML file designed to talk to computer programs via the HTTP protocol. This means once we obtain the ESV RSS feed, we need to extract the data so we can render it in a human-friendly format. To do this, I’m going to again dip back into a past article and employ a wonderful little PHP library known as MagpieRSS.

In about ten minutes, I had a working code that read the ESV Bible RSS Feed, extracted the good stuff, and then created an include file I could … well include in my web pages using pretty much the same techniques I stated in my article Similar in concept to “Using Cron with LWP::Simple and XML::RSS to retrieve news feeds.” You’ll also note that this program bails without creating content if it finds no data elements. And if it does, it takes care of some of the “whitespace” issues I mentioned in yesterday’s post.

Yeah, I know, alot of repeating myself going on. It comes from fathering a strong-willed 3.5 year old. I’ll stop that now and give you what you really came here for, the code. Feel free to use it and improve it. But if you do the later, then please, com’n back and share a comment so the rest of us can benefit from it.



BTW, since everyone loves a happy ending, I figured I’d let you know that I did finally hear from the good folks at Good News Publishers. A very nice note that’s going to lead into some very cool code in the not too distant future. Part of the communications issue was a DDoS attack on my side, and Glenn Slaven being 12 hours ahead of me. Now if Glenn would only tell me if the Oriole’s are going to win tonight, I’d be set.

Stay tuned. Leave comments. Let me know if the above works for you. Share improvements. Enjoy the day. I know I wil!-)

Posted in Uncategorized

English Standard Version Bible RSS Feed

Have you ever bumped into someone who looks like you? Pretty freaky. Well last night I had a similar experience with a post on another techBlog. Last night I received a nice note from Glenn Slaven that Good News Publishers (GNP) has extended their web services to provide RSS feeds for the English Standard Version Bible. And not only for select verses, but for a verse of the day.

Why the GNP didn’t email me still mystifies me a bit, but that said Glenn gets credit and kudos for offering the first cut at a Verse of the Day RSS Feed. As I told Glenn when I first visited his post on the topic, I thought I was visiting my own site!

That said, I also want to offer a couple of versions of it. Not because of anything lacking with Glenn’s cool code, but because I wanted to integrate the ESV RSS feed into a couple of past articles I posted on the topic, and see if I couldn’t easily mangle them to obviate my beloved but kludgy VerseScrape verse-of-the-day screen scraper.

Okay, first things first. For those of you who do not speak pure geek, an RSS feed is a text file structured in a format called XML. It is a machine-to-machine format, intended to facilitate diaglogs between computer programs on systems regardless of their computer language, operating system and hardware platform. This XML file is sent via the same mechanism web pages are delivered to your browser, the HTTP protocol. In fact, you can read RSS files with your browser, but as you’ll see, they’re not really organized for human consumption. One popular version of such a program is called an aggregator, which many people use to keep track of changes their favorite weblogs or web sites, without having to visit the site in their browser (until the site changes).

This is idea I had in mind when I wrote my article “Using Cron with LWP::Simple and XML::RSS to retrieve news feeds” back in March of this past year. With only a slight modification of the code offered on that page, I’m able to create a verse-of-the-day. Moreover, I can do it in a format that is similar to VerseScrape.

Some of the features in this code not found in Glenn’s SOLID EXAMPLE, is that the code below attempts to read the feed 10 times before giving up. This is good in those cases where burps occur online. Also, this version can accommodate situations in the future where more than one verse is added to the feed. I doubt that will happen, but its there just in case. Finally, I put in some code to strip out some extraneous TAB, LINEFEED and SPACE characters (known in computer parlance as whitespace) in the copyright statement/element delivered in the XML feed.



Now if this is TOO much code for you, here is a “LITE” version that also gets the job done. Based upon an article I wrote this past May entitled “Using XML::RSSLite to read feeds“, I offer this “esvfeedlite.pl.” It is similar to Glenn’s excellent approach, only this example uses the more liberal RSSLite module. Again, it takes care of some of the extraneous ‘whitespace’ issues in the copyright element, and accomodates multiple elements.



Remember to check those file permissions on the program files, AND on the output files. I use “chmod 755 esvfeed.pl” on the former and “chmod 644 dailyverse.inc.php” on the later, but your mileage may vary depending on how your server is set up and how your system is configured to access local files.

Tomorrow, I’ll show you how to do this in PHP … from CRON and/or the command line even!

Oh and Glenn, thanks so much for the email! It and your code are VERY appreciated!

Posted in Uncategorized

Pew Internet and American Life Project: Daily Internet Activities

Friday fun, or mandatory reading? You be the judge. For me, it is a little of both. I’m reading two recently updated tables of common internet usage and activities by the good people at the Pew Internet and American Life Project (PIP). Both have information that could be useful in convincing others at your church that your web site should be more than just a pretty brochure, or worse, attempt to emulate TV or movies.

First is the results for “Daily Internet Activities,” which is a a chart detailing the percentage of Internet Users who do a specific online activity on any given day. Notice that 59% of the population gets online, everyday. Primarily to exchange email. Followed by obtaining news, an activity followed by using a search engine.

Second is a chart entitled “Internet Activities” which deals with percentage of actual Internet Users (those who go online) who have ever done a particular online activity. Again the top three activities don’t change, but the fourth and fifth activities that follow are very interesting to those of us maintaining church and/or charity web sites. Researching a product or service before buying it and searching for a map or driving directions.

So what does this tell us? Here is how I interpret the results:

  • Make sure your web host allows you to establish and maintain numerous listserves (automated mailing lists). Make sure the listserves are well supported with a user friendly/idiot-proof user interface. Teach those individuals who would use them, pastors and lay staff, how to keep their listserves maintained.
  • The content on your web site must be presented in a fashion that is search-engine friendly. This includes simple things such as your <title> tags including not only the name, but the city and state/province of your church (e.g. Redland Baptsit Church Rockville MD or Redland Baptist Church Montgomery County Maryland). Another simple thing would be running a string of text links of major sections along the bottom of your site. A bit more complex, it is equally important that you have user friendly URLs. All these things add up to good search engine placement.
  • Because it there is a good chance someone visiting your church may first visit your church web site, make sure you have easy-to-find, easy-to-read, easy-to-print information of how to get to your church. It may also useful to include the times of the services on such a page as I would think someone would print the info out the night before.
  • Provide maps, or at least links to maps and driving directions.
  • Conspicious contact information.
  • Sermons, devotionals and other documents that convey what it is you believe.
  • And something I just thought of, perhaps provide a page on where to go when you get there, such as Sunday school maps and/or what to expect in the sanctuary (e.g. dress, children, etc).

Of course, it goes without saying that all of the above need to be presented in a fashion that conveys the purpose and personality of your church.

At least that’s the way I read the data. So what did you get out of these tables? Leave a comment, and don’t be afraid to disagree.

Posted in Uncategorized

At the right time, provide the right information

Mandatory reading, an article at Boxes and Arrows entitled “Ten Quotable Moments: Challenges and Responses for UI Designers.” If nothing else, but for the following quote:

“Interfaces don’t become simpler by hiding information and requiring more clicks; they become simpler when they provide the right information at the right time.”

And all the congregation said, AMEN!

There are many more notable quotables in this article as well. I suggest printing it out, putting it aside, and taking it with you when you make your daily trip to the ‘reading room.’ Not because it belongs there, but because the article is SO ON TARGET for church web sites that it requires your undivided attention. Mine often occurs in the privacy and solitude of the water closet. But I digress.

The point here is not potty humor. The point here is not hiding your light under a bowl of insidious navigation. This is especially true for many FrontPage generated sites I visit. Pertinent information that is buried so deep that no one knows its there. Then in an attempt to bring it forward, I’ve seen church web sites resort to scrolling marquees, pop-up windows and putting links to everything at the top level of the web site. All of which is as equally defeating as hiding the good stuff.

This was one of the compelling reasons for some of the design decisions I made with the redesign of Redland Baptist. The original front page was a nice picture, and a DHTML hierarchical menu. Upon looking over the user base, it was clear that one of the compelling reasons people wanted to visit the site was to find out when things happened, and how to get there. Hence, if you look to the left, above the fold, “Getting There: … ” and “When it Happens: …,” the former with our address and links to maps and driving directions, the later with the services schedule and a link to our calendar of events page.

Similarly, I took a more “blog” approach to the front page, where we include time-sensitive information from our “Items of Interest,” which depending on the content, may have links to other pages on the site, such as Missions or Vacation Bible School. Finally, I added a DHTML-based drop-down menu which essentially enumerates every page on the site. That said, I still need to generate a site map.

On the sub pages, I use the left column to list the titles and links to the other subpages within the same category. The thought being here is that those who wish to explore what Redland Baptist is about, are given the pertinent pages at the right time. I also make sure the overview page offers links to our Sermons page, which essentially exposes our theology, and our Music and Youth pages, which identify our two other big ministries. In fact, all of our major ministries can be reached by use of subdomains, such as youth.redlandbaptist.org and music.redlandbaptist.org as a further aid to navigation. That said, I still need to modify the navigation for the Sermons page, as I want to list related sermons whenever you’re reading a particular sermon within a series (so little time, so much to code).

Finally, you’ll notice a little icon on the subpages back to the home page. A search box on the left navigation column. Breadcrumb navigation. The DHTML menu at the top, and text links of the major categories and some other featured information at the very bottom. Or what I like to call, suspenders and a belt navigation. Hopefully, while complex in design, it is simple in use. Or from the aforementioned article, hopefully my approach answers the following concern:

“I’m suspicious that these users will ever be able to figure out something that isn’t instantly clear to me, especially something with a complex implementation.”

In other words, despite the old programmer’s adage “if it’s hard to write, it should be hard to read …,” what we really need to strive for is keeping the interface as intuitive as possible, while offering the most relevant links at the right time.

Posted in Uncategorized

Father Flanders’ Sermon for Sunday, July 13, 2003

Here is some ageless advice I offered back in May of 2002:

One of the big problems I see with so many church websites are bloated graphics. Let me make this point very clear. Reducing the height and width attributes of the <IMG> tag does not, I repeat DOES NOT, physically reduce the physical size of the file. Nor does it reduce the size of the image via “color reduction.” We’re talking the minutes versus seconds difference your users suffer to download a 50kb image of your pastor versus one that’s 1/10th the size but still portrays the same subject.

I have a running joke with the pastor of my church. With no coordination at all, he often cites Scripture and or theological points that I just made an hour prior in my 11th Grade Sunday School class. At the end of the service, I always take time to thank him for making me look like as stinkin’ genius. Though we all really know that is the same Spirit working through different members.

Well it seems I’ve been similarly blessed with validation from none other than usability and marketing guru, Vincent Flanders where he wrote in his Father Flanders’ Sermon for Sunday, July 13, 2003:

Just because Jesus miraculously turned water into wine doesn’t mean he can miraculously turn your 1280- x 1024-pixel image whose file size is 1.8Mb into an image whose file size is only 74Kb just because you changed the WIDTH= and HEIGHT= attributes to WIDTH=”420″ and HEIGHT=”336″.

This mistake is so common that it’s beginning to be as annoying to me as the confessions of the students of the young men of my Jesuit high school were to Father Ambrose “For your penance say three Hail Mary’s” Forsthoefel.

Just from a theological point of view, Jesus was and is capable of all sorts of miracles. That point aside, Vincent is VERY correct in that we should not expect Divine Intervention for bloated images that can easly be corrected with a little software and a little know-how. Vincent offers some good freeware/shareware options in his article.

And just in case you’re not convinced … I did a quick search of my past church web site reviews. Here are a few in which this ‘big problem’ was duly noted. Some have since changed their sites. Some have not. Pray for them.

Posted in Uncategorized

Knoppix – Delightfully Distracting

There are things I like about the Microsoft IIS server solution. There are things I like about the Linux Apache webserver solution. Where I work, it is the former. But for my church web sites, it is the later. Part of it has to do with the cost But part of it is *NIX-like approach. Everything is a file. Add only what you need, when you need it. Don’t reinvent the wheel. Simple, brutal efficiency at the cost of assuming the user knew what he/she was doing and was able to read the manual without hand-holding.

At least that is how it was. Now, just as Microsoft adds more and more networking and servers to their operating systems, so too is Linux adding quite a bit more user interface. That said, without a compelling reason, most individuals haven’t tried, spied or experimented with the new GUI breeds of Linux. Who wants to risk blowing up their valuable data by adding a partition and installing a cryptic operating system just to sneak a peek?

Well fear not. Not only have recent installs for Linux become amazingly user-friendly and somewhat idiot-proof, but more recently, there are now distributions of Linux that run entirely from a CD. No partitioning, no formatting, no installation necessary. Which brings me to a very cool tool that goes by the name of Knoppix Linux.

Knoppix is a GNU/Linux distribution that boots and runs completely from the CD. It includes several recent Linux software and desktop environments, such as OpenOffice.org, Abiword, The Gimp, Konqueror, Mozilla, and hundreds more quality open source programs.

In other words, you can test drive Linux without having to install it on your hard drive!

What more variety? There is a growing community if geeks creating what are called Knoppix Linux Documentation – Knoppix Customizations. These are ‘unofficial’ distributions of Knoppix offering a variety of interesting modifications. Some are reduced in size. Some in different languages. One adds various security tools. One even adds clustering capability.

Moreover, if you want to do something crazy, you can remaster Knoppix so it loads the Apache webserver and mod_php on boot-up. Though for those of you without 3 gig to spare, and/ or those of you using Windows, you’re probably better off using Knoppix-customize, a tool that enables you to change boot options and files of a KNOPPIX ISO image or boot disk without .

The point is, here is your chance to play without having to make a huge investment in time or resource. Just download the ISO. Burninate it to a CD. Boot from the CD. Spend all night exploring Linux.

Those of you with wives should just have them complain to me directly for distracting you the rest of this weekend.

Posted in Uncategorized

Beyond the Blog and other links on making MovableType a Content Managment System

Why I prefer techno-bloggers. Last night, I get a note from Mike Boyink, who’s aggregator listed a post at asterisk* which in turn describes an article by Matthew Haughey who is blogging about a topic I contemplated in October of 2002 (phew!). Specifically using a blogging tool such as MovableType (MT) as a content management system (CMS) for my church’s website. Which finally got around to this past June in the form of Redland Baptist Church, Rockville, MD.

So I email the brilliant mastermind behind MetaFilter and A Whole Lotta Nothing an “I agree, me too” message. Within moments, he adds a link to the Redland site, which is then followed an hour or two later by a link to Brad Choate’s MT/CMS-driven charity, “A Touch of Hope.” I mention Brad because back in February we exchanged email on this very topic, where he was MORE than helpful in pushing me in the right direction – as well as providing some very useful plug-ins.

Okay, so enough Sammy Maudlin style name-dropping (you’re beatiful baby). Here is the point. Actually, here is the current required reading list for those of you thinking of using MovableType, or some similar blogging tool, as a CMS for your church or charity web site.

As always, if you know of other useful URLs to this cause, leave a comment … then again, if you’re just passing through, leave a comment as well. We like it when you visit!

Continue reading

Posted in Uncategorized

AOL, bloggins and free speech

It’s old news by now, AOL is bringing blogging to the unwashed masses. Or as Leslie Walker of the Washington Post WebWatch put it:

The “blogosphere” may never be the same after America Online releases free blog-publishing software to its 34 million members this summer.

The emphasis on “may never be the same” is mine. Imagine what the blogosphere is going to look like by the entry of hundreds of thousands of individuals for whom AOL entitled their service “AOL Journals” because they didn’t think their customers would understand ‘blog.’

Put another way, basically this annoucement is going to do for weblogs what FrontPage has done for church web sites. Let the (regular) reader understand.

Tell you what, I have an old copy of Charles Petzold’s “Programming Windows 3.1” I’ll send FREE to the first person who can closest guess the number of “cat blogs” that AOL’s new service will generate in its first month (to be eligable, you need to leave your guestimate as a comment).

All this said, I was alarmed by an article who’s headline read “U.S. Senators Propose Bill to Ban New AOL Blogs.” Basically the premise is, since AOL users have fouled the USNET, let’s not let them do the same to blogging. I mean isn’t this a violation of the 1st Ammendment? The Bill of Rights? Oh wait (and before you go emailing Ernie the Attorney) … it’s a joke. The proposed BAN that is, not AOL’s new service … tough I know it is sometimes hard to tell the difference.

Posted in Uncategorized

PDF: Unfit for Human Consumption

Jakob Nielsen really hit the nail on the head this time. Don’t use PDF files to present your sermons or church newsletters online. Or at least offer an alternative. I think summary from Jakob Nielsen’s Alertbox, July 14, 2003 pretty much says it all:

Users get lost inside PDF files, which are typically big, linear text blobs that are optimized for print and unpleasant to read and navigate online. PDF is good for printing, but that’s it. Don’t use it for online presentation.

Can I hear an Amen?!

So here’s my suggestion, if you are going to offer your sermons and newsletters as PDF files, go ahead, but also make sure there is an accompanying HTML version they can easily read on-screen. In other words, don’t assume the user always wants to print the whole shebang.

Granted, it is a pain, but by doing this, you help your own site’s internal search engine — as well as improve your ranking on external search engines. Yes, I know Google does PDF, but it has been my personal observation that HTML versions of similar text get ranked higher.

And yes, I know, there have been times I’ve felt some of Nielsen’s alerts were a bit forced, but this isn’t one of them. He is entirely correct when he asserts that throwing a PDF file at your user tends to confuse them, it breaks the flow, it interrupts the naviga..a… oh, just go read his bullet points under the header “PDF Usability Crimes.”

And when you’re done there, go see a few real life examples of what we’re talking about at:

One other thing to consider is timeliness. The nice thing about using a custom plug-in and MovabeType was that I was able to publish and list yesterday’s sermons in under 2 minutes merely by cutting-pasting the email from my pastor into a form and pressing the save button.

Posted in Uncategorized