Podcast Summary
Discussing WordPress migration, deployment, and hosting with Delicious Brains founder Brad Toussner: Brad Toussner faced challenges in WordPress development and turned a plugin solution into a successful business, Delicious Brains Inc., offering plugins and a SaaS app for simplified WordPress deployment
Brad Toussner, a French Canadian from Nova Scotia, joined Syntax podcast to discuss migrating, deploying, and hosting WordPress. He is the founder of Delicious Brains Inc., a company that provides plugins and a SaaS app for WordPress. Brad shared his experience of facing challenges in the WordPress development process and creating a solution to simplify the deployment process. He started by creating a plugin to make migrations easier and later turned it into a business. Now, Delicious Brains Inc. offers three WordPress plugins and a SaaS app called SpinUpWP. The company, which started in 2013, is a remote team of 10 people with team members in the UK, Pennsylvania, and Ontario. Brad's experience demonstrates the potential for turning a personal challenge into a successful business. The podcast is sponsored by Netlify, an easy website hosting solution, and Hasura, a real-time GraphQL API that sits on top of a Postgres database.
Managing WordPress databases and media files during migrations and deployments: WP Migrate DB Pro simplifies database and file migrations, while WP Offload Media offloads media files to object storage, enhancing accessibility and redundancy.
The speaker discovered a need for tools to simplify the process of managing WordPress databases and media files during migrations and deployments. He shared his experiences with painful manual methods and the void of seamless solutions, particularly in the Drupal world. As a result, he developed plugins to address these pain points. The first plugin, WP Migrate DB Pro, enables easy database and file migrations between local and production environments, handling the weirdness and differences between databases. The second plugin, WP Offload Media, offloads media files from the local uploads directory to object storage, ensuring files are accessible across servers and providing redundant backups. These plugins fill the gap for users looking to implement modern deployment practices and version control for their WordPress sites.
Managing WordPress websites with multiple environments: Immutable hosting can prevent PHP access and file system changes but poses challenges for plugins, managing data changes in WordPress websites with multiple environments is complex, careful planning is crucial to minimize data loss and ensure a smooth transition.
Managing WordPress websites, especially when dealing with media files and multiple environments like remote, staging, and local, can be a complex process. Immutable hosting, where files on the server cannot be changed once deployed, can help prevent issues with PHP access and file system changes. However, it can pose challenges for plugins that need to make remote changes. Migrating WordPress websites with changing data and code on multiple environments is a common challenge for CMSs, and not just a WordPress issue. Custom fields, post types, and other data stored in the database add to the complexity. It's essential to plan and carefully manage these changes to minimize data loss and ensure a smooth transition.
Persisting through complex projects for valuable improvements: Three-year project led to custom fields and scripting, enabling version control and easier deployment. Cautiously pushing updates via plugin instead of script.
Attempting a complex project with a lofty goal may not always result in success, but the process and learnings can lead to valuable improvements. In this case, the team worked on a solution for three years to create custom fields and advanced custom fields via scripting instead of the UI, resulting in advantages like version control and easier deployment. Although it requires more work, the benefits outweigh the effort. Additionally, creating new pages or posts on the live site and then publishing them via script is a shortcut when needed. However, it's crucial to be cautious when pushing changes to remote WordPress installations, as the production database may change during the process. Instead, consider using a plugin to selectively push updates. Overall, the team's experience highlights the importance of persistence, learning from failures, and adopting efficient methods to streamline development processes.
The Importance of WordPress Backups: Regularly create and test WordPress backups to protect data, ensure data security, and mitigate potential consequences of data loss.
While setting up and managing a WordPress site involves pushing and pulling data over HTTPS, creating backups is a crucial and separate task. Backups are essential to ensure data protection, and it's recommended to have recurring backups. Versioning and testing backups are additional measures for data security and reassurance. While hosting the WordPress backend might require additional tools and considerations, hosting the frontend of a headless WordPress site using services like Netlify can simplify the process. Regular testing of backups is also recommended to ensure their reliability. The importance of backups was emphasized, as losing access to data can lead to significant consequences.
Using Netlify for WordPress hosting with version control: Netlify simplifies WordPress hosting with continuous deployment, CDNs, SSL certificates, and more. Use Composer for managing custom code and Git for version control, but be aware of the complexities involved.
Using Netlify for deploying and hosting WordPress sites is a great choice due to its ease of use and impressive features. Netlify handles continuous deployment, CDNs, SSL certificates, and more. To use it, simply log in, select your repository, and add build steps. Netlify also offers new features like Netlify Dev and Netlify Edge. When it comes to version control for WordPress sites, ideally, only custom code should be in the repository. Composer can be used to manage WordPress core, plugins, and themes. However, if plugins or themes are from third-party vendors without a Composer repository, they may need to be added to Git or ignored and updated manually. Managing plugins in Composer works well for smaller sites, but for larger sites with frequent plugin updates, it might be more convenient to update plugins directly from the dashboard. The process of managing WordPress in version control can be a bit complicated, but overall, using a combination of Composer and Git can help keep your custom code under control.
Managing PHP packages with Composer vs manually updating plugins: Composer helps manage PHP packages and software versions for mission-critical websites, while manually updating plugins may be simpler for less critical projects. WordPress faces challenges with its proliferation of plugins and older PHP versions.
Composer is a useful tool for managing PHP packages and keeping track of software versions for mission-critical websites or client work. For less critical projects or personal use, manually updating plugins may be a simpler solution. The speaker shared a personal experience of dealing with a DMCA issue and the challenges of open-source plugins. WordPress, being a popular CMS, can be criticized for its potential sloppiness due to the proliferation of plugins and data scattered around. However, there's an active community of developers working on improving the platform, and the PHP side of WordPress is shrinking as it embraces modern technologies like React. The main challenge for WordPress is the fanatical support for older versions of PHP, which keeps the codebase from being updated and modernized.
Laravel vs WordPress: Different Development Experiences: Laravel, a newer framework, offers stricter upgrade paths and robust object-oriented programming, while WordPress, with a large user base and history, has a more complex development landscape. PHP's version enforcement and new sponsor Hasura, offering real-time GraphQL server for PostgreSQL, impact WordPress development.
While WordPress and Laravel both use PHP, the development experiences are vastly different. Laravel, a more recent framework, has the advantage of not being burdened by legacy code and can enforce stricter upgrade paths. In contrast, WordPress, with its large user base and extensive history, has a more complex development landscape, lacking namespaces and robust object-oriented programming. Moreover, PHP is now enforcing end-of-life schedules for its versions, pushing web hosts to keep their servers updated. A new sponsor, Hasura, was introduced, offering a real-time GraphQL server for PostgreSQL databases, making it easier to work with multiple schemas and secure data. When it comes to hosting WordPress, there's no one-size-fits-all solution. SpinUpWP, a company discussed in the podcast, allows users to connect to servers from DigitalOcean, Linode, or any cloud provider with an IP address. However, it may not be the best choice for everyone. Lastly, Hasura was highlighted for its real-time GraphQL capabilities on PostgreSQL, remote joins, authentication support, and upcoming custom business logic integration. To learn more, visit hasura.io.
Managing Your Own WordPress Server vs. Managed Hosting: Developers can choose between managing their own WordPress server for optimal control and performance or opting for managed hosting services for ease of use and reliability, with the trade-off being additional costs and less control.
SpinupWP is a solution for developers who want to manage their own WordPress server for optimal control, performance, and customization. However, it requires ongoing server maintenance, and users must keep the software updated. For those unwilling or unable to manage a server, managed WordPress hosting services like WP Engine, GoDaddy, Pagely, Flywheel, SiteGround, Kinsta, and WordPress.com (with plugin capabilities) are recommended. While managed hosts offer ease of use and reliability, they come with additional costs. The choice between self-managed and managed hosting depends on individual preferences, technical expertise, and resource allocation. It's essential to consider the trade-offs between control, cost, and convenience.
Managing WordPress sites with ease and affordability: SpinUpWP offers server management features for WordPress sites, including automatic backups, software updates, and email notifications, using Git and Composer for deployment, and regular health updates and maintenance suggestions.
SpinUpWP aims to fill the gap between self-managed WordPress hosting and fully managed WordPress hosts. It offers server management features like automatic backups, software updates, and email notifications to help users manage their WordPress sites without the anxiety of potential vulnerabilities or server issues. The service is inspired by Laravel Forge but goes the extra mile for WordPress by providing features tailored to the platform. The deployment process involves using Git for version control and Composer for dependency management. SpinUpWP also plans to send regular emails with server health updates and suggestions for maintenance tasks. Overall, SpinUpWP aims to provide an affordable, easy-to-use solution for managing WordPress sites without the need for extensive sysadmin knowledge.
Automate WordPress Deployment with Buddy: Buddy streamlines WordPress deployment through automation, FTP, asset compilation, testing, Git integration, and headless WordPress setup with Gatsby
Using traditional methods like FTP to deploy a local WordPress site is outdated and time-consuming. A more efficient solution is to use deployment tools like Buddy, which automates the process by FTPing files, compiling assets, and running tests before deploying. Buddy also integrates with Git, making the process smoother and more continuous. Another interesting use case for Buddy is setting up a headless WordPress site with Gatsby, which can simplify hosting and improve performance. While there are other WordPress hosting solutions available, many of them lack the modernity and ease of use offered by Buddy.
Managed WordPress hosting: Peace of mind for high-traffic sites: Managed hosting offers support and insurance against potential issues for website owners with significant traffic. Serverless WordPress is a topic of intrigue, with potential benefits like improved performance and cost savings, but challenges remain in accommodating plugins.
Managed WordPress hosting is a paid service that provides support and peace of mind for website owners with high traffic. It's like insurance against potential issues, even though not every month may require active support. Managed hosting can be expensive for those with over 25,000 hits a month, making it a worthwhile investment for many. An intriguing topic that came up during our discussion was the concept of serverless WordPress. While serverless technology is gaining popularity with platforms like Laravel's Vapor, it's unclear how it could be applied to WordPress. The challenge lies in accommodating the unpredictability of plugins and the need for each request to execute similarly to a typical server. The benefits of serverless, such as improved performance and cost savings, remain to be seen for WordPress. As for recommendations, Brad shared an affordable purchase under $100 that brings joy to his family: a large teppanyaki grill for weekly home-cooked meals. The discussion also touched upon the potential benefits and challenges of serverless technology, leaving many questions unanswered. It's an exciting and evolving field, and only time will tell how it will impact WordPress hosting.
Sharing experiences of trying new things: Discovering and enjoying new meals, toys, and shows can bring joy and create cherished memories.
Cooking one's own food, whether it's a favorite meal or trying new dishes, can bring joy and excitement. For instance, the conversation touched upon the experience of making okonomiyaki on a grill and the fond memories of Korean barbecue. Magna Tiles, a toy that allows for endless creativity, was also mentioned as a favorite find. Additionally, the group shared their recent discovery and enjoyment of the HBO shows "Succession" and "The Righteous Gemstones." These shared experiences highlight the importance of trying new things, whether it's a meal, a toy, or a television show, and the potential for creating cherished memories.
Discounts on Brad and West Boss's Courses: Brad and West Boss are offering discounts on their courses for a limited time. Check out leveluptutorials.com/forward/prosignup and westboss.com/courses for more information.
That Brad and the West Boss are offering discounts on their respective courses. If you're interested in learning from Brad or the West Boss, you can check out his courses at leveluptutorials.com/forward/prosignup for a yearly subscription and a 25% discount. Additionally, you can find the West Boss's courses at westboss.com/courses. Remember, these discounts are only available for a limited time, so be sure to take advantage of them if you're interested. Furthermore, the West Boss mentioned that he would be promoting all of his courses throughout the episode. So, if you missed any mentions, be sure to check out his website for more information. Lastly, if you enjoyed this episode, be sure to head over to syntax.fm for a full archive of all Syntax shows. Don't forget to subscribe in your podcast player or drop a review if you like what you hear. Overall, this episode provided valuable insights from Brad on his experiences as a developer and entrepreneur, as well as a reminder of the discounts available for those interested in their courses.