As the community has grown, there are many readily available resources that can help you learn Laravel. Looks pretty good, doesn’t it? But how do you choose the best one? Or, which one is more suitable for you and helps you learn more efficiently? I’m sure you’ve asked these questions in the face of Laravel’s progressive framework. Here are seven tips that will hopefully help you learn Laravel more effectively.

Some of these tips apply only to Laravel, while others apply to any programming language or framework.

1. Seriously, don’t start with official documents#

One of the first things newbies usually do is read Laravel’s official documentation. Clickbait don’t get me wrong, Laravel’s documentation is pretty awesome! However, in most cases, the people who write the documentation expect the reader to have some knowledge of the PHP ecosystem and modern tools.

For example, the first part of the document is installation, but it’s not just “download and install.” You must know how to use Composer, how to use a terminal or command line, how to run commands, how to make a Web server work, etc.

2. Learn PHP, object-oriented, terminal and Composer first#

It sounds like fun to learn, but I’m seeing more and more people who want to learn Laravel without learning PHP first. Just like people who want to use jQuery without learning any JavaScript. Frameworks are not there to give you a shortcut to learning, but to keep your feet on the ground and start from the basics.

To get started with any modern PHP framework (Laravel, Symfony, or whatever), you need to be familiar with PHP. Especially object-oriented programming. All frameworks are written in object-oriented mode, and you need to be fluent in using classes, objects, attributes, methods, dependencies, traits, and other “keywords.”

In general, I recommend that you create at least one simple project that uses pure PHP rather than any framework. This will give you a better understanding of PHP and more effective use of the functions inside Laravel.

Also, in my opinion, it is the Composer tool that makes PHP more powerful. Knowing Composer will give you an idea of how to make the most of Laravel’s dependencies, which are an important part of modern PHP development.

There are also terminals, that is, OS Terminal and Windows CMD. Similarly, modern PHP frameworks use commands to perform most functions, such as generating code, installing libraries, changing Settings, deploying runs, and so on. You have to know the basics.

All of this is what you need to know before you start Laravel. Did you lose your nerve when you saw this? Don’t be afraid! This is just the beginning of the suggestion.

3. Books, lessons or videos? Free or paid?#

The first question many people ask when learning something is: What’s the best way to get started? The choice varies from person to person. Some people prefer to learn by reading books, while others prefer intuitive video lessons. Either way is fine. But you should be looking for something that is relatively stable and structured. Instead of finding some random article or video from YouTube, it won’t give you the results you want. You need the writer to be consistent. Otherwise, you may easily get confused and fail to understand further lessons.

This is the fundamental difference between free and paid courses. Some people say that all you need to learn programming is to go online, because there’s a ton of free information out there. That’s true, but if you choose to learn this way, you’ll spend a lot of unnecessary time putting things together. A paid course or book is usually the best, because the content is specifically designed to make it easy for you to learn, so you don’t have to spend time finding it. (If you can stand on the shoulders of giants, why not?)

Here are three resources I recommend:

  • Laravel Up & Running — book by Matt Stauffer
  • Laravel from Scratch — Laracasts video series
  • Get Started With Laravel 5 — Tutsplus

Above are some foreign learning resources, English is not good? Don’t be afraid. You can still read it if you try. There are also domestic resources:

  • Laravel Tutorial — Written by Summer & Aufree in Laravel China

For books on how best to learn PHP, @OverTrue always recommends Getting into PHP: Object-oriented, Patterns, and Practices. (Of course, there are more and better books, and I hope more interested people can recommend them.)

4. Stop reading and write bugs#

You can’t learn any programming without coding and writing bugs. Don’t spend too much time reading books or watching videos. Start coding early. In fact, you should start coding as soon as you finish each lesson or chapter.

In general, I recommend that you create a test project during the learning process, which makes the process not only more realistic, but also more motivating. Without a proper goal and purpose in mind, it is emotionally difficult to continue learning a theory.

If you only write code, you run into obstacles and a lot of questions to ask. By encountering problems and overcoming them, you expand your knowledge and become a true developer. (Just put a little more patience into it, put the fight out of the monster upgrade brush copy!)

5. Learn to use Google and StackOverflow#

Not directly related to Laravel, but important. Don’t you know baidu? Google it! It’s not hard for a programmer to find a ladder. Know the difference between Google and Baidu? Don’t know? Google it!

StackOverflow is an application-related IT technology q&A site. When you Google for a solution to a problem, usually the first thing that comes up is StackOverflow.

So here’s the problem! Do you ask questions? Haha, you may question “what is the meaning of questions”, I recommend you to read the Chinese version of wisdom of questions. Generally, each forum and community has its own culture, rules and expectations of behavior, such as the community Posting and management norms of Laravel China. And when you’re in the tech community, you don’t just read tech posts, you can ask questions in the right way and with the right style. If you are polite, patient and respectful, you have a better chance of getting help from the Bull.

Find a mentor#

The biggest problem with learning to program is that you don’t know how to troubleshoot when something doesn’t work. The best solution to this problem is to ask for help. On the importance of finding a great god to help you!

Where should you find a mentor? In your social circle, both offline and online. Trust me, if they’re not busy and your question isn’t too stupid, they’ll be happy to help. Find them, ask questions in the community, or send them a private message.

Don’t give up#

As mentioned in the last tip, it’s easy to give up on learning when faced with a problem you can’t solve. Maybe that’s why so many people start learning, but only a few actually become professional developers. There won’t always be rainbows and butterflies, and the path will always be full of problems. Difficult questions, self-doubt, and even the desire to throw your computer out the window. Yet every developer goes through it all, and it never stops. Trust me, no matter what happens, the only thing you have to do is keep going, keep going, keep going. When you start to be creative, when you can easily implement what comes into your head, you’ll know it’s all worth it.

Finally, speaking of continuous improvement, my final advice is not to allow too long a gap between study sessions and breaks. Keep learning something new every week or even every day. It’s like a workout, and if you miss a day, it’s hard to get your rhythm back. (Only keep learning, keep learning, is the king)

That’s my advice, and I hope you’ll find your best way to learn, and maybe one day, we’ll work together to create an amazing Laravel project!