Jeff Geerling's blog

Great video on Altar Servers

Through Facebook, I discovered this great video on one young man's experience as an altar server:

I definitely agree that the altar server can distract from the liturgy if he is not focused on his duty, and that priests should encourage the use of cassocks and surplices instead of albs. A large reason for my joining the Seminary was my experience as an altar server, assisting some very humble priests who were great representatives of the Church and very close to Jesus—and this was reinforced by how reverent and dedicated they were to the celebration of Holy Mass.

The Meaning of Life

So faith, hope, love remain, these three; but the greatest of these is love. (1 Cor. 13:13)

Yesterday my wife and I experienced the birth of our first child, who was born just one day prior to his due date, and is as beautiful as any child I've ever known. But even more so because he's mine!

Labor is an emotional roller coaster, and I was incredibly privileged to be with Natalie throughout the entire process: from the early stages at home to the final push in the hospital. Especially in the last moments, my ability to love and experience God's love was radically altered.

Seeing mommy's radiant face moments after the birth, hearing the first gargling cries of our new child, and experiencing all the beautiful moments of agony and ecstasy involved in bringing the baby into our world has given me a new perspective on love.

Love, you see, is the only cardinal virtue that will remain in Heaven. There is no need for faith, for those in Heaven have complete faith in God. There is no need for hope, because you have nothing more for which you can hope. Love remains, and is increased so that it consumes the whole of your being.

I experienced a foretaste of that when our little bambino was born.

For anyone who is called to a vocation of marriage, the birth of your first child is when the true meaning of life begins to take hold.* And that is to love. Love deeply, love sacrificially, love with your whole self, body and soul. The married bond between man and woman sets the stage, but the birth of a child, and the subsequent family relationship sets that bond into a firm foundation of true love.

I can't begin to describe the increase in love that has already occurred in the past day and a half. And I can't imagine what's to come.

Love is not always easy, but it's not hard to love someone when he's just so darn cute!

Geerling Baby Foot

*Not to say that those who are married and are without children, for whatever reason, are not living their vocation or experiencing life to its fullest—I sincerely hope that every married couple gets a chance to bring new life into this world, and I pray especially for those who have a difficult time making this so!

"Ordain a Lady" - Thérèse of Lisieux is not impressed

I noticed this video yesterday, featuring a nasally rendition of Call Me Maybe by the Women's Ordination Conference (not worth a link):


  • "Excommunication, I'm still glowing."
  • "[I] don't listen to St. Paul."
  • "We want our Church back."

Notably, comments were disabled sometime this morning, after over 300 comments were posted yesterday witfully deriding the lunacy of the video (additionally, the negative ratings were beating positive ratings 2:1). I guess the Women's Ordination Conference can dish it out, but can't take the heat.

The video mentions St. Thérèse of Lisieux, and says that like her "I need to give this a whirl." Looking at the WOC's website, I found the following:

St. Thérèse of Lisieux, a Doctor of the Church, is the patron saint of women’s ordination. St. Thérèse’s call to the priesthood is well-documented. St. Thérèse died at the young age of 24. Before her death she stated, “You see, God is going to take me at an age when I would not have had the time to become a priest…. If I could have been a priest, I would have been ordained at these June ordinations. So what did God do? So that I would not be disappointed, he let me be sick: in that way I could not have been there, and I would die before I could exercise my ministry.”


Thérèse of Lisieux is Not Impressed

Yeah, so that quote is not entirely accurate, and is completely devoid of context. Something the organization also tends to do when representing Paul, Pope John Paul II, and pretty much anyone else they disagree with.

For a good read on how far from the Mark the WOC is, check out Peter McDonald's article, Did St. Thérèse want to be a priest?.

It's ironic that this video was published shortly after I wrote a response on Quora to the question Why are there no female Roman Catholic priests?. And after a much better (and more faithful) adaptation was published by Imagine Sisters of Convent Maybe?

Il bambino / La bambina and retrospective

