M
M
Maxim Kudryavtsev2017-10-19 12:54:09
PHP
Maxim Kudryavtsev, 2017-10-19 12:54:09

Is Composer useless in 2017?

Good day.
Decided to leave freelancing for the office. I went to a couple of interviews, last Monday I went for an internship.
The team leader gave me one of the projects (php 5.4 + kohana 3.2), set several tasks and I started working. I can’t say anything about the project, the code is like code, in some places it’s better, in some it’s worse. There are no tests, no tests at all, and, according to the team leader, no one here before me even offered them.
In order not to drown in a large amount of someone else's code, so as not to accidentally break anything there, I initialized composer.json in the directory with the project, tightened phpunit + selenium and began to deal with the project. Along the way, I noticed several third-party libraries included in the copy-past code, which I installed as composer dependencies.
For three days I walked with a debugger, researching and fixing bugs, writing tests so as not to break anything. Today, the fourth day of my internship, I report to the team leader about the work done, saying that I added composer to the project, brought these hard-core libraries from the code to it, wrote such and such tests that allowed me to close this task.
After all this, I hear from the team leader: "Why did you use composer? We don't use it, and in general it's useless for 99% of our tasks." Composer in 2017, which is used in any modern PHP framework (Laravel & Symphony at least) is useless for 99% of our company's tasks... Boom!!! Somehow it doesn't even fit in my head. How can one of the most popular tools in the PHP environment be useless for 99% of the tasks of a company that uses a PHP-based technology stack?
Gentlemen, I'm behind the times and don't know something? Maybe someone knows a better alternative than composer for PHP?
Also, I thought, is it worth continuing to work with the team at all? Should I try to change the process? Should I try to convince the team leader or leave the team?

Answer the question

In order to leave comments, you need to log in

15 answer(s)
M
Maksim Fedorov, 2017-10-19
@Maksclub

Get out of there
And in general the question is stupid. If there is php 5.4 and Kohana is old, then of course they do not use the composer.
If there are no tests, it is not always bad, a lot of projects work without tests. Yes, you won’t learn good programming there, but it’s not so terrible ... you can slowly drag them in, but business doesn’t always need it (in general, these are the tasks of team leads and developer hygiene)
But Timlid’s answer is terrible. Why wasn't this revealed during the interview?
With your approach to programming and experience, haven't you been hired by a better company?
UPD: Very good answer below the link -- Is Composer useless in 2017?

D
Demian Smith, 2017-10-19
@search

Composer is, perhaps, the best thing that happened to PHP 5th version.
To bring down or convince a team leader is essentially the same thing, if you look closely. Just a demonstration of your inability to take responsibility.
About 3 years ago, at my last job, a very smart, proactive person came to the team, who did not try to convince anyone. He just started doing the right things. No explanation. And without invitations. Commit unit tests. Connect linters. Decline failed pull requests. As a result, he himself became a team leader about a year later.
So it goes.
Not everyone, however, has balls of steel. But being proactive has never been fired. If you have already created a pull request, then "persuasion" becomes the task of the team leader.

A
Andrey Shatokhin, 2017-10-19
@Sovigod

The whole profit of the composer is in the speed of development. Connecting a component is faster than implementing it yourself. If the company is satisfied with their current development speed, then you can live well without it.
This is especially good if projects are written at one time and then not supported. Many times I saw how composer install in a new environment did not build a working project.
I personally know quite a few large sites (millions of views per day) that do not have a composer.
Composer is not a php development standard. This is a tool. Which has its pros and cons.

L
Lander, 2017-10-19
@usdglander

While the project is at the start, no one writes tests, because it takes a long time, and start-up investments tend to end. And no one really thinks about refactoring. Later, when the project is already reaching self-sufficiency or even profit, the question arises of the cost of making a change.
Judging by the fact that Kohana is being used, the project did not start a month ago. This means that the cost of making changes is already high and the team leader makes it clear to you that it is this cost that suits everyone. And then an upstart came here, who will now put everything in order and half of the staff of programmers will not be needed. Then he gets fired :)

