A Command Line Interface (CLI) for your VIP Sites

We’re excited to announce VIP CLI, a new and direct way for developers to interact with applications hosted on VIP.

We’re excited! We’re really looking forward to this CLI tool making our workflows much easier. We’re particularly pleased about the flexibility to adapt data sync to our sites, adding our own custom functionality to clean out our specific production credentials, production options, and change things up.
– Bob Kirkemo, Lead Software Developer with VIP Client
Digital First Media

Control vs power

We’re creating the preeminent platform to empower WordPress developers and accelerate our client’s business. The faster developers can deliver value, the faster the business can differentiate in the market.

The VIP platform allows companies to run sites confidently in the face of remarkable traffic levels while maintaining a strong security posture and remaining performant, all without an in-house Systems and Operations team. Until now, the tradeoff has been that our team has handled the control of your site on your behalf, as well as relaying information as requested.

In contrast, roll-your-own cloud hosting provides a lot of raw power to development teams, but requires dedicating company time and energy to architecting and operating the infrastructure. On a hosting platform designed and operated in-house, everything can be done by your team but everything has to be done by your team.

Power and tools

When we talk to our client developers, they tell us they want more direct ways to work with their sites and applications, and more immediate methods of feedback. They want the best of both worlds: our hands-on support when they need it, and direct access when they don’t. We agree. We are determined to meet our clients’ developers on their own terms, and deliver the access and control they demand while retaining the benefits of a fully managed platform.

When you want direct assistance, we will anticipate it and be there for you. And when you don’t, you should be able to proceed smoothly and without extra steps or encumbrances. We think about the latter as empowerment… and empowerment is a key focus as we develop the VIP Platform and tooling.

Any time we can get something done ourselves rather than fire up a ticket, it saves us time and keeps our team’s heads in what we’re doing. I’m excited to see VIP keeping a focus on enabling us to tackle more tasks ourselves.
– Erick Hitter, Principal Software Developer at VIP Partner Alley

CLI: The first building block

We wanted our first tool to address as broad a range of developer scenarios as possible, and the obvious answer was to build a command line interface (CLI) tool. Many developers are familiar with issuing CLI commands in a terminal, and using those commands to script interactions with WordPress sites via the official WP CLI tool, so we knew we were working with an established paradigm.

This week, we’re proud to release VIP CLI, and the first commands you can run with it, including triggering a data sync to synchronise data from your production environment to non-production environments, facilitating faster debugging and QA. To get started, please read our documentation for installation instructions.

Below you can see a video of the tool in action:

What’s coming

We know that using a CLI tool is not for everyone, so we have a web-based dashboard in the works. Watch this space.

Please get in touch if there’s anything you want to discuss about the VIP developer experience, or anything we can help with.

Data Sync on VIP Go

Anyone who runs an enterprise WordPress application knows there are significant challenges and considerations to copying production data. No matter that your production data runs to tens or hundreds of thousands of articles, contains sensitive “live” data, and is accompanied by tens of gigabytes of images, often you need a complete copy of that production data to test new functionality or to reproduce a persnickety bug.

Today we’re pleased to announce a speedy, streamlined, and structured Data Sync process for VIP clients. This is a step in our larger effort to make copying large amounts of production data entirely self-service, which we will also be rolling out soon. In the meantime, and even after self-service becomes available, we are happy to sync data on behalf of our clients.

Read on for details on how our new process works.

 

As light as a feather

Copying data must never affect the operation of the production site. It cannot place load on the database or impact performance in any way. To remove the impact on our production servers we hook into our backup mechanism, and use the hourly backup data we keep for all production sites.

Fast, complete, and working data

For the large datasets we expect from many of our clients, copying everything over can take a long time and the subsequent operations on the data can take even longer. Our Data Sync completely replicates their production data and we wanted the operation to be as fast as possible.

To sync the data we use the reliable and well tested functionality of our backup systems. Our backups are fast to restore, and have complete internal integrity, e.g. no partly completed data operations, making them ideal for this purpose.

As well as restoring the data, we need to replace any URLs using the production domain with URLs for the new non-production environment. Traditionally this is done using the WP-CLI tool, which provides a command line interface and tools for managing a WordPress install. While this works for the majority of WordPress sites out there, this method is simply too slow for the massive datasets typically used by a high scale WordPress.com VIP client. The slowdowns are caused by the interactions between PHP and the database layer – many hundreds, thousands, or tens of thousands of reads and writes will necessarily take some time!