This is old news to some, but my wife and I are expecting a baby early in this new year. Please say a prayer that everything goes well! (No, we don't know the gender; and no, we will not be sharing pictures or other info publicly at this time, Mr. Zuckerberg's thoughts on privacy notwithstanding!)

On another note, I have at least five large bits of writing that I'm still working on—a photography book, a few articles and tutorials for this site, and some other things. Hopefully I'll be able to find some time to get thoughts on paperscreen soon!

For now, check out some of these popular bits from 2012 you may have missed:

In addition to helping Flocknote grow by leaps and bounds this past year, I've launched Server, a website monitoring service, moved into a new home (giving me incentive to write about things like Tips and Tools for New Homeowners), and done a ton of Drupal development. Not a bad year!

More Christian Allegory in The Dark Knight Rises: Peter Foley and Sampietrini

There was a thought-provoking article by Catholic Veritas titled The Dark Knight Rises: Sacred Art. Most of the main characters, locations, and themes were related to similar Christian names, places, and themes, but one character left unexplored was Peter Foley, the deputy police commissioner who had a rather large role in the film, considering the number of other leading cast members.

I noticed, in watching the movie a second time, a certain scene where police are martyred by the main protagonist (to the words of "Shoot them. Shoot them all."), and the camera moves to a closeup of one of the police officers (Peter Foley), laying murdered in the street, in his dress attire.

Sampietrini Officer killed in the Dark Knight Rises

An observant person would notice a few things about this scene:

  • Like Peter the Apostle (and first Pope), this particular officer (Deputy Commissioner Peter Foley) had earlier denied the call by commissioner Gordon to come out of hiding for fear of the angry mobs that were wont to kill people in positions of authority (including the police).
  • Foley, who had seemed a coward when he was in hiding while his compatriots were hopelessly imprisoned in the city sewers, was the first to step forward into the battle to defend the city, and all the other police officers followed his lead.
  • The stone pavement underneath the Foley is made up of small, square stones—hearkening to the sampietrini, found throughout ancient Rome. (More on this later).

Like C.S. Lewis, it seems that Christopher Nolan sometimes hits his audience with an allegorical 2x4 sometimes! That officer matches very well the profile of the Apostle Peter—and Christopher Nolan seems to make his allegorical statement even more blindingly obvious through the subtler things. In this case, the pavement.

Sampietrini – 'Little Peters'

Jeff Geerling standing on Sanpietrini pavers outside of St. Peter's square
Yours truly, trying to make a happy face just outside St. Peter's square (Rome, Italy).

When my wife and I visited Roma after we were married, our tour guide gave us a short history lesson about the distinctive pavement found throughout the streets and sidewalks of most of Rome. Instead of using concrete, asphalt, or any other kind of pavers, Rome uses thousands of small squares of volcanic stone, nicknamed 'sampietrini'.

The reason for this name is that the stones were originally chosen by Pope Sixtus V as the pavement for St. Peter's Square (in the Vatican), and eventually for most of Rome, Italy. St. Peter's square is built around an egyptian Obelisk that was originally placed in Rome by the Emporer Caligula in 37 A.D., and was in a Roman circus. It just so happens that this particular circus was the one in which Peter the Apsostle was matryed—thus, the Church built the magnificent namesake basilica in that location.

The stones received the nickname sampietrini—'little St. Peters'.

So, is it simply coincidence that the 'martyered' police officer (who denied the police force and later became its de facto leader in its great battle) died in a square paved with stones hearkening to the sampietrini—or is Nolan really that deep with his allegory? Looks like we'll have to go all Inception on this thought and see how many more layers Nolan has placed in this movie!

Server - Website and Server uptime monitoring

Server is a simple and inexpensive server and website uptime monitoring service I've recently launched.

Server logo

If you have a website or online service you need to make sure is running, Server is a great way to get notified when there's a problem. Unlike most other monitoring solutions, Server offers free SMS (text) messages and email notifications, and it only costs $15/year (just $1.25/month!).

The Motivation

