Não me deixe começar a falar

VB6 e a arte do drible da vaca

David Platt

David PlattDois anos atrás nesta coluna que escrevi sobre a longevidade surpreendente de Visual Basic 6 (msdn.microsoft.com/magazine/jj133828). Tenho mais comentários na coluna do que qualquer coisa que eu já escrevi — 145 na última contagem e ainda chegando enquanto eu escrevo estas palavras. Claramente, eu toquei alguns sentimentos muito fortes.

Muitas vezes quis saber o poder de permanência de Visual Basic 6 (VB6). Um aluno meu uma vez chamado VB6 a barata"imortal" do ecossistema Windows. Então quando eu ouvi um Boston esportes locutor comentário sobre a carreira de 17 anos de uma jarra de knuckleball Red Sox amada e dizer: "após o Apocalipse, só vou temos baratas e Tim Wakefield," ocorreu-me: VB6 é como uma bola.

A bola é um campo complicado no basebol americano. Ao contrário de uma bola, que se apressa passado batedores antes eles podem balançar, o mais lento knuckleball confunde adversários por esvoaçantes e dançando aleatoriamente pelo ar. O arremessador lança a bola com quase nenhuma rotação, segurando-o em suas unhas e empurrá-lo para a frente (ver bit.ly/1jDB3a4). O movimento coloca muito menos stress sobre o braço do que outros arremessos. Os alguns jarros para dominar o knuckleball apreciaram carreiras muito mais tempo do que suas contrapartes de lançar a bola de fogo. VB6 é assim. Sua simplicidade submete os programadores a menos estresse, resultando em mais carreiras.

A analogia fica melhor. Muitos, talvez mais, arremessadores de bola a consideram o knuckleball unsporting, um truque de circo indigno de um lançador de"real". Confira os comentários da minha primeira coluna do VB6, e você pode ver este meme no trabalho: "VB6 é um brinquedo, não é uma linguagem de programação real, e pessoas que o utilizam não são programadores real." Eu disse a mesma coisa, uma vez de volta em meus dias COM C++, para o qual peço desculpas agora.

Raramente, você pode concluir um grande projecto usando apenas o VB6. Enquanto muitas operações de programação são muito mais fácil em VB6 que em C++ brutos, outras operações (fundo threads, digamos) são essencialmente impossível. Minha regra de ouro para VB6 desenvolvimento sempre foi, "Se você não pode fazê-lo em 10 minutos, você não pode fazê-lo em tudo." Eu sempre aconselho as equipes de desenvolvimento VB6 que precisam de um programador de C++ para escrever os objetos para realizar as operações de alguns que não Visual Basic .

Da mesma forma, um arremessador de bola precisa atirar bolas rápidas de cerca de 20 por cento o tempo manter rebatedores honesto, especialmente com os corredores na terceira base, onde uma bola passada pode marcar uma corrida. Coletores muitas vezes lutam com o knuckleball difícil-para-catch (como Bob Uecker famosamente observada, "o caminho para pegar uma bola é esperar até que ele pare de rolar e então pegá-lo.").

Nunca conheci alguém que se formou em ciência da computação com a intenção de se tornar um programador VB6. A maioria dos caras VB6 que sei começou como especialistas no assunto, Visual Basic de aprendizagem como a maneira mais fácil para iniciar a informatização de seus conhecimentos de domínio do problema. Da mesma forma, alguns jarros começam suas carreiras jogando a bola. Blogger Peter Duffy escreve que a maioria começam jogando isso quando eles não podem executar como jarros convencionais, "por desespero; uma maneira de salvar o que restou de um sonho." (bit.ly/1lazWvS)

Quando um knuckleball funciona, é unhittable. Mas se a unha do arremessador escorrega e o pitch não dança, ele é brinde. A bola trava lentamente em frente a massa mais ou menos e obtém bateu fora do parque. Da mesma forma, VB6 é ótimo, quando funciona. Mas é difícil de Depurar quando quebra a sério porque você não pode ver debaixo do capô ("0x80014005 — erro desconhecido").

Arremessadores de bola e programadores de VB6 compartilham outra característica notável — eles ficam juntos. O documentário "Knuckleball"! (bit.ly/1jfv5JU) mostra aposentado knuckleballers —Jim Bouton, Charlie Hough, Phil Niekro — ajudando Tim Wakefield mentor R.A Dickey, knuckleballer de somente ativo grande liga de hoje. Funcionou: Dickey ganhou o Prêmio Cy Young como o melhor lançador da liga nacional em 2012. Agora Dickey está ajudando knuckleballer Red Sox AAA Steven Wright tenta invadir a major League este ano. Eu acho a colegialidade mesma na Comunidade de VB6, especialmente agora que a Microsoft não está dirigindo.

Recentemente ensinei .NET para alguns cientistas, que precisavam para escrever programas para controlar seus instrumentos de programação. Apesar dos meus esforços, a complexidade de Windows Presentation Foundation, Model-View-ViewModel e o Microsoft .NET Framework severamente distrai-os de sua ciência. Quem me dera, e desejarem, que uma simples ferramenta existia para desenvolvimento .NET. Quem me dera que poderia ter ensinado-os a jogar uma bola.

David S. Platt ensina programação .NET na Harvard University Extension School e em empresas por todo o mundo. Ele é autor de 11 livros de programação, incluindo “Why Software Sucks” (Addison-Wesley Professional, 2006) e “Introducing Microsoft .NET” (Microsoft Press, 2002). A Microsoft o nomeou Lenda do Software em 2002. Ele fica imaginando se deveria juntar dois dedos de sua filha para que ela aprenda como contar em octal. Você pode entrar em contato com ele pelo endereço rollthunder.com.