How To Switch From PHP, and To What - by Alexey Inkin - Jan, 2024 - Medium

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

Open in app Sign up Sign in


To make Medium work, we log user data. By using Medium, you agree to
our Privacy Policy, including cookie policy.
Search

How to switch from PHP, and to what


Alexey Inkin · Follow
5 min read · Jan 25, 2024

Listen Share

I was a PHP programmer for 17 years until 2020. I explained my reasons for
switching in this article, section “Go into a technology at an early stage, get out of a
dying one”.

Volfied, a game from 1991 where you need to cut the territory from moving monsters, in short dashes
between sticking to the safe perimeter. You win when you cut 80% or more. You die when you hit a monster.
Go play it here if you never did.

I get a lot of questions on what to do from PHP developers who feel they are stuck.

1. Get better at the backend skills


https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 1/13
3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

The problem is, with a new language, one will be paid much less for some time.
How to reduceTothat
makeadverse impact?
Medium work, we log user data. By using Medium, you agree to
our Privacy Policy, including cookie policy.

Luckily, switching between backend technologies is easier than switching between


frontend ones, because with the backend it’s more about these skills than the
language:

1. Microservice architecture.

2. Designing a clean and stable API.

3. Parallel computation, race conditions, synchronization.

4. Load balancing.

5. Message queues.

6. Profiling and high load.

7. Data schema design.

8. Data indexing.

9. Transactions.

10. Query optimization.

11. Sharding.

12. Container configuration and CI/CD.

13. Security.

Rate yourself in each of those skills.

They are the true assets, not the language. The more you are proficient in those
skills, the less your income will suffer for the first year or two after switching to
another backend language. PHP is a great ticket to learn all of that. If in your current
job you progress in those skills, don’t rush to switch, take what you can from your
current position. Otherwise, you will delay the development of those skills because
you will be spending too much time on the language itself and the patterns specific
to it.

https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 2/13
3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

Unfortunately, many PHP programmers maintain small websites with no chance to


learn the real To
backend skills.
make Medium Towethem,
work, log userIdata.
recommend firstyou
By using Medium, switching
agree to to a more
our Privacy Policy, including cookie policy.
serious PHP job to gain that. This is exactly what I did in 2019. I was good at the
language and common sense, and not bad at clean code. That was sufficient to
become a senior developer at one of the significant companies in my country and
learn some of the missing skills on the go.

2. Learn what is used in the industry


You probably want to do not just any backend, but lean towards specific industries
or classes of applications.

How much machine learning or complex math do you want? — ML suggests specific
languages.

Is there any large company you want to work for? — Even if you are not applying to
them right away, you want your next employment to be a step towards them. Go
with the technology that the company uses.

Do you want to go into banking software? — They have heavy requirements on


redundancy, consistency, security, availability, and more. Distributed transactions
are easier with certain technologies.

I could have said that Python is for machine learning, Java is for distributed
transactions, and Go is for tight performance requirements, but I don’t have first-
hand experience in those industries (I am mostly on the frontend now), and these
suggestions are just stereotypes. Go talk to someone who works on what you want
and ask what they use and what people they know use. Go to meetups to hear and
ask. Visit or watch conferences.

Then remember that what you hear is just their preference. Some languages may
better fit certain applications, but most of the backend stuff can be done with a
variety of languages. When a new project is conceived, the technologies that the
team is experienced with are often more important than the pure technology
factors.

3. Popularity-to-quirks ratio
PHP can do mostly everything that other backend languages can. It is dying not
because of incapacity but because of its quirks:

https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 3/13
3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

No parallelism in the core (in an extension instead).


To make Medium work, we log user data. By using Medium, you agree to
No unifiedour
error handling.
Privacy Policy, including cookie policy.

No standard linter and formatter.

No compile-time guarantee of array types.

mb_strlen($str) instead of str.length , and many more weird things.

While a technology is popular, people cope with its quirks. But when an easier
solution gains a critical mass, the quirks become an important factor in the rate of
switching.

If you think TypeScript is the king, remember the story of React Native. It was 3
times more popular than Flutter in 2019, they got on par in 2022, and now Flutter is
significantly ahead. Why did it happen so fast?

JavaScript has even more quirks than PHP with its null & undefined , two types for
maps, etc. On the other hand, Dart is clean and unsurprising. The switch from React
Native to Flutter works mostly one way. That’s a good approximation of the quirks
factor isolated.

A frontend is disposable. A backend lives much longer, it’s more expensive to


rewrite, so don’t expect TypeScript to go anywhere in the next 10 years, but watch its
challengers.

4. Estimate the community benefits


Some technologies are heavily backed by organizations, and that support can be
critical.

With Go, you have the whole Google behind you, and they want their language to be
popular. They sponsor a lot of things you can benefit from. They maintain the
community of “Google Developer Experts” (GDEs), this title is awarded to people
who are proficient in various Google technologies and teach others about them.
Google lets you speak on hundreds of events and sponsors traveling. The title of a
GDE is extremely valuable. It opens a lot of doors like membership in third-party
associations, judging various competitions, and eligibility for talent immigration
programs. All of that is because of Google’s governance of the ecosystem.

https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 4/13
3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

Microsoft has a parallel program called “Microsoft Most Valuable Professionals”


(MVPs) for developers in C#
To make Medium and
work, weother
log usertechnologies.
data. By using Medium, you agree to
our Privacy Policy, including cookie policy.

On the other hand, as you progress in Python or TypeScript for the backend, you
may become popular in the self-governing community, you can get high download
numbers of your packages, and you can get some third-party awards, but that’s
mostly it because no large body backs these ecosystems.

When I was approved a petition for the extraordinary ability green card, my GDE
membership played an important role in it. If I had chosen React Native over Flutter
three years ago, I would have much lower visibility and immigration chances. You
never know when you need it.

5. Go with what you don’t hate


As of 2024, you will likely have this list for general-purpose backend:

TypeScript

Python

Java

Go

And the following specialized things:

.NET

C++

Less popular ones omitted.

Unfortunately, I can’t accept the quirks of any of the above, so I went with Dart. It’s
extremely unpopular for backend, and a lot of third-party services lack SDKs for it,
but at least the coding itself is a pure joy.

Also, you don’t have to choose just one. I know backend developers who
interchangeably use PHP and Go, Python and Go, and other combinations.

Happy switching!

Never miss a story, follow my Telegram channel: ainkin_com

https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 5/13
3/24/24, 12:47 AM How to switch from PHP, and to what | by Alexey Inkin | Jan, 2024 | Medium

PHP Golang Typescript JavaScript Google


To make Medium work, we log user data. By using Medium, you agree to
our Privacy Policy, including cookie policy.

Follow

Written by Alexey Inkin


2.8K Followers

Google Developer Expert in Flutter. PHP, SQL, TS, Java, C++, professionally since 2003. Open for consulting
& dev with my team. Telegram channel: @ainkin_com

More from Alexey Inkin

Alexey Inkin in Dev Publicity

Advice to my younger self and you after 20 years in programming


I was approved a talent green card petition, became a GDE, and a lot more. Here is what I would
do differently to make it faster.
https://medium.com/@alexey.inkin/how-to-switch-from-php-and-to-what-a740623bfae5 6/13

You might also like