Cura para a chatice
A revista ACM Communications de agosto nos trouxe a segunda parte de uma entrevista com Donald Knuth – que não deve necessitar de introduções.
Nela ele diz estar preocupado com o estado atual da programação. “Agora os programadores devem supostamente quase que só usar bibliotecas. Os programadores não estão permitidos a fazer mais suas próprias coisas a partir do rascunho”.
Em seguida: “Existem um conjunto de coisas no menu e você os escolhe e os coloca juntos. Onde está a diversão nisto? Onde está a beleza nisto? Nós temos que criar um jeito de fazermos a programação interessante para a próxima geração de programadores”.
Não sei quanto a vocês, mas tenho sentimentos conflitantes aqui. Sou de um tempo em que não existia muito e tínhamos que começar sempre do zero – o que era muito divertido. Software era (e ainda á) algo que leva muito tempo, muito trabalho e muita gente. Sonhamos com uma melhor produção de software - com menos esforço, com maior reuso, com menos bugs, etc. Será que ao caminhar nesta direção tornamos o mundo mais chato? Será que só estamos encontrando uma parede mais dura numa seqüência delas?
Sempre acreditei que a programação iria mudar com o tempo. Iríamos olhar menos para o umbigo da computação e mais para o universo de coisas a serem modeladas. Knuth parece ter uma esperança semelhante: “O conhecimento está explodindo. Até este ponto nós tínhamos tópicos e uma pessoa deveria identificar-se com o que chamo vértices de um grafo. Um vértice poderia ser matemática. Outro poderia ser a biologia...”. “Meu modelo do futuro é que as pessoas não se identificarão com vértices, mas com as conexões entre eles. Cada pessoa é uma ponte entre duas outras áreas, e elas se identificam pelas suas sub-especialidades para quais elas têm talento”.
Uma pequena contribuição: Tenho a esperança de que seremos a ligação de mais do que duas áreas.
Comments
Anonymous
September 08, 2008
Otavio, o conhecimento humano é incremental. Na programação isso também é verdade. Não fosse isso, estaríamos programando aplicações web em assembler, não é verdade? Ou nem isso, estaríamos programando chips. No entanto, deve-se ter bom senso. Não vamos ficar escravos dos frameworks, deve haver um limite, na minha opinião.Anonymous
September 08, 2008
Olá Otávio, Creio que o conceito de "comoditização" realmente seja a base dessa discussão. Estamos cada vez mais diante de componentes comoditizados, padronizados e que não necessitam de reescrita. Vemos isso através dos vários recursos que a todo momento são incorporados em nossos frameworks. Componentes como cache, sincronização, configuração, exportação para web, clientes ajax, entre outros são poupados de nossas personalidades e simplesmente oferecidos para nossas soluções, prontos. Creio que muitos outros componentes serão ainda comoditizados, com certeza. A dúvida que persiste é se ao final desse processo, vamos realmente focar apenas nos aspectos do negócio, já que vamos ter tanto tempo livre... :) []s Waldemir.