Não se intitule desenvolvedor se você não sabe programar

Este post é uma tradução livre deste texto do Mario Peshev, um desenvolvedor búlgaro, fundador da agência internacional DevriX e membro ativo da comunidade WordPress. É um texto um pouco polêmico, mas achei a discussão tão válida que decidi trazer para cá.


Por alguma razão desconhecida, o número de “Desenvolvedores WordPress” por aí é provavelmente tão grande quanto o número de desenvolvedores Java, embora todos os desenvolvedores Java programem extensivamente enquanto os desenvolvedores WordPress frequentemente não tem a menor ideia do que está acontecendo por trás do painel de administração.

Conduzo entrevistas de emprego semanalmente por diversos motivos e nos últimos anos selecionei, provavelmente, 700 candidatos a desenvolvimento com WordPress. O artigo original foi escrito em 2015 e atualizado em abril de 2017, com algumas centenas de entrevistas no meio do caminho, seja para trabalhos presenciais ou remotos, com pessoas interessadas a se juntar à nossa equipe ou à equipe técnica de algum dos nossos clientes.

Um grupo bem pequeno nunca sequer teve contato com código. O restante pertence a alguma das seguintes categorias:

  • instaladores de WordPress – cuidam da configuração do WP e instalam temas;
  • administradores de WordPress – pessoas que usam as opções dos temas pagos e uma série de plugins para “construir” um site;
  • assistentes virtuais;
  • criadores de conteúdo e
  • pessoas que até editaram algum HTML e CSS para alinhar um menu ou esconder um elemento.

Desenvolvedores mexem com código

De acordo com a Wikipedia, “desenvolvimento de software” é:

o processo de programação de computadores, documentação, testes e ajustes envolvido na criação e manutenção de aplicações e frameworks e que resulta em um software como produto. O termo refere-se ao processo de escrita e manutenção do código-fonte, mas uma concepção mais ampla inclui tudo o que está envolvido entre a concepção do software desejado até sua apresentação final, preferencialmente através de um processo planejado e estruturado.

Não existe nenhuma ambiguidade aqui. Nenhuma.

Programar, escrever código, construir produtos, manutenção de código e correção de bugs. Nada disso significa “instalar uma plataforma com alguns cliques” ou “personalizar as opções construídas por outros programadores”.

Eu costumava achar isso divertido nas primeiras 10 ou 20 entrevistas. Hoje em dia, eu recebo inscrições de várias pessoas, incluindo o pessoal com zero ou nenhuma interação com código, gente que usa bastante a internet ou até “desenvolvedores” que não possuem um computador, mas que usam um smartphone para alterar temas, escrever posts ou atualizar o Facebook.

A maioria das pessoas sofrem do efeito Dunning-Kruger, não conseguem se autoavaliar direito e, por isso, acham que são desenvolvedores. Mesmo assim, muitas vezes, esse não é o caso.

Encontrei um tweet com uma definição adequada:

Ter um site em WordPress pode ser operação, administração ou vários outros termos diferentes que não tem nada a ver com desenvolvimento web.

Isso não seria um problema tão grande se não afetasse toda a indústria:

  • milhões de amadores vendendo serviços em WordPress dizendo fazer o que, na verdade, eles não fazem;
  • vários clientes procurando especialistas e se perdendo num mar de amadores;
  • novos clientes recebendo preços ridiculamente baratos oferecidos por “super administradores”, o que leva a diferenças enormes quando recebem uma oferta para uma solução realmente personalizada e construída com WordPress;
  • vários clientes escolhendo outras plataformas graças a uma experiência ruim com “desenvolvedores WordPress” (ou geralmente não conseguindo encontrar nenhum decente);
  • amadores não sabendo o que “desenvolvimento” significa, nem com o que um desenvolvedor lida em seu dia a dia;
  • clientes tendo seus sites WordPress invadidos, sofrendo com lentos carregamentos de página ou sites quebrados;
  • repositório de plugins do WordPress lotado com plugins que causam vários problemas de performance, compatibilidade, interface gráfica quebrada entre outros problemas e
  • eu não vou nem falar sobre temas WP pagos.

O cenário atual do desenvolvimento para WordPress

Um pouco da existência de pessoas que trabalham ativamente na indústria de engenharia de software e falam mal do WordPress é graças à percepção global da comunidade WordPress. Uma porcentagem alta de sites de pequenas empresas ou blogs são meras instalações do WordPress com um tema e alguns plugins, muitas vezes criadas pelos próprios usuários.

