ProgramadorSe você esta querendo aprender a programar, com certeza vai fazer um ou outro “Hello World”, que para quem não sabe, “Hello World” é um programa básico utilizado de forma didática para ensinar os fundamentos de uma determinada linguagem de programação.

A principal função deste programa é simplesmente mostrar uma frase na saída padrão, navegando um pouco na net eu encontrei uma coleção de “Hello World”, Hello World Collection em 366 linguagens de programação diferentes.

Se caso tiver dúvida em qual linguagem você quer aprender, dê uma olhadinha nesta coleção.

Apenas uma ferramenta

Tem muitas linguagens curiosas e uma que me chamou a atenção foi a Whitespace que você cria programas apenas com espaços, tabs e enteres (plural de enter :\), imagina como deve ser complicado encontrar um “BUG“, ou ainda imagina como deve ser difícil homologar um software feito em whitespace que na maioria das vezes tem que imprimir partes do código e a BrainFuck que não ajuda nem um pouco na compreensão do código porque só usa símbolos (+-<>[],.), podemos dizer que é uma linguagem que faz bem o seu trabalho, não ajudar o programador.

Em compensação tem muitas linguagens simples de aprender e trabalhar, não tem a melhor e nem a pior linguagem, porque linguagem de programação é só uma ferramenta de trabalho, mas é sempre o que dizem velhos profetas de todos os lugares, “A melhor ferramenta, é aquela que você mais conhece.“, mas não se prenda em apenas uma ferramenta, tente imaginar um mecânico especialista em chave de fenda.

Eu sempre fui usuário Windows desde que eu comecei a trabalhar com tecnologia, tinha curiosidade de conhecer um pouco de Linux e poder começar a mexer mas sempre me faltava oportunidade e tempo. De seis meses para cá eu venho usando Linux, a distribuição Ubuntu comecei com a 7.10 e hoje eu estou com o Ubuntu 8.4, e querem saber de uma coisa?

Não sinto falta do meu antigo sistema operacional, o linux faz tudo o que eu preciso, continuo trabalhando como programador win32 mas meus códigos agora são produzidos no VIM, compilados com migw32 e testados em VMWares.

Não digo que “W” é melhor que “L“e nem digo que “L” é melhor que “W” cada sistema operacional tem suas particularidades, aí você pode me perguntar:

Se um não é melhor que o outro, porque você usa “L“?

Respondo: Porque este é mais barato. O “W” estava ficando cada vez mais chato para deixar genérico (se é que vocês me entendem), e usando cada vez mais os recursos da minha máquina para coisas que deveriam ser básicas.

P.: Ah então o “L” é melhor!

R.: Não, posso dizer que ele é mais leve, muito mais customizável, mas tem que ter tempo para estudar para que serve cada pacote, tempo para baixar/instalar/testar os pacotes, logo descobri que o “L” é para quem tem tempo sobrando, ou para quem gosta de ficar noites a fio lendo forums e tutoriais.

O “W” e mexia tinha atualizações para baixar e instalar, já ouvi muitos “L“maníacos criticando isso, não é por nada não mas, o “L” também é assim, pelo menos a distribuição que eu instalei, “todos os dias” tinha atualizações para fazer.

P.: O “W” é muito bugado, qualquer coisinha ele trava.

R.: Ok concordo mas o “L” também trava as vezes, tem um screensaver aqui na minha máquina que se rodar ele reinicia o X não tive tempo para descobrir qual é mas sempre que eu voltava do almoço tava lá o sistema pedindo usuário e senha, eu sem tempo de ficar pesquisando em forums como solucionar o problema eu desabilitei o screensaver. Na minha humilde opinião, as pessoas perdoam as falhas do “L” por ser um sistema operacional aberto, e condenam as falhas do “W” por ser fechado, quando encontram uma falha no “L” os usuários correm para os forums e pesquisam uma forma de resolver, mas quando encontram uma falha no “W” falam que o sistema é ruim.

