You are on page 1of 7

Copyright by: Ricardo C.

Zmmerl' - Todos os direitos reservados


A cpia de todo ou parte deste artigo s permitida com a citao expressa do autor e fonte.
www.itabra.com

PROGRAMACO
Arte ou ProIisso?


Como voc sabe sou desenvolvedor (grosso modo uma mistura de Analista de Sistema e Programador 2 em 1)
e isso h muito tempo. A alguns dias um conhecido me perguntou o que era ser programador e como ser
programador no Brasil. Essa curiosidade fez-me pensar que seria oportuno contar o que programao, como
ser um programador e como o mercado de trabalho de programao no Brasil e quais suas perspectivas,
caso voc, leitor se interesse em trabalhar nessa rea ou esteja tambm curioso sobre essa "misteriosa e
muito incompreendida profisso.
No serei, porm, subjetivo por que h muitos profissionais nesta rea que podem apontar diversas facetas ou
terem experincias no aplicveis em todos os casos. Deste modo vou procurar expor esse universo dos que
constroem o mundo digital, Byte por Byte, de forma "generalizada.

O que PROGRAMAR?

Quando ligamos o computador quase nem notamos, mas diversos programas comeam a ser lidos e suas
instrues so executadas pela mquina, caso contrrio, no surgiriam letras no monitor, seu mouse no
serviria de nada, voc no ouviria sons pelas caixas acsticas do computador, nem a tela de inicializao
poderia aparecer.
Quando o "computador trava, normalmente alguma parte de um programa apresentou falha, entrando em
ciclos infinitos ou utilizando partes de memria invlidas entre outros problemas, e pensamos que a culpa
da mquina.
Quase todos os problemas que temos ao usar um computador so gerados por programas (erros ou falhas de
programao, programas mau feitos, programas criados para fazerem estragos como vrus, worms, etc.), o
Sistema Operacional tambm um conjunto de programas responsvel pela administrao do hardware
(mquina), outros softwares e a interao com o usurio.

Como esses programas surgem?

Ainda no existe programa que crie programas do nada, assim, todos os programas que existem foram
imaginados, elaborados e escritos por pessoas de elevada qualificao tcnica. Centenas de milhares de
crebros, mundo a fora, trabalharam para escrever seus jogos favoritos, o sistema operacional de seu
computador, os programas que voc utiliza em casa, no caixa do Banco, do supermercado e at nos sistemas
digitais do seu carro ou forno microondas.

Mas o que so esses programas?