I
Ilya Beloborodov, 2017-10-19
@kowap

You won't learn anything and you won't convince anyone.
homer-run.gif

O
Oleg Kolzhanov, 2017-10-26
@clockworkbird

If the team leader did not set tasks for connecting the composer and setting up tests, then it turns out that instead of real tasks, you were engaged in amateur activities and spent company resources (your working time) on this.
A junior vacancy forgives this, but if you want to work in a team, you need to understand that the result is important in work, not narcissism.
In addition, given that the project is old, there is a high risk that you have broken something by connecting the composer. For example, someone once "fixed" the code in a copy-pasted library (no matter how crazy it sounds), and you downloaded its original version from the repository, etc. - moments, actually a lot.
Maybe this is a one-time task for an external project for 3 rubles, and what's the point of fencing a garden in it, if it needs to be done in a couple of hours, given to the client and forgotten.
Of course, even though the team leader is a dinosaur, he will be reasonably dissatisfied. It is strange that he did not control the progress of the work - such amateur performance in the process of work must be nipped in the bud.
Composer, of course, it is desirable to use. Tests (and continuous integration, and code reviews, etc.) are great, but many in the real world, in which you have to support projects with a history (in which there was no composer at all), they live great without them .
Refactoring the project and modernizing the development process are great, but separate tasks that require prior discussion and agreement.
Do the task, offer a development option (composer and tests), discuss with the team and team leader, plan the implementation - everyone will be happy.

Y
Yustas Alexu, 2017-10-19
@Yuxus

Here I see the problem in the team itself. He just didn't like that some intern started poking his face into his own shit.

P
Puma Thailand, 2017-10-19
@opium

it is obvious that the team leader is stuck in the past, nothing more

M
Mikhail Osher, 2017-10-19
@miraage

or leave the team

I would choose this option.
Or go to the authorities above, tell them that they are all incompetent, fire them, become the leader yourself and recruit a normal team. But here you can hear things about "business", "everything works, don't touch" and so on.

L
LightAir, 2017-10-26
@LightAir

"Wow, those composers of yours are homegrown. Made up."
Run out of there like Forrest Gump. Run until this team lead with his legacy finishes you off.
From "life" I do not think that you are lagging behind. There is no alternative yet. I could be wrong, but most likely it will not be possible to change the process, to correct the brain, they are sitting there in their little world and do not want anything themselves. I hope at least git is used.

A
Alex Teterin, 2017-10-26
@errogaht

I wouldn't want to work for a company where composer is useless. They have it, it's useless. But I'm scared to imagine what kind of project it is, I definitely would not be interested in working in a project that does not use the best world libraries and standards. I don’t like all these self-writing because they are almost always of terrible quality, because well-established time-tested libraries are made by the best programmers and spend a huge amount of time on them improving them, I can’t imagine a business other than mail.ru or Yandex that can afford to spend as much time for your own library. Of course, this team lead will give 100 arguments why it's cool to make your own self-writing, but it doesn't matter to me, I just don't want to poke around in endless self-writing,

D
Dmitry Dart, 2017-10-19
@gobananas

This happens when you close yourself from the outside world and sit down for a long time in a warm, cozy place. Technology just usually pushes the team leader who wants to move forward and pulls the team behind him, forcing him to change versions to new ones, apply more and more new frameworks and all the most advanced.
You will probably still have to find yourself a more advanced team. Be sure to use composer and tests, you are doing everything right.

M
MisterN, 2017-10-19
@MisterN

If they are still on 5.4, then it seems to me that both the libraries and the environment there simply do not change "while it works". The rate at which libraries are updated is not important as long as you don't update them. Campaign, here it is rarely done and yes, copypost. I don’t know what tasks are there, but who the hell knows, maybe it’s not needed.
Git submodules? Also an option, so-and-so))

T
Timur Malikin, 2017-10-26
@Sora

Drop, definitely.

A
Antonio Solo, 2018-02-02
@solotony

the question of whether to work there or not depends on the money that is paid there . if you can do a job and get paid well for it, why not do it? The fact that you disagree with the requirements - there will always be something that annoys you.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question