As the community grows, there are many resources available to help you learn Laravel. That’s great! But, how do you choose the best one? Which will be the best use of your time to read or watch? For those new to the framework, I’m sure these questions are on your mind, here are seven tips to help you learn Laravel more effectively.
Some of these tips will be specific to Laravel, while others are more general for learning any programming language or framework. Let’s get started.
- Don’t Start With the Official Documentation. Seriously.
The first thing newcomers typically look at is the official Laravel documentation. Don’t get me wrong—the docs are great! But, there’s an expectation you already have some knowledge of the PHP ecosystem and modern tooling.
As an example, the first section of the documentation is installation, it’s not just “Download and install.” You need to know how to use Composer; how to use the terminal or command line, how to run commands, how web servers work etc. Which leads me to the second tip…
- Learn PHP, OOP, Terminal, and Composer First.
To begin learning any modern PHP framework (Laravel, Symfony, or others), you need to be good at PHP. And, especially, object-oriented programming; all frameworks are written in OOP mode and you need to be fluent in classes, objects, properties, methods, dependencies, traits, and other “keywords.”
In general, I would advise you to create at least one simple project with plain PHP without any framework. You will then have a better understanding of PHP which will allow you to use the Laravel internal functions more efficiently.
Also, Composer, a tool that, in my opinion, made PHP great again. Knowledge of Composer will help you competently use Laravel dependencies, which is a crucial part of modern PHP development.
Oh, and did I mention terminal? Or command line for Windows OS. Again, modern PHP frameworks use commands for a lot of their functionality—generating code, installing libraries, changing settings, running deployments, etc. You have to know the basics.
All of this is how much you need to know BEFORE starting with Laravel. It doesn’t look as easy anymore, does it? But let’s move on; we’re just getting started with tips.
- Books, Courses, or Videos? Free or Premium?
This is probably the most important question: what is the best way to learn? It’s a personal choice; some people are better readers, while others prefer videos. And that’s fine! Ask yourself, what is more convenient for you?
The information you want to consume should be properly structured. You cannot just take random articles or videos from YouTube—it won’t give you the desired result. You need the author to explain the information in a consistent flow, step-by-step. Otherwise, you may lose your train of thought and not be able to understand further lessons.
That is, by the way, the fundamental difference between free and premium lessons online. Some say you can learn to program just from searching the internet because there’s a huge amount of information available for free. Which is partly true, but if you choose that path, you will have to spend a lot of time trying to piece it all together. Paid courses or books are often the best because the information is prepared for you in a convenient way, so you don’t waste your time searching.
Here are three resources that I recommend to start with:
- Laravel Up & Running – book by Matt Stauffer
- Laravel from Scratch – video series from Laracasts
- Get Started With Laravel 5 – course from Tutsplus
4. Stop Reading, Start Writing
It is impossible to learn any programming without writing code. Don’t spend too much time reading books or watching videos; start coding as early as you can. In fact, after finishing every lesson or section, immediately try it in practice.
In general, I would advise you to try creating a test project during the course of learning. It makes the process not only more realistic, but more motivating. Without a proper goal and outcome in mind, it’s emotionally hard to continue learning the theory.
And, if you only write code, you will bump into hurdles and will have questions to ask. By having problems and overcoming them, you evolve as a developer and increase your knowledge.
- Learn to Use Google and StackOverflow.
While not directly related to Laravel, it is important. It astonishes me how many forum topics are created by people who could Google the answer in two minutes.
Can you properly use Google? Example: search for “Laravel,” excluding the word “beginners” but include only results from the Laracasts website? The query should look like this:
1laravel -beginners site:laracasts.com
That’s how deep you should go to find relevant information.
StackOverflow should be used similarly. Their results usually appear among the first Google entries. Do you understand how to choose the right answer to the question? It’s not always the first one. Can you tell which Laravel version it’s for? Is it still relevant information?
It’s not only about reading the forums; you should be able to ask questions in a correct way and style. Usually, every forum and community has its own culture, rules, and behavior expectations. If you are polite, patient, and respectful, you have better chances of receiving help.
- Find a Mentor.
The biggest problem with learning programming is troubleshooting when something doesn’t work. The best solution to this problem is asking someone else for help.
I’ve been a mentor for a few students and was told without my help they wouldn’t be able to solve problems and potentially would have even given up learning. That’s how powerful personal, external help is!
Where should you look for a mentor? In your community, whether it’s local or online. Twitter has a great community of developers, so if you find someone there who seems like they can help—don’t be shy and get in contact. Mention them on Twitter, follow for a while, find their email, and start the conversation.
- Don’t. Give. Up.
As mentioned in the previous tip, when hitting a problem you can’t solve, it’s easy to give up on learning. Maybe that’s the very reason why so many start learning, but only a few actually become professional developers. It’s not all rainbows and butterflies; the path will be full of problems, difficult questions, disbelief, and desire to throw the computer out of the window. I’ve been there, trust me. The main thing is to continue, no matter what. Be creative; there’s always a way out.
Finally, speaking of continuous progress, my last advice is to not take long breaks between your learning sessions. Constantly learn something new—every week or even every day. It’s similar to working out; if you miss one day, it’s harder to get back into the rhythm.
So these are my tips—I hope you will find your best way to learn and potentially we’ll create awesome Laravel projects together!