Four Cool WP .gov Sites

I was in Washington DC last week at the OpenGovDC conference where I participated on a panel about design. The organizers and many of the speakers were pretty Drupal-focused, but I did get to meet some folks and learn about the ever-growing use of WordPress inside the Beltway. Here are four:

  1. CFPB, Consumer Financial Protection Bureau. This is the best-looking of the four, and 100% WordPress.
  2. MO.gov, Missouri State. Is there a LESS.gov? 😉 The show-me state has a solid WP-as-CMS going here.
  3. Office of Compliance. As exciting as it sounds.
  4. NCCS.gov, National Center for Computational Sciences. Website is okay, but center is super-cool: they provide super-computing (tens of thousands of processors) for open scientific research.

Any other favorites? Particularly well-designed ones like consumerfinance.gov.

MovableType 4 vs. WordPress 2.2

Mashable compared MovableType 4 and WordPress 2.2. I wouldn’t agree with Byrne that “Movable Type 4.0 is light years ahead of its predecessor not to mention any other blogging tool on the market” but they have caught up to a lot of basic features — pages, WYSIWYG, pagination, user registration — that have been lacking in the platform for a while. That, plus the fact that they support WordPress imports and cloned our pages API does show that they’re gunning for some switchers regardless of what they may say in public. (I’m cool with both of those by the way, it was good of them to adopt existing standards instead of invent new ones. In fact it’d be nice if they could export to WXR as well as it’s pretty semantically rich and the current MT export format leaves a lot of important stuff out, like slugs.)

RSS Bandwidth Usage

Robert Scoble looks at RSS bandwidth usage but unfortunately doesn’t give real numbers. There are a couple of important points in looking at HTML vs. RSS bandwidth usage, some brought up in his comments but I’ll review here:

  1. RSS is not a transport mechanism, and these problems should be handled on the HTTP level. This is faster, better tested, works with caches and proxies, et cetera.
  2. I don’t care if an aggregator checks my feed every 5 minutes, if they support HTTP properly (last-modified headers) the load is neglible for me and them. The bandwidth used each time is around 250 bytes.
  3. Speaking of HTTP, gzip encoding works just as well for RSS feeds.
  4. Bloated HTML in full content feeds will make for bloated feeds. We’ve upped our standards, up yours.
  5. Adjust your number of items to match your posting schedule. If you update two or three times a week, you don’t need 20 items in your news feed, try five. If you update a lot like myself or Robert you run the opposite risk: people who don’t check your feed for a while might actually miss content. I talked to aggregator developers a few months ago about a way to address this, perhaps we need to look at this again.
  6. A visit to a homepage like this generates a lot of requests. First you get the HTML, then your browser requests the CSS files, then it gets all the images, probably about a dozen of them. RSS is generally a single request, and then images embedded in posts may be requested later if that entry is viewed.

That out of the way, how about some real numbers? I can give the best stats for photomatt.net because my RSS feed is on a separate subdomain. Here’s bandwidth usage for August:

photomatt.net – HTML and images, et cetera
56.0 GB
xml.photomatt.net – RSS and other variants
1.7 GB

The ratio for July was similar, 77.6/2.0 GB, I guess I lost some readers in the summer slowdown.

My front page is an average of 17K HTML and about 30K of images, so lets say 50K. The images and CSS are all cached, but I don’t output the proper headers on the HTML because it would be a pain. I would have to check the time of the latest post, check the latest updated link, make sure there’s not a random photo, basically go through a lot of trouble that isn’t really worth it. (When I was caching everything with Staticize the page was stored in its entirety so I sent correct headers, but I don’t bother with that anymore because everything is so fast it doesn’t really make a difference.) All that said, I’m happy with the level of optimization, my HTML and CSS is as streamlined as I want it to be.

My feed, on the other hand, is completely self-contained. I can send headers with confidence because I know everything in that file and can say authoritively when it was last changed. (Actually WordPress handles it all automatically, I don’t worry about it.) Most of the aggregators that hit my site support this. I don’t think about it and they don’t think about it, HTTP just works. My feed has 25 items because of my posting frequency, more than twice the number of items most feeds have. The feed is usually around 10K, and as I already mentioned it’s only one request.

Here’s the kicker: my RSS feed is requested 3 times for every time my front page is loaded. So a HTML page with 1/3 the traffic is using over 30 times the bandwidth. What was that about scalability again?

Facts Backfire

“In reality, we often base our opinions on our beliefs, which can have an uneasy relationship with facts. And rather than facts driving beliefs, our beliefs can dictate the facts we chose to accept. They can cause us to twist facts so they fit better with our preconceived notions. Worst of all, they can lead us to uncritically accept bad information just because it reinforces our beliefs. This reinforcement makes us more confident we’re right, and even less likely to listen to any new information.”

— Joe Keohane in How facts backfire. Hat tip: Ramit Sethi’s psychology bookmarks.

Books in 2017

Here’s what I ended up reading this year, in roughly chronological finishing order. (I usually have 3-4 books going on at once.)

  1. Tools of Titans by Tim Ferriss.
  2. The Art of Stillness by Pico Ayer.
  3. Out of Your Mind by Alan Watts (audiobook, really a series of lectures).
  4. Book of Five Rings by Miyamoto Mushashi (audiobook).
  5. Do Not Say We Have Nothing by Madeleine Thien.
  6. The Best American Short Stories 2016 edited by Junot Diaz.
  7. Feynman by Jim Ottaviani.
  8. My Gita by Devdutt Pattanaik.
  9. From Plato to Post-modernism: Understanding the Essence of Literature and the Role of the Author by Louis Markos (another lecture series).
  10. The Rules Do Not Apply by Ariel Levy.
  11. The Story of a Brief Marriage by Anuk Arudpragasam.
  12. All the Light We Cannot See by Anthony Doerr.
  13. Ikigai: The Japanese Secret to a Long and Happy Life by Héctor García and Francesc Miralles.
  14. When Hitler Took Cocaine and Lenin Lost His Brain: History’s Unknown Chapters by Giles Milton.
  15. Widow Basquiat: A Love Story by Jennifer Clement.
  16. 32 Yolks: From My Mother’s Table to Working the Line by Eric Ripert.
  17. Identify: Basic Principles of Identity Design in the Iconic Trademarks by Chermayeff & Geismar.
  18. Catching the Big Fish: Meditation, Consciousness, and Creativity by David Lynch (audiobook).
  19. The Upstarts: How Uber, Airbnb, and the Killer Companies of the New Silicon Valley Are Changing the World by Brad Stone.
  20. The Leavers by Lisa Ko.
  21. Wolf Hall by Hilary Mantel. (Update: On Obama’s 2019 book list.)
  22. Girls on Fire by Robin Wasserman.
  23. The Executive’s Compass by James O’Toole.
  24. Tuesdays with Morrie by Mitch Albom.
  25. Dance of the Possible by Scott Berkun.
  26. The Lifecycle of Software Objects by Ted Chiang (short story).
  27. Tribe of Mentors by Tim Ferriss.
  28. After On: A Novel of Silicon Valley by Rob Reid.
  29. Principles by Ray Dalio.
  30. The Graveyard Book by Neil Gaiman (audiobook).
  31. The Undiscovered Self: With Symbols and the Interpretation of Dreams by C.G. Jung.

A fairly random selection, and hopefully I can get a few more in next year.

All book years: 2017, 2018, 2019, 2020–2023.