Dito isso, há casos mais que suficientes onde é preciso uma programação pesada, escala de sistemas grandes, migrações de sistemas de terceiros para plataformas WordPress, melhoria de segurança para empresas, construção de redes de sites educacionais para universidades, criação de soluções SaaS com WordPress e mais.

Estivemos envolvidos em cada um desses casos. Atualmente, fornecemos desenvolvimento contínuo para vários sites que geram mais de 10 milhões de páginas por mês, bem como redes de franquias administradas por empresas, grandes meios de comunicação, plataformas de gerenciamento de eventos profissionais e vários outros.

WordPress como um framework de aplicação

Apesar de o WordPress ter começado como uma plataforma para blogs, sua popularidade o levou a aumentar o escopo de soluções onde é possível utilizá-lo.

Na versão 3.0 do WordPress foram introduzidos os tipos de conteúdos personalizados e um sistema editável de taxonomia. Ao longo dos anos, o WordPress também se tornou um framework de desenvolvimento de aplicações. Em 2016, a API REST foi incluída como parte dos arquivos básicos do WordPress, tornando possível construir aplicações com uma única página ou soluções de software completamente separadas que interagem com um site WordPress através de suas várias APIs.

Além disso, a solução de e-commerce mais popular hoje em dia é o WooCommerce – atualmente responsável por 41% de todos os sites de e-commerce que estão usando alguma plataforma conhecida de comércio eletrônico:

O WordPress vem sendo usado por milhares de marcas respeitáveis, sites de alto tráfego, empresas Fortune 500 e alguns dos principais gigantes da internet. Suas equipes são compostas por experientes programadores PHP e JavaScript, especialistas em devops, especialistas em integração e outras pessoas qualificadas que garantem que o sistema esteja funcionando, seja seguro, rápido e se mantenha compatível com novos recursos.

Escrevi para a WP Elevation o guia definitivo de habilidades ensinadas em Ciência da Computação que são relevantes para o desenvolvimento WordPress. O guia inclui uma lista de habilidades como arquitetura de computadores, sistemas operacionais, redes, bancos de dados, linguagens de programação, estrutura de dados, algoritmos e outras que são usadas por desenvolvedores na criação de um produto final robusto, escalável e confiável, considerando ainda outros aspectos relacionados à construção, operação e execução de soluções web.

Desenvolvedores web devem usar WordPress?

Sim, não há nenhuma razão para que desenvolvedores web evitem o WordPress quando a plataforma oferecer boa parte das funcionalidades necessárias.

Considere que o WordPress vem com uma série de recursos nativos:

  • um mecanismo de criação de páginas e posts;
  • um sistema de gerenciamento de perfis de usuário com várias funções e diferentes capacidades diferenciando o acesso a vários recursos;
  • um componente de mídia para fazer uploads, redimensionar imagens e criar imagens destacadas para os posts;
  • um painel de controle completo com acesso a recursos limitado por função de usuário;
  • um grande número de temas e plugins que você pode usar e
  • comentários, ferramentas adicionais e configurações padrão para o site.

Pensando nisso, como um desenvolvedor web, você não precisa reinventar a roda quando você pode usar o WordPress. Use suas habilidades em PHP e em JavaScript, estude o esquema padrão do banco de dados e a API de plugins fornecida pelo WordPress e use-o como um framework – exatamente como você faria com o Laravel, FuelPHP, CakePHP, CodeIgniter ou qualquer outro framework dos que tem por aí (sem contar o fator “Interface Gráfica já pronta”).

Por outro lado, se você é alguém que oferece “desenvolvimento WordPress” mas não mexe com código ou se você nunca estudou sobre as diferentes camadas por trás do WordPress, por favor altere seu título para algo que realmente reflita suas habilidades e os serviços que você está oferecendo. Outra coisa, para evoluir e começar a oferecer soluções com mais valor, dedique algum tempo e comece a ler – extensivamente – sobre tudo o que acontece do hardware até as camadas de rede, passando por banco de dados e linguagens de programação.

A instalação de um site não chega a ser um serviço para a maioria dos clientes, que podem fazer isso sozinhos em algumas horas com um host barato que forneça um guia detalhado em seu site. Fornecer valor real e oferecer suas habilidades relevantes ou fazer parceria com um especialista técnico seria muito mais recompensador para você e seus clientes, permitiria que você melhorasse e pudesse pegar projetos maiores, personalizados para grandes empresas.


E aí, concorda com o Mario? Deixe sua opinião aqui nos comentários e compartilhe o texto com seus amigos 🙂

Tags:

Comentários

  • Leo Baiano

    Perfeito!