Essa entrevista faz parte de uma série de entrevistas com alguns dos principais nomes da TI no Brasil.
Bugginho: Como foi o seu primeiro contato com a computação e quando surgiu de fato o desejo por desenvolvimento de software?
João: Foi em 1994. Na época meu pai abriu uma loja de tintas toda automatizada; com uma rede NOVEL DOS 7 e cabos coaxiais ligando terminais burros, em sua maioria 286 e 386, tive meu primeiro contato real com computação.
Até então meu contato com computadores tinha sido irrelevante, mas ver aquela rede, por algum motivo, me encantou. Obviamente, por ter apenas 12 anos de idade e um conhecimento irrelevante sobre computadores, eu apenas estragava a rede toda, causando problemas sérios para a loja, já que a emissão de notas era feita em impressoras matriciais.
Enfim, de tanto estragar a rede, meu pai me comprou um IBM Aptiva 486 DX4 de 100 Mhz para que eu não estragasse mais a rede da loja; naturalmente comecei a estragar meu próprio computador. O problema era que naquela época a assistência levava cerca de 1 semana para me devolver o computador; quando me devolviam, eu o estragava novamente - o que se mostrou insustentável em algum tempo.
Foi também nessa época que descobri que seria desenvolvedor de software. O sistema de automação da loja era feito em Clipper Summer 87; depois de algum tempo, a empresa que desenvolvia o sistema fez uma atualização para Clipper 5.2 e esqueceram o fonte na loja. Foi estudando aquele código que me tornei programador e, por mera consequência, Clipper foi minha primeira linguagem. Foi por causa do prazer de ser capaz de efetivamente programar o computador que me descobri e me tornei programador.
Bugginho: Qual a sua formação acadêmica? Você de fato acha importante ter uma graduação na área de TI?
João: A faculdade de ciências da computação foi a época mais frustrante da minha vida; eu já programava há alguns anos e me percebi sendo limitado naquele curso; por isso o abandonei. Como eu efetivamente larguei a faculdade por ter tido uma má experiência, meu ponto de vista sobre a importância ou não da graduação é muito parcial; é claro que algumas pessoas se dão bem na academia, mas eu acho que o mercado em si não se importa muito com isso em nossa área. Profissionalmente, para mim pelo menos, foi irrelevante; mas já programo há mais de década.
Bugginho: Qual foi a maior dificuldade que você teve quando estava começando a estudar desenvolvimento de softwares?
João: Quando comecei, por volta de 94~95, as coisas eram bem mais complexas do que hoje; o acesso à internet era praticamente nulo. Havia, claro, a possibilidade de se esperar até meia noite para fazer uma conexão discada e ficar online, mas não havia conteúdo como há hoje em dia. Muito do meu estudo naquela época era através de alguns livros, revistas e muita tentativa e erro; errei muito e carreguei as consequências desses erros por muito tempo; vícios causados por ter aprendido errado me perseguiram por muitos anos até que eu conseguisse me livrar deles.
Bugginho: Você é uma pessoa muito ativa na comunidade PHP. Como surgiu o interesse por essa linguagem e como você vê a evolução da mesma?
João: Dos 20 e poucos anos que programo, faz apenas uns 7 que me envolvi com PHP; surgiu uma oportunidade numa agência que precisava de um programador PHP, só que meu conhecimento sobre a linguagem era irrelevante. Li praticamente tudo o que eu encontrei sobre a linguagem e, em algum tempo, eu já estava programando em PHP. Claro que minha experiência com outras linguagens ajudou muito nesse processo, mas foi basicamente assim que me envolvi com PHP.
Desde que iniciei com PHP, a linguagem evoluiu muito; mas isso só foi possível porque a comunidade evoluiu primeiro e forçou a evolução da linguagem. É interessante observar isso, mas é apenas um fato: a linguagem só evolui se a comunidade evolui; se determinada tecnologia não está evoluindo, a culpa é exclusivamente da sua comunidade que está estagnada no tempo.
Enfim, a evolução do PHP, ao meu ver, pode ser descrita através de duas fases: a primeira, antes do PHP 5.3, é basicamente linear; a segunda, depois do PHP 5.3, é exponencial e o PHP 7, provavelmente, será outro marco importante na evolução da linguagem.
Bugginho: Como você vê o mercado de trabalho para quem trabalha com PHP?
João: Se observarmos a quantidade de lojas online, grandes portais e sites em geral que utilizam PHP, fica fácil perceber que o mercado de trabalho para desenvolvedores PHP é relevante. Claro que temos várias tecnologias emergentes conquistando seu espaço, mas o mercado de trabalho PHP é um mercado importante que não deve ser ignorado, especialmente para o desenvolvedor que pretende trabalhar com web.
Bugginho: Você acha importante que um programador Back-end também conheça tecnologias de Front-end?
João: Aqui é preciso colocar alguns pingos nos is: é importante que o programador back-end conheça de front-end, ou que o programador back-end conheça de banco de dados, ou que o programador back-end conheça de infraestrutura ou sei lá o quê? Claro que é importante; mas, ACHO, esse conhecimento deve ser utilizado para melhorar a comunicação da equipe.
Pessoalmente, prefiro especialistas do que multifuncionais; sei lá, mas não gosto muito da ideia de devops ou de full-stacks, que fazem a coisa toda; especialmente não gosto para a galera que está iniciando. Já não é fácil dominar uma tecnologia; dominar várias tecnologias de áreas distintas então, ao ponto de ser responsável por uma aplicação, leva tempo, custa caro e o tempo de retorno de investimento costuma ser muito alto para o desenvolvedor.
Bugginho: No DevDay 2015 Roberta Arcoverde, que é desenvolvedora no Stack Overflow, comentou que a equipe do Stack Overflow dá mais ênfase a performance que a qualidade do código. Qual a sua opinião em relação a isso?
João: Veja, acho isso importante: Stack Overflow é um produto. Como um produto, é esperado que seja entregue um determinado valor. O desenvolvedor de software precisa ter consciência de que a função dele é resolver problemas e não ficar de masturbação técnica. Se a necessidade do produto é priorizar a performance em detrimento da qualidade do código, então é a performance que o desenvolvedor deve priorizar.
Assim como o Stack Overflow prioriza performance, também haverá cliente que prioriza a qualidade de código. Uma prioridade não é melhor ou pior que a outra, desde que o produto seja o ponto focal da empresa e do desenvolvedor. Se for possível entregar um código performático com uma boa qualidade de código, de forma a entregar um produto com o maior valor possível dentro de uma janela comercialmente viável, então show!
Bugginho: Se não fosse com PHP, com qual outra linguagem de programação você gostaria de trabalhar e por quê?
João: Eu desenvolvo em tantas linguagens, que fica até difícil escolher; no meu dia a dia utilizo Java, PHP, C#, Ruby e Python; também desenvolvo em Javascript e em outras tecnologias como C, C++, Vala, etc. Gosto muito de Java, mas atualmente, ao meu ver, Vala é uma das linguagens mais elegantes que conheço e acho que seria interessante trabalhar com ela.
Importante: Essa entrevista foi gentilmente cedida por João Batista Neto para veiculação na página "Bugginho Developer". Caso queira replica-la, não esqueça de pedir autorização ao mesmo para tal.
Você pode conhecer um pouco mais e acompanhar o trabalho de João Batista Neto nos links abaixo:
https://www.facebook.com/neto.joaobatista
Espero que tenham gostado tanto quanto eu e até a próxima, amiguinhos!!! ;)