PHP não é coisa de sobrinho! – Hipsters #36

PHP já deixou de ser coisa de sobrinho há muito tempo! Com um ecossistema gigante e comunidade vibrante, o PHP evoluiu não apenas com a linguagem. Temos algo bem interessante a partir do 5.3, além de frameworks e microframeworks inspirados no que há de melhor das outras plataformas. Só nos resta twittar #phphipster

Participantes:

Links bacanas:

Produção e conteúdo:

  • Alura Cursos online de Tecnologia
  • Caelum Ensino e Inovação

Edição e sonorização: Radiofobia Podcast e Multimídia

Leave a Reply

69 Comentários

  1. Vandemberg Silva Lima

    Mais é nada. Olha o velho e bom PHP aí!!! Estou programando em PHP nesse momento ouvindo esse podcast ;D

    ps: Estou programando em Laravel, que aprendi pelos excelente cursos da Alura kkkkk

    #phphipster

  2. Bruno Mendes Lima

    Vocês poderiam adicionar o episódio compactado? Algumas empresas bloqueiam a extensão mp3. Obrigado!

  3. frankyston

    Muito legal o episódio. Parabéns pra todos.

  4. Rodolfo Estevam

    eu amo essa vinheta e o hipsters.tech também o/

  5. Vinícius Dias

    Eu, particularmente, coloquei um projeto Symfony 3 no ar mais rápido do que um projeto Laravel 5.3, e muito mais bem escrito, diga-se de passagem.
    😉

  6. Silvio Pereira

    Sem querer desmerecer o PHP de forma alguma mas acredito que atualmente, uma grande parte da web é escrita em PHP principalmente por causa das várias plataformas CMS existentes e não porque existem tantos programadores PHP no mercado. Muitas pessoas que nunca escreveram uma linha de código acabam se apoiando em CMS PHP sem nem saber o que é exatamente PHP. Por isso existe ainda uma imagem negativa em relação ao PHP ser linguagem de sobrinho.

    Uma coisa que gostei muito é de como a discussão foi saudável em relação às outras linguagens ao invés de virar uma guerra de comparações. Estão todos de parabéns pela maturidade e pelo nível da conversa.

    • Vagner Araújo

      Existe MUITOS programadores no mercado, acredite.

      • Silvio Pereira

        Eu sei que existem, mas 80%, como disseram no podcast?? (80% da web usa PHP). Fica evidente que a participação da linguagem é absurdamente inferior entre os programadores em comparação com sua utilização na web.

        • Paulo Silveira

          Silvio, é 80% por causa de muita plataforma. por exemplo, o hipsters ponto tech é um site em PHP, mas não necessariamente precisou de um programador php para setupá-lo, já que foram poucas customizações do wordpress em si.

          • Silvio Pereira

            Foi exatamente isso que eu quis dizer. É uma linguagem muito presente na web mas não necessariamente tão expressiva assim entre os programadores. Mas isso não é nenhum desmérito. Meu comentário foi no sentido de que a má fama citada vem do mal uso de ferramentas (boas, por sinal) escritas em PHP e não da linguagem em si!

  7. Matheus Freitas

    Excelente esse hipster sobre PHP pessoal, estou inciando nesse universo e me ajudou bastante valeu galera!!!

  8. Alexandre o Guma

    Fiz os curso de laravel e codeigniter na Alura e gostei bastante do LARAVEL. Eu tenho mais experiencia com JAVA e umas das coisas que vi no uso de um framework do tipo LARAVEL é que pela produtividade se acaba abrindo mão de ficar construindo coisas na mão. O projeto se resume a criação de controllers, models e views. Na controller se usa o formValidation e depois passa os dados para uma model que tem la o seu CRUD. Neste ponto eu não vejo a questão do uso de classes de entidades mapeadas. Pessoal do LARAVEL, como vocês trabalham este tipo de questão?

    • Alexandre o Guma

      Olhando o DOCTRINE aqui é basicamente o HIBERNATE do java..hehehehehe. Eu consigo fazer a mesma coisa com o ELOQUENT no LARAVEL?

      • Kaléu Caminha

        O Doctrine até onde seu não tem concorrente em PHP…o Eloquent faz muito bem o Active Recordo, associar um objeto com o banco…mas fazer com que a programação fique completamente independente do mecanismo de persistência, acho que não chega a tanto. To certo pessoal?

        • Alexandre o Guma

          Kaléu eu ainda não usei o DOCTRINE, mas pelo o que li a grande diferença está no fato de se poder mapear entidades no PHP e o model ser totalmente isolado. Neste caso você tem uma entidade mapeada que é passada para uma model que tem os seus métodos apenas pra tratar banco. No caso o Eloquent parece fazer as duas coisas ao mesmo tempo sendo uma entidade e também uma model. Sendo assim, na minha visão o DOCTRINE tem muito mais vantagem porque permite se isolar entidade da model, facilitando incluse questões de desenvolvimento guiado por testes e boas práticas com SOLID.

          • Kaléu Caminha

            @alexandreoguma:disqus descreveu bem. Uso bastante o Doctrine e é realmente o que você falou.

            Minha dúvida é até onde o Eloquent vai, não consegui avaliar para ter ideia se chega perto..

          • Alexandre o Guma

            @kaleucaminha:disqus pois é eu fiz o curso de LARAVEL e ao mesmo tempo que achei muito produtivo, pesou aí essa questão de persistência. Eu vim do JAVA e acredito que orientação a objetos no PHP ainda não é regra. Vejo vários exemplos onde se usa um array, porém com objetos você tem mais coesão e facilidade na manutenção. Este artigo aqui http://culttt.com/2014/06/18/whats-difference-active-record-data-mapper/ é muito interessante e explica a diferença entre ACTIVE RECORD e DATA MAPPER. Eu concordo com o texto do artigo. Basicamente ele diz que se você quer ter o domínio separado da camada de persistência, você deve usar DATA MAPPER, agora se for algo simples ou até mesmo um app do tipo MVP aí o ACTIVE RECORD é uma boa pela produtividade. Isso não significa que não dá pra fazer apps grandes com ACTIVE RECORD, claro que dá, porém aplicar TDD, SOLID e MANUTENÇÃO ai acredito que o bicho pega.

  9. Eduardo Medeiros Branquinho

    Sobre o Hipster ponto jobs:
    Consegui um emprego super maneiro por lá!
    Foi super rápido me candidatar a vaga, nem tive que preencher formulários gigantes olha só. Foi só subir meu cv em anexo e pronto.
    Tive que fazer um desafio técnico e uma entrevista técnica presencial (usei o que aprendi na alura e casadocodigo) e pronto, dia 03 começo por lá.
    E tudo isso free.
    (jaba merecido)

    • Rodrigo Caneppele

      Oi Eduardo,
      Nossa, muito bom ficar sabendo disso!
      Parabéns e muito obrigado pelo feedback!!! 🙂

      Abs.

  10. Fábio Thomaz

    Muito bacana este podcast, espero que possam ter outros como este com outras linguagens como Python, Ruby, Go, etc, trazendo: a história, o que é a linguagem hoje e o que esperar dela no futuro.

    Parabéns ai Galera!

    • Gleuton Dutra

      ótima ideia, espero que sigam teu conselho.

    • A ideia é excelente e isso me lembra bastante o Grok Podcast, que seguia bastante essa linha. 😉
      Foi através do Grok Podcast que abri minha cabeça para outras linguagens/paradigmas/plataformas que não a que eu utilizo no dia-a-dia.

      Foi no Grok Podcast que ouvi sobre Python, Ruby, Node.js, Scala, Erlang, NoSQL, Lua, Agile, Mono, Go, C#, Elixir, Swift, Clojure…

  11. O podcast está excelente, como sempre! Escolheram ótimas pessoas – os queridos amigos Anderson Casimiro @duodraco e Elton Minetto @eminetto – para falar sobre o assunto com elegância, profissionalismo e de forma equilibrada.

    O episódio foi necessário (e ainda é) para desmistificar o estado atual do PHP. Muita gente continua criticando o PHP acreditando que ele é ainda a mesma linguagem desde 2003. Porém, não notaram que a linguagem e o ecossistema evoluiu, e muito, nos últimos anos.

    Nos dias de hoje, a linguagem e seu ecossistema é comparável ao de qualquer outra plataforma como Ruby, Python e Node.js, só para citar algumas. Claro que cada plataforma tem o seu trade-off.

    Vale lembrar que o PHP já possui funcionalidades como funções anônimas, closures, generators, traits há anos e que outras novidades como short closures (as arrow functions do ES6) e pipe operator (semelhantes as de Elixir e Elm) podem fazer parte do core da linguagem já na próxima versão, a 7.2.

    Vale lembrar também que a PSR de log é a PSR-3 (e não a PSR-4 como dito no episódio) e que a PSR-7 é sobre a padronização de mensagens HTTP, que abriu caminho para a padronização dos middlewares em PHP, que está acontecendo atualmente com a PSR-15.

    Em relação ao Laravel, eu discordo do Elton Minetto, pois o Laravel não é indicado somente para projetos pequenos como landing pages e sites como foi dito no episódio, ele pode (e deve) ser utilizado também em grandes projetos. Um grande case nacional (e francês) é o portal da Leroy Merlin Brasil tocado com maestria pelos queridos amigos Luiz Fernando (Zizaco), Guilherme Guitte, Ravan Scafi e companhia que é feito em Laravel e que fizeram a filial francesa considerar utilizá-lo em outros países pela sua agilidade e robustez.

    Para quem quiser começar a programar PHP, recomendo os livros ‘PHP Programando com Orientação a Objetos – 3ª Edição’ do Pablo Dal’Oglio da comunidade gaúcha e ‘PHP Moderno’ do Josh Lockhart, criador do Slim, ambos vendidos pela editora Novatec. Recomendo também os projetos ‘PHP: The Right Way’ e o ‘Learning OOP in PHP’ de minha autoria e os vídeos do canal Pagar.me Talks sobre PHP como o vídeo https://www.youtube.com/watch?v=ZQVztAwoHUA.

    Mas a minha principal recomendação é participar das comunidades PHP da sua região. Aqui em São Paulo faço parte do PHPSP e organizamos meetups, eventos de palestras e conferências. Toda nossa agenda pode ser conhecida através dos sites phpsp.org.br e http://www.meetup.com/pt-BR/php-sp ou através do Slack phpsp.slack.com.

    Vale lembrar que na próxima semana vai rolar o PHP Experience 2017 em São Paulo com grandes palestrantes nacionais e internacionais. Quem tiver a fim de ir, pode utilizar o cupom de desconto `PHPSP40` para ganhar 40% de desconto. Corra e se inscreva em phpexperience2017.imasters.com.br.

    Alguns links sobre o que foi citado no comentário.

    * RFC Arrow Functions – https://wiki.php.net/rfc/arrow_functions
    * RFC Pipe Operator – https://wiki.php.net/rfc/pipe-operator
    * Lista das PSRs – http://www.php-fig.org/psr/
    * Twitter e GitHub do Luiz Fernando (Zizaco) – https://twitter.com/ZizacoZizaco e https://github.com/Zizaco
    * PHP Programando com Orientação a Objetos – 3ª Edição por Pablo Dal’Oglio – https://novatec.com.br/livros/php-orientacao-objetos-3ed/
    * PHP Moderno por Josh Lockhart – https://novatec.com.br/livros/php-moderno/
    * PHP: The Right Way – http://www.phptherightway.com/
    * Learning OOP in PHP – https://github.com/marcelgsantos/learning-oop-in-php
    * Pagar.me Talks – PHP Moderno – https://www.youtube.com/watch?v=ZQVztAwoHUA
    * Site do PHPSP – http://phpsp.org.br
    * Meetup do PHPSP – https://www.meetup.com/pt-BR/php-sp/
    * Slack do PHPSP – https://phpsp.slack.com
    * PHP Experience 2017 – https://phpexperience2017.imasters.com.br/

    Abraços. 🙂

    • Paulo Silveira

      wow Marcel. MUITO obrigado pelo comentário completo, pertinente e recheado de links que eu mesmo deveria ja ter colocado no post! aliás, estou colocando agora.

      • Haha, muito bom. Fico feliz que o comentário ajudou a complementar o já excelente podcast. 😉

        Aliás, fica o convite para você conhecer melhor o PHPSP e todo o trabalho que a comunidade realiza para fomentar o ecossistema PHP em São Paulo e no Brasil.

        Ah, tem mais uma coisa, me passa o tamanho de camiseta que você usa para te presentearmos com a “famosa” camiseta do PHPSP. Ou se preferir, pode retirar com a gente na PHP Experience 2017 na semana que vem. Se fosse você, não perderia. A grade ficou fantástica. 😉

    • Paulo Silveira

      marcel. e quando tive rum topico bom, como php moderno, e quiser gravar, quem sabe com o eduardo, está convidado!!

  12. Welton Vaz de Souza

    Tentei aprender PHP varias vezes, mas acho muito chato. Primeiro que sempre tem que ter mais alguma coisa junto PARA TER UM VISUAL LEGAL: HTML, CSS, JAVASCRIPT. Estou estudando no ALURA é vou tentar dar uma nossa chance para o PHP. Muito obrigado por mais um excelente episódio!

    • Jeziel Moura

      Estudei e ainda estudo PHP porque é o jeito, o mercado é grande, mas é a linguagem é a mais estranha que conheço, até o JavaScript é mais bem estruturado, na minha opinião.

      • Jonathan André Schweder

        PHP não tem estrutura pré-definida, quem tem isso é framework.

      • Kaléu Caminha

        @jezielmoura:disqus que linguagem que tu gosta?

        • Jeziel Moura

          Embora tenha aprendido primeiro JS, PHP, Java e C#, respectivamente, a sintaxe que mais me agradou foi C#. Não é questão de ser melhor ou pior, é questão de gosto mesmo. Não me agrada só ter atributos privados em classes e ter que misturar inglês e português na definição de métodos, ex “getNome”, “setIdade”, das linguagens que eu conheço, só C# resolveu esse problemas com as Properties. O “I” antes dos nomes das interfaces também me agrada bastante na linguagem, Linq, a definição dos namespaces… Enfim, são vários os motivos, mas eu reconheço que o mercado pra Java e PHP é bem mais amplo.

          • Kaléu Caminha

            Que bacana @jezielmoura:disqus …mas olha…aqui em Floripa conheço gente precisando de programadores C# heim…acho que o mercado é bom também.!! 🙂

            Sucesso

          • Vinícius Dias

            Opa, Jeziel. Beleza, cara? PHP resolve isso de ter propriedades privadas acessadas sem getNome e setIdade, por exemplo, com métodos mágicos (__get e __set). É tranquilo fazer uma implementação se comportar de forma idêntica ao C#. Quanto ao ‘I’ antes das interfaces, não é da linguagem, cara. Isso é padrão a se seguir, e você pode fazer isso em PHP. A definição dos namespaces são iguais em C# e PHP, até onde eu sei, Jeziel.

            Abraços!

    • Oi Welton, tudo bem? De fato, linguagens back-end como o PHP parecem ser chatas num primeiro momento por se ter pouco feedback visual nos primeiros contatos. Isso é mais comum ainda para quem veio dos mundos do Visual Basic, Delphi e Oracle Forms onde aplicações visuais podiam ser feitas em minutos. E, sinto lhe dizer, mas esse é o trade-off da web.

      Qualquer aplicação web é composta pelo front-end, ou seja, tudo aquilo que é renderizado e interpretado pelo navegador como o HTML, CSS e JavaScript e pelo back-end, ou seja, tudo aquilo que envia o HTML, CSS e JavaScript para o seu navegador através da internet e também que persiste informações em arquivos e banco de dados, gerencia sessões ou realiza uma tarefa em background.

      Ou seja, se você quiser ter uma aplicação web com um visual legal, você terá que conhecer e utilizar HTML, CSS e JavaScript e, além disso, utilizar linguagens de back-end como PHP para realizar tarefas como persistência. Não existe outra saída. 😉

      Para facilitar a criação de interfaces pode-se utilizar frameworks CSS como Bootstrap, Foundation ou Semantic UI ou pode-se utilizar bibliotecas de componentes como ExtJS ou KendoUI. Existe ainda tecnologias como JSF e similares, mas não sei como andam a adoção dessas ferramentas pelo mercado.

      Ah, você também não precisa mais configurar o Apache para executar aplicações web feitas com PHP. Hoje o PHP vem com um servidor web embutido bastando apenas utilizar o comando `php -S localhost:8000` no seu diretório de trabalho para ter a sua aplicação funcionando.

      Abraços. 😉

    • Vinícius Dias

      Welton, em qualquer linguagem web que você for aprender, vai cair nos mesmos problemas. Você precisa conhecer HTML, CSS e JS pra fazer a parte que roda no cliente. Não em jeito. E, além de não precisar do Apache, não recomendo Apache em nenhum ambiente. Usa php -S pra fazer seus testes no ambiente local, mas homolog e produção, é Nginx, cara.

  13. Carlos Eduardo Lima

    Ótimo Podcast, como sempre ótimos profissionais “palestrando”. Agora fico no aguardo de um podcast sobre escalabilidade em PHP hein rs 😀

  14. Fernando Amorim

    Leram meu pensamento, estava torcendo por um podcast sobre PHP. Me surgiu uma dúvida: Que vantagens fazer um projeto em Laravel tem em relação a um feito em WordPress?

    • O Laravel e WordPress são duas ferramentas diferentes e utilizadas para fins diferentes (na maioria das vezes).

      O WordPress é um CMS – Content Management System – ou Sistema de Gerenciamento de Conteúdo. Ele surgiu como uma plataforma de blog, mas hoje é utilizado desde a criação de portais, sites institucionais e landing pages até e-commerce (com alguns plugins e customizações, é claro). O WordPress é uma ferramenta que você simplesmente instala e usa. Mas ele também permite diversas customizações como a criação de temas, a instalação de plugins (comentários, cache, SEO entre outros) e alterações no código fonte ao gosto do cliente.

      O Laravel é um framework utilizado para a construção de aplicações web. Um framework é, basicamente, um conjunto de classes que possui uma arquitetura e organização pré-definida e é utilizado para solucionar um tipo específico de problema que, no caso do Laravel, é a criação de aplicações web. Por isso ele é considerado um framework web.

      Um framework web pode ser visto como o esqueleto de uma aplicação. Ele possui partes fixas que são implementadas pelo próprio framework e partes variáveis que são implementadas pelo próprio programador para especificar as funcionalidades de sua aplicação. Um framework web é utilizado para criar aplicações web de diversos tipos como um sistema back-end, um e-commerce, uma API REST ou um site institucional, por exemplo.

      Se você quiser entender um pouco mais sobre o Laravel, recomendo a leitura deste artigo https://medium.com/@marcelgsantos/come%C3%A7ando-com-laravel-parte-01-e76567408b1f#.60rx8781o.

      Abraços. 😉

  15. Kaléu Caminha

    Espetacular o podcast.!

    O único projeto que acabei realmente tendo que desistir nos 10 anos com PHP foi justamente um com PHPNuke…nem lembrava mais.!!!

    Excelente revisão histórica dos meus anos com PHP.

  16. Manoel

    Galera do Alura mandou bem no podcast. Como um velho usuário do PHP e um assíduo aluno do Alura, sugiro um upgrade com os cursos da linguagem, hein! Java manda na parada toda rsrs. Brincadeiras a parte, sei que PHP evoluiu nos últimos anos e Java já é bem “velho”, mas acho que tem uma boa quantidade de alunos que adorariam ver o PHP mais bem posicionado no Alura. Parabéns pelo podcast. Paulo Silvera, Onde aparecem as vagas pra trabalhar com vocês? =D Haha. Abraços

    • Paulo Silveira

      vou te falar que foi uma das mudanças que gerou muita eficiencia por aqui

  17. João Paulo Oliveira

    Olá Pessoal eu estou começando agora, estou estudando o curso PHP do 0 ao profissional, e no PodCast ele diz que o iniciante deve escolher um framework por conta dos padrões novos e etc. Mais em algumas comunidades vejo muito o pessoal dizer para não usar Framewrok nem gerenciador de dependências e fazer tudo do 0. E agora a duvida, fico no PHP purão ou vou para o PHP com Framework ?

    • Kaléu Caminha

      João Paulo, como estudo, vale a pena fazer do zero, para aprender.
      Profissionalmente, use framework.

      Recomendo escolher um framework full stack como Laravel ou Synfony para começar os primeiros projetos profissionais e à medida que amadurecer, migrar para uma arquitetura mais orientada a componente, de modo que você escolhe cada coisa que for usar.

      Só sugiro não cair na tentação de fazer algum trabalho profissional sem framework

      • João Paulo Oliveira

        Kaléu Caminha, muito obrigado por responder.

        Mais assim pelo o que eu ouvi no podcast, o que estou aprendendo é muito arcaico digamos assim, eu ainda estou incluindo as classes com require e include, no podcast falaram em um tal de Composer para classes e falaram em Frameworks para padrão de desenvolvimento, ai eu fico pensando assim. “Será que estou aprendendo algo muito ultrapassado.” porque pretendo aprender o mais rápido possível e começar a desenvolver logo, pois o mercado esta ai e esta muito dinâmico, quero colocar minhas ideia o mais rápido possível em pratica.

        Obrigado Pelas respostas.

        • Kaléu Caminha

          João, então assim, para aprenderes um pouco do que é a crista da onde, sugiro aprenderes então um micro framework. Ele vai naturalmente te mostrar um pouco das PSRs em ação, vais ter que usar o composer e como a estrutura fica pequena, você consegue ter domínio do que está acontecendo e não se perde.

          Para começar, sugiro o Slim Framework, ele é muito bom em mostrar os conceitos de base como injeção de dependência, middleware e error handler.
          https://www.slimframework.com/docs/tutorial/first-app.html

          Mas não deixe de aprender o PHP Raiz.
          Uma das belezas do PHP é ser muito flexível e multiparadigma.

          O tal jeito “certo” é o que prevalece quando se fala de aplicações corporativas, com foco em manutenibilidade…

          Divirta-se.

          • João Paulo Oliveira

            Obrigado Por tirar minhas duvidas. Me deu uma noção por onde devo ir nesse inicio.

      • Vinícius Dias

        Fala, Kaléu!

        Sem utilizar ferramenta nenhuma você consegue escrever seu autoloader pra não ficar dando require em todas as classes.

  18. Álvaro Fernando

    Excelente podcast, como sempre! Obrigado. Minha primeira experiência com Web foi com PHP também. 😀

    Paulo, gostaria de sugerir um pequeno script para reproduzir/pausar o episódio ao clicar no imagem de destaque (class=”image-comment”). Isso ajuda muito aqui no trabalho, pois as vezes quero pausar rapidamente para conversar com algum colega e clicar na imagem é mais fácil que no botão de play/pause. Isso claro, para quem escuta aqui no site e que não gosta de baixar para escutar em um player, ou cliente de podcast.

    Desculpem-me o meu jQuery. Com certeza os professores de JS da Alura vão sugerir algo melhor. kkkkk


    $('.image-comment').click(function() {
    $('button[title=Reproduzir]').click();
    $('button[title=Pausar]').click();
    });

    Valeu! E obrigado novamente pelo excelente conteúdo.

  19. Samuel Bretas

    Concordo e discordo. Vejo o php como um excelente Framework de c, e não entendo porque enfatizar tanto Framework ao invés da linguagem. Vejo muita gente muito expert nas regras de negócios do Framework mas deixa muito a desejar nas apis do php. Concordo que de para fazer coisas lindas somente com php e um composer. O problema é que nos brasileiros, somos muitos acomodados no básico! Funcionando o básico simplesmente esta bom. Precisamos estudar sobre arquitetura, padrões de projetos. Fui uma viuva do Zend 1. Nao enxergava outra coisa a não ser zend 1. Melhorei muito meu desenvolvimento depois que desacoplei meu desenvolvimento da ideia que so pode fazer em Framework e cai dentro do php.net e estudei as apis do php. Descobri muita coisa e vejo estudando muito. O que importa hoje para mim é php, core php. Se tiver que trabalhar em Framework, não será algo prioritário. Somo programadores precisamos mesmo é falar de programação.

  20. Sebastião Relson Reis da Luz

    Esse modo estrito do PHP 7 me lembrou o VBZão6 (Option Explicit), pagou muito o leitinho das crianças

  21. Vinicius Souza

    Boa noite a todos,

    Atualmente eu trabalho como programador freelance e tenho alguns sistemas rodando pelo brasil. E estou procurando uma linguagem web para migrar meus sistemas (sistemas de gestão…controle de estoque, financeiro, nfe, boleto) e e estou gostando muito do php.

    Aos programadores php, o que me aconselham? Devo continuar com o php + laravel?

    Att.

    • olha cara, depende muito do que tu precisa, desde arquitetura até a aplicação, mas te sendo bem sincero, não vejo caso onde usar Laravel e PHP não resolva o problema.
      Usando o framework da forma correta, sabendo de suas manhas, tu consegue fazer muita coisa f#da com Laravel… heheheh

Next ArticleInteligência Artificial, Chatbots e Microsoft - Hipsters #37