Um programa de computador um conjunto de instrues que diz ao computador o que deve ser feito e
quando, como se fosse um roteiro de filme ou uma receita culinria. O computador (mquina) sem esses
programas como um bloco de pedra! incapaz de fazer qualquer coisa; nem mesmo funciona!
Para que o computador consiga funcionar necessrio um conjunto bsico de instrues que diga como acessar
a memria, o processador, o HD, como enviar e receber dados entre os diversos componentes, essas rotinas
bsicas so conhecidas por BIOS (Basic Input/Output System - Sistema bsico de entrada e sada), sem esses
programas essenciais seu computador apenas um caro enfeite de mesa.
A BIOS normalmente escrita em Assembler, uma antiga e muito poderosa linguagem de programao, as
instrues compiladas em assembler so interpretadas pelo processador.
Perdeu-se? Se acalme. Vamos entender isso.
Todos os programas tem que ser escritos, ou seja, a idia que est na cabea do autor do programa tem que
ser colocada em uma seqncia de instrues lgicas tipo: faa isso aqui, depois faa aquilo l e assim por
diante.
Porm o programador no escreve de qualquer jeito, seno como o computador vai "entender o que ele quer?
Mas como o computador "entende algo?
Esse "entendimento primrio montado diretamente no microprocessador, ou seja, se, por exemplo, uma
informao que est no disco deve ir para a memria RAM, no processador est "gravado qual instruo deve
ser enviada para que ele faa isso, assim, quando ele recebe o comando certo, com base na lista de instrues
que pode executar, o executa conforme foi construdo para fazer.
Essa linguagem embutida no processador chamada de "cdigo de mquina e vem diretamente do
"Assembler que a linguagem mais "crua possvel, ou seja, aquela mais prxima das instrues diretas da
mquina. Por causa disso o Assembler uma linguagem muito difcil de usar, pouco intuitiva.
Pode-se programar escrevendo diretamente o cdigo de mquina, usando um editor hexadecimal, mas isso
coisa que s feita em casos extremos ou por entusiastas muito fanticos em programao, o cdigo de
mquina, que a nica linguagem entendida pelo processador, obtido das outras linguagens atravs de um
programa chamado "Compilador.
O Compilador traduz um texto escrito em uma linguagem de programao, como o Assembler, no cdigo de
mquina, linguagem entendida pelo processador.
H muitas linguagens de programao, qualquer programador com conhecimento tcnico suficiente pode
escrever uma linguagem prpria. Uma linguagem de programao resumidamente, um "universo composto
por tipos de variveis (objetos que podem armazenar informaes de diferentes caractersticas), comandos,
objetos visuais (em caso de programao para ambientes grficos como o Windows) tudo reunido dentro de
normas e padres conhecidos por "sintaxe. Uma vez estabelecido esse "universo escreve-se o compilador que
vai ser capaz de traduzir a linguagem em cdigo de mquina.
Cada linguagem existente tem caractersticas prprias, vantagens e desvantagens. A que eu recomendaria para
um principiante seria o Delphi, ainda que eu prefira o Visual Basic por ser muito mais fcil de usar, mas o
Delphi apresenta similaridades interessantes com a mais importante de todas as linguagens de programao
atuais, a linguagem "C, e, se quiser realmente trabalhar na rea de programao, a "C, "C++
imprescindvel.
Ento: um programa de computador um conjunto de instrues, escritas de forma lgica em uma linguagem
de programao.
O texto do programa chamado de cdigo-fonte.
Algumas linguagens no possuem compiladores (como o Visual Basic), eles possuem, ao invs, um
"interpretador, que um outro programa que se encarrega de entender as instrues e mandar ao
processador ou ao sistema operacional os comandos apropriados. A vantagem da linguagem interpretada que
ela menos sujeita a falhas no compensadas, porm um programa feito numa linguagem assim mais lento
para rodar que um que est compilado, j que no executado "diretamente no processador.
Sei que essa parte mais terica meio maante para a maioria das pessoas, mas se quer ser um programador
importante saber como as coisas funcionam ;-)

Como escrito um programa de computador?

A maioria das linguagens de programao possuem um ambiente integrado de desenvolvimento, IDE
(Integrated Development Environment), onde possvel escrever os cdigos, depurar erros, simular
funcionamento do programa, desenhar as interfaces, efetuar testes e ajustes. Mas tambm se pode escrever a
maioria dos programas num simples editor de texto ASCII (texto sem formatao) como o Bloco de Notas do
Windows.

Como um programa de computador?

Um programa de computador, como vimos, um conjunto de instrues que informam ao processador
o que ele deve fazer.
Se quiser podemos escrever um programinha exemplo, que ir "rodar no seu navegador da internet.
Por ser executado no navegador ele no precisar ser compilado (so um conjunto de instrues entendidas
pelo navegador). Usaremos a linguagem "Java Script para faz-lo.
Vamos agora pensar como um programador:
"Eu quero um programa no qual eu possa escrever um texto pequeno e que, quando eu clicar num
boto aparea uma caixa de mensagem com aquele texto e indicando a hora em que cliquei no boto
Esse objetivo procurado chamado de "Sistema (um Analista de Sistemas , em essncia, o
profissional encarregado de estudar as necessidades de um projeto, definindo que informaes entram no
programa, quais saem, de que forma o fazem e qual o processamento envolvido). Em nosso sistema temos o
seguinte: um local (campo) para escrever o texto, a hora em que o boto for clicado - informaes que entram.
O processamento consiste em concatenar (juntar) as duas informaes (texto e hora) de modo a exibi-las
numa janelinha - informao que sai.
Mas um programador precisa de mais informaes por que o computador funciona de forma exata. Um
texto algo muito vago. Texto de que tamanho?
Em nosso caso queremos uma frase pequena apenas, assim, 30 letras so suficientes. Definiremos as 30 letras
como tamanho limite. E a hora? S hora ou a data tambm? Hora em que formato? 24h? Mostraremos os
segundos?
Viu?
Ao programar voc precisa pensar em absolutamente tudo que possa estar envolvido ao programa,
informao e a maneira como o usurio interagir.
Vamos definir que basta a hora no formato 12h, manh e noite.
Para escrever esse programinha abrimos o editor de texto simples, no Windows o "Bloco de Notas, e,
como vamos escrever algo que rodar no navegador da internet precisamos escrever alguma coisa bsica para
que possa ser rodado sem erros.
Copie o seguinte texto azul para um novo documento no bloco de notas (a cor do texto s para
indicar o que deve ser copiado, ok?):