P.: “W” tem falhas de seguranças sérias!!

R.: Deve ser porque ele ainda é o SO mais usado no planeta, logo, o mais pesquisado por pessoas que se interessam por falhas para se aproveitar delas, descoberta uma falha no MSN Messenger e feito um malware que se aproveita disso, ele se espalha mais rápido que barata no esgoto, agora imagina uma falha descoberta no pidgin, qual é a velocidade que isso vai se espalhar? Bem menor, mas não é porque é mais seguro mas é porque não tanta gente usando, então se eu quiser fazer um malware que se espalha rápido eu vou pesquisar falhas num software utilizado pela maioria, então este problema com segurança para mim é uma questão de tempo, quando o “L” estiver sendo mais usado que “W“, e eu acredito fielmente que isso vai acontecer, a falhas de segurança vão aparecer.

Não tenho nada contra nenhum sistema operacional, e nem quero ter, eu sou a favor de cada um usar aquele que mais satisfaz a si mesmo, estou muito bem com o meu Ubuntu confesso que com ele aprendi muito mais e descobri que tenho muito o que aprender.

Obs.: (se você não entendeu nenhum destes nomes estranhos, pergunte nos comentários)

Você acha difícil imaginar aprender ciência da computação sem um computador, mas acredite isso é possível e já existe até pessoas especializadas em ensinar esta ciência sem depender de um computador, estou falando do site Computer Science Unplugged.

É um site especializado em ensinar e ensinar a ensinar ciência da computação, com atividades muitas vezes divertidas, imagina que legal, você se dar bem num jogo de batalha naval usando um simples algorítimo de busca, um ainda aprender a teoria de um deadlock numa brincadeira de roda.

Uma brincadeira bem simples é a que ensina números binários, onde você pode pegar cartões com os números 1, 2, 4, 8, 16 e organizá-lo em ordem decrescente:

Binary numbers

Cada cartão representa um bit, vire o cartão com o numero para baixo para “desligá-lo” e vice-versa:

Binary numbers

Bom a partir daí é só somar os números, nada divertido né? Pois vamos fazer ficar divertido, olhe para sua mão direita, normalmente você verá 5 (cinco) dedos, vamos dar os valores dos cartões para cada um deles: polegar = 1, indicador = 2, dedo médio = 4 …

Mão direita

Cada dedo levantado equivale a um cartão com o numero para cima, aí é só somar os dedos levantados. Só saia exibindo numero 4 por aí que as pessoas podem entender errado.

Hoje no carro eu ouvi o Ethevaldo Siqueira falando na CBN, alguma coisa sobre os memristor, chegando no trabalho fui direto para a internet para saber mais sobre este tal “quarto componente eletrônico“:

Os memristores são nanofios com 50 nanômetros de largura, o que compreende cerca de 150 átomos. Os nanofios são formados por duas camadas de dióxido de titânio conectados a condutores. Quando uma corrente elétrica é aplicada a um deles, a resistência dos outros se altera. É esta alteração que pode ser registrada como um bit, a unidade básica de informação.

fonte:www.inovacaotecnologica.com.br

Pensei comigo mesmo: WTF?

Estudei um pouco mais e descobri que memristor foi construído pela primeira vez pela HP em 2005, teorizado pelo cientista Leon Chua (professor da Universidade de Berkeley), este memristor tem uma característica de não perder os dados quando desligados. Imaginem como seria bom não sofrer com aquele frio na espinha quando falta luz no escritório, ou então uma máquina que “boota” em segundos usando o sistema operacional que você mais gosta.

Isso torna mais possível a idéia do google sobre “Computação nas nuvens”, “SaaS - Software-as-a-Service” onde o conceito é básico e claro, as informações estão todas na internet e você só vai precisar de uma maquina simples e pequena para acessar a internet, onde estão os seus documentos, planilhas, apresentações, fotos, “whatever“.