To replace the URLs in the data at the speed VIP customers demand, our team wrote a Golang script, “go-search-replace“. In our tests, go-search-replace is at least forty times quicker than the equivalent search and replace using WP-CLI commands, reducing operations which took many hours to minutes at most. (We apologize if you were expecting to kick back with a long and refreshing beverage during the Data Sync.)

Massive media libraries

Of course the database is just one part of the story. Many WordPress sites we host include tens, even hundreds, of gigabytes of data and hundreds of thousands of files on our VIP Go Files Service. Copying such a significant amount of data would take many hours. Instead our cloud platform provides a service we call UnionFS.

UnionFS works by making the files for the production site available to all non-production sites in read-only mode. Files shared by UnionFS in this way are served from the same infrastructure and have the same caching rules applied.

Tailored to your WordPress application

Production data often includes connections to APIs and services that should not be active in non-production environments, such as API keys for live payment gateways and connections to mailing lists. To ensure you have confidence in the data, and to be sure you get the same results every time, we provide a WordPress action hook so your code can swap API keys, clear production orders, and any other custom operations that are specific to your WordPress application.

How do I try this?

As we finalize everything that will make this process fully self-service, we will continue to support VIP client Data Sync needs as they arise. If you want the data from your VIP Go WordPress site copied into a non-production environment, please contact our support team and we will be happy to help.

You can read more in our Data Sync documentation.

Liveblog 1.7 Brings a React Front End and More

We’re pleased to announce the release of Liveblog v1.7, which introduces a completely new React-powered front end, adds new features and provides improved support for liveblogging from mobile devices.

Our Liveblog plugin offers a powerful and easy to use way to cover high profile events on an owned channel. With it you can host frequently updated real time event coverage pages, drawing in collaboration from multiple contributors who may be in multiple places. Many of our clients use Liveblog in their newsrooms to cover awards shows, big sporting events, and breaking news.

The new front end, rebuilt from the ground up, offers the enhanced performance and simplicity of React while retaining the existing Liveblog feature set, including:

  • Key events
  • Hashtags
  • Lazy loading of events
  • Slash commands

Check out the added autocomplete and emoji rendering features in action:

And it adds some of our most frequently requested enhancements:

  • A more mobile-friendly interface
  • Easier image insertion, including on mobile
  • Better formatting tools
  • Pagination of entries
  • Performance improvements for high-traffic liveblogs

Here’s a quick run-through of what’s new for editors:

And for users:

Special thanks to our development partner on the project, VIP featured partner Big Bite Creative, who with this great release have set a new foundation for continued enhancements to a critical newsroom tool.

“It’s been a rewarding few months working with the VIP team on what has been the biggest update since the original release. And it doesn’t stop here! With 1.8 already in works, we’re excited to demonstrate how easy it is to extend the new UI with some exciting new features.” said Liam Defty, Release Lead at Big Bite.

In this talk from BigWP London in December, you can hear Jason from Big Bite introduce the context behind this new release and a share a bit about what’s coming next.

If you’re a VIP client and have any questions about how to upgrade, check the Lobby post for specific instructions, or get in touch with your VIP support team.

Bugs, feature requests, and contributions are more than welcome on GitHub. And anyone can download and use the plugin via WordPress.org.

Introducing: VIP Quickstart

Update:
VIP Quickstart is deprecated as of March 13, 2017. Support for Quickstart will continue through April 21, 2017. For new environments, we recommend using Chassis or VVV as detailed in the Local Environment documentation.

Previous Information:

One of the pain points we often see in the development process is getting a development environment set up. Today we’re introducing VIP Quickstart to fix that. The goal of VIP Quickstart is to provide an environment similar to what you would be deploying to on WordPress.com that’s also quick and easy to setup.

VIP Quickstart is a mix of Vagrant, Puppet, Bash scripts, and some PHP code that will help you quickstart your WordPress.com VIP development. The setup installs a base Ubuntu 12.04 box running PHP, Nginx, and MySQL. The WordPress installation will be WordPress multisite from the latest trunk build. It also includes the WordPress Developer plugin along with all the recommended VIP plugins and the VIP Shared Plugins repository. Finally, there are some WordPress.com customizations and WP-CLI.

Updates will be pushed out on Github. You can always make sure you’ve got the latest version of Quickstart by running the VIP init script that’s included. If you’re already familiar with Vagrant, all the built in Vagrant commands will still work as well.

What’s Next