<html>
<head>
<title>Programa TESTE</title>
</head>
<script language="JavaScript">

</script>
<body>
<br><br><div align="center">
<form name="f1">

</form>
</div></body></html>

O que escrevemos apenas o arcabouo onde colocaremos nosso programinha. Toda a programao
possui uma estrutura, como essa programao html, que permite compor a pgina de internet definindo blocos
onde as informaes pertinentes devem estar. A parte onde escreveremos o programa fica entre os textos:
<script language="JavaScript"> e </script> e a parte relacionada interao com o usurio ser escrita entre
<form name="f1"> e </form>
Vamos a parte de interao primeiro. Pode parecer confuso, j que ela vem depois na estrutura, mas
o processo lgico e faz-la primeiro por que precisaremos do nome do campo de texto para poder pegar seu
contedo.
Entender o encadeamento, a seqncia de processos fundamental na programao e pea chave
para programas rpidos e eficientes ou mostrengos cheios de erros. Esse encadeamento chamado
"algoritmo. Um Algoritmo a forma pela qual a informao trabalhada ou um processo executado passo-a-
passo.
Vamos pensar no algoritmo de nosso programa:
1 o usurio escreve um texto.
Dvida: e se o usurio no escrever nada, devemos deixar que ele proceda ao passo seguinte?
Temos que pensar em todas as possibilidades!
Caso o usurio no escreva nada ento nada acontecer. Mas onde colocaremos essa verificao?
2 o usurio clica num boto para que a mensagem aparea.
Pensemos: o usurio s deve clicar nesse boto aps escrever a mensagem, ento uma coisa razovel
colocar a checagem para ser feita depois que o usurio clicar no boto por que a mensagem j dever estar
escrita, no mesmo?
Vamos escrever a parte de interao com o usurio:

<b>Escreva sua frase: </b>
<input type="text" name="ctexto" size="20" maxlength="30" value=">
<br><br>
<input type="button" value="Mostrar" onClick="verificar()">

Nessa parte definimos o limite do texto (maxlength), que 30 caracteres e colocamos a ao
associada ao boto que, quando clicado ir chamar uma "funo denominada "verificar().
Preste muita ateno aos caracteres maisculos e minsculos por que na maioria das linguagens de
programao so coisas bem diferentes, procure escrever exatamente como est aqui (as cores no so
importantes, servem apenas para identificar o texto a ser escrito).
Agora temos que escrever a parte de programao propriamente dita.
Teremos duas funes, uma para verificar se h um texto escrito, outra para compor a mensagem.
Por que duas funes?
Isso para facilitar a programao. Dividir as tarefas em funes, cada qual fazendo apenas uma coisa ajuda a
entender melhor o cdigo e tambm a aprimorar as funes sem interferir no resto.
Um programador tem que ser meticuloso, detalhista e, principalmente, saber documentar bem seu projeto e
deix-lo muito bem organizado, isso fundamental quando necessrio fazer correes, melhorias e
ampliaes, bem como para posterior reutilizao de trechos de um cdigo escrito para um programa em outro.
Um programador profissional sabe que adotar boas prticas de programao o que diferencia o cu do
inferno, e gera um enorme ganho de produtividade e qualidade.

A primeira funo a que verifica:

function verificar(){
if (document.f1.ctexto.value.length > 0){
processar();
}
}

Esse jeito "esquisito de escrever, com parnteses e chaves fazem parte das linguagens de
programao, no caso, para esclarecer, os parnteses aps o nome da funo so o local onde se colocam
parmetros caso sejam passados, como no h parmetro ou valor sendo passado, est vazio.
As chaves iniciam e terminam a funo. O comando if (se), verifica o tamanho do valor contido no
"ctexto, nome que demos ao campo de texto, que est no formulrio cujo nome "f1 que consta da pgina
da internet que escrevemos (identificada como document). Se o tamanho do texto for maior que zero ento ele
vai para outra funo chamada "processar. O ponto e vrgula no final necessrio para indicar que estamos
"pulando linha. Algumas linguagens de programao derivadas da linguagem C usam esse "argumento para
informar que a linha outra - no basta "teclar enter.
A segunda funo:

