Por Iana Chan. Originalmente publicado no site da Superinteressante (com edições).

Se você vivesse na Idade Média e um monge copista oferecesse a privilegiada oportunidade de aprender a ler e a escrever – sem, digamos, ter que se abdicar de sua vida mundana-, você aceitaria? Pense nas bibliotecas enclausuradas nas abadias e em todo conhecimento que estaria ao seu alcance. Se você é um leitor que se preze, sua resposta com certeza seria sim, certo? Pois então aceite nosso conselho e vá aprender a programar!

Nossa vida é movida pelo códigos e algoritmos. Dominá-los é uma habilidade para quem quer entender esse mundo e criar coisas novas. Exatamente o que a capacidade de ler e escrever permitiu, muito tempo atrás. “Se você não souber programar, você será como uma das pessoas iletradas da Idade Média que foram educadas a pensar pelos padres letrados”, diz Tim O’Reilly, entusiasta do software livre no site Code.org.

Programar é basicamente “conversar” com computadores para que eles cumpram tarefas por nós. Mesmo que você não trabalhe diretamente com isso, programar desenvolve nosso raciocínio lógico e nossa capacidade de resolver problemas. Fora que, mais dia, menos dia, saber como funcionam as tecnologias presentes no nosso cotidiano será fundamental.

tumblr-cachorro

“Aprender a programar não é só importante para o seu futuro. É importante para o futuro do país. Não compre um videogame apenas, faça um. Não fique apenas jogando no celular, aprenda como programá-lo!”. Foi com essas palavras que o presidente dos Estados Unidos, Barack Obama, lançou a campanha “Hour of Code” (Hora de Código), na tradicional Semana do Ensino da Ciência da Programação.

A ideia é incentivar estudantes americanos a escrever suas primeiras linhas de código e acumular 10 milhões de horas estudadas em todo o país. O site da campanha reúne vários tutoriais que desmistificam a ideia de que programar é para poucas mentes privilegiadas.

Aprender a programar é muito semelhante a estudar um novo idioma. O primeiro passo, aliás, é escolher uma linguagem de programação, que possui uma sintaxe e estrutura própria. Para nossa sorte, não dependemos da boa vontade de monges copistas, mas de nerds e hackers – e eles costumam ser bem generosos em compartilhar seu conhecimento. Veja plataformas intuitivas e interativas perfeitas para aqueles que querem dar os primeiros passos no mundo da programação:

1. Hour of Code

É a plataforma da campanha da Semana do Ensino da Ciência da Programação deste ano. Nela, estão disponíveis vários tutoriais para todos gostos e idades, alguns, inclusibe, em português. Como os puzzles com Angry Birds.

Há tutoriais para aprender a programar até mesmo sem computadores, usando papel e caneta para escrever um algoritmo capaz de cumprir determinada tarefa. Em vez do computador, quem lê o código e executa são… humanos.

A Khan Academy também entrou na jogada e lançou um tutorial para aprender a programar um cartão de boas festas em JavaScript, uma das linguagens mais famosas e usadas nas páginas da internet. Dá uma olhada (em inglês).

2. Codeacademy

É a maior e mais famosa plataforma para aprender a programar. Possui diferentes cursos gratuitos para diversas linguagens ( Python, PHP, JavaScript, e Ruby), e também tem um curso chamado Web Fundamentals, que ensina a construir sites com HTML e CSS. Os cursos são bem-humorados, interativos e gamificados (você ganha badges e acompanha sua evolução). Dá para começar a escrever suas primeiras linhas de código rapidinho.

Para a campanha Hour of Code, o Codeacademy também lançou seu primeiro app para ensinar a programar. Por enquanto, está apenas disponível para iPhone.

 3. Scratch

É uma linguagem criada pelo Media Lab, laboratório de inovação o MIT, que permite a criação intuitiva de animações, jogos e histórias interativas. Desde 2007, crianças a partir de 5 anos já podem usar o Scratch, que é muito visual: os comandos são bloquinhos que se encaixam e formam o algoritmo.

“As crianças estão conseguindo expressar suas ideias por meio de novas tecnologias. Elas estão se tornando fluentes”, disse o criador do Scratch, Mitch Resnick,em uma palestra no TED Beacon Street. No site, que é também uma grande comunidade social, você pode disponibilizar seu projeto e ver o trabalho dos outros – você vai encontrar animações e joguinhos adoráveis feito por crianças.

 4. Blockly

Blockly é um editor visual de programação, o que facilita (muito) o aprendizado, e tem uma série de tutoriais em português. Não é preciso escrever nada, apenas arrastar os blocos de comando. O quebra-cabeça é um bom começo para aprender a decompor um problema em etapas e ordená-las logicamente. Nele, você tem que comandar um bonequinho a chegar ao seu destino, dando coordenadas em forma de algoritmo.

5. Moocs (Massive Open Online Course)

EDX

* CS50x – Introdução a Ciência da Computação (Harvard)

* Introdução a Ciência da Computação e Programando em Python (MIT)

* Um gostinho da Programação em Python (MIT)


COURSERA

Python (Universidade Rice)

Lógica (Universidade de Melborune)

UDACITY

Introdução a Ciência da Computação Python (University de Virginia)

Introdução a programação em Java (Universidade Estadual de San José)

 6. CC50

Quando tinha 17 anos, Gabriel Lima Guimarães fez um curso introdutório de Ciência da Computação em Harvard (o chamado CC50 – disponível na plataforma EDx, indicada acima) e gostou muito. Tanto que decidiu transmiti-lo para outros brasileiros interessados em aprender a programar.

Ele traduziu o material, gravou as aulas em vídeo e disponibilizou tudo gratuitamente no site, com exercícios e tudo mais. O curso não tem nenhum pré-requisito e começa bem do básico! Não tem as aplicações interativas, mas é inteiro em português.

7. Try Ruby

Ruby é considerada uma linguagem fácil de aprender, pois não exige conhecimentos teóricos profundos sobre o funcionamento dos computadores. Além disso, é usada em Ruby in rails, uma das ferramentas mais usadas para fazer aplicações na internet. Nesta plataforma totalmente interativa (e com gráficos fofolentos), você é levado a entender os conceitos principais com exercícios práticos e simples.

8. Codeschool

Apesar de ser uma plataforma paga, possui diversos módulos gratuitos. Os cursos são compostos por videoaulas e exercícios interativos. Na área gratuita, você pode aprender HTML/CSS, Ruby, Javascript e até como desenvolver aplicativos para o sistema IOS (do iPhone e iPad).