"Está bem equivocado, quanto menor a quantidade de usuários, menos o problema de performance fica evidente, ou seja, com 5 usuários o problema não seria perceptível."

"Sim, mas realmente para pequenos projetos não vai ser um problema. Porém isso não o torna bom..."

Eu falei sobre a carga de uso e velocidade por causa desse seu comentário acima. Nele, você diz que os problemas de Performance não existem porque os sistemas PHP trabalham com poucos usuários, o que não é verdade.

"mas poderia ter um desempenho bem melhor com outra linguagem..."

Claro, você está dizendo o óbvio, Vinícius. Mas quando vamos escolher uma linguagem para desenvolvimento levamos em consideração muitas coisas além de performance: Tempo de desenvolvimento, custos de infra, disponibilidade de mão de obra...

O PHP é uma ferramenta poderosa como backend de aplicações WEB.

Ainda sobre performance, se comparar o PHP compilado (com Swoole) e outras linguagens que competem no mesmo ambiente WEB (C#, JS (Node), Python, até GO) verá que o PHP vai muito bem!

"Você nunca vai ver empresas como Google, Microsoft, Apple e várias outras escolhendo o PHP como uma opção para novos projetos."

E quem disse que as tecnologias que essas empresas usam são necessariamente as melhores para o meu negócio? Sua afirmação não faz sentido para 99% das empresas.

"Algo importante é sabermos que a linguagem que escolhemos sempre vão ter problemas e precisamos reconhecer isso. Isso não significa que não podemos usar ou que ela não funciona, mas precisamos ter a humildade de saber isso."

Exatamente, eu concordo com você.

"E pra finalizar, opinião 100% pessoal é que o PHP é uma linguagem muito com a filosófia de pra funcionar não precisa ser bom, isso inclusive vem do seu próprio criador."

É importante lembrar que ele não foi o único desenvolvedor do PHP; ele apenas desenvolveu as primeiras versões (acho que 1 e 2). Estamos atualmente na versão 8 do PHP, e a visão dele não define o que a comunidade tem feito com a linguagem desde então.

É importante reconhecer os problemas das linguagens que utilizamos, um exemplo fortíssimo, é que a linguagem desenvolvida pela Microsoft é o C# e nem por isso ela afirma que ela é boa para tudo, o novo Office vai ser desenvolvido em RUST justamente porque é uma linguagem que tem um desempenho bem melhor que o C# e o desempenho do C# já é muito bom, mas ainda fica pra trás.

O problema é que geralmente a comunidade do PHP não aceita que a linguagem tem muitos problemas e que infelizmente, a maioria das linguagens são sempre bem melhores que ela, o que consequentemente acaba tornando ela uma linguagem considerada ruim e é por isso que sofre muito hate.

Teve um problema de interpretação. Eu não disse que "os problemas de desempenho não existem porque os sistemas PHP trabalham com poucos usuários".

Se você reparar, nesse comentário eu estou respondendo outro em que o eliaseas comenta:

"Na verdade, a maioria dos que reclamam da performance dele, no máximo desenvolveram sistemas com 2, 3, 5 usuários simultâneos [...]".

O que não faz sentido, logo que com 5 usuários não tem como o problema de desempenho ser perceptível, então porque alguém que só tem 5 usuários reclamaria do desempenho do PHP?


Sobre a escolha da linguagem, realmente tem várias coisas que são levadas em consideração e é por esse motivo que eu mencionei lá que não incluia o orçamento e outros pontos e sim somente a linguagem. Porque as vezes acontece, principalmente no ambiente dos negócios, mas isso deixa mais claro ainda quando não é a melhor opção, quando você escolhe uma linguagem porque o custo que vai ter com ela é mais barato, fica evidente que não é por ela e sim pelo seu custo.

Por exemplo, se o banco que oferece mais desempenho é o X, porém é pago e você escolhe o Y porque ele é gratuito. Isso não torna o Y melhor ou bom, você escolheu ele pelo preço, se o outro fosse gratuito, é ele que seria escolhido. Foi mais por uma falta de escolha.

Assim como por exemplo, uma empresa pode optar por escolher Python pra fazer um site somente porque eles já tem desenvolvedores Python e não valeria a pena financeiramente contratar desenvolvedores JavaScript. Eu por exemplo, não aprenderia totalmente uma nova stack só pra fazer algo, se for possível fazer no que eu sei, mas eu preciso ter a ciência de que não vai ser a melhor opção.

Um último exemplo pra fixar bem, alguém que tem a stack .NET e C# pode escolher o Xamarin ou MAUI pra fazer um aplicativo mobile e pode ser uma boa opção, mas saber que tem opções melhores.

E de novo O PHP é tão mal falado porque fica bem atrás de várias outras linguagens, não somente por ele só ter foco na web, mas por até tendo o foco na web, outras conseguirem fazer melhor e estamos falando da linguagem não preço de hospedagem, disponibilidade de mão de obra, etc.

**"...mas isso deixa mais claro ainda quando não é a melhor opção..."** Entendo seu ponto de vista, mas **a melhor opção** tem que levar em conta os fatores inclusos na expectativa de quem vai escolher. Sobre o exemplo do banco, ser um banco gratuito ou não, não o faz melhor ou pior automaticamente, você sabe disso. Por falar em outro tipo de banco, trabalhei com MSSQL e Oracle por vários anos (tenho algumas certificações), e vi a perda de mercado que esses tiveram enquanto se recusavam a se adequar ao mercado Web. Os bancos "gratuitos" tomaram boa parte do mercado. MSSQL e Oracle são ferramentas incríveis! Mas isso não faz PgSQL e MySQL (sei que tem pago também) ferramentas que eu possa falar mal sem levar em consideração algum objetivo, ou dizer que são piores em suas versões gratuitas, isso tudo **DEPENDE** de muitas outras perguntas. Na empresa temos projetos em várias linguagens, a maioria em C#, Node e PHP (Python usamos mais em funções Lambda). Muitas vezes acabamos optando pelo PHP para novos projetos, considerando muitas outras coisas além de preço de hospedagem. Os argumentos que vejo para falarem **mal do PHP** em sua maioria não se sustentam, ou usam de forma incorreta. Não é uma linguagem perfeita, como todas as outras, mas está longe de ser ruim
Opa, estou notando que tá ficando complicado de entender. A confusão que está sendo feita é que está sendo levado em consideração outras coisas além da linguagem, como habilidade do profissional, disponibilidade do mercado, preços, etc. Mas esses outros pontos não entrariam na conversa pra falar sobre a linguagem. **A conversa não seria sobre escolha levando em consideração outros fatores, mas somente a própria linguagem**, espero que agora tenha dado pra entender. -------------------------------- Tentando te esclarecer sobre outro ponto. O exemplo da escolha do banco de dados gratuito que usei é para uma escolha em que um banco era bom, outro era ruim ou não tão bom, mas era escolhido somente por ser gratuito. Não mencionei nenhum tipo de banco de dados, justamente porque o MySQL é gratuito e é um **ótimo** banco de dados, então não poderia ser usado como exemplo. Então você ter mencionado sobre MSSQL, Oracle, PgSQL, MySQL não fez muito sentido. ---------------------------------------- Os argumentos sobre o porque o PHP ser ruim, geralmente são extramente bem construídos e a habilidade de passar isso geralmente depende do quanto o desenvolvedor é experiente e aprofundado nesse meio. Quanto mais habilidoso, melhor sabe mostrar os pontos negativos dele e aí o negócio piora. Geralmente o PHP só é defendido por quem não tem muita experiência em outras linguagens e então não sabe conseguir analisar isso, como por exemplo tipagem, quem desenvolve em PHP praticamente não lida com tipagem, então não entende muito disso, pelo menos não como quem lida todo dia e não sabe enxergar os malefícios só de não ser fortemente tipada. Tem muitas e muitas outras coisas, e esse foi somente 1 exemplo. Está ficando cansativo e se não deu pra entender tudo que foi dito até agora, vai ser complicado fazer entender. Pra te ajudar a entender, lê os comentários do **maniero** nessa publicação: https://www.tabnews.com.br/maniero/14b178ef-84e1-43e6-ac15-7ce169fed32f Ele é alguém bem experiente e um ótimo profissional, vai saber te apontar os problemas bem melhor que eu.
Eu entendi quando você citou que queria falar somente da linguagem, e não tem problema comparar somente assim. Mas no meio dos seus argumentos, por vezes misturou outras coisas, por isso toquei nos outros pontos, pra deixar bem claro. Vim do Java, sei bem o que é trabalhar com tipos, inclusive gosto bastante de Java, mas não uso nos projetos atuais justamente por causa de motivos diversos que não a linguagem em si. Obrigado pelo link, vou ler com calma em outro momento. [Edit: Li a publicação uma vez. Infelizmente ele não citou os pontos, creio que deva fazer isso posteriormente]
Kkkkkk, tentei usar eles pra exemplificar e realizar uma abstração, como pode ter reparado até usei um "gol quadrado" no exemplo, mas não se trata de carros. Consigo usar alguns trechos da fala do **maniero** que ajudam a expressar o que eu quero dizer quando o PHP não é uma boa linguagem e sempre geralmente tem uma opção melhor: > "Debater tecnologia não deveria, mas é algo religioso. Em PHP costuma ser pior. Por alguma razão que eu não sei (ahhh, eu sei, mas é melhor não falar) tende a dar mais problemas que outras tecnologias. Vem seguindo de JS, Python, Java e depois começa ficar menos relevante, as discussões raramente acontecem. Eu vou só falar uma coisa, essas tecnologias costumam ter mais fanboys (PHP é a dos mais radicais), então você não pode fazer nenhuma crítica que você vira hater para eles. E aqui começamos entender o mundo PHP." ------------------------------ > "A linguagem PHP não é boa e isso até o criador admite. É direito de qualquer um discordar, mas quem costuma estudar linguagens sabe disso e não tem o que discutir. Ela é cheia de falhas, e muitas delas são mais recentes. A maioria das novidades foram mal pensadas, e existem mais para dizer que tem o que as concorrentes têm, mas nas outras faz mais sentido e forma mais bem pensadas. Não tem como consertar certos problemas sem quebrar a compatibilidade. Não tem uma mágica que fará a linguagem ser melhor. Especialmente isso não acontecerá pela maneira como o processo é conduzido. Ela recebe novos recursos, ser bom é outra questão. Ela está evoluindo, melhorando é algo mais pontual." > "Me preocupa e diz muito sobre a comunidade que diz que versões mais novas consertou a linguagem. Aclro que alguma melhora aconteceu, mas teve pioras também e as pessoas não enxergam assim. Então naõ tem o que discutir, se a pessoa não vê ela acha que não existe." -------------------------------- > "Eu uso PHP como ela foi concebida. Não uso da forma como as pessoas usam hoje em dia porque tem ferramentas melhores para usar desta forma, ferramentas que foram feitas para usar desta forma. **Então hoje PHP tenta ser o que ela não nasceu para ser, e isso é ruim.** > Só é pior usar para algo que não seja backend web, onde até o criador da linguagem me disse pessoalmente que isso é errado." > "A linguagem continuará do jeito que está, evoluindo sem muito critério, as pessoas continuarão usando, e se você gosta dela não tem que se preocupar com nada. Se você já não desistiu então não tem porque fazer depois. **Só quem faz análises rasas acha que o passado do PHP é problema e agora está bom.**" > "PHP é das linguagens mais high profile que existem, e é responsável por tudo o que é, para o bem ou para o mal. Se ela não fosse tão visível ela não seria tão próspera. Me desculpe, mas essa visão eu tenho que discordar veementemente." > "O PHP é útil, não há dúvidas disso, caso contrário eu não usaria. **Mas para fazer sites simples.** > O PHP funciona para algo mais complexo que isso, não há dúvidas disso, caso contrário não teria tanta gente usando. Mas não é o mais adequado nessas circunstâncias, pelo menos não na maioria dos casos." > "**PHP é um framework com uma linguagem acoplada para produzir páginas web. Se quer mais que isso, tem soluções mais robustas, poderosas e eficientes. Por isso é estranho rodar um framework em cima de outro.**"
Vi que você comentou que leu e ele não citou os pontos, deixa eu ajudar, citando só uma das que diz isso: > "A linguagem PHP não é boa e isso até o criador admite. É direito de qualquer um discordar, mas quem costuma estudar linguagens sabe disso e não tem o que discutir. **Ela é cheia de falhas, e muitas delas são mais recentes. A maioria das novidades foram mal pensadas, e existem mais para dizer que tem o que as concorrentes têm, mas nas outras faz mais sentido e forma mais bem pensadas.** Não tem como consertar certos problemas sem quebrar a compatibilidade. Não tem uma mágica que fará a linguagem ser melhor. Especialmente isso não acontecerá pela maneira como o processo é conduzido. Ela recebe novos recursos, ser bom é outra questão. Ela está evoluindo, melhorando é algo mais pontual." > "Me preocupa e diz muito sobre a comunidade que diz que versões mais novas consertou a linguagem. Aclro que alguma melhora aconteceu, mas teve pioras também e as pessoas não enxergam assim. Então naõ tem o que discutir, se a pessoa não vê ela acha que não existe." 1 - Hoje em dia você consegue usar tipos em alguns lugares do PHP, mas não faz muito sentido, não foi bem pensado, não tem o mesmo funcionamento de uma linguagem com tipagem. 2 - O PHP tem `namespaces`, mas novamente não faz muito sentido, ele é mais uma "gambiarra" para "importar" outros arquivos PHP, o que é completamente diferente de outras linguagens. 3 - Você mesmo comentou sobre o Swoole, como se fosse pra compilar o PHP. Apesar de eu acreditar que não é isso que ele faz, também com toda certeza, não funciona da mesma maneira que a compilação de uma linguagem. 4 - Muitos frameworks e ferramentas são construídas pra fazer o que o PHP não veio pra fazer, como tentar usar pra criar SPA. Tem muito mais além disso, ou seja, além dos seus próprios problemas, a maioria das coisas no PHP é ele tentando fazer menos do que ele veio pra fazer e sim o que as outras linguagens fazem, só que nunca é como as outras, sempre fica como algo mal feito que não era pra ter esse funcionamento. Até inclusive coisas da linguagem que não estão em outras, são assim, como chamar variáveis com o valor de outra variável, isso é algo bem sem sentido, se pensar bem, sempre que alguém faz isso, estava querendo usar um array.
Achei os argumentos bem superficiais: **1. "Não tem o mesmo funcionamento que uma linguagem com tipagem":** As linguagens se dividem em categorias diferentes quanto ao uso de tipos (dinâmica, fraca, forte). Cada tipo traz prós e contras. Eu não posso dizer que uma linguagem é melhor ou pior que outra por usar uma tipagem de tal modo. Isso **Depende** muito do que eu quero em um projeto. Quanto ao uso de tipos em PHP, ele trabalha como outras linguagens dinâmicas que não tem tipagem estática e forte: Javascript, Python, Ruby, etc... Inclusive, após a versão 7 você pode usar tipos estritos. **2. "Gambiarra para importar (namespaces)"** Cara, você já usou namespaces no PHP? Nunca me deu nenhum tipo de dor de cabeça. Inclusive muitas linguagens populares nem trabalham com namespace, somente módulos. **3. "não funciona da mesma maneira que a compilação de uma linguagem (sobre Swoole)"** Eu sei como funciona, e realmente não é a mesma coisa que uma linguagem compilada, mas isso não faz diferença para o propósito ao qual foi feito, pois no final eu tenho um desempenho absurdo sem precisar de trabalhar diretamente com concorrência e paralelismo no código. Eu tenho até outros argumentos melhores a esse respeito, mas iríamos entrar em outro assunto. **4 - "Muitos frameworks e ferramentas são construídas pra fazer o que o PHP não veio pra fazer, como tentar usar pra criar SPA."** Esse argumento é o mais raso de todos, cheguei a rir aqui rsrsrs. A maioria das linguagens de backend pra Web tem frameworks para "simular" SPA, e isso não é um problema. Eu não uso. Quando uso PHP, é pra API Web mesmo. ------------------------------ Amigo, vou parar meus comentários por aqui. Agradeço pela conversa. Desejo sucesso a você! Abraço!
Nenhuma das respostas que deu para os 4 pontos fez sentido, só mostrou que realmente tenta fazer o que as outras fazem e realmente não funciona como deveria. Todas e principalmente a do namespace mesmo, se aplica muito ao "Pra funcionar não precisa ser bom". Deixo por fim essas conclusões que se aplicam ao seu último comentário: > "Debater tecnologia não deveria, mas é algo religioso. Em PHP costuma ser pior. Por alguma razão que eu não sei (ahhh, eu sei, mas é melhor não falar) tende a dar mais problemas que outras tecnologias. Vem seguindo de JS, Python, Java e depois começa ficar menos relevante, as discussões raramente acontecem. Eu vou só falar uma coisa, essas tecnologias costumam ter mais fanboys (PHP é a dos mais radicais), então você não pode fazer nenhuma crítica que você vira hater para eles. E aqui começamos entender o mundo PHP." ------ > "[...] Então hoje PHP tenta ser o que ela não nasceu para ser, e isso é ruim." ------- > "PHP é um framework com uma linguagem acoplada para produzir páginas web. Se quer mais que isso, tem soluções mais robustas, poderosas e eficientes. Por isso é estranho rodar um framework em cima de outro."