function processar(){

var texto = document.f1.ctexto.value;

var agora = new Date();
var horas = agora.getHours();
var minutos = agora.getMinutes();

var mensagem = texto + "\n" + ((horas >12) ? horas -12 :horas)
mensagem += ((minutos < 10) ? ":0" : ":") + minutos
mensagem += (horas >= 12) ? " P.M." : " A.M."

Alert(mensagem);
}

Continuando nosso algoritmo: precisamos pegar a frase que a pessoa escreveu, pegar a hora atual,
vamos colocar essa hora no padro 12+12h e mesclar tudo para mostrar a mensagem.
Para ficar bem claro, ns vamos definir 5 variveis (varivel um objeto cujo valor pode ser alterado,
ou seja, pode variar). Na primeira colocaremos o texto que o usurio escreveu (texto). A segunda varivel
atravs de um comando especfico pega a data completa do sistema (inclui dia, ms, ano, hora, minuto e
segundo), mas s queremos a hora e o minuto, por isso a varivel horas ficar s com o valor correspondente
hora e a minutos idem utilizando funes da linguagem javascript.
A varivel "mensagem mescla o "texto, pula a linha, se as horas forem maiores que 12, subtrairemos
12 dela (por exemplo, se forem 16h, -12 ficam 4 horas, por que usaremos o padro de 12h no relgio e no
24h). Juntamos depois os minutos. Tambm consideramos que se os minutos forem inferiores a 10
colocaremos, para efeito esttico, um zero antes, por exemplo, 9 minutos ficaria 09.
Para finalizar adicionaremos mensagem A.M. ou P.M. (Anterior ao Meio-dia, Posterior ao Meio-dia).
Se as horas forem maiores ou iguais a 12 poremos P.M., se menores, colocaremos A.M. e depois, com o
comando Alert() mandamos exibir nossa "mensagem completa para o usurio.
O nosso programa no total fica assim:

<html>
<head>
<title>Programa TESTE</title>
</head>
<script language="JavaScript">

function verificar(){
if (document.f1.ctexto.value.length > 0){
processar();
}
}

function processar(){

var texto = document.f1.ctexto.value;

var agora = new Date();
var horas = agora.getHours();
var minutos = agora.getMinutes();

var mensagem = texto + "\n" + ((horas >12) ? horas -12 :horas)
mensagem += ((minutos < 10) ? ":0" : ":") + minutos
mensagem += (horas >= 12) ? " P.M." : " A.M."

Alert(mensagem);
}
</script>
<body>
<br><br><div align="center">
<form name="f1">
<b>Escreva sua frase: </b>
<input type="text" name="ctexto" size="20" maxlength="30" value>
<br><br>
<input type="button" value="Mostrar" onClick="verificar()">
</form></div>
</body>
</html>

Complicado?
Bom, no simples explicar os aspectos bsicos da programao como linguagens, algoritmos,
sistemas em poucas palavras, bem como mostrar como um programa pensado, mas, acredito, voc
conseguiu, se me acompanhou at aqui, ter uma boa idia de como "essa coisa funciona.
Se quiser testar nosso "programinha, salve o texto como "teste.htm (no deixe a extenso .txt caso
aparea, no fim por que a voc no conseguir abrir o documento como pgina de internet).
Abra o "Teste.htm clicando duas vezes sobre ele e veja o programa em ao. Se voc tiver feito tudo
direitinho ele funcionar sem problemas.
Esse exemplo foi muito simplificado. Um programa de computador pode ter centenas de milhares de
linhas de cdigo, sendo que esse cdigo deve estar disposto de forma lgica, exata, encadeada passo-a-passo
seno o programa pode apresentar problemas, travar, gerar erros, enfim: "d-pau!
Por isso, se seu jogo de computador ou vdeo-game favorito apresenta uma falha ou se seu programa
travou, lembre quo difcil, detalhista e complexo programar e, ao invs de xingar a me de sei l quem,
ajude o desenvolvedor do programa/jogo enviando um email contando o que aconteceu e como.
Assim que um programa finalizado normalmente os autores dispe a verso "rascunho ou "beta
para que algumas pessoas possam checar eventuais erros. Essa caa a erros imprevistos e falhas chamada
depurao e as pessoas que testam os programas "beta so denominadas "beta-testers.

