As Ghost developer John O’Nolan pointed out in an opinion piece on the launch of Calypso, we’re at an inflection point that marks both a shift towards a new dominant programming language for the platform and a potentially decisive break with the past:
Is now the time to hit the big red panic button?
PHP Will Continue to Power Things Under the Hood (Short-Term)
If you’re currently mostly making your living as a WordPress PHP developer, these could be slightly alarming times. We’re not quite at the point where you should be reaching for the rip cord, but it’s definitely an opportune moment to start widening your skills.
That said, having PHP as its core language has played a major role in WordPress’ success over the years, particularly in regards to self-hosted installs. With the largest install base on the web, it’s going to take quite a while to steer that ship in another direction.
The WordPress core team is also continuously improving PHP coding and security standards across the platform, and the imminent arrival of PHP7 promises some long overdue speed and performance improvements across the board.
There’s more than one way to skin a cat when it comes to diving into a new language. While there’s a lot to be said for exploratory poking around and learning by doing, it’s hard to beat some sort of structured learning track for optimizing your time. Our first four resources are aimed at providing exactly that.
You can follow along in the browser as you study via nicely integrated live code samples that you’re free to tinker with and explore.
Five project chapters are also included where you can get your hands dirty by building small projects such as an AI simulation, a fun and colorful platform game, and a dynamic website.
Rather than simply throwing a wall of books and websites at the student, the course cherry picks specific elements of existing titles and courses. It also points out useful ancillary material for beginners to tackle prior to getting started such as Code Academy’s Web Fundamentals track.
A simple Google search or trip to Stack Overflow is enough to solve all manner of programming conundrums these days, but there’s still an awful lot to be said for having a definitive reference guide to hand – whether you’re approaching a language for the first time or an expert user.
Fine-tune Your Development Environment
With that in mind, some of the points in this section will be necessarily general and you may well find other options more suited to your particular workflow as you explore on your own. The options below should, however, get you off to a solid start.
The choice of text editor is always a potentially contentious one among programmers.
1.6 million WordPress Superheroes read and trust our blog. Join them and get daily posts delivered to your inbox - free!
To get up and running, consult the easy to follow introductory tutorial in the jsFiddle documentation or check out the video below.
There are debugging tools available for Firefox, Safari, and IE, but one of the best places to start is with Chrome Dev Tools.
This is a fluid and potentially hair-raisingly complicated area if you are still getting to grips with the language so treat this section as an introductory overview to wet your whistle, rather than a set of prescriptions for what you should be using.
Going too far into any of the tools mentioned here is potentially confusing and you’ll hit most of them naturally if following one of the language learning tracks we mentioned up top. If you’re looking for a gentle introduction to tools such as Yoeman and Jasmine, Dan Wellman’s Pro Front End Workflows course on Envato is worth a look.
Many of the tools you’ll run across above rely, one way or the other, on the presence of Node and that’s where we’ll turn our attention to next.
Discover the Power of Node
As with our section on tooling, there’s a risk of overwhelm when going to too far into the woods here so we’ll stick to some solid introductory resources to point you in the right direction. If you need more convincing about whether it’s worth getting to grips with Node, a quick glance at the web giants currently deploying it should be enough to whet your appetite.
Their set of Node tutorials are particularly useful and will take you through everything from an introduction for those who are completely new to the language up to managing complex deployment scenarios and performance tuning.
The introductory video below is a good one for PHP developers to start wrapping their heads around Node as it specifically addresses viewers coming from that background.
Proving that Node is very much making waves at an enterprise level, Microsoft’s overview of building Node-based apps is an excellent introduction for developers whether they’re on Windows or not.
Broken out into a series of well-structured modules, this series takes you through the basics of Node, introduces npm and the Express web framework, and builds all the way up through building a full Node-based app and deploying on Azure.
A Quick Word about Frameworks
- AngularJS: As a Google project, you can be reasonably sure that AngularJS won’t be disappearing anytime soon and people are already experimenting with WordPress REST API integrations.
Keeping up to Speed with the Community
- Get familiar with Node
- Stay up to speed with developments in the wider community