#wcnyc: Performance & Optimization

Matt Martz (@sivel) and Scott Taylor led one of the first sessions on WordPress performance and optimization.

“High performance is not high availability.”

Matt manages five personal servers, including one load balancer, two web servers, and two database servers. The Nginx load balancer is a 512 MB slice from Slicehost, web servers are Nginx with FastCGI and 1 GB a piece, and the MySQL database servers are 512 MB. HyperDB is a WordPress plugin which allows you to partition out your database. Matt has it configured such that reads are done from all of his databases, while writes are only to the master database.

Caching is done with Memcached, PHP APC caching, and Batcache. WordPress.com is Memcached, HyperDB and Batcached. LoadImpact.com allows you to load test your site with between 10 and 50 concurrent users and will give you the page load times based on the number of users. Matt’s load times start at about 1.75 seconds and actually go down over time because caching kicks in.

GlusterFS is a system utility to replicate data across all of your production web servers. Upload an image to one, copy to every. GlusterFS is nice because it works on both physical and virtual machines. Matt has the WordPress directory, PHP directory, and Nginx configuration syncing across his web servers.

In total, he easily handles 4 million pageviews/month across all of the machines.

“If it appears slow, it’s often because of the front-end.”

Scott Taylor discussed front-end optimization.

First, ensure the HTML code you write is semantically correct. The TwentyTen theme packaged with WordPress is a good example to follow. Overrides follow the rule of IDs first, then classes, then elements.

Combine scripts from different plugins to just one script to improve load times.

YSlow and Google Page Speed are good tools for front-end development. YSlow will tell you to make less HTTP requests, add expires heads, use Gzip (same thing as deflate), reduce the number of DOM elements, specify absolute image dimensions and a favicon, and cache AJAX requests.

Recommended resources from Scott include: Rasmus Lerdorf at Digg, anything from Steve Souders, and writing from Douglas Crockford.

How J schools can encourage innovation

… is a solid topic for the Poytner Chat being held this Thursday at 10 am Pacific, 1 pm Eastern. A few months back, CoPress published a video called “A Case for Innovation”:

In it, we identify the historical context for the issues that a number of print publications are having today, and lay the groundwork for why innovation is critical for the transmogrification and survival of these organizations. Innovation, in our world, is about experimenting and taking risks. It’s “trying what’s radically new” with the hope that some ideas will be good learning experiences while others will be tremendous successes.

It’s critically important that journalism schools experiment as well, and I look forward to a productive conversation about approaches they can take to create an environment that fosters innovation.

BarCamp Redefining J School

A few co-conspirators and I want to hold a BarCamp on Sunday, October 25th, the day after the SPJ regional conference at the University of Oregon. For those who have never attended one, a BarCamp is an “ad-hoc gathering born from the desire for people to share and learn in an open environment.” In short, if you think you have something to teach you can throw it in to the mix. If you’re there to learn, then you have a whole number of knowledgeable people as teachers for a variety of topics.

The topic for this BarCamp? Redefining J school. The news industry is going through epic change that most J schools are ill-equipped for. It’s time for a new style of learning. We brainstormed several possible sessions:

  • What courses should you take to supplement your journalism career? What are good minors to a journalism degree?
  • What do students want from professors? How can students take initiative and enhance classes?
  • Crowdsourcing, and leveraging the knowledge of the community to put together a story
  • Where’s the line between PR and journalism?
  • Digital basics (blogging, Twitter, Google Alerts, etc.) and how those tools can be used
  • How to get paid internships (i.e. kickstarting your career while still in college)
  • Where’s the line between work and life when building your personal brand online?

Granted, I’ve done a lot of punditry in the last year talking about how J school is obsolete and needs to be completely reinvented. It’s time to translate grand ideas into action.

We’re planning to meet at 6:00 pm PT in the EMU Fishbowl, next Tuesday the 6th. Join our Google Group to stay in touch, or leave a note in the comments.

BOINC for journalism

The University of Oregon School of Journalism and Communication brought Marty Baron, Editor of the Boston Globe, to Eugene today to give the 33rd Ruhl Lecture. My overall opinion is that, although it was fun to be physically present at one of these #thedeathofnewspapers presentations, he didn’t cover anything particularly new or groundbreaking. It began with a pretty backward-looking, pessimistic tone, and then continued into something that lead Bryan Murley to ask whether it was an “informercial for The Globe.” In fact, I think the entire perspective of the audience could’ve been shifted if, instead of calling the lecture “The Incredible Shrinking Newsroom,” it were called “The Amazing Growth of the News Ecosystem.” We need more conversation about what the future can look like. But I digress.

Continue reading “BOINC for journalism”

Discussion topics for NewsInnovation Portland

In no particular order, these are the things I’m looking forward to discussing at BarCamp NewsInnovation Portland tomorrow:

What is journalism? Every conversation starts with a foundation, or core premises, and I don’t believe we’ve gotten to that point yet in this shindig about newspapers dying. Considering it’s a fundamental paradigm shift we’re going though, I think it’s going to be important to start at square one and build up.

The model for the ideal digital news organization. There’s a lot of ideas bouncing around as to how newsrooms should change, what the business models are, and what their websites should look like. It would be really sweet to come up with a master list of all of these ideas (and then have someone experiment with them…)

Transparency for building trust. The first group to take the concept of an “open source organization” and apply it to journalism wins five dollars. I’d enjoy covering strategies and techniques (a la the CoPress Team Blog) for completely opening a news organization.

If you can’t make it, we’ll be livestreaming and liveblogging the whole day long. It will be epic.

Organizing NewsInnovation PDX

BarCamp NewsInnovation is a series of “unconferences” happening around the nation with the goal of bringing together “energetic, tech-savvy, open-minded individuals who embrace the chaos in the media industry because the ability to do really cool things still exist. We also need find those people outside of our industry who love to consume news and information and are great thinkers and innovators.”

On the 21st of February, 2009, we’re bringing a regional edition to Portland. The Daily Vanguard has generously provided space at Portland State, but we’ve still got a lot of planning to do between now and then. If you’ll be in the area and are interested in helping out, please leave your name on the wiki and sign up for the Google Group. Personally, I’ll be satisfied if I get to spend a day jamming with like-minded entrepreneurs on these ideas:

  • What are the core competencies of a news organization online?
  • What is journalism in 10 years? How does journalism evolve with technology?
  • What would a local news startup look like?

Being back in the States on the 21st also means I’m ending my work in Peru prematurely, but CoPress has really taken off and I’m stoked to get back and be able to take it to the next level.

Planes, trains, and the Bolt Bus

Just as soon as I finish my oatmeal, I’m off for an epic trek across these United States for the first ever CoPress meetup in Philly. We’ll be talking student newspapers, strategy, the internet, and our favorite type of pie at this time of year. If you’re around town, you’re more than welcome to join us for a fun lunch party on Wednesday.