Streamers are entering a new Twitch.tv era all thanks to WordPress. The ability to create a site quickly and install an endless number of free plugins allows a popular streamer to create a site for their community. The availability of over 5000 free plugins has always been one of the best things about WordPress but I’m about to tell you how it can also cause the death of a site and potentially ruin a Twitch channel.
- How do you keep a database clean when multiple different plugins want to store their own version of the exact same data i.e. each plugin might store a Twitch User ID in an option record only that plugin uses and it’s possible that 2-3 plugins will each store a users ID!
- If the Twitch API is taxed by the demand your site is putting on it, how will you establish which plugin is the cause and deal with the issue further by establishing which service/call within the plugin is at fault?
- If two plugins require the exact same data from the Twitch API and they both make calls on their own to fetch it. Do you care or would you prefer a more professional approach that considers high traffic volumes?
- If you want to integrate a membership plugin with Twitch subscriptions, will you install another plugin by a random developer? A plugin that makes calls to the Twitch API to get subscription data without considering the possibility that your other Twitch plugins might have already queried that data and potentially cached it for future use.
- Would you rather build your Twitch based website on a single system? A system still built using multiple plugins thanks to an extensions system, but each plugin fully integrated to offer more by default. That is what the TwitchPress project offers and it includes more guarantees that success will not cause the downfall of your service. TwitchPress has been designed to adapt and grow, to suit your channel communities or stream teams demanding needs.
Too Many API Cooks
Installing many WP plugins can be a great experience. The fact that each plugin is created by a different developer isn’t normally a problem – if each developer knows what they are doing. But there is an exception and it has nothing to do with coding styles and everything to do with engineering decisions.
Each plugin author will take a slightly different approach which is normal and part of the beauty of coding. That beauty becomes a potentially horrendous mess when each approach creates duplicate data in a database or makes more calls to the Twitch API than are needed. Two plugins might require the same data to do different things. Each plugin will make a request to Kraken (the Twitch API) and this could happen many times per minute depending on the purpose of a plugin. This is a major issue for popular websites because API’s have limits and what started as a few calls a minute on a new WP site might quickly turn into a few calls per second during peak times. Especially if we install a few different Twitch plugins that each require interaction with Twitch.tv services.
Especially if we install a few different Twitch plugins that each require interaction with Twitch.tv services. The result is having too many API cooks in the kitchen.
I got here first!
There aren’t many WP plugins that connect to the Twitch API using their own set of application credentials and those that do have no plans to expand from what I can tell.
But to my surprise, I’ve already found two separate developers this year who said they plan to create a Twitch plugin that uses the API and will require application credentials to be entered. They approached me when they found my own Twitch plugin, “TwitchPress” and we’re interested in my approach. I urged them to consider creating extensions for TwitchPress instead and helping me to establish my plugin as the number-one solution for launching a Twitch based website.
I only hope developers are responsible enough to explain the pros and cons to using their plugins. Especially if they do not offer an extension system for an expanding community. We don’t want streamers investing a lot of time and money into a new website that makes it difficult to grow. Instead, they can choose a solution that is ready to expand when they are ready. That solution is TwitchPress.
No traffic management!
There needs to be a core plugin or theme (usually a plugin) to create a sustainable system that a service can rely on. In our case, we want to create a Twitch.tv system and offer a suite of Twitch tools. It has to be professional and cater for an unlimited number of users, we can’t predict how popular the next big streamer is going to be.
We’ll want to add new services to our suite regularly i.e. games, raffles, new commands and shortcodes for displaying Twitch.tv content. We have no idea how many times we’ll need to call Kraken when providing these services. It’s not good enough to stumble into a situation where we’re hitting traffic or call limits without knowing what features are generating traffic or potentially excessive calls to the API.
So we need traffic management that gives us a picture of where users are going, what features they are using and how much demand is being put on third-party services like Twitch.tv.
Such an advanced traffic management solution does not exist in TwitchPress but it will. It will never exist within a group of random plugins and so building a gaming site using plugins from various developers will instantly rule out all of the control I plan to offer in my plugin.
Transparency for Users
I’m a fan of transparency in any development but it’s unlikely we’ll ever see a list of “My Installed Plugins” on any WordPress site. TwitchPress offers a recognized brand that we can use to create confidence in our visitors by displaying the brand clearly on our WP site i.e “Powered By TwitchPress”. The TwitchPress core plugin is free and so we could say the brand is also free.
TwitchPress is a project offered by me to two communities, the WordPress community, and the Twitch community. We can build the brand together, own it together, and each of our gaming websites will benefit from that brand.
This information is based on the idea that your WP site is being developed for an ever growing Twitch channel. That means the site is expected to provide a public service for potentially thousands of viewers. If your site is not expected to be visited by high volumes of traffic and you do not plan to offer a suite of Twitch tools in future. Then any plugins will do and I encourage you to try many. Just know that it is my goal to meet everyone’s needs so contact me with your requirements.