Currently we’re working on a Windows installer that should be available shortly. After that the plan is to add support for PHPMyAdmin along with some other tools. We want to include any tools that make sense for WordPress development in general and VIP specifically, so if you’ve got ideas we’d love to hear them.

In the future, issues involving local development environments will be unsupported unless you’re using Quickstart.

Follow Along

You can follow development on Github. If you come across problems, we’d ask that you first check the issues on Github and if the problem hasn’t already been reported, go ahead and create a new one. As always, pull requests are welcome.

This slideshow requires JavaScript.

The Liveblog Add-On: Now with Rich Text Editing!

It’s been just over a year since we launched our Liveblog Add-on. It’s been fantastically well-received by our VIPs who have used it to cover a wide variety of events, like Canada.com’s coverage of the Calgary Flames hiring Brian Burke, TechCrunch’s iPhone 5s launch coverage, and today, KDVR’s coverage of the disastrous flooding in Colorado.

Today, we’re very happy to announce that we’ve added rich text editing controls to the Liveblog Add-on. Sometimes known as WYSIWYG, you can now easily add to your liveblog updates with simple text formatting, such as bolds, italics, and links — all by pressing one button. These enhancements are already live and immediately available for our VIP Liveblog Add-on customers.

The new editor looks like this:

WYSIWYG Liveblog Editor

And here’s an image of the new editor in context, as well as highlights of recent Liveblogs from across WordPress.com VIP:

These enhancements were a joint project by WordPress.com VIP and X-Team, our newest Featured Partner.

If you’re new to the Liveblog Add-on and are wondering what makes it special:

  • Post updates right from the front-end of your site (no need to use the /wp-admin dashboard)
  • Viewers of your Liveblog get new entries served to them instantly and automatically, without needing to refresh their browser.
  • Your authors can drag-and-drop photos right into the Liveblog area, without needing to navigate to separate browser tabs or windows.
  • Easily add to your liveblog updates with simple text formatting; bolds, italics, underlines, links, and more.
  • There’s no need for a separate site dedicated to liveblogging: every post can be a liveblog, even existing ones.
  • When your Liveblog is done, it’s archived so your readers can catch up whenever they would like.

If you’re interested in using the Liveblog Add-on as a WordPress.com VIP Hosting client, get in touch!

VIP Feature: Even Easier Embeds

Did you know that users of the WordPress.com VIP platform can easily add embeds to their posts?

For VIPs, iFrames, Objects and Scripts can be easily inserted into posts using the text editor, no shortcode needed. We protect the embeds behind the scenes, so that users don’t have to worry about inserting unsafe code on their websites.

 

Also, embeds from YouTubeHuluInstagramVimeoBlip.tvCNNMoney videoDaily MotionGist or Rdio can be added in one line. Editors can simply copy the URL in the browser bar while they’re viewing a video or photograph, and paste it into the post editor on its own line. We’ll automatically handle embedding the content.

For more information, visit the embeds documentation page. Have questions about VIP? Don’t hesitate to contact us.

New Liveblog Add-On from WordPress.com VIP

We’re proud of our VIP Clients, many of whom report the latest and most important news as soon as it’s available. It was they who we thought of when we developed the new Liveblog Add-on.

We can’t wait for you to see it in action, either as an author, or a reader! To see what it will look like, take a look at the video we created for the Liveblog Add-on.

Here’s what makes the Liveblog Add-on special:

  • Post updates right from the front-end of your site (no need to use the /wp-admin dashboard)
  • Viewers of your Liveblog get new entries served to them instantly and automatically, without needing to refresh their browser.
  • Your authors can drag-and-drop photos right into the Liveblog area, without needing to navigate to separate browser tabs or windows.
  • There’s no need for a separate site dedicated to liveblogging: every post can be a liveblog, even existing ones.

If you’re interested in using the Liveblog Add-on as a WordPress.com VIP Hosting client, get in touch!

If that’s not enough, we’ve also completely open-sourced the Liveblog code for self-hosted WordPress! You can find it in the WordPress.org plugin repository and on github.

Take a closer look:

Thanks to VIPs GigaOM and Local TV for their feedback and contributions during the beta testing phase for the plugin.

Developer Plugin v1.0: Helping WordPress developers develop

One of the great things about developing for WordPress is the number of tools available for developers. WordPress core ships with a bunch of useful features (e.g. WP_DEBUG) with many more built by the community (like our own Rewrite Rules Inspector and VIP Scanner) that make development and debugging a breeze. The hardest part is getting your environment set up just right: knowing what constants to set, what plugins to install, and so on.

