How to Keep Your PHP Skills Sharp for the Next Generation of WordPress

How to Keep Your PHP Skills Sharp for the Next Generation of WordPress

The enormous strides that WordPress has taken as a platform in the past 12 years have been mirrored by developments around the language it’s written in: PHP.

Though new languages and frameworks grab the headlines every couple of months, PHP still powers the vast majority of the consumer-facing web.

It’s a language that has attracted more than its fair share of criticism, but there have been significant improvements in the language and the wider ecosystem in recent years.

In this article, we’ll cover what you need to know as a developer to keep your PHP skills up to par for WordPress and the wider web beyond.

Let’s start with a quick review of the language itself and then run through the best resources for keeping your skills sharp and up-to-date.

How PHP Conquered The World

PHP has been on the scene now for 20 years and dominates the web development landscape. It’s used by over 80% of websites and was installed on over a quarter of a billion websites as recently as 2013.

It also remains extremely popular in the wider development world, placing fifth in the list of most-used programming languages in Stack Overflow’s 2015 developer survey.

PHP’s relatively easy learning curve and widespread availability have long made it an early favourite of newbie programmers – and its adoption by successive waves of CMS systems such as Drupal, WordPress, and Joomla! have contributed substantially to its overall ubiquity.

The Promise of PHP7

Progress on PHP in terms of major releases has stalled somewhat in the past number of years, with attempts to move beyond the current 5.x branch accompanied by false starts and bickering over naming.

PHP7 is finally looming into view, however, scheduled for release late in 2015 and promising significant performance boosts.

Sitepoint has a useful overview of resources for PHP developers to consult to get up to speed on changes coming down the pipeline.

What the next generation of PHP will mean for WordPress has been a hot topic recently, with a major presentation on the subject being given in June at WordCamp Europe 2015 by Zeev Suraski. Matt Mullenweg also fielded questions regarding backwards compatibility and PHP during a Q&A at the same event.

Given the solid track record of WordPress in supporting older versions of PHP in core, it’s unlikely that the 5x branch will be dropped any time soon, but the new version certainly does look promising.

Facebook has, of course, made its own contribution to the evolution of PHP in the form of its HipHop Virtual Machine, which promises equally significant performance improvements. There are also some interesting comparisons between their offering and PHP7 starting to emerge.

While core language improvements are definitely gathering pace, the majority of recent developments in the world of PHP have been in terms of culture, tooling, and community. It’s those that we’ll largely focus on for the remainder of this article.

WordPress and PHP

As a WordPress developer, your first port of call in terms of staying up to speed on PHP standards should be the WordPress Coding Standards page.

In addition to sensible guidelines for using CSS and JavaScript, WordPress has an official set of PHP Coding Standards all contributors to the project are expected to follow.

In contrast to strongly opinionated languages such as Go or Python, PHP is famously laissez-faire in terms of how it can be used. The adoption of a set of commonly agreed best practices is a great way of imposing some order on your day-to-day coding.

In addition to its WordPress specific concerns, the Plugin Handbook also provides excellent guidelines for common aspects of PHP development such as data validation and internationalization.

Source code is, as developer Jeff Atwood notes, “the ultimate truth” and as a PHP developer it should be a given that you stay familiar with both the Code Reference and the guts of the software itself.

Modern PHP Best Practices

Spurred on by competition from languages such as Python and Ruby – particularly in its Rails incarnation – the world of PHP has modernized considerably in the last decade.

A brief list of areas to keep up-to-speed on includes the following:

  • Coding standards: As mentioned earlier, WordPress has its own set of PHP standards, but there are also several alternative guidelines out there in the wild. Regardless of the exact rules selected, the average PHP project these days will insist on some sort of standardization in this respect so it’s a good idea to study some examples and get familiar with them.
  • Dependency management: Dependency and package management were long-standing bugbears of PHP developers for many years until the recent emergence of Composer as a relatively standard way of handling libraries and dependencies. If you haven’t already gotten up to speed on Composer, check out tutorials from LinkedIn Learning or Tuts+ to sharpen your chops.
  • Version control: By 2015, the use of version control should be a given for any kind of software development and the PHP community is these days largely on board. Development of the language itself takes place via Git – and if you’re still on the fence about using version control, there is no better time than today to learn the basics.
  • Development environments: Having some sort of local development setup is pretty much a must at this stage, and PHP developers are increasingly leaning on advanced solutions such as Vagrant to standardize their work across all environments.
  • Testing: The testing culture in PHP has historically lagged behind other languages such as Java or Ruby, but it is catching up. WordPress itself, for example, relies heavily on automated testing for development. If this is an area that is new to you, take some time to explore PHPUnit and the basics of implementing testing in WordPress projects.
  • Deployment: Deployment has come a long way from the days of slinging around files via FTP. PHP developers are increasingly leveraging tools such as Phing, Capistrano and Deployer to automate all aspects of their deployment processes.