O que necessrio para ser um programador?

Evidentemente ter conhecimento sobre uma linguagem de programao e os demais "utenslios, mas
o que importa que um programador uma pessoa metdica, determinada, paciente (e haja pacincia),
objetiva, lgica, fria mas, tambm, criativa, apaixonada e "doida. Confuso novamente?
Parece engraado, verdade, mas para ser programador voc precisa ser coisas bem contraditrias.
Se voc no for capaz de pensar com absoluta lgica no ter como escrever um programa que funcione por
que as instrues devem ser passadas sempre em seqncia lgica, mas se no for "doido ser apenas um
"miquinho adestrado, ou seja, ser, apenas, capaz de escrever os programas que "aprendeu a fazer, se
algum te pedir algo diferente que voc no tenha "aprendido, ou seja, no tenha de onde copiar, voc ser
incapaz de faz-lo. Infelizmente mais de 90% dos profissionais formados por escolas, cursos tcnicos e
faculdades de cincias de computao so assim. Pasteuriza-se a programao e se entregam certificados para
quem sabe copiar melhor o que foi passado, alis, a prpria programao de alto nvel tem seguido para essa
estrutura "tijolinhos lego (.Net) na qual , ao invs de programar, que difcil e exige um crebro capaz de
pensar, tem-se apenas que montar objetos pr-definidos com quase ou nenhuma linha de programao.
Voc precisa ser "doido para ser capaz de imaginar o processamento dos dados, os comandos em
algoritmos que no existem e isso muito doido mesmo, por que estamos falando de coisas que nem existem
no mundo "real.
Voc precisa ser frio, para agentar as frustraes de partes de cdigo que voc tinha certeza que
iriam funcionar mas que, por uma razo qualquer, no funcionam como voc queria, te obrigando a passar
horas, s vezes dias, analisando a falha at sua soluo. Ao mesmo tempo tem que ser apaixonado, por que
ficar concentrado por horas, dias, meses at, num nico projeto, cujo cdigo pode, se impresso, preencher
centenas de pginas, trabalhando ininterruptamente por mais que surjam erros ou que o oramento esteja
apertado s para quem realmente "ama isso.

Qual a diferena entre programador e desenvolvedor?

H uma diferena tcnica fundamental: o programador apenas programa.
Um projeto de software complexo normalmente envolve equipes multidisciplinares. Aos Analistas de
Sistema compete fazer o projeto do programa, por assim dizer. Eles devem dizer que informaes o programa
requerer, quando far isso e por que meios, o que far com essas informaes e como fornecer o resultado
de seu trabalho para o usurio. Um "Gerente de Projeto o sujeito que conversa com os clientes, que querem
o programa, com a equipe de Analistas e, muitas vezes, tambm cuida do oramento e do cronograma.
Da forma como o projeto do programa feito depende diretamente o tempo que levar para sua
execuo. Um projeto bem feito, finalizado e detalhado facilita a vida dos programadores bea, j projetos
sem o devido detalhamento ou se ocorrem mudanas durante a fase de programao so desastrosos e podem
arrastar o desenvolvimento do programa indefinidamente.
O programador o "escravo, o sujeito que vai pegar o projeto e transform-lo no produto final: o
software, gastando seus "dedinhos, neurnios e vistas.
J um desenvolvedor uma pessoa que faz o servio completo, ou seja, elabora o projeto, interfaces,
sistema e, no fim, escreve o software.

boa a profisso de PROGRAMADOR?