There are probably thousands of other uptime monitoring services on the web, and it's typically a good idea to use existing tools rather than build your own—if they're practical for your needs!

I had three main requirements for any service I wanted to use:

  1. I needed to monitor a few websites (at least three).
  2. I didn't want to spend more than ~$20/year.
  3. I needed SMS (text message) notifications, and I didn't want to pay a bunch extra to get them.

Many services hit one or two of these marks—some extremely well! However, no service I found could meet all three of these requirements, though a few did come close.

Knowing that SMS messaging is relatively cheap (typically around $0.01 or less per message), and knowing that I needed a new challenge, I decided to build myself the best possible server monitoring and notification system I could—for myself. I built every feature I wanted, and made it fit my workflow perfectly. It's ridiculously simple, it lets me get email and SMS notifications, and it even shows me how my sites are performing over the past day and month.

Unlike many of my personal projects, though, I noticed that this service is one that would be good to share with others—I believe it's the simplest and most inexpensive solution for individuals and small businesses who want to monitor their servers and websites.

It doesn't have all the fancy bells and whistles of other more 'enterprise-level' solutions, but I don't need that. I just need to know when one of my sites goes down, so I can react to the outage quickly. Downtime is lost money!

The Execution

I often think of Drupal as a bit of a golden hammer, but it really is a flexible tool that can do a wide array of things very well. Drupal helped me build the core components of Server—user management, login, content management, and user interface—quickly and easily. The site is running on Drupal 7 (though I'm beginning testing with Drupal 8), along with a few stable contrib modules to fill out the UI.

Responsive design on Server website.

I used the excellent Zen theme framework to build a fully-responsive HTML5 theme, and jQuery (baked into Drupal) to add a little UI goodness here and there. I spent a lot of time trying to make sure that users on any device or viewport would receive an optimal overview of all the information they needed to see.

For the back end—the server checks, notifications, etc.—I have a mixture of a few custom Drupal modules, some drush scripts, and some other custom glue. I find a real value in using Drupal's APIs (Batch API, Queue API, Form API, Database API, etc.) along with drush to scale out certain kinds of services, instead of starting from scratch (though, at some point, I will probably need to break a few services away completely).

I've built everything in a modular fashion so it should be relatively easy to scale horizontally as I get constrained by the number of users. (Right now everything's running on one server, and I've projected that I can keep it this way for the first batch of users—hopefully I'll be able to expand soon, but I'll consider Server a success if it pays enough to cover the costs of email, hosting, and SMS (remember, I really just built it for myself ;).

I'm also experimenting with Python and Node.js to see if I can get HTTP checks and pings to happen more efficiently. In the end, though, I will stick with whatever's simplest, even if it doesn't incorporate the most amazing new technologies programming languages. (Notably, the majority of Server runs on MySQL, PHP, Apache and CentOS. I know this stack well, and I am loathe to change unless I have a good reason, or until the performance, scalability or structure is a crutch. So far this has not been the case on any project I've worked on in my career.)

Currently, I'm using cURL for HTTP checks, and a custom-built class for PHP, Ping for simple IP/domain pings.

Payments are processed through Stripe, and this is the first time I've ever actually built something on top of Stripe's excellent API—in the past I've used PayPal and some other payment processors who used SOAP, XML, or other protocols, and had very poor DX (developer experience). Many services don't have a test environment, or have a very poor test environment (cough PayPal), and barely comprehensible API documentation. And you can forget about helper libraries for common languages (Ruby, Python, PHP, Java...). Not so with Stripe. I'm extremely satisfied with Stripe so far, and I think their platform is a major boon to online payment acceptance.

Sign up now!

If you're interested in knowing when your servers or websites are down, or tracking their performance over time, please consider signing up for Server—it only takes one minute!

Any questions about the service, or suggestions to make it better? Please let me know below or in this Hacker News thread.


Subscribe to Reviews Subscribe to Articles Subscribe to All Content Subscribe to Blog Subscribe to RSS - Jeff Geerling's blog