That’s why we built-in the Developer plugin. It’s your one-stop resource to optimally configure your development environment by making sure you have all the essential settings and plugins installed and available.

If you’re a WordPress developer, we highly recommend installing this plugin in your development environment. You can download the plugin from the WordPress.org Plugins Directory or directly from your WordPress Dashboard (Plugins > Add New).

Here’s a quick walk-through:

If you’d like to check out the code and contribute, join us on Github; pull requests are more than welcome.

Are there any tools, tips, and tricks that you’re using that we’ve missed? We’d love to add them to the plugin. Let us know in the comments.

Cheezburger Network Open Sources Their WordPress Administration Panel

WordPress.com VIP Cheezburger Network, where you get your daily LOLz from one of their 50 popular sites like I Can Haz Cheezburger? and FAIL Blog, have shared the code of their WordPress theme administration panels.

Called CheezCap, it’s a simple library for easily creating custom admin panels.

Screenshot of CheezCap

Cheezburger Network uses a single shared theme across all their sites. In order to avoid having to create conditionals and other per-blog modifications in their theme, they developed CheezCap. Any of the administrators can update the options controlling the layout, design, colors, etc, without having to dig into the theme code.

When asked what motivates his engineering team to participate in the WordPress community, CTO Scott Porad replied:

I can say without hesitation that WordPress has had a hand in the success of Cheezburger. So, to the extent that we can help other people be successful with WordPress, we’re on board!

What I meant to say is… All aboard the WordPress Express! Choo Choo!

How to Evaluate Your Comment System Needs

We’re always looking for ways to improve your comments and help make your site more social.  If you run an active site, you’ve probably dealt with your fair share of commenting challenges: moderating large queues, filtering spam, and most importantly keeping your community engaged.  These days, there are several commenting solutions available to publishers.  Here’s our perspective on how to choose the one that’s best for you.

How easy is it to use?

Find the good stuff. There are tons of insightful comments that get lost in a sea of white-noise. You can help your readers find valuable comments with a rating mechanism like comment voting to sort the good stuff to the top. Anything that can help you determine the commenter’s reputation and credibility will help you get a quick overview of which comments are worth your time.

Stay organized and involved. Organization makes for better debates. With comment threading your replies will appear in just the right spot instead of at the bottom of a long, long list of comments. Email notifications for new comments and the ability to respond to comments via email, keep your commenters involved and they won’t miss a beat.

Are your comments social?

Know who you’re talking with. When your readers know their fellow commenters, they will automatically become more engaged.  Profiles, avatars, user descriptions, comment history, and Twitter integration makes it easy to get to know one-another.  Here’s an excellent example of a commenter profile.

Lower the barrier to participation. Tie in their existing profiles from WordPress.com, Twitter, or Facebook, so all they have to do is type their comment and hit submit. And it’s all about sharing, so you should also give your commenters a way to share their comments on Twitter and Facebook.

How easy is it to manage?

Moderation, moderation, moderation! A commenting solution with hardcore spam and moderation filters will help you manage your comments easily and keep it all in good order. Different admin privileges are helpful for assigning additional moderators to help manage your account.

Crowdsource it! Give your readers the ability to report abusive comments. Having the option to set filters to automatically remove problematic posts will let your readers help you keep the conversation classy.

Performance is key! Managing high comment volume can be a burden on your servers, especially if your traffic and comments are just starting to take off.  Hosted commenting solutions are a great way to alleviate the pain, so you can focus on more important things like your next post.

We offer a super-charged comment system called IntenseDebate that can be used on any website. We’ve identified and developed loads of features to increase comment activity, along with new ways to efficiently manage your comments. As a hosted commenting solution, IntenseDebate can help you optimize your site’s performance so your servers don’t have to do any heavy lifting when it comes to your comments. The features described above are just a few of the ways IntenseDebate can improve the discussion on your site, and we’re constantly working to bring more features into the mix.

To learn more about IntenseDebate have a look at the video below, check out IntenseDebate.com, or email me at michael@intensedebate.com.

Ready to get started?

Drop us a note.

No matter where you are in the planning process, we’re happy to help, and we’re actual humans here on the other side of the form. 👋 We’re here to discuss your challenges and plans, evaluate your existing resources or a potential partner, or even make some initial recommendations. And, of course, we’re here to help any time you’re in the market for some robust WordPress awesomeness.