Qualquer um pode, por hobby, fazer um ou outro programinha, joguinho, etc., voc no precisa de
nenhum talento especial para isso e to bom como exerccio ao raciocnio quanto jogar Xadrez, por isso, se
quiser um passatempo que lhe ajude a melhorar a acuidade mental, pense na possibilidade de aprender
programao, sem compromissos, apenas para exercitar a mente mesmo.
Mas, se quer trabalhar na rea, s o faa se "AMA programar.
Por qu?
Primeiro lugar, programadores no so ricos. Um salrio para programador em incio de carreira
pouco superior a mil reais em mdia. Um salrio mdio para programador fica pouco acima de R$ 3.000, ou
seja, igual ao de um policial rodovirio em incio de carreira. Um bom salrio raramente ultrapassa R$ 5.000.
Um fiscal em incio de carreira, dependendo do municpio, ganha mais de R$ 7.000, cargos no
judicirio tambm ultrapassam esse valor. Em empresas privadas inmeras profisses bem menos exigentes,
desgastantes, estressantes e insalubres pagam muito mais. Enfim, pelo nvel intelectual exigido para uma
pessoa ser uma boa programadora, ela facilmente conseguiria empregos melhores em outras reas.
Alm do que, a maior parte do mercado que existe para "programadores o de suporte. Suporte por
assistncia, por treinamento ou por customizao de programas para adapt-los s necessidades dos clientes.
Assim o campo do desenvolvimento de novas tecnologias, programao de ponta, desenvolvimento de novos
produtos restrito a muito poucos que conseguem se destacar ou que tem muita sorte.
Acho que todos ouvimos dizer que as grandes empresas de software do mundo todo correm caa de
programadores, mas no pense que basta ter um diploma. Elas no querem os miquinhos-amestrados que
saem das faculdades de cincias da computao, de cursos tcnicos ou de certificao que s sabem fazer o
que aprenderam. Elas esto atrs de PROGRAMADORES, pessoas capazes de CRIAR solues novas, de
desenvolver tecnologias, de solucionar problemas novos quer tenham faculdade, curso, certificao ou no, o
que elas querem TALENTO, no papel carimbado.
Por isso essas empresas tem tanta dificuldade em achar o tipo de mo de obra que querem. No estou
te dizendo, com isso, que voc no deva fazer um curso ou faculdade, se voc tem esse talento sabe muito
bem que quanto mais informao e estudo tanto melhor! Mas, se no tem esse talento, essa "vocao, no se
iluda: no ser uma faculdade que lhe dar isso.
Claro que voc pode pensar: vou ser programador, escreverei um programa de sucesso, um jogo e
ficarei rico!
uma idia boa, pena que o mundo no funciona desse jeito.
Grandes empresas de jogos, com jogos de sucesso, como a 3DO faliram, dezenas de milhares de
programas so lanados todos os anos, quantos fazem sucesso? Ser que os que no fizeram so ruins?
No, no so. Mas h muita coisa excelente sendo lanada continuamente, a maioria no conseguir ganhar o
suficiente para pagar o custo de desenvolvimento. Empresas de software que comeam cheias de sonho fecham
pouco tempo depois, mesmo tendo feito timos produtos.
Essa a verdade!
No o que voc v na mdia? No, no . Mas a mdia s mostra o que faz sucesso.
Visite sites de download de softwares e voc ver a enorme quantidade de programas que eles tem, e,
mesmo o gigantesco www.Tucows.com s tem uma parte pequena do que lanado todo o tempo.
Veja se tudo o que tem l aparece na mdia?
Se tiver pacincia, visite alguns sites desses produtos e volte a visit-los depois de um ano. Muitos dos
sites ainda sero os mesmos (se ganharam muito dinheiro por que no mudariam o visual do site?), outros
sites talvez nem mais estejam no ar.
E quanto aos jogos?
Nossa, quantos ttulos novos, fantsticos, no surgem todos os anos?
Muito dinheiro ( milhes de dlares ) so gastos na produo desses jogos, dezenas ou centenas de
milhes para as campanhas de marketing e, no fim, boa parte desses ttulos fecha no vermelho, alguns com
resultados decepcionantes, principalmente por causa da pirataria.
Deve desistir ento?
No, claro que no. Mas no tenha fantasias.
O universo dos programadores um mundo silencioso de trabalho meticuloso, desgastante
(fisicamente, mentalmente), estressante, que exige alto nvel intelectual, tcnico, paga muiiiiito mal e no h
mgica: a pirataria destri qualquer incentivo que voc possa ter em montar sua empresa.
Qual a recompensa?
ver que idias que estavam em sua mente tomam forma, "criam vida e vo divertir, entreter,
auxiliar pessoas em seus trabalhos, lares, talvez mundo afora. saber que voc faz diferena, ainda que possa
no ser muita. Veja, como exemplo, o jogo Roller Coaster Tycoon: ele foi feito por um nico desenvolvedor
(Chris Sawyer - que "s para humilhar escreveu quase todo o jogo em Assembler (rs)), jogo esse que fez
enorme sucesso em todo o mundo divertindo e entretendo dezenas de milhares de pessoas e arrebanhando
uma legio de fs.
Por isso, se quer ser um profissional de programao lembre que ela uma Arte, encare-a assim. Se
sua vocao, se algo que "ama, estude, dedique-se, no importa se o mercado de trabalho no bom, por
que voc vai conseguir se destacar e, no fim, ou far algum software de muito sucesso, ou ser cobiado pelas
grandes desenvolvedoras mundiais.
Claro que se voc quer trabalhar na rea de suporte, ento seu mercado de trabalho ser fantstico.
Um profissional bem qualificado em informtica tem emprego garantido. A chance de trabalhar em boas
empresas, nacionais e estrangeiras elevada, principalmente se voc tiver muita disposio para estar sempre
aprendendo e estiver "antenado s novidades tecnolgicas. Mas no d preferncia aos jogos no, o que
realmente "paga nesse mercado so produtos para empresas, bases de dados, segurana e comunicao.

Como o dia-a-dia do Programador?

Esquea os esteretipos. Um programador um profissional como qualquer outro. A idia que somos
uns "nerds com culos fundo de garrafa, anti-sociais e esquisitos, que falam rapidamente e normalmente
coisas que ningum consegue entender bobagem de filmes. Alguns adolescentes, s vezes, que gostam de
informtica tendem a se deixar levar por essa imagem ridcula, mas, na verdade, um programador comum
uma pessoa que casa, tem famlia, filhos, vida social, amigos, contas para pagar, passeia, exatamente como
todas as demais pessoas. comum sermos mais quietos que os demais e falarmos de forma mais resumida,
isso so vcios do trabalho. Dos programadores que conheci poucos usavam culos (a maioria usa lentes) mas
isso quase inevitvel por causa do trabalho intenso com o computador. Poucos programadores tem
inteligncia "privilegiada, ou seja, a maioria como qualquer outra pessoa. Programar exige conhecimento,
ateno e concentrao, no exige QIs altssimos no.
Diferente de muitas outras profisses, porm, o trabalho no desenvolvimento de softwares ocorre
quase 100% no crebro do programador. Tudo pensado, imaginado, analisado mentalmente. Acho que a
programao uma das poucas profisses nas quais voc no tem como reagir de forma automtica, voc
precisa de sua "massa cinzenta, de toda a capacidade dela.
Quando um programador "de verdade est escrevendo um software ele no tem como parar por que
deu a hora de ir embora, por que, se ele fizer isso, muita coisa pendente fazer, que est anotado apenas em
sua memria mental, poder ser esquecida. Ele tem que terminar o trabalho ou deix-lo num estgio que
permita ser retomado no dia seguinte. Alguns programadores continuam seus trabalhos em casa, outros varam
a noite trabalhando. Normalmente um programador aprende a ser "frio por que no se pode deixar que
problemas pessoais afetem o raciocnio, sob pena de prejudicar substancialmente o trabalho. Um programador
no pode usar drogas e, em geral, no gostam muito de bebidas alcolicas menos ainda de cigarro. Ou seja,
procuram manter sua ferramenta de trabalho - o crebro - na melhor forma possvel.
O nico vcio que se nota em um programador o prprio trabalho.
A concentrao no trabalho tambm fundamental, s vezes eu digo que o melhor lugar para um
programador trabalhar seria um mosteiro. So necessrios o silncio e ausncia de interrupes para que o
profissional consiga concentrar-se adequadamente. Tambm importante dispor de locais "contemplativos
para que o programador possa caminhar ou "descansar sem ser incomodado por que ele trabalha em sua
mente primeiro, depois que ele "coloca as coisas no computador. Bill Gates, que programador, sabe muito
bem disso e por isso que emprega horas flexveis e locais para "meditao para os programadores da
Microsoft.
Mas voc, se conhecer algum que trabalhe com programao, dever notar que parece ser uma
pessoa distrada, s vezes "desmemoriada, mas no se engane: a distrao se d por que estamos pensando
em muitas outras coisas ao mesmo tempo e a memria geralmente est ocupada por pendncias e detalhes de
projetos nos quais estamos trabalhando e, por isso, informaes menos "importantes acabam no sendo
assimiladas.

E, para finalizar: programador que se preze "no vive sem caf! =)



O computador a ferramenta que transforma a imaginao em algo coletivo.

You might also like