A Java developer’s challenge in learning PHP/Laravel

Who should read it: It is for you if you are looking for a quick overview of this topic for a project, an interview, or in general. As I learn more, we will update this article.

As a Java developer of more than 15 + years, I came across a situation to learn Laravel application development. Laravel is a PHP based framework. I will go through my challenges of learning it and how I overcame it.

As an established Java developer, these were my challenges in learning Laravel:

 

Challenge 1: Why Laravel, why not Java based: I love Java based technologies. Why should I deviate from Java technologies and learn Laravel out of the way? Why should I learn PHP and Laravel when I am already experienced in multiple Java frameworks like Struts and Spring?

Challenge 2:  Why to invest my time in a secondary skill set? I primarily like Java based skills. Do not I already have many things to learn in the Java world? Instead of learning Laravel, what if I spend time in further learning more about Java frameworks? Will there be any long term benefit of learning Laravel?

Challenge 3: Will I be accepted as an experienced Laravel professional?  A genuine concern. I have been working on Java skills for more than a decade. How will I be respected in the Laravel community? Am I changing my career path? I always loved Java skills. Why should I deviate from my Java career?

 

Challenge 4: How long will it take to learn Laravel? If I really have to learn, how long will it take to learn it?

 

Challenge 5: How long will it take to develop expertise in Laravel?

I went through many such self-talks. It took few weeks for me to even consider deviating from my existing Java skills set. Here is how I overcame these challenges:

Challenge 1: Why Laravel, why not Java based? Reason is a need and the curiosity. I can understand the need in the project, but let’s explore curiosity. I was so curious to know why the a community of developers prefers Laravel or a similar PHP framework over another skills set like Java. I researched it for few weeks. I also inquired from my friends who are using the PHP/Laravel framework. They all argued that the development speed is faster and cheaper in Laravel, as compared to a Java based framework. Also, the quality of development is great. I challenged them that as an experienced Java developer. I argued I can lead developers to develop Java based applications very fast. But their point of view was the learning curve that Java has. Per them, if a new programmer learns PHP/Laravel in two months, it needs six months to be equally good in a Java based framework. This argument made me more curious to explore Laravel framework.

Challenge 2:  Why to invest my time in a secondary skill set?

In my Java  development  career, many times, I got job offers because of my additional/secondary skills like Epiphany CRM, SAP ABAP, Corda dashboards, Shell, or other skills. Many times, I benefitted by combining a primary and few secondary skills set. I recall a project in that I was the lead developer. In the eco-system, majority of applications were in Java but one application was built in PHP. So, I concluded that it’s a unique skills set to combine Java skills with another demanding skill set. So, I won’t be wasting my time learning Laravel as my secondary skills set.

Challenge 3: Will I be accepted as an experienced Laravel professional? Probably not, but let’s look at some common skills in Laravel and in Java frameworks:

    • Business goals
    • Design principles
    • Web UI skills
    • Database skills
    • Testing strategies

Now, let’s look at some skills that are not common into Java application world:

    • Laravel framework itself
    • Laravel related unique utilities like tinker
    • Laravel specific testing data seed concept

Though we have uncommon things, it’s helpful to learn uncommon skills. It broadens the perspective of knowing new possibilities and for Java frameworks in the future. It can open the perspective of Java developers to come up new features into Java frameworks.

Challenge 4: How long will it take to learn Laravel?

My research indicates that learning Laravel is relatively easier as compared to Java frameworks. But PHP as a pre-requisite. If I spend 3 – 5 hours a week, I calculated about 3 months to learn Laravel. Some would argue it is a long time, but I respectfully disagree with them.

Challenge 5: How long will it take to develop expertise in Laravel?

As per my opinion, no one can really claim being knowledgable in a framework without creating a working application. I planned to spend another 2 months with 3 – 5 hrs/week efforts.

It is been pretty challenging for me to pick up Laravel framework because of the learning curve in it. But so far, I am really enjoying Laravel framework. I really impressed Laravel’s Eloquent Model ORM tool. Throughout my journey, I also realized how challenging it’s been for me to pick up a new technology, which is completely irrelevant to my current skills set. That made me come up with a new upcoming article: How to learn a new technology when you’re already expert in a technical skills set. Stay tuned to read my upcoming article.
I’m looking forward to my journey of learning Laravel.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s