Learning from PHP Frameworks

The emergence of web frameworks such as Django and Rails in the early 2000s lured an entire generation of developers away from PHP in the last decade.

FREE EBOOK
Your step-by-step roadmap to a profitable web dev business. From landing more clients to scaling like crazy.

By downloading this ebook I consent to occasionally receive emails from WPMU DEV.
We keep your email 100% private and do not spam.

FREE EBOOK
Plan, build, and launch your next WP site without a hitch. Our checklist makes the process easy and repeatable.

By downloading this ebook I consent to occasionally receive emails from WPMU DEV.
We keep your email 100% private and do not spam.

Frameworks, whether in the form of Zend, CodeIgniter or CakePHP had of course always been available in PHP, but a combination of better marketing, genuine technical innovation and the advantages of a green-field start all combined to make the new kids on the block particularly attractive in recent times.

The last number of years have seen PHP getting back in the game with a new generation of frameworks that seek to take the best from projects such as Rails or Django and implement them in PHP.

There is no shortage of modern PHP frameworks out there but if you’re looking for one to get your teeth into in order to sharpen your skills then look no further than Laravel. Excellent documentation and tutorials make it a solid place to start exploring standard best practices in modern PHP development.

Studying a well put together framework is a great way of keeping your PHP skills sharp and staying in the loop across all aspects of modern approaches to running a project.

Resources

We’ve touched on a number of specific resources so far, but there are also a number of excellent general resources out there to help you hone your PHP knowledge. A short list includes:

PHP the Right Way: Josh Lockhart’s site is an excellent introduction to general best practices in PHP and all aspects of development and deployment.

PHP the right way
PHP The Right Way

Online training: Treehouse and LinkedIn Learning both offer comprehensive PHP courses. Explore the basics of testing or standard PHP best practices with Treehouse, or dive deeper into PHP frameworks and PHP design patterns with LinkedIn Learning.

Treehouse
Treehouse

Stack Overflow: Stack Overflow remains a godsend in terms of day-to-day troubleshooting of common PHP issues.

Stackoverflow
Stackoverflow

Hacker News: The Y Combinator community site is not exactly famous for being friendly to PHP, but it’s a great way of taking the pulse of the wider development community and staying current with wider trends.

Hacker News
Hacker News

User groups: There is a huge community of PHP developers worldwide split across high-profile projects such as WordPress, Laravel, and many others. Take advantage of this by looking for conferences, local PHP user groups, and meetups in your area, and studying presentations online.

Moving Beyond PHP

The days of being a monolingual programmer are coming to an end. In WordPress alone, for example, it’s increasingly hard to avoid having at least a basic knowledge of JavaScript as a developer – and the impending arrival of the REST API is going to open the platform up to a wider programmatic world sooner rather than later.

As a WordPress developer, you’re in an excellent position to expand your skill set and considerably bump your hourly or daily rate by embracing this change, rather than resisting it.

Consider exploring the following areas to take your game to the next level:

  • Get to grips with JavaScript: JavaScript is eating the world and will be at the core of the next generation of WordPress, whether it’s in terms of interaction on the platform itself or integration with JavaScript frameworks via the REST API. Pick a sensible learning track and start exploring.
  • Tackle Python: If you’re up to speed on PHP as a developer, obtaining a working knowledge of Python should be a straightforward affair. Taking the time to get familiar with another language, community and set of best practices will add to your general value as a developer and help give your PHP work a wider context.
  • Explore Swift: A large part of WordPress’ future is going to be focused on integration with mobile devices. Apple’s recent announcement that its new Swift programming language is going to be open sourced makes it an excellent long-term bet as a developer.

Conclusion

A big part of succeeding as a WordPress developer involves actively cultivating a multi-disciplinary skill set. Staying on top of developments in PHP should be a core part of that endeavor.

Here’s a recap of some of the main suggestions we covered for doing just that:

  • Keep a close eye on PHP and general coding best practices in WordPress.
  • Stay up to date with developments in the wider PHP community via sites such as PHP the Right Way.
  • Never stop learning. Use online resources such as LinkedIn Learning and Treehouse to hone your skills.
  • Branch out. Explore the world beyond PHP to provide context and breadth to your progression as a developer.

We're curious to hear how you manage staying up to speed as a PHP developer. Are there resources we've missed here or ones you want to highlight? Get in touch via the comments below and let us know.

Tags:

Aileen Javier Aileen has over 10 years of experience in content writing and content marketing. She’s handled content teams, planned editorial calendars, and managed projects. She’s also written blogs, web copy, social media posts, and email newsletters for brands in different industries.