As a PHP developer, choosing a small subject to specialise in is a crazy idea. At my day job, I work with multiple simple languages and fix bugs in the frontend and backend and sometimes in the middle.
As a PHP developer, you have a lot of freedom in choosing how a feature should be architected and implemented. You can do it Object Oriented or NOT! You can have a clear separation between the code that gets the data(Model) and the code that contains the logic(Controller), or you can just write everything in a single file without a specific order or structure.
We are used to having a lot of options, we enjoy that feeling and we don’t want to lose that freedom. In Java or Swift, there are a lot more constraints that the dev needs to follow, just to get the application to compile:
“Compiler error: The function do_something($float) expected a Float to be passed as a parameter, Int given!”
In PHP there is none of that malarky. You can compare a string with an int ( ‘1’ == 1 ) and will work as expected.
At no point in my working experience did I feel like:
“You know I am working on too many things, I really should just pick one area and just work on the models of a project!”
As a developer, I always want to improve and get better at my job. And a common way of improving as a developer is learning a new language. I mean I already work with a couple of languages already, but I am sure that if I add Python to my programming toolbelt, that’s gonna make all the difference.
Learning Python(or any other language that you don’t know yet, but you have heard about) will totally take me from a common unknown developer to a rockstar developer that is hunted by companies.f
And the programming community is full of people who know 20 languages and yet are struggling to get a decent pay increase or to find a job that they are excited about.
Don’t get me wrong, I think that learning a new language will help any developer improve, but the timing is crucial. If you are average at 5 programming languages, adding a new one will not help you that much.
However if you dig deep into one language, and become better then 99% of the other dev in that single subject, you differentiate yourself from the crowd.
How I became a better developer in the past?
I used the same process to become a better developer. When I look back at my skills and how they evolved, I can tell you that when I worked with PHP at my day job on my side projects and I was coached and received code reviews on the PHP I was writing, I improved a lot. Yes, it was a little bit frustrating and difficult to take the code reviews, but I didn’t ignore them.
This is why I want to niche down. I have seen the advantages of focusing on a single language, and how that helped me. So I want to go a step further and focus on a specific area of a language, and after I master that, I can apply the knowledge that I acquired, to whatever project I am working on.