by Ihtisham Zahoor

A Learning Path for Newbies in WordPress Development

“turned on laptop computer” by Fabian Grohs on Unsplash

In this information age, one obstacle in learning something new is not where to find the resources. It’s from where to start and make sense of all the resources available online these days. This holds especially true in web development when new tools are popping up overnight.

Over the past 3 years since I decided to learn web development, I have faced challenges of self-doubt and lack of motivation. But the one challenge which drained my energies was not knowing what path to follow.

Considering the initial challenges in this path I have written this piece for technology enthusiasts who want to get their hands dirty in web development. Especially WordPress development. All in the hope you are going to spend your time building something cool than getting into this never-ending vicious cycle of learning one tool to another.

Caution! A lot of learning in this path

I am a WordPress developer (although my impostor syndrome tells me otherwise). I can share my experience only about WordPress. But before diving into details, let’s examine a Q/A session first.

Now, is the answer mean? Maybe. Is it true? Absolutely! WordPress and Web Development, in general, are as serious and demanding as any profession. So be ready for…

  • Lifetime of Learning
  • Pulling all-nighters occasionally

All right, have you read and understood the above points? Great. Now relax as it is not to discourage you or anything. It’s just how the life of a developer is as the ever-changing nature of this field requires.

The good news is there are not many web technologies you have to learn to master the craft of WordPress Development. That being said, give your time to this amazing piece of software and WordPress will adore you in return.

WordPress will change your life if you let it — Chris Lema

It’s all inspiring and cute, right? It is one of the reasons Topher DeRosia (huge props) has provided the HeroPress platform for WordPressers (yes, this is what we proudly call ourselves). Here WordPressers share regularly their WordPress origin stories with the community. Rest assured while reading through the stories you are going to feel adrenaline rush through your body as many of you are going to find yourself related to those stories.

Learning Path

To get started in your WordPress Development journey, these tools and technologies are what you are going to be working with.

  1. Say hello and embrace g̵o̵o̵d̵ ̵o̵̵̵l̵̵̵’ HTML5 modules with Semantics and Accessibility concepts. HTML is what gives structure to the site contents.

2. This quote says it all:

You are the CSS to my HTML — Some Genius

CSS is how HTML is presented in the web browser. Make sure to learn SASS preprocessor as your savior in writing modular CSS once you get a grasp of the basics.

3. The company behind WordPress has big plans for making JavaScript part of the WordPress Front-end. This officially came from the original author of WordPress.

Learn JavaScript, Deeply — Matt Mullenweg

Yes, I know that might be far-fetched for a newbie who is starting out to follow this advice, but keep an eye out for development in this area. Now, this doesn’t mean you have to master JavaScript to work with WordPress. Start with the basics including its hugely popular library jQuery.

4. Wouldn’t it be nice if you could get a 1000-step head-start with these three technologies to speed up your development process? Well, that is where front-end frameworks like Twitter Bootstrap come into play. Explore it and get amazed. Don’t confuse front-end frameworks with JavaScript frameworks. Front-end is used interchangeably with JavaScript libraries and frameworks, which is a whole different path.

5. PHP is the scripting language which powers WordPress. If you want to dive deep in WordPress, learn PHP head-first with its OOP concepts including MySQL as its back-end database.

6. In general, when people talk about WordPress Development, it usually means only two segments of WordPress.

  • WordPress Theme Development, which is developing a presentation (layout) of sites (hence the name “Theme”).
  • WordPress Plugin Development, which is to add functionality to WordPress sites

For a developer, it is of utmost importance to understand and be comfortable working with both these segments. And to add a tad bit more in your learning journey, get familiar with Internationalization and Localization. You also need to know WordPress Hooks and APIs to name a few.

While developing sites, most of your time is going to be spent in a local development environment and in a code editor. For the sake of complete information in this article, let me point you to easy-to-setup yet powerful local development environment (Local by Flywheel) and lightning fast code editor (Visual Studio Code by Microsoft). Yes, they are both free like WordPress.

Workflow

As your workflow becomes more advanced and complex, it’s important for you to stay sane and keep enjoying life. In that case, you are going to need to streamline your workflow. Try task automation tools like Grunt/Gulp and use a version control system like git to keep you from making blunders.

Illustration of Learning Path Published on GitHub

To make things more clear for you, I have published an illustration of the Learning Path as step-by-step guide on GitHub which I have provided below.

Learn from it, give feedback, improve it to make it better for newbies and that means feel free to send PR requests.

Resources

In case you are still worrying that you are going to need more than a bunch of motivational words to actually start doing meaningful work, maybe you need like a step by step guide — well, worry no more. Follow the WordPress Developer Handbook/Codex like religion and consider yourself in safe hands.

WordPress Developer Handbook & Codex
https://developer.wordpress.org/
https://codex.wordpress.org/Main_Page

WordPress Support
https://wordpress.org/support/

Stack Overflow
https://stackoverflow.com/

freeCodeCamp
https://www.freecodecamp.org/

wpbeginner
https://www.wpbeginner.com/

WpShout
https://wpshout.com/

Tutplus
https://tutsplus.com/

Lynda
https://www.lynda.com/learning-paths/web

Conclusion

Don’t try to learn everything at once. Start with the basics. Implement what you’ve learned and then build from there. Take note of these following two not hard-and-fast rules for guidance, as these rules will come in handy in your journey.

  • Just in Time (JIT) learning is you learn the tool when you need it.
  • 80/20 rule of learning is you give 20% of your time to learning and 80% of your time implementing what you have learned already.

Now repeat after me:

I Learn
I Code
I Code again
I Code some more
I keep Coding

and that is how you start in WordPress. Good Luck WordPresser and welcome to the family!