If you are a Puzzled Pint regular, you may have noticed that the website has gotten a little facelift. The old website had been a thorn in our side for about a decade, with aborted rewrites in Node, Ruby on Rails, and again in TypeScript/Node. We had been stuck on an old version of a Content Management System (CMS) for much of that time, for various technical reasons that aren’t important to this blog post. It, and its dependencies, were getting more and more creaky, with more and more opportunity for hacks and exploits.
Each of the rewrites was kicked off by highly motivated people with a lot of energy at the start… which then petered out over time. I get it. Life comes up. We decided we needed to finally hire a professional, and thanks to your Patreon contributions, we can afford these kinds of things now. Paul from RPress answered our call and has been a delight to work with.
Based on some internal discussion and talk with professionals in the industry, we decided that creating a brand new website from scratch was a no-go and that we’d get more utility out of starting with a popular CMS such as WordPress and then extending that with custom plugins. WordPress takes care of all the heavy lifting: pages and posts, user accounts, theming, uploading and hosting our puzzle PDFs, and so on. Both the plugin and theming architecture are extensive and powerful. Paul was aligned with this train of thought and came through with what we now have.
You probably don’t care about all that, and in fact, our hope is that you don’t notice (much) difference between the old and the new site. Most of the changes are under-the-hood. They make things more secure and modern, sure. But more importantly to our volunteer-run organization, they ease the friction of running our monthly events. For us, the improvements are:
- The event pages now have a standardized format. This not only makes them look consistent and nice, but makes the data-entry far easier for non-technical folks. It’s filling out form fields vs composing a fresh HTML document each month.
- This falls into the above item, but is important enough to deserve its own callout. The location puzzle hints and the way the answer is entered/verified were extremely manual, a bit hacky, and very easy to make mistakes. All of this is automatically taken care of now.
- Location puzzles auto-post on a schedule. Answers also auto-post on a schedule.
- The list of cities on the front page is driven by data, not a hand-maintained document.
- All of the account and permissions underpinnings are there for the “phase 2” website update.
- We’re running a modern software stack, so can (finally) keep up with server updates.
- Many more people know and work with the WordPress engine over the (old) Concrete5 engine, which helps with long-term maintenance.
For you, the improvements are a little more subtle:
- Responsive design. The site looks great regardless of screen size. On your phone, you no longer have to zoom in and scroll left-to-right and back again to read lines of text.
- Traditional dark mode as well as a light mode that’s easier on some eyes.
- More consistency and better quality.
- Better adherence to a posting schedule, for both the location puzzle and the answers.
There are also a couple of rough edges you might have run across. We’re aware of them and working to improve things.
- There is a rift in our history between “Archives” and “Vaults.” The Archive puzzles follow the new templated system. The Vaults are a literal dump of the old website HTML pages into the new website. Paul did some manual work to put about a year’s worth of puzzles into the Archives, formatting the content to the new system. But it’s really not worth it to pay a developer do do extensive data entry. Expect to see more of the Vaults migrate to Archives over time. We have some volunteers lined up and are working out some documentation.
- The “solve the puzzle to display locations” link only works on the current month, not previous ones in the archives.
- Uncovering location puzzle hints only displays a single hint at a time. It doesn’t preserve the visibility of previous hints. This is a minor annoyance we didn’t spot until folks emailed us.
All of this work opens up the underpinnings for “Phase 2.” You don’t get to see the functional-but-janky system we have on the back end for city Game Control volunteers to enter their monthly event details. It’s a partial implementation of one of those previously aborted attempts at making a new site, and it’s been awkwardly grafted onto both the old site and this new one. There are separate user accounts and, quite literally, separate servers (one on Apache/PHP and one on Heroku/Rails). Computer people can now sit and ponder how well those two work together. The new site will allow us to migrate all of that duct-taped webapp stuff into the WordPress engine. That then simplifies managing cities and user accounts for the city GC. It’s also one less server to manage (as far as ops overhead and cost).
We hope the “Phase 2” work is invisible to you and that the site continues to look and feel the same, but know that it will simplify the monthly work for the volunteers at both headquarters and local cities. And we hope that leads to less fatigue and better events!