You should be using Vagrant in your WordPress development workflow!
Washington State University uses WordPress Multisite on a self hosted server and has been opening sourcing many of their themes and plugins.
Jeremy wrote a wonderful series of blog posts on deployments.
Today’s hangout was with the very talented Jeremy Felt! Jeremy works for Washington State University, maintains the Varying Vagrant Vagrants Github project and also has guest commit access to WordPress core!
In todays show we asked Jeremy about the VVV project and also how Washington State University are using WordPress Multisite along with a suite of plugins and themes to allow staff and students to create and share content.
Show Notes
VVV
Varying Vagrant Vagrants was created by Jeremy as he was using Mamp for development but had an nginx issue he needed to resolve and didn’t have a server environment to debug it on.
VVV aims to give developers a matching environment for local development.
VVV uses shell scripts for provisioning rather than other provisioning software to provide a low barrier to entry for new comers to Vagrant.
If Jeremy were to start VVV again today he might consider using Salt for provisioning as that’s what they are using internally for provisioning at Washington State University.
WSUWP Platform
Jeremy explains the WSUWP Platform which has been open sourced on Github.
We ask Jeremy about what he thinks the current ‘State of WordPress’ is in universities in America?
WSU Indie Sites
Some previous WordPress installs and unusual new WordPress installs use WSUWP-Indie-Development. We ask Jeremy about this repository and what problems this custom setup solves.
Maintenance, Updates and Rollbacks
WSU don’t have a staging environment so all core and plugin updates are done locally and and new plugins will be subject to a local code review to check performance and security before they are rolled out to production.
WordPress in Universities
We ask Jeremy what things we can work on as a community to help champion WordPress as a CMS and application platform in universities? Managing a large number of pages rather than focusing on posts is a big issue. http://developer.bu.edu/bu-navigation/ is a great plugin for managing lots of pages. The Media Library isn’t quite robust enough for different types of documents. WP Document Revisions is an excellent plugin that can help to solve this problem.
What are some exciting WordPress projects and builds you’ve seen universities implementing? sites.psu.edu. rampages.us
Do you think WordPress should be taught as a core topic in Computer Science, Information Technology and Journalism courses in universities?
Get In Touch With Jeremy
You can find Jeremy on Twitter, Github or you can contact him through his website.
Remember your target audience for your plugin before you cater to every feature request. Better to have a product that easy to use and works for 95% of the people, than a product that’s harder to choose that works for 99% of the people.
Don’t put too many new features into a release, otherwise you’ll never release.
Today’s topic is about planning plugins, how to decide what features make the cut, and a behind the scenes look at WooCommerce. Patrick and Meeko joins the show to discuss WooCommerce’s release cycle, how new features get picked for a release, and provides some awesome insight and advice for plugin developers on how to make sure your plugin gets to market.
With such an active (300 contributors and 10,000+ commits) and large (on over 380,000 sites) product with , Woocommerce is a surprisingly tiny team with 5 people. Patrick shares how Woocommerce stays on the roadmap for releases and manages what features get in and what find themselves on the cutting room floor.
Show Notes
Patrick Doesn’t Sleep
Patrick is the new WooCommerce Product Manager, he plans all of the features down the road at WooCommerce by performing research about the new features.
Patrick is writing a book on WooCommerce and how to use it, set to be released in 2015.
He also has developed a number of add-ons for Ninja Forms.
By using an ideas board, when new requests come in they go on the board and get voted up to “fight it out” to make sure that it’s something the vast majority want.
By reaching out to people who make the requests, Patrick can narrow the scope of the features.
WooCommerce sets out to do 3 major releases per year, even though with ecommerce software you really only have 10 months in a year.
They don’t use release branches and ‘master’ branch is their develop branch.
Plugin Roadmaps
Keep releases small to get to release.
Remember to test for backward compatibility.
Adjust quickly and often to estimate time and effort.
Build Unit Tests first, rather than going back and retrofitting them in.
Patrick gives great advice for developers to find your blogging voice.
Keep your products lean as it reduces the support load.
Treat your new products seriously and write a pitch deck! (Read the entire show notes to get access to Matt’s pitch decks!)
Today’s topic is the business side of plugin development. Jason and I ask Matt Medeiros all the burning questions that developers need to consider when launching a premium plugin. Matt is a Co-Founder of Slocum Studio, WordPress design and development agency based in Dartmouth, Massachusetts. Slocum Studios already has had great success in building and selling themes and has now released their first commercial plugin, Conductor. If you’re a WordPress podcast fanatic then you’ll know Matt from The Matt Report!
Show Notes
Matts’ IT Background
Matt grew up with a fascination with computers and played around with them as a kid using DOS. A few years later Matt learned Linux environments and gained a job in an ISP. From there Matt helped setup shared hosting using cPanel so they could add that to their service offering.
Agency and theming
Matt’s agency runs from an old…school building, not to be mistaken with an “old school” building :). Matt believes that having an office helps maintain culture.
Conductor was built over 12 months and was originally created to service the requirements of their clients.
Matt has a group of Advisors for Conductor to help shape it’s evolution and UI.
Focus groups have been used to gain true user feedback about the product.
Matt has used pitch decks to maintain the feature base the development of the plugin and keep focus of what they have been building. Matt has iterated on his pitch decks over time. Here’s a link to his first pitch deck and here’s a link to his most recent pitch deck. (Please note that there are gifs which don’t work in the pdfs).
You thought wearing the pink sombrero for cowboy coding is bad.
Find out when the Ben May World Tour is coming to a city near you!
Today’s topic is about deploying your WordPress website. This is a topic that’s touched up greatly in meetups and WordCamps. There are many reasons for all this talk. That’s because when something goes wrong on your production site, what happens next and how fast does it happen is critical. Bronson and I chat with Ben on his deployment processes and how he solves this issue to ensure that his clients have a robust, secure, and most importantly fully working live website.
“Bolt” is a plugin that is currently in development with Brent and Jason Conroy which aims to allow WordPress plugin developers to sell premium support for their plugins from the users own WordPress dashboard. Bolt sends the developer details about the WordPress install and hosting environment as well as processing a transaction for the sale of the plugin developers time for support.
During the developent of WooCommerce Subscriptions Brent and his team have coded a new way to trigger scheduled events instead of using WP-Cron as they needed more robust and reliable solution for time based recurring events and transactions. Brent’s excited about the future of the WP-API.
Show 4 was a great one, talking WordPress Plugin development with Tom McFarlin of Pressware
Tom gave some great insights his daily workflow with WordPress Plugin Development and the open source process with the Plugin Boilerplate and the commercial theme development on Mayer and some others in the works.
Show Notes
Tom’s links:
Most are above, but check out devpractic.es as it’s a great tumblr blog about the daily goings-on of a developer in animated gif form.
WordPress Plugin Boilerplate
Originated as a starting point for a consistent basis to do plugin development
Roadmap for the next version includes some usage guides and some other great nuggets for us developers
Working with other Developers, Designers, and Clients
“Open Source doesn’t mean that there can’t be a vision for the project”
Learn from other developers that spark a conversation of education.
That’s show number 3 under the belt for us and a big thank you to Gary Pendergast from Automattic (they’re hiring ).
After watching this episode you’ll have loads of information about how you can improve WordPress performance on your hosting environment of choice. Gary covers everything from simple tips like caching plugins and CDNs that anyone can do right through to complex scaling tips like multi-server and sharding!
Storage engines and indexation. What are the differences between MyISAM and InnoDB?
Should someone write a plugin to set all the tables to InnoDB in WP and put it in the repo or are their risks?
Why doesn’t core update to create InnoDB?
Gary’s Pro Tip:innodb_buffer_pool_size. Set this to 40% RAM if your database and web server are on the same server or 80% RAM if DB on own server. You can set this is my.cnf.
Gary’s Pro Tip: Set both query_cache_size and query_cache_type to 0.
Multi Server comes into play when it’s time to stop scaling up (more CPUs and more RAM) and time to start scaling out (Multiple servers and Multiple databases).
That’s a wrap for Episode 2 of WP Dev Table! During this episode Jason and I talk about some of the main tools that we use in our workflow every day. Those tools include IDEs, project management software, virtual machines and time tracking, right through to CSS frameworks so you’d better tune in and have a listen!
As always we’d really love to know if any of you use the tools we use…or better yet, do you have other tools under your belt that you use on a daily basis that Jason and I don’t know about yet? Please leave a comment below if that’s the case. We’d love to learn something new from you!
We’re also more than happy to answer any questions you might have about the tools we mentioned during the show! After all, we use these tools every day and often take that for granted so if you’re confused by something or we glossed over something then be sure to leave a comment!
What a great first show! Finally got the timezones all squared away between NYC and Brisbane. Today Bronson and I just had a quick chat about Version Control. We ran into some stumbling blocks which we’ve discussed how we got around them and address them moving forward in our day-to-day. We discuss some great tips and how we use Git within our WordPress development workflow.
Hopefully you’ll enjoy this 50 min chat and can help us out with some ways that you are using version control within your daily process. Be kind, this is the first one and we promise that we’ll get better as we move along. Practice makes perfect, right? We’d appreciate any feedback you have even if it’s not about the topic, but about how we sound, what you would like to see, anything at all.
Two questions that I think we posed out to the community were: 1. How can us command line junkies make sure we pull the latest before we try and push our changes? 2. How you bottle up an inherited project? Core? Just a theme?
git add -p – Patch mode to pick and choose which bits you want as a part of your commit git commit -m --amend – Edit you last commit message git diff-tree --no-commit-id --name-only -r [SHA] – See what files were affected in a specific commit