Welcome to the Geeks & God Static Archive. Read more »
" "

Web Performance Optimization

4.444445

You are missing some Flash content that should appear here! Perhaps your browser cannot display it, or maybe it did not initialize correctly.

On this week's podcast, Rob and Matt return to talk about the importance of making the front end of your website faster with things like CSS sprites and minimized javascript, ebooks vs. print books, and other completely unrelated ramblings. Oh, and Rob reminds you that if you're reading this, you should probably be outside instead.

Yeaaaaah baby!!

So good to hear you guys again :)

E-Books

I had not used an e-reader at all until recently but started reading e-books on my wife's iPad. One of the biggest reason's that I am using the e-reader currently is that I like to read science fiction and a friend introduced me to a website that publishes books for many science fiction authors. You can download and read some of their older books for free and that lets you get a sense for the author and if you like their material. Then you can either order hard copies of their newer books or you can purchase e-books from the same site. I also like to keep multiple books with me for times like when I am reading a series and I don't want too long of a break between ending one book and starting the other.

Great to hear you guys back.

Comment

Same here!

Jewellery; the symbol of beauty and elegance!

Nice Job!

Nice Job!

Welcome back

Great to hear from Rob and Matt again! If you guys haven't seen it yet, youversion.com provides a feature called "live" that allows people to use their smartphones for sermon notes. We've been using it at our church as an online replacement for our program/bulletin. It's pretty nice and free from the folks at lifechurch.tv.

Hey, really great to have

4

Hey, really great to have Matt & Rob back for the summer. Matt, congrats on getting the HP job.

I'd like to discuss the whole concept of being plugged in vs. unplugging during worship. I'm intrigued by the "live" concept noted by jerylon. Technologies for Worship Magazine recently featured an article on interacting with the service. We've added an online chat box to our service to all both those watching the live stream and those present to interact and discuss the service as it unfolds. Here's a handful of advantages that I see:

To give people another way to process and retain what they're hearing.
To allow people to ask questions while the question is still in mind.
To give people who are not there a sense of being there
To give people a way to witness to each other and to the world
To build a greater sense of community
To give people a place to publicly express something that specificly touched them in the service
To give website visitors and people from the community a way to get to know us better before they walk through the door
To let people know that the way they interact with the world need not be abandoned in church (to quote a recent CNN article, they don't have to "leave the 21st C and enter the 14th C when they go to church")
To allow for discussion and thoughts on the readings and sermon to get a deeper understanding

Eventually, it could lead to:
Prayer requests sent in by online viewers
People could ask questions about something heard during the sermon, and the sermon could be tweaked accordingly

Rob has been a huge advocate of unplugging, and here's my question: My sister-in-law won't get on Facebook because, "I'm on the computer all day at work. Why would I want to more at home?" Rob, is that part of the reason you try to get away from it? Others aren't on nearly as much (don't do web design for a living), so it's not as much an issue for them. Just wondering.

Where is God in This?

Dale, thanks for the comment. As you'll see below, I have a lot to say in response. Thanks for getting me thinking.

In all the responses I've read online to this I've seen no one talk about God in this. Where is God in this technology usage? Why are we in worship? What's the purpose of worship? If people are two busy sharing what they think to hear Gods love in the sermon it's a barrier. If people are two busy trying to connect with others in the community to connect with God, his character, his mission, and what his word really teaches there's a problem.

So, let me ask this. How does this technology enable people to learn who God is, about his character and mission, and to connect with him? I'm starting to wonder if the technology is going to distract people to connect with each other rather than with God.

Let me hit on some of the points you did.....

  • To give people another way to process and retain what they're hearing. - You could take notes on a piece of paper to process and retain it. Note taking on paper is often faster than thumbing it on a small mobile device. Plus, you can be creative by drawing paper, pointing arrows from one thing to another, etc. How does going mobile help people process and retain it more effectively? I'm honestly looking for an answer.
  • To allow people to ask questions while the question is still in mind. - Is the preacher expected to answer the questions live. There is a lot that can be said here. I could jot down the question myself and follow-up afterwards on my own. This could be a chance for me to dive into scripture and my own study which is a plus.
  • To give people who are not there a sense of being there. - If someone isn't in worship why is it good to give them a sense of being there? Is there anything that can provide for that person in person experience of being there? Should we try to kinda help people feel a little of it or help them to be there or find that where they are instead?
  • To give people a way to witness to each other and to the world - Did Christ, Paul, or any of the Bible authors share times when we should use worship to witness to the world? If I remember right, witnessing happened when people wen't out into the world, had meals with others, interacted with them personally, served them, and shared Gods love thought their actions. If we want to improve witnessing to others I would start with these types of things.
  • To give people a place to publicly express something that specificly touched them in the service - This can be good. In some churches people yell out "Amen" and words like that when this happens. I wonder when going from shouting "Amen" to sharing how it touched you and what you think moves from being in agreement or sharing it touched you to something self centered and a distraction from God? I don't have an answer but that's the question on my brain.
  • To give website visitors and people from the community a way to get to know us better before they walk through the door - People in the community should be getting to know us by our presence in the community. By being people who bring and live the message of Christ in the community. By being people who try to live our faith and they can see it. If we are trying to give people a way to see into our services to get to know us because they don't have neighbors, friends, or people they can see living the faith from that church.... well, maybe my view of living our faith as James put it in James 1:22-25 (ESV):

    But be doers of the word, and not hearers only, deceiving yourselves. For if anyone is a hearer of the word and not a doer, he is like a man who looks intently at his natural face in a mirror. For he looks at himself and goes away and at once forgets what he was like. But the one who looks into the perfect law, the law of liberty, and perseveres, being no hearer who forgets but a doer who acts, he will be blessed in his doing.

  • To let people know that the way they interact with the world need not be abandoned in church (to quote a recent CNN article, they don't have to "leave the 21st C and enter the 14th C when they go to church") - Let's take a look at human interaction. The world has definitely changed over the past few decades. According to work by sociologists, we tend to treat people more as machines than people than we used to, people have less real friends and close connections than they used to, there is an increase in depression and one of the ways psychiatrists help people is to help them increase their connections and community with other people. That CNN statement presumes the 21st way of communicating is healthy and good for us. While I'm not advocating 14th century music styles, communication styles that help people directly interact with each other are quite healthy and can be much more healthy can putting a digital membrane in the middle of that.
  • To allow for discussion and thoughts on the readings and sermon to get a deeper understanding - There are a lot of ways to enable discussion and study for a deeper understanding. For example, having a bible study dig deeper. Or, sitting down with some friends at a local coffee shop and talking about it. This is a great way to be in public, discussing faith, people seeing you so there's witnessing, digging deeper, and integrating God into more parts of your life. Or, maybe it's just something a family discusses further on their way home from church. It brings the family closer together, helps dig deeper, and helps parents grow their children in faith.

Sooooo, it seems I have a lot to say on that. I hope someone can challenge me to think more deeply on this stuff as Dales comment did. The gist is, I'm looking for technology that doesn't detract from a key point of worship which is about God and me getting to know him better, learning about his love, and so much more between the two of us. That the tech doesn't detract from that by pointing me to other people or myself instead.

Dale, I will also say I'm not on facebook much because I build stuff for the web. I try (though poorly) to disconnect and do stuff out in the world when I'm done working for the day.

Matt Farina
Geeks and God Former Co-Host
www.mattfarina.com

I think I can answer most,

4

I think I can answer most, but not all, in a couple statements:
1. Corporate worship is not a collection of individuals. It's a plural singular. It's about connecting with each other as we collectively connect with God. American culture has emphasized the trees over the forest, but the church is all about the forest when it comes to worship. This is a way to "speak to one another in Psalms, etc." Right now, it's expressed when a kid leans over to Mom and asks, "What does propitiation mean?" or when a wife leans over to her husband and says, "Hey, that's what we were arguing about last night!"

2. Would it be better to discuss it around a table or in the minivan? Yes, yes, emphatically, yes. Does this happen often? Not in my experience. By the time people leave the building, they've forgotten 90% of what was said.

3. What is the advantage of digital over analog? Ever used YouVersion's wiki-esque Bible study notes? It adds others' perspectives, giving us a broader view of the subject matter. It's also easier to search later. Plus, people bring their phones with them, but they might not bring a journal.

The point about being there vs. not there: I was thinking shut-ins, parents with sick kids, or people otherwise unable to be there. (We have a member who lives in Indonesia. Long story, but she's trying to stay connected until she can return to us.)

All that said, I agree with everything you said.

Instead of Engineering Technology....

Maybe, instead of focusing on trying to engineer technology for our worship we could use those same skills to engineer people to discuss the God outside church, help enable people to serve more in the community, and all those things we hold up.

In my limited experience we rarely put those engineering (and technology style) problem solving skills to use in other areas. Instead we put church politicians in these areas. The ability to learn, measure, understand, make changes as needed on the fly, structure, and so much more that makes building tech solutions great applies to other areas.

Maybe we could refocus some of that brilliance into other areas. Just a thought.

Matt Farina
Geeks and God Former Co-Host
www.mattfarina.com

Actually, in the case of our

Actually, in the case of our church, we're overhauling everything you cited above from the ground up. The tech stuff is just something we're doing on the side, mainly because it's already built into our streaming software. There's no engineering involved except letting people know it's there.

Ahh how refreshing

It's great to have you guys back. I had the podcast downloaded to my Droid minutes after receiving the word it was out. I still haven't found the time to listen to the whole thing but I have made it through the first half.

Matt you have a lot of good points. It is all about God. Our worship is about acknowledging God for who He is. Coming before him in reverence. Lifting up the name of Jesus through singing. Acknowledging that all things come from Him by giving back a tithe. Spending time talking to Him through prayer. Meditating on His Word and applying it to our lives. While I fail daily at this our "Worship Service" should only be an extension of our daily lives. All the things that embody the "Worship Service" should be practiced daily. Talking with God, giving of ourselves, and making Him known.

I think there is a call for balance. For some, engaging in the "things of the world" is evil. If we take this view we can end up socially irrelevant like many extreme sects that refuse to have anything to do with vehicles, string music, movies, ad nauseum. My biggest reason I am for this type of technology (in a balanced fashion) is most of the world already think of us as irrelevant, out-of-touch and stuck in the 14th century. How many times do you get people saying "Why do you have a website?" There was a time when many churches didn't see the need. I know the staff have heard comments about having an attractive site.

We have a duty as Christians to pursue knowing God as well as making Him known. It is my opinion that if done properly it can be used to expose others to the claims of Christ and lead the lost into a relationship with the God of everything (including technology).This is my primary reason for embracing this technology cautiously. I also find taking notes and sending them to my email helps in motivating me to walk with God throughout the week.

Jon

Good podcast

Good discussion on e-readers. I have an iPod Touch that I use to read books and the Bible. For me they provide some benefits:

  • you can get access to many books, including all those classics in "Project Gutenberg"
  • no extra weight to carry around
  • I've never been one to highlight and take notes in books, but I'm more willing to do that on an e-book or in my Bible software
  • the ability to hyperlink to other locations within a book.

    That said there are times to have a book in hand where it is good to have in print.

Cheamweb Your window into the Fraser Valley
Dave's Journey | The Macfoto Life

Performance

5

As I tweeted the other day, after following some of the suggestions in the podcast my page-load at least on the front page was reduced over 50% probably closer to 70%. Some of the things I did were to use Notepad++ to at least get rid of the white space "Remove unnecessary space and EOL" in my .js files. While this may not be true minifying I think Y-slow treated it as minifying not sure at this point. Either way it was a great way to increase speed. I have had the boost module installed for awhile and I spent some time tweaking the configuration (I still cant figure out why Yslow is giving me Etag errors).

I checked the boost cache this morning and it said I had 7000+ files in it. I needed to clear it to get some css changes out. Now there are about 140 files in there. Each time I run cron it increases a little bit. As I understand it Boost crawls and caches as the site is accessed so perhaps overnight the site was crawled and the files cached? That would explain the large cache.

Here is my question.
With Boost and core caching enabled does performance increase as the cache is built up or do they occur simultaneously therefore having no impact on performance in respect to time?

Some Answers...

First, if a better idea for you js files is to keep the original and then create an optimized version. I usually have the optimized version end in .min.js rather than .js. To create the optimized version I use a tool like uglifyJS which you can do right online at http://marijnhaverbeke.nl/uglifyjs. This is going to produce much smaller files than notepad++ can do because it analyzes the JS and makes it smaller doing things like turning local variables into single letter names. This can save a ton of space. In addition to that it does things like remove white space (but not in strings) and line breaks (but not in strings).

Second, boost cache creates static html files for pages for anonymous users. When an anonymous user hits a page it pulls the html file and php, drupal, and any other caching systems are missed. Essentially, this replaces the page cache in core. Drupal caches a lot of things so core caching beyond the page caching does improve performance for authenticated users.

Hope this helps.

Matt Farina
Geeks and God Former Co-Host
www.mattfarina.com

What a nice surprise

What a nice surprise to find a fresh new podcast instead of something from the archive! In fact, I delayed listening because I thought everyone was on summer break. I won't do that anymore! And, as usual - lots and lots of fantastic, thought-provoking ideas.

I'll get to the technology in worship later and start with the main topic -

Web performance

We're just wrapping up an optimization project and this was a timely podcast. As a code-geek, we did spend a lot of time on the backend during this stage. It is important (to me) to point out that you can't ignore the backend completely, but there is a point of diminishing returns. Round trip http requests and unnecessary information passed into the http stream (comments and whitespace especially) do have a big impact. We used to use 33K modem speed as the benchmark for page loads. Now, we use mobile - which in some cases ain't much better than dialup.

One source of all this cruft church web admins need to also be aware of is the junk you get when you paste content written in MS Word and pasted into your pages as content.

A question about the statistics mentioned (front end accounting for 97% of web site response and 85% of desktop) - desktop browsers will cache images, css and js after visiting the page for the first time. So, my second visit and response time may be quicker than my first. How was this accounted for in the studies?

Next, on to the conversion goals.

Most conversion goals are transactional - there is a point of completion that can be measured. As such, those goals are difficult to map into a ministry web presence. On a basic level, ministry goals are relational - how can that be quantified? In physical terms, it is an initial visit, as mentioned. In Google Analytics: 1st time visits. Our goal offline is for there to be more than just that first visit, just like it is online. We could look for a way to measure the conversion of first time visitors to repeat visitors. Other signs of an improved online experience - more time on site, more pages/visit, a request to be contacted personally.

Finally, the use of technology in worship

I can appreciate the concern over technology using us and distracting us, but I'm not sure it's an argument for ignoring it's potential for good.

There have been technologies adopted throughout the ages that are no longer viewed as technology. Shane Hipps and Marshall McLuhan have both written pivotal pieces based on a core definition of technology - anything that extends human capacity, or makes something else obsolete is a technological advance. Even pen and paper were (and are) technological items - they extend and even make our memory obsolete.

People will be distracted by the apps on their smart phones - even if we don't create a sermon or Bible study app. They can be distracted by last week's notes in their paper journal, or turn their page over and start playing hangman. We must be mindful of these distractions and help each other focus and be intentional with how we use whatever technology we have.

Jesus reminds us we must 'put new wine in new wine skins'. How do we understand that? Wine as the message and the wine skins as the medium? If that is so - how can the message be new? Isn't the Gospel unchanging? Yes, it is. Fundamentally.

A mustard seed, the smallest of seeds, grows into a large tree. From its start as a seed through its maturity, it is always a mustard tree, not a banana tree or a carrot. Yet, it changes and grows every day.

God is in all of this, as he is in all creation. How will we care for each other with what he provides?

Responses....

Sorry for the slow responses but here goes.....

A question about the statistics mentioned (front end accounting for 97% of web site response and 85% of desktop) - desktop browsers will cache images, css and js after visiting the page for the first time. So, my second visit and response time may be quicker than my first. How was this accounted for in the studies?

Caching is important to enable and take advantage of. Caching image sprites for years can be a win for some. A few years back on the Yahoo developer blog they wrote about caching and ran some metrics on the empty cache experience. There is no doubt caching will help but the metrics they found were:

40-60% of Yahoo!’s users have an empty cache experience and ~20% of all page views are done with an empty cache.

But, caches only grow so much and not everything is kept forever in a cache. For users who are regularly at a site caching might help. But, what about that first time visitor or the person who comes to the site just a couple times a month. Caching is great but we still need to optimized for the non-cache experience.

As for these specific tests, I don't know how caching was taken into account. Caching is really going to depend on the usage of your user base.

Next, on to the conversion goals.

I love looking at goals in websites. It takes you from thinking about your website as an island and looking at how it fits into the overall organization. At the same time it can help show a way of thinking about websites as more than a place to just stick information.

For example, churches want to make it easy for new people to contact them or find out where they are. Coming to the physical location for a service is important. So, you place a link on the homepage that says "I'm New Here". Underneath here you have a subnav where someone can find your location and another subnav to a contact phone form. You can track who comes to the "I'm New Here" page and then goes on to one of those other two pages.

This is just a simple example

And then we have distraction and technology....

People will be distracted by the apps on their smart phones...

A general measured observation about our society is that attention spans are shortening. It is easier to be distracted now than it was 20 or even 100 years ago. Just another way the landscape is different. I think distraction is a bigger issue now than it was back then and as such we have to deal with it more. Maybe going overboard to limit it.

Matt Farina
Geeks and God Former Co-Host
www.mattfarina.com

I was late to the game.

I was late to the game. Started listening right before you guys quit and I started at the beginning and listened all the way up til just past the departure. It is so good to hear you guys again.

I was on MustardSeed site and drifted over to check the forum and noticed this great news about the summer podcasts. Have deeply missed you guys.

Congrats on the new additions and MFs new job!

Great episode.

Looking forward to some great drupal goodness.

No love for Cylons?

Sorry, had a great laugh around 17:10. Just got through watching Battlestar Galactica for the first time, and computers made in God's image really struck me as funny. Welcome back guys.

New to my church or the church?

While a traditional zero-sum game would mean if a new visitor started attending another church, my church has failed. But, if that new visitor had first viewed my church's website, have we really failed? I would say we succeeded. Which makes establishing goals for a church or ministry's website more difficult than a website for a business.

If we consider the various uses of the Internet - library, post office, marketplace, town square - I find it difficult to categorize a church's online presence. A church should use their web presence for the growth of the church, and not limit themselves to the growth of their church. Once they focus on the first, the second will take care of itself.

So, where I think I'm going with all this is the less tangible measurements - return visits, time on site, pages per visit. Then you also have the challenge of establishing a baseline - compare to your historical results, other church websites, or sites of your size? You can certainly look at the source or your new visitors to your worship services. If the web is your #1 referral source, what does that say about your congregation?

A More Complex Picture

There are a few things at play here we need to think about.

  1. The church has a lot of goals. To grow the church at large, to grow the local church, to teach people about God, to connect people with each other, to help people serve others, and so many more. Goals at this level are not what we are talking about. At this level of detail we are unable to measure useful information. It's a very non-specific level that sounds.
  2. Goals need to be specific. Helping the needy is not a specific goal. It's a general mission. Working with local mission X to provide Y food to hungry people is a goal in the form we are talking about. From this you can measure (or attempt to) the number of hungry people in the vicinity of the pantry, how many of those people they are able to help, how much your church or ministry helps the pantry, and how much your church has in comparison to what it gives to help with the need.
  3. High level goals (e.g., to grow the church at large) are missions of the church not specific goals. There is a difference and you need both. But, we need to be careful not to confuse the two.
  4. A specific web goal might look like, the church will use online videos in 5 - 20 minute segments to teach the congregation and large world about God, his forgiveness, and his message. With this you can measure the number of visitors locally and around the world. You can measure the content of the videos to make sure they talk about God, his forgiveness, and his message. You can measure the number of repeat visitors (people who find it useful). The number of people who end the videos early. The highly viewed videos can point to presentations that communicated well or were on topics that were of interest. In short, there is a lot that can be effectively measured here.
  5. In short, goals should be S.M.A.R.T. and not general missions.

Matt Farina
Geeks and God Former Co-Host
www.mattfarina.com

Goals v. Mission

You're right - goals definitely need to be SMART, but they also need to align with mission. You might be making your way up the ladder (a goal), but if the ladder is up against the wrong wall (mission), you're not really making progress.

You also need to really establish what the lead measures are. Your goal may be to lose weight, which is measurable, but not actionable. The actionable (lead) measures would be the amount of exercise you get and the number of calories you consume.

The other distinction that needs to be drawn is how the online content motivates offline actions. And then measuring the effectiveness.

Good stuff!

Mobile MIssion

Thought I'd share this link to a blog post on OurChurch.com - relevant to the use of technology in worship/ministry http://blog.ourchurch.com/2011/07/26/are-you-curio...