O que a música me ensinou sobre programação

January 22, 2016
programação carreira tech música

Com alguns muitos anos de experiência no mundo da música e mais alguns em programação, não demorou para eu perceber que muitas das lições aprendidas em um servem para o outro. Resolvi registrar aqui algumas das mais importantes e sinta-se à vontade para dar palpites e até discordar de mim 😉

Você pratica em casa e não no trabalho

Todo músico sabe que a prática leva à perfeição. Você compra seu instrumento, pratica um pouco todo dia, ensaia com a banda e se apresenta em algum dia marcado. Seguindo esse ritmo, você fica melhor a cada show. Uma apresentação ao vivo serve para colocar em prática aquilo que você sabe, executando da melhor maneira possível cada uma das músicas. Se você subir num palco sem estudar nem um pouco nenhuma das músicas e nem suas habilidades com seu instrumento, nenhuma música vai sair. Tá, mas isso todo mundo sabe (ou deveria saber) e acaba soando óbvio. Então porque diabos você deixaria pra ter contato com as tecnologias que utiliza só na hora do “vamos ver”? Você pode saber “o necessário” sobre a tecnologia que precisa utilizar e o google te ajuda a resolver a maioria dos problemas. Bom, pode funcionar, mas suas soluções não serão as melhores e você não vai ter praticamente nenhuma evolução. Soluções “feias” são aceitáveis no caso do “estou conhecendo agora”, mas inaceitáveis no caso de “trabalho faz 5 anos com isso”. Uma pessoa pode passar 1 ano tocando dó, ré e mi em compassos 44 todos os dias e achar que “tá bom”. Então você pede pra essa mesma pessoa tocar Master Of Puppets. É…

Escolha bem seu instrumento

E isso envolve principalmente gosto e necessidade. Você nunca vai ser um bom guitarrista se enquanto tenta tocar só pensa em como seria legal poder estar na bateria. Se não te agrada, você não vai ter vontade e nem disposição de estudar e praticar, o que acaba no tópico anterior. Ok, você toca bateria e adora. Qual bateria vai usar? Qual a configuração dela? Bem, pra um iniciante tudo pode parecer a mesma coisa e, sinceramente, nem interfere muito, já que o objetivo principal de um iniciante é dominar o básico e isso qualquer kit permite executar. Mas um baterista experiente já tem noção do que precisa pra executar as músicas que quer (ou da banda em que toca) e quais configurações facilitam a execução de determinadas técnicas. Você não precisa de 500 peças pra tocar punk, mas não vai tocar Fall Of Sipledome sem ter 2 bumbos. Se você gosta de C#, então use C#. Se você gosta de PHP, use PHP (que é bem mais legal que C#). E, uma vez especializado na linguagem que escolheu, então você pode se divertir testando e escolhendo diferentes ferramentas, frameworks e IDEs. Afinal, você já sabe o que quer e do que precisa.

Realmente goste do que está fazendo

O “gostar do que faz”, por muitas vezes, é seu único combustível pra praticar ou continuar tentando. Se você gosta, fica muito mais fácil passar por cima das dificuldades. Experiência de quem passou a época de TCC da faculdade gravando um cd em São Caetano (e eu sou de Osasco). Era virar a madrugada de domingo gravando, chegar em Osasco às 6h ou 7h da manhã e ir trabalhar, sair do trabalho às 18h e ir direto pra faculdade. Dando um jeito de vencer o cansaço, a falta de dinheiro e a falta de tempo. Se você realmente gostar de programar com PHP, fica fácil se animar a ler, pesquisar, criar seus próprios projetos e contribuir com projetos dos outros. E, assim, ficando melhor a cada dia.

Não subestime a autocrítica

O único jeito de melhorar é perceber que você ainda tem o que aprender. E uma das melhores maneiras de ter essa visão é saber que você não é tão bom quanto gostaria ou quanto acha que é. Como músico, além de acertar as notas, é preciso saber se tudo está soando bem. E, pra isso, é preciso ouvir, muito além de “só tocar” e achar que tá tudo legal. É difícil perceber todos os detalhes e falhas durante a execução de uma música, por isso é importante ouvir depois. Na NoWay, costumamos gravar os nossos shows ou procurar vídeos do público depois, pra podermos analisar o que estava bom, o que estava ruim e porque não percebemos aquilo que estava com problema. Com isso em mente, treinamos pra evitar aquilo que não ficou bom. Mesmo em casa, sozinha, eu costumo me gravar cantando e ouvir, assim fica bem mais fácil ouvir onde não soei bem e o que exatamente preciso melhorar. Em termos de desenvolvimento de software, o procedimento é o mesmo: releia um código que você escreveu 2 ou 3 meses atrás. É fácil de entender? Se não lembrar o que era, só de ler o código dá pra perceber o que ele faz? Tem alguma coisa ali que daria pra ser feita de uma maneira melhor? Quem nunca, por algum motivo, teve que rever um programa antigo e pensou “eca, eu fiz isso?”? Ás vezes você se acha a última bolacha do pacote, sem perceber que é a última ainda porque ninguém quis comer (sem trocadilhos).

Encontre pessoas melhores que você

Aqui, você precisa ignorar o rei que tem na barriga e já ter aprendido a ouvir sua autocrítica. Alguém melhor que você consegue identificar suas fraquezas e até seus pontos fortes com muito mais facilidade que você mesmo. Estar numa banda com músicos bem melhores que você te trás uma bela vantagem: você fica mais preocupado com a sua performance e se esforça mais pra tentar “pelo menos ficar no mesmo nível” e, consequentemente, ficando cada vez melhor quase sem perceber. Além de encontrar um músico mais experiente que possa te ajudar a se focar nas coisas certas e acelerando consideravelmente seu aprendizado. A mesma coisa se aplica no mundo da tecnologia. Seja um time, um amigo, um dev mais experiente que possa te ajudar, ache alguém melhor que você. Não é tão difícil. Lembre-se: tudo que você faz, em algum lugar do mundo existe uma criança oriental de 8 anos que faz melhor que você. E finalmente…

Não deixe seu ego controlar você

E aqui temos um GRANDE problema extremamente comum na música e que, infelizmente, acaba sendo comum entre os “devs” da vida: o ego inflado. E por que é um GRANDE problema? A partir do momento em que você se acha bom o suficiente e não consegue identificar ninguém melhor em nada, você abandona a necessidade de aprender. “Ok, eu já sei isso, não preciso mais me preocupar”. Em 1 mês você já é um músico só “razoável” que sabe fazer as mesmas coisas de sempre razoavelmente bem, sem nenhuma evolução e sendo passado pra trás por muita gente, sem nem se dar conta e até regredindo um pouco (viu, Lars Ulrich? Quero ver tocar Dyers Eve ao vivo…), além de se achar a cereja do bolo e tratando colegas, iniciantes e veteranos com desprezo e destruindo todas as suas amizades e redes de relacionamentos. E ninguém sobrevive sozinho. A menos que você seja Ritchie Blackmore. Ele é um babaca, todo mundo sabe que ele é um babaca, mas é um babaca que a gente sempre para pra ouvir quando toca, porque ele é realmente bom e importante. Mas um babaca. Não seja um babaca. Enfim… Devs sofrem profundamente dessa ideia de “eu sou fodão porque programo e ninguém sabe programar direito e ninguém é mais importante que um dev e zás!”. Além de limitar sua evolução ignorando toda sua capacidade de aprendizado, você vai perder muitos amiguinhos e possivelmente muitas oportunidades boas de carreira porque, goste você ou não, todo mundo se conhece, ou já se conheceu, ou ouviu falar. Eu já falei demais, então deixo a indicação de um livro muito bom sobre tudo isso e um pouco mais: The Passionate Programmer do Chad Fowler.