É uma técnica criada por Francesco Cirillo em 1992 e atualmente é utilizada por profissionais de diversas áreas,  inclusive no desenvolvimento de sistemas.

Pomodoro significa tomate em Italiano, ou seja, se preferir chame de técnica do tomate. Esse nome surgiu quando Cirillo fazia faculdade em Roma. Para se concentrar nas suas tarefas, ele decidiu utilizar o que tinha nas mãos: um temporizador de cozinha com formato de tomate. :)

A técnica é tão simples que se resume em 5 passos:

  1. escolha uma tarefa a ser realizada.
  2. configure o temporizador(pomodoro) para tocar em 25 minutos
  3. trabalhe na tarefa até o Pomodoro tocar, depois registre na sua folha de papel.
  4. faça uma pequena pausa (5 minutos)
  5. a cada 4 Pomodoros faça uma paula longa (25 minutos)

Essa técnica consegue trazer características boas de dois mundos:

  • Objetividade: focado na tarefa, sem distrações, controle, disciplina
  • Equilibrio: devido as pausas, que não devem ser utilizadas para fazer pesquisas na net ou outro trabalho no computador. A pausa é um ponto muito importante da técnica e não pode ser preenchida com tarefas, é um momento em que a mente simplesmente deve relaxar.

Como eu não me contentei em só aprender a técnica, resolvi fazer um programinha usando Scratch que é uma simulação da Técnica Pomodoro, acesse agora o Time Tomato.

Timer Tomato

Timer Tomato

Entrei em contato com a equipe que gerencia o site  Pomodoro Technique e eles já disponibizaram minha aplicação no sites deles:  Procure por Timer Tomato
http://www.pomodorotechnique.com/fans.html#pomodorosoftware

Quem quiser conhecer mais sobre a técnica é só baixar o livro gratuito:
http://www.pomodorotechnique.com/resources.html#pomodorobook

Para quem é desenvolvedor de software, pode comprar o vídeo meeting Jquery do PeepCode. Com ele você vai aprender Jquery construindo um aplicativo Pomodoro.

Já tem também um livro em fase beta disponível na pragmatic programmers:  Pomodoro Technique Illustrated: The Easy Way to Do More in Less Time by Staffan Nöteberg disponível em: http://pragprog.com/titles/snfocus/pomodoro-technique-illustrated

Dica final parar quem quer fazer algum software que simule a técnica do tomate, não utilize o nome Pomodoro Technique, pois trata-se de uma marca registrada. Por esse motivo eu coloquei o nome do meu aplicativo de Timer Tomato.

Bom, fico por aqui. O Timer Tomato está sobre licensa creative commons, você pode baixar, reutilizar, modificar, só tem que citar meu nome e não precisa me avisar ;).

Sempre que posso eu tento sair do formato tradicional de ensino (professor fala - aluno escuta) e no decorrer das minhas aulas tenho aprimorado algumas idéias e técnicas que eu gostaria de compartilhar com você nesse post. Uma das saídas para fugir do tradicional é implementar algum jogo ou dinâmica para que os alunos possam “navegar” pelo conteúdo de forma indireta e de preferência que seja divertido.

Vou falar aqui de uma dinâmica chamada: Jogo das Perguntas.

  1. Eu elaboro diversas perguntas, que podem ser de alternativas (a,b,c,d), pode ser também de verdadeiro ou falso ou completar frase.
  2. A folha com as perguntas eu colo em uma cartolina e depois recorto as perguntas individuais, formando dezenas de pequenos cartões, cada um com uma pergunta.
  3. Para finalizar, guardo todos os cartões em uma sacola que não seja transparente, para criar o suspense. :)

A execução:

  • Primeiro eu divido a turma em dois grupos que chamei de grupo A e B.
  • Depois coloco uma música para tocar e enquanto a música estiver tocando os alunos devem repassar a sacola entre si e no momento que a música parar, o aluno que estiver segurando a sacola deve tirar uma pergunta e falar em voz alta.
  • Cada pergunta deve ser direcionada para um grupo específico. Primeira pergunta grupo A, segunda pergunta grupo B e assim sucessivamente.
  • Se o grupo acerta a resposta marca ponto e se errar o ponto vai para o outro grupo.

Essas regras são só propostas iniciais, podem e devem ser modificadas e adaptadas, para você ter uma idéia essas regras em específico foram criadas pelos próprios alunos. É interessante que eles participem o máximo possível.

Agora tem um pequeno detalhe que quero dizer para você.

Para tocar a música eu fiz um programa usando Scratch, que seleciona uma entre duas músicas a serem tocadas, configura as batidas por minutos variando de 60 a 100 e a duração em segundos que cada seção de música vai tocar, tudo de forma aleatória.

Fica legal pois cada rodada de música eu sei que vai tocar uma quantidade de segundos diferente, permitindo que a sacola ande um pouco mais ou um pouco menos a cada seção.

A imagem do programa vocês podem ver abaixo, para executar é só clicar na imagem que é um link que leva para página do Scratch.

Music Game

Music Game

O projeto do scratch você pode baixar, modificar, compartilhar sua modificação, só precisa atribuir que foi baseado no meu projeto e não precisa me pedir permissão para nada disso :). A licensa é Creative Commons

Espero que goste e caso tenha alguma idéia que você usa para fugir da rotina de aula tradicional, compartilhe aqui, deixe seu comentário.

Até logo.

Você que é iniciante, seja bem vindo ao mundo da informática! Nesse texto você vai achar informações úteis, de forma didática, para que você consiga em pouco tempo compreender as características associadas ao mundo da computação.

Para você que é veterano, entusiasta ou já trabalha na área, esse texto serve como referência para preparação de aulas para disciplinas introdutórias de cursos de computação.

O propósito desse texto é dar uma visão geral, por meio de um mapa mental da área de informática, complementada com links, organizados de acordo com a estrutura do mapa mental. Esse texto será atualizado com novos links através das sugestões nos comentários ou quando eu achar links interessantes para disponibilizar.

Mesmo que você não queira se aprofundar nos assuntos mostrados nesse texto, é preciso pelo menos compreender a importância da informática no nosso dia a dia. Atualmente a computação é utilizada em diversas áreas do conhecimento, por exemplo:

  • na medicina, auxiliando nos diagnósticos
  • na compra e venda de produtos (submarino, mercado livre)
  • na comunicação entre pessoas, ou entre setores de empresas (email e messenger)
  • na contratação, seja pela divulgação das vagas pelo twitter ou também na análise do perfil do candidato em redes sociais (orkut)

A lista acima são somente alguns exemplos, mas existem diversas outras utilizações da informática e todas elas servem para facilitar nossa vida em algum sentido. Estamos atualmente arrodeados e muito dependentes da tecnologia: na escola, no trabalho, em casa. Para que a gente possa ter uma ação mais efetiva nessa geração da tecnologia não dá mais para ficar de fora. É preciso superar o medo e começar a caminhada, passo a passo para adquirir o domínio técnico mínimo necessário para conseguir se virar. Mas a questão que quero colocar para você é que procure ver a tecnologia como um brinquedo, ou como algo que você goste de apreciar. A tecnologia não é para ser repassada de forma chata. Ela vem para complementar as nossas relações, ela vem para nos ajudar e o aprendizado de tecnologia deve ser de forma gradual e divertido, porque não.

Então, seja você iniciante ou veterano, aproveite e se divirta com o mundo da informática!

A idéia central é que, de uma forma geral, a informática se divide em 3 partes: Software, Hardware e PESSOAS. Software são os programas. O hardware é a parte física que você pode pegar, são os componentes eletrônicos. Finalmente, como você pode notar, eu coloquei pessoas em maiúsculo. Fiz isso para que fique claro que é o ponto mais importante entre os 3 componentes. Se fosse eliminado os outros dois, as pessoas dariam um jeito de recriar novos componentes e novos programas de acordo com sua necessidade. Também não adianta ter todo um conhecimento técnico se não soubermos lidar com as pessoas. Os maiores problemas em instituições estão nas pessoas. Se um programa ou uma máquina travar, facilmente poderemos substituir ou ajeitar a máquina. Mas, mesmo com o computador e programas funcionando perfeitamente, as pessoas nos seus setores podem criar burocracia desnecessária, podem prejudicar a instituição se não quiserem resolver os problemas com eficiência. Outro comportamento prejudicial é o profissional que ao invés de resolver o problema joga a culpa para outro, “joga a batata quente para o outro”. Enfim, é preciso que além de entender sobre as características da área, o profissional que lida com tecnologia siga um conjunto de princípios que vai auxiliá-lo a lidar com a diversidade e o dinamismo do mercado de trabalho. Alguns desses princípios são:

  • Iniciativa
  • objetividade
  • domínio técnico. Ele é importante, mas sozinho não traz resultados satisfatórios
  • ter a noção que em uma instituição as pessoas devem está em primeiro lugar
  • tentar ver a mundança como oportunidade, ou seja, na maioria dos casos ela deve ser bem vinda
  • questionar e fazer muitas perguntas até achar a causa real de algum problema, nunca se limite ao primeiro “por que”, pois a solução quase nunca está na resposta dessa primeira pergunta
  • por fim, posso sugerir que tente otimizar as atividades, os processos que estiver envolvido tornando-os simples, invente novas formas de fazer a mesma coisa com o objetivo de simplificá-las.

Depois dessa introdução, mostrando as qualidades pessoais imprescindíveis para entrarmos no mundo digital com o pé direito, veja uma foto simplificada do mapa mental sobre informática:

Mapa mental: informática

Mapa mental: informática

O arquivo detalhado do mapa mental você pode encontrar nesse link:
www.slideshare.net/valeriofarias/mapa-mental-informatica

A partir de agora você terá uma seção de links úteis, organizados de acordo com as áreas mostradas no mapa anterior, complementado com um ítem chamado curiosidades, que são as dúvidas geradas durante algumas aulas que ministro e por mais dois outros itens chamados empreendedorismo e informática para concurso:

História:

Classificação dos computadores:

Hardware:

Representação dos dados:

Software:

Empreendedorismo:

Curiosidades:

Informática para Concurso:

  • Acesse o TreinaTom na seção de eventos públicos através do seguinte link: TreinaTom Eventos Públicos. Depois clique no link do evento: COMENTÁRIOS DAS QUESTÕES DE INFORMÁTICA POR WAGNER BARROS.
    TreinaTom é um sistema de ensino à distância feito pela e-genial.

Quando tomamos consciência do suor, sonhos, persistência e entusiasmo das pessoas que iniciaram nossa era digital, todo o esforço de aprender os zeros e uns e todo o universo criado a partir disso passa a fazer sentido, passa a ser algo mais humano, mais próximo de cada um de nós. Por isso resolvi traduzir esse texto que o historiador científico George Dyson escreveu para a revista Make.

Agradeço ao George Dyson e a Mark Fraunfelder que é o Editor chefe da revista Make por liberarem o texto para tradução e publicação em português nesse blog. Foram muito atenciosos e gentis.

Agora fique com o texto:

Olhando para o início do universo digital? Verifique no porão, junto ao lavatório.

Sessenta anos atrás, na primavera de 1946, diversos engenheiros eletrônicos procuraram o Instituto de Estudos Avançados em Princeton, NJ, e pediram um lugar no porão para utilizar suas ferramentas. Eles estavam sem sorte. “O único espaço realmente utilizável no nosso galpão é aquele lavatório ao lado daqueles homens, para o qual você são muito bem vindos” Disse o diretor do projeto do Computador Eletrônico, John Von Neumann. Apesar desta recepção desfavorável, os engenheiros se mudaram, e em abril, os contadores do projeto registraram os primeiros US$ 4 (quatro dólares) por “trabalho com eletricidade”.

O Instituto de Estudos Avançados foi fundado em 1930 como um refúgio para estudiosos em matemática, física, história e arte. Não havia instalações laboratoriais de qualquer tipo. “Isso seria mais sábio do que dar recursos a pessoas que tem tempo livre para pensar no que fazer” O diretor-fundador Abraham Flexner foi avisado em 1939. Nem uma palavra sobre bancadas de trabalho ou ferramentas.

John von Neumann foi um matemático puro que, junto com muitos de seus colegas, voltou-se para o lado aplicações de coisas durante a II Guerra Mundial. Ele gostava de lá, e se recusava a sair. Tendo sido exposto ao poder da computação digital através do seu envolvimento com o programa de armas nucleares em Los Alamos, ele estava impaciente para construir a próxima geração de computadores, e estava bem consciente das implicações dos resultados de Alan Turing em 1936 sobre Máquinas Universais. “Estamos construindo uma,” ele disse a seus engenheiros recém chegados, e a cópia do documento de Turing na biblioteca do IAS foi tão fortemente consultada que sua capa descolou.

Outros grupos estavam envolvidos em projetos semelhantes, mas nenhum era tão rápido nem tão ousado para superar von Neumann.

“Se ele realmente queria um computador”, explicou Arthur Burks, “O que temos de fazer é construí-lo.”

Burks e Herman H. Goldstine, um coronel do Exército transferido do projeto ENIAC na escola Moore, na Filadélfia, se instalaram no segundo andar do Fuld Hall em um pequeno escritório que pertencia ao especialista na teoria da lógica Kurt Gödel, onde começaram a trabalhar, sob a orientação de von Neumann, definindo a arquitetura lógica da máquina.

“O coração do sistema é um clock central, que precisa de um enorme carregamento”, diz a ata da primeira reunião do Projeto de Computação Eletrônica. O circuito deverá ser modular, porque “esse tipo de projeto é favorável para a produção em massa”, acrescentou os engenheiros. “Palavras que codificam as ordens são acessadas na memória exatamente como números”, explicou von Neumann, quebrando a distinção entre os números que significam as coisas e números que fazem as coisas, ficando dessa forma livre de diversos problemas, devido essa simplificação.

Em vez de trazer alguns lógicos matemáticos para um laboratório cheio de engenheiros, von Neumann trouxe um grupo de engenheiros para um ambiente dirigido pelos matemáticos. Embora eles tivessem que começar por construir suas próprias bancadas no Instituto e procurar por componentes excedentes da guerra da melhor forma possível, não havia ninguém por perto para dizer: “Bem, Dr. von Neumann, isso parece interessante, mas nós construímos computadores como este … ”

O engenheiro-chefe foi Julian Bigelow, ex-colega de Norbert Wiener e co-autor do paper de 1943: “Comportamento. Propósito e Teleologia”. ao redor

Cada Bit do universo digital que nós conhecemos agora pode ser rastreada diretamente para os primeiros dígitos binários que ganharam vida no verão de 1951.

do qual o início do movimento cibernético se fundiu. Seu trabalho era pegar projeto lógico e abstrato produzido por Burks, Goldstine, e von Neumann, e trazê-lo a vida como uma máquina.”

Julian teria as idéias, Ralph Slutz detalharia as idéias, e em seguida, James Pomerene e eu tentávamos fazer os elétrons funcionar como planejado”, explica Willis Ware, um dos engenheiros originais.” Julian foi o arquiteto dessa máquina.” O grupo de Bigelow logo ultrapassou seu quarto no galpão da Fuld Hall, e se mudaram para um edifício construído às pressas na borda do Instituto de 600 acres.

No Instituto de Estudos Avançados, era mais fácil encontrar um especialista em mecânica quântica do que alguém que trabalhou em seu próprio carro. Bigelow foi a exceção - o único membro permanente do Instituto que rotineiramente desmantelava motores com suas próprias mãos. Ele entrou na construção do novo computador como um engenheiro de verdade. As entranhas da nova máquina (a primeira a ter uma substancial, memória plenamente de acesso aleatório disponível em velocidades Megaciclos) tinha 40 “Williams Tubes” . 20 em cada lado do quadro principal, de modo que o computador não só parecia, mas funcionava como um enorme motor V-40 com uma quantidade grande de cabeçotes e válvulas.

Cada Bit do universo digital que nós conhecemos agora pode ser associado diretamente aos primeiros 40.960 dígitos binários que ganharam vida no verão de 1951, como uma matriz de 32×32x40 de pontos carregados na superfície de delicados tubos de raios catódicos.

O primeiro cálculo importante, um problema termonuclear para Los Alamos, que foi codificado por uma equipe que incluia Hedy Selberg e Klari von Neumann, funcionou durante seis semanas sem parar, e resultou no sucesso da bomba de hidrogênio. Nada mau para uma execução improvisada.

Os cosmologistas podem nunca saber o que existia antes do big bang, mas no início do universo digital, nós sabemos que era Julian Bigelow, James Pomerene, Herman Goldstine, Ralph Slutz, Jack Rosenberg, Willis Ware, e um pequeno grupo de ajudantes que trabalharam para realizar os sonhos de Leibniz, Babbage, Turing, Atanassoff, Zuse, von Neumann, e muitos outros que foram homenageados por suas descobertas.

Equipe da criação do computador IAS. Créditos da foto para Alan Richards

Equipe da criação do computador IAS. Créditos da foto para Alan Richards

Foto: Fazendo uma revolução: Funcionários do Instituto de Estudos Avançados no projeto do compuador eletrônico, ca. 1952. Depois de John von Neumann decidiu construir um moderno computador digital com programas armazenados de alta velocidade eletrônica, diversas pessoas tiveram que projetar, construir a máquina e escrever o código para fazê-la funcionar. Algumas dessas pessoas com identificação incompleta são retratados aqui.

O computador inteiro foi construído na oficina do projeto da máquina primitiva e todo o código foi montado à mão, usando endereçamento absoluto, bit a bit. O computador finalizado, possuia um total de 3.474 tubos a vácuo, tinha uma memória interna de 40.960 bits, armazenadas como matrizes de 32×32 pontos carregados nas superfícies dos 40 “Williams Tubes” (tubos de raios catódicos). Ele entrou em serviço durante o verão de 1951 e seu projeto foi repetido amplamente em todo o mundo.

Esse manifesto foi criado por Ulla-Maaria Mutanen, uma estudante de Ph.D. da universidade de Helsinki na Finlândia. Ela pensou sobre porque nós adoramos fazer coisas. Gostei muito desse manifesto, pois tem tudo a ver com a ideia de aprender fazendo. Através da experimentação conseguimos nos divertir enquanto aprendemos coisas. O texto original você encontra aqui. Fiquem agora com o manifesto:

  1. As pessoas ficam satisfeitas por terem sido capaz de criar coisas, porque elas podem ver-se nos objetos que fazem. Isso não é possível nos produtos comprados.
  2. As coisas que as pessoas fazem possuem poderes mágicos. Elas têm significados ocultos que outras pessoas não podem ver.
  3. As pessoas fazem coisas que normalmente querem manter e atualizar. Crafting (artezanato) não é contra o consumo. É contra jogar coisas fora.
  4. As pessoas procuram reconhecimento para as coisas que elas fazem. Principalmente quando se trata de seus amigos e familiares. Isso se manifesta como uma economia de presentes.
  5. Pessoas que acreditam que estão realmente produzindo coisas legais buscam maior exposição para seus produtos. Isso cria oportunidades para a publicação de canais alternativos.
  6. Trabalho inspira trabalho. Vendo o que as outras pessoas têm feito gera novas idéias e projetos.
  7. Essencial para criação são ferramentas, que são acessíveis, portáteis e fácil de aprender.
  8. Materiais se tornam importantes. Conhecer do que eles são feitos e onde obtê-los torna-se essencial.
  9. Receitas tornam-se importantes. A capacidade de criar e distribuir receitas interessantes se torna valioso.
  10. Aprender técnicas aproxima as pessoas. Isso cria comunidades de praticantes online e offline.
  11. Pessoas que gostam de criar coisas buscam oportunidades de descobrir coisas interessantes e se encontrar com os criadores. Isso cria mercados.
  12. No fundo, fazer coisas é uma forma de diversão.

Vou falar um pouquinho do que foi talvez a maior quebra de paradigma que já passamos. Se não foi a maior, mas foi muito significativa, em que a verdade passou a ser definida através da experimentação, que realmente comprovava as hipóteses ou as descartava. Vou falar um pouquinho sobre Platão, Aristóteles e finalmente Galileu. Calma, não é debate sem sentido não, trata-se de argumentos vitais para tomarmos decisões mais justas atualmente. Começaremos então por Platão.

Platão

Platão

Platão considerava mais importante filosofar sobre as formas do triângulo do que observar o mundo à sua volta. Isso se dava porque ele considerava o mundo natural inferior ao mundo das idéias.

Aristóteles

Aristóteles

Aristóteles, discípulo de Platão, deixou sua marca na história da ciência, porque discordou do seu mestre. Ele foi um dos primeiros a ir contra o desprezo filosófico pelo mundo natural.

Aristóteles dedicou à natureza uma atenção metódica e um requintado registro de suas observações.

Também usou sua lógica recém codificada para estudar a causa de cada coisa que observava e assim dar-lhe uma explicação racional e consistente. A partir dele a observação científica ganhou seu caráter particular, que a diferencia do olhar apenas curioso com que os homens sempre contemplaram o mundo. A observação científica é metódica, ou seja, segue um método, regras que definem o que, como e quando observar de modo a obter o máximo de informação e aprendizado sobre o que se observa.

Mas faltava algo no modo de fazer ciência de Aristóteles. A observação metódica e a conclusão racional, por si só, não garantem uma explicação correta sobre as causas e mecanismos dos fenômenos, uma vez que não podemos ter certeza se todos os fatores que influenciam o fenômeno em questão foram devida e corretamente observados e analisados.

É aqui onde entra Galileu. Com sua atitude, Galileu introduzia ao método científico uma de suas mais indispensáveis características - não basta uma boa observação e explicação de um fenômeno, é preciso que experimentos metódicos validem esta observação e explicação.

Galileu Galilei

Galileu Galilei

Com Galileu a ciência ganhou um requisito a mais, agora ela se tornou experimental. O conhecimento a partir dele é obtido de modo empírico, ou seja, pela observação e experimentação do que percebíamos na natureza.

Foi com esta convicção que Galileu desafiou outro dogma aristotélico, a idéia vigente na época de que a Terra era o centro do universo e que o sol e as estrelas giravam em torno dela (geocentrismo). Esta idéia não era de Galileu, pois já havia sido anteriormente proposta de modo elaborado por Copérnico e Kepler. Porém com suas experimentações ele conseguiu comprovar a falha na teoria geocentrica e apesar de ser silenciado na época pela autoridade da inquisição, suas idéias permaneceram até hoje e cada pessoa que trabalha em uma instituição de ensino superior atualmente deve ter pelo menos a consciência que todo esse formato atual de ver o mundo foi bastante influenciado por Galileu.

Depois disso o homem passou a tomar consciência que o mundo não gira em torno dele, que não passamos de poeira se formos comparados com o universo a nossa volta, que dependemos de diversos fatores que muitas vezes nem imaginamos para continuarmos vivos.

Depois dessa introdução vamos ao que interessa. Se não passamos de poeira cósmica então vamos pelo menos ter uma noção do que a poeira é capaz, seja no ambiente de uma instituição acadêmica ou na sociedade em geral.

Devemos lembrar que uma única partícula de poeira, pode danificar todo o sistema de armazenamento do disco rígido.

Vamos fazer uma analogia dessa partícula de poeira com os egos super-inflados dos profissionais que não sabem o verdadeiro significado do título e se deixam levar por aparência, estatus e se escondem atrás dos cargos (eu falo sobre isso no meu post: caindo na real sobre a carreira ).  Para piorar ainda mais a situação, existem algumas pessoas com espírito de porco, que não se esforçam para criar uma visão sistêmica (falo sobre visão sistêmica no post: chega de tanta reclamação)  e participativa. Esse tipo de pessoa só sabe reclamar de tudo ao redor e não faz nada para melhorar o que está ao seu lado.

Esse tipo de profissional tem a mesma característica nociva que a poeira tem quando está presente dentro do HD. Quando esse tipo de profissional é valorizado em qualquer instituição, o ambiente fica poluído, injusto e e desumano. Assim como Galileu teve que admitir coisas que ele sabia que não era verdade na inquisição, esse sistema passa a idolatrar profissionais por meio de métodos que não são comprovados empiricamente. Esse formato está preso à lógica aristotélica de que basta que faça sentido ou que tenha lógica para ser comprovado, deixando a experimentação de lado.

Atrazos podem acontece em um país devido essa visão míope, sem experimentação. Um caso aqui no Brasil é a tentiva de regulamentar a profissão de analista de sistemas , dizendo que só poderá ser exercída por quem tiver passado pela faculdade da área de tecnologia (ciência da computação e afins). Lembrando que houveram também outras tentativas.

Isso é um retrato da visão aristotélica ainda presente. Se colocarmos as idéias de Galileu para funcionar, facilmente detectaremos que entre os maiores profissionais da informática, estão os que estudaram por conta própria (autodidatas), que não se identificaram com o sistema engessado das universidades e também profissionais de diversas outras áreas como Física, Matemática e Engenharia (Esse argumento de profissionais de outras áreas e outros argumentos são detalhados nessa carta).

Uma lei dessa é um atrazo para o País, pois nivela por algo que não comprova capacitação e comprometimento profissional (título), nivela na maior parte das vezes por baixo e isso é um retrossesso.

Agora vamos voltar a falar um pouco mais sobre a poeira.

Se individualmente somos compovadamente insignificantes comparados ao que existe ao nosso redor então a única coisa que poderá nos fortalecer e nos dá um propósito maior é que as nossas relações sejam baseadas no respeito, na consciência de que não somos perfeitos, na consciência de que temos que fazer algo para mudar para melhor os ambientes em que frequentamos. Agindo dessa forma encontramos uma parte do sentido da nossa existência que tanto buscamos e passamos a nos sentir integrados, úteis e finalmente humanos.

Uma analogia que podemos fazer é uma duna na praia, um só grão de areia não poderia dar conta. A única forma de se conseguir a beleza natural de uma duna é por meio de milhoes de grãos em conjunto.

Dunas de Genipabu - Fonte:Sônia Furtado

Dunas de Genipabu - Fonte: Sônia Furtado

Colocando esse paradigma para a instituição de ensino significa que todos os integrantes da instituição devem ser tratados primeiro como seres humanos e segundo pelas tarefas que estão executando. Você pode está pensando:  Cadê o título? O título não entra nesse paradigma, pois estamos usando o método de experimentação iniciado por Galileu. Então vamos continuar a discussão sobre experimentação.

Apesar do título servir para contratação no nosso país. Devemos nos lembrar do principal papel de uma instituição de ensino: preparar os estudantes para o futuro.

Baseado nessa premissa iremos detectar de forma contínua se os professores com os maiores títulos estão realmente preparando os alunos, construindo uma relação baseada na liderança, na participação ativa dos alunos, enfim, criando um formato mais humano de aprendizado.

Fazendo esse experimento podemos detectar até que ponto aquele profissional realmente está vestindo a camisa da instituição e está contribuindo para o seu crescimento. Passaremos do formato aristotélico de “Tenho o título portanto sou bom e o universo gira em torno de mim”. Para “Consegui minha titulação, porém isso quer dizer que agora minha responsabilidade com relação as pessoas e o ambiente ao meu redor aumenta, tenho que me comportar com respeito, tendo consciência de que sozinho não sou nada e preciso orientar as pessoas ao meu redor para que possamos crescer em conjunto.”

No exemplo que coloquei anteriormente da lei dos profissionais de informática, fica claro que ela não tem base na experimentação e tudo que não puder ser comprovado por experimentação é duvidoso e pode ser prejudicial para a nossa sociedade. No caso da lei é óbvio que ela nivelaria os profissionais de informática de nosso país por baixo, colocando gente incompetente (Obs.: Nem todos são incompetentes, o argumento é que o título não garante competência) para assumir cargos só porque elas possuem um pedaço de papel que não condiz com a realidade, já que a realidade só pode ser comprovada com a experimentação, aquela mesma que Galileu nos deixou de presente.

Quero repetir agora o título do post: Vamos honrar Galileu! Isso quer dizer vamos honrar suas idéias e questionar idéias enlatadas, vamos nos permitir e só aceitar algo depois de experimentações. Vamos tomar consciência que não passamos de poeira, que um único ser quando age de forma mesquinha, pode causar danos a todo um ambiente de trabalho, sociedade, mas que nossas forças em conjunto pode nos impulsionar para nosso crescimento como seres humanos.

Why the lucky stiff

Why the lucky stiff

Para finalizar quero repetir aqui uma frase do “why the lucky stiff” ou simplesmente _Why, que é um artista e um excelente programador, tiradas do seu twitter que foi deletado:

When you don’t create things, you become defined by your tastes rather than ability. your tastes only narrow & exclude people. so create.

Quando você não cria coisas você acaba definido por seus gostos ao invés de suas habilidades. Seus gostos só reduzem sua visão e excluem pessoas. então crie.

Páginas pesquisadas:

História da ciência parte 1
História da ciência parte 2

Nesse texto eu sugiro uma brincadeira para descontrair a turma e fazer com que eles interajam com o conteúdo abordado.

Trata-se de simular um contador binário. Um contador binário é uma máquina (como um computador), que conta em binário (0 e 1). Um grupo de pessoas pode se tornar um contador binário, e é uma boa maneira de ver como funciona o sistema numérico.

Chame 5 voluntários e peça para que eles alinhem-se em uma fileira, com o braço direito de todos na horizontal, com a mão tocando no ombro da pessoa ao lado. A última pessoa é a unidade e tem que fazer a maior parte do trabalho. É a extremidade esquerda na linha (mas parece que com a direita, pois estamos diante dela). A pessoa do outro lado quase não faz nada, apenas dispõe de um ombro! Existem apenas duas regras.

* A pessoa da direita levanta ou abaixa o braço para criar cada número. Ele deve esperar até que os demais façam o movimento antes de começar o próximo número.

* Todas as pessoas não fazem nada a não ser que seu ombro seja tocado pela pessoa anterior. Quando for tocado no ombro eles devem mudar de estado: Se o braço está em baixo, levante para cima. Se o braço estiver levantado baixe com cuidado e toque no ombro de quem estiver do lado.

Para facilitar crie cartazes com catolina com os números: 1,2,4,8,16 representando as potências sequencialmente da base 2.  Para saber o valor em decimal, basta somar os valores decimais (que estão nos cartazes) das pessoas que estiverem  com o braço levantado. A idéia dos cartazes você pode ver na imagem a seguir:

Você pode ter uma noção mais intuitiva com o seguinte programa que fiz usando scratch

Se quiser baixar esse projeto e ver também meus outros projetos acesse: Esse link.

Para fazer esse projeto me inspirei no seguinte exemplo

Agora é só se divertir com a turma.

Para quem não é da área de informática e até mesmo para quem é programador mas sempre trabalhou com linguagens de alto nível esse artigo é muito esclarecedor.  A gente passa a ter consciência e respeitar o esforço que os primeiros programadores e projetistas tiveram para chegar ao que temos hoje. Para ler o artigo original acesse esse link. Fique agora com a tradução:

Esta é uma breve introdução à linguagem assembly. Assembly é a linguagem de programação mais básica disponível para qualquer processador. Com a linguagem assembly, um programador só trabalha com as operações executadas diretamente sobre a CPU física. A linguagem Assembly carece de alto nível de conforto, tais como variáveis e funções, e não é portátil entre as diversas famílias de processadores. No entanto, assembly é a linguagem de programação mais poderosa disponível no computador, e ela dá aos programadores a visão necessária para escrever código eficiente em linguagens de alto nível. Aprender assembly é valorizar o tempo e o esforço de todos os programadores sérios.

O Básico

Antes de podermos explorar o processo de escrever programas de computador, temos que voltar para o básico e saber exatamente o que é um computador e como ele funciona. Cada computador, não importa quão simples ou complexo, tem no seu cerne exatamente duas coisas: uma CPU e alguma memória. Juntas, essas duas coisas são o que tornam possível que o seu computador execute programas.

No nível mais básico, um programa de computador nada mais é do que uma coleção de números armazenados na memória. Números diferentes dizem para a CPU fazer coisas diferentes. A CPU lê os números um de cada vez, decodifica-os e executa o que os números dizem. Por exemplo, se a CPU lê o número 64 como parte de um programa, ela irá adicionar 1 ao número armazenado em um local especial chamado AX. Se a CPU lê o número 146, vai trocar o número armazenado em AX com o número armazenado em outro local chamado BX. Ao combinar várias operações simples, como estas em um programa, um programador pode fazer o computador realizar muitas coisas incríveis.

Como exemplo, aqui estão os números de um simples programa de computador: 184, 0, 184, 142, 216, 198, 6, 158, 15, 36, 205, 32. Se você digitar esses números na memória do seu computador e executá-los no MS-DOS, você veria um sinal de dólar ($) colocado no canto inferior direito da tela, uma vez que é o que estes números dizem que o computador faça.

Linguagem Assembly

Embora os números do programa acima façam sentido para um computador, eles não são claros para um ser humano. Quem poderia imaginar que o código colocaria um cifrão na tela? Claramente, manipular números diretamente é uma péssima maneira de escrever um programa.

Não tem que ser assim. Um tempo atrás, alguém veio com a idéia de que os programas de computador poderiam ser escritos com palavras, em vez de números. Então um programa especial chamado montador pegaria as palavras do programador e converteria em números que o computador pudesse entender. Este novo método consiste em escrever um programa em linguagem Assembly. Isso salvou os programadores de milhares de horas de esforço, já que não tinham mais que procurar números difíceis de lembrar nas costas de livros de programação, em vez disso bastava usar palavras simples.

O programa acima, escrito em linguagem assembly, é assim:
MOV AX, 47104
MOV DS, AX
MOV [3998], 36
32 INT

Quando um montador lê este programa exemplo, converte cada linha de código em uma instrução de nível de CPU. Este programa utiliza dois tipos de instruções, MOV e INT. Em processadores Intel, a instrução MOV movimenta dados, enquanto a instrução INT transfere o controle do processador para os drivers de dispositivo ou sistema operacional.

O programa ainda não está completamente claro, mas é muito mais fácil de entender do que era antes. A primeira instrução, MOV AX, 47104, informa ao computador para copiar o número 47104 no local AX. A próxima instrução, MOV DS, AX, informa ao computador para copiar o número em AX para o local DS. A próxima instrução, MOV [3998], 36 diz ao computador para colocar o número 36 em memória na posição 3998. Finalmente, INT 32 finaliza o programa, retornando ao sistema operacional.

Antes de prosseguirmos, gostaria de explicar como funciona este programa. Dentro do CPU existe uma quantidade de locais, chamados registradores, que podem armazenar um número. Alguns registradores, como o AX, são de uso geral, e não fazem nada de especial. Outros registradores, como o DS, controla a forma como o processador funciona. DS funciona como um registrador de segmento, e é usado para escolher qual área de memória da CPU pode gravar. Em nosso programa, vamos colocar o número 47104 para DS, que fala para a CPU acessar a memória na placa de vídeo. A próxima coisa que nosso programa faz é colocar o número 36 na localização 3998 da memória da placa de vídeo. Como o 36 é o código para o sinal de dólar “$” e 3998 é a posição de memória do canto inferior direito da tela, um cifrão aparece na tela alguns microssegundos depois. Finalmente, o nosso programa informa a CPU para realizar o que se chama uma interrupção. Uma interrupção é usada para parar um programa e executar um outro em seu lugar. No nosso caso, usamos a interrupção 32, que termina o nosso programa e retorna para o MS-DOS, ou qualquer outro programa que foi usado para iniciar o nosso programa.

Executando o programa

Vamos agora rodar este programa. Primeiro, certifique-se de escrever estas instruções em outro local, para servir de referência durante a codificação. Em seguida, clique em seu menu iniciar, e execute o programa chamado “prompt do MS-DOS”. Uma tela preta com texto branco deverá aparecer. Estamos agora no MS-DOS, a forma como os computadores eram utilizados 20 anos atrás. MS-DOS existia antes do mouse ser utilizado, então você deve digitar os comandos no teclado para fazer o computador fazer coisas.

Primeiro, eu quero que você digite a palavra “debug”, e pressione enter. O cursor irá se mover para baixo uma linha, e você deve ver o prompt de depuração, que é um traço simples. Estamos agora em um programa chamado de depuração. Depuração é uma utilidade poderosa que lhe permite acessar diretamente os registos e memória de seu computador para várias finalidades. No nosso caso, queremos colocar o nosso programa na memória e executá-lo,
então vamos usar um comando debug, para montar. Vá em frente e digite “a100″ agora. O cursor irá mover para baixo outra linha, e você vai ver algo como “1073:0100″. Esta é a localização de memória, nós vamos colocar as instruções assembly. O primeiro número é o segmento, e o segundo número é a posição de memória dentro do segmento. Seu programa de depuração provavelmente irá escolher um segmento diferente do meu, então não se preocupe se ele for diferente. Outra coisa a observar é que a depuração só entende números hexadecimais, que são uma espécie de atalho do computador. Os números hexadecimais podem conter letras e dígitos, então se você ver algo como “63AF”, não se preocupe.

Vamos em frente escrever nosso programa agora. Digite cada uma das instruções abaixo no Debug exatamente como elas aparecem, e pressione enter após cada uma. Quando você terminar de inserir a última instrução, pressione enter duas vezes para dizer ao Debug que nós inserimos instruções.

mov ax, B800
mov ds, ax
mov byte [0F9E], 24
int 20

Como vocês podem ver, eu converti todos os números em hexadecimal, e fiz algumas mudanças para o debug poder entender o que está acontecendo. Se você cometer um erro ao entrar no programa acima, pressione enter duas vezes, digite novamente “a100″, e começe a introduzir as instruções no início do programa.

Depois de ter entrado no programa, você pode ir em frente e executá-lo. Basta digitar “g” e pressione enter quando estiver pronto para iniciar o programa. Você deve ver um sinal de dólar no canto inferior direito da tela, e as palavras “Program terminated normally.” Estas palavras são colocadas pelo Debug para informá-lo que o programa terminou normalmente. Parabéns! Você acabou de inserir e executar o seu programa feito em Assembly!

Vamos voltar para o Windows agora. Vá em frente e digite “q” para sair de depuração. Agora, digite “exit” para sair do MS-DOS. Agora você deve estar de volta no Windows.

No próximo artigo falarei da linguagem assembly mais detalhadamente.

fupload é um script feito em Visual Fox Pro. Criei o fupload para facilitar o upload de arquivos pdf e zip em massa, aqui no meu trabalho. Feito usando o princípio de “coçar a própria coceira”.

Como eu estava querendo aprender a usar o git e o github, resolvi organizar melhor o código e disponibilizá-lo como open source. Esse script foi feito para plataforma Windows. É necessário ter o Visual Fox Pro instalado na máquina. Para complementar o script uso um arquivo .bat que faz o envio para o servidor.

Quem utiliza outros sistemas operacionais poderá se inspirar na solução e criar outras soluções multiplataformas.

Agora fiquem com o tutorial para utilizar o fupload:

1. baixe o arquivo .zip do fupload e descompacte na sua unidade c:\. O aplicativo está no seguinte link:

http://github.com/valeriofarias/fupload/tree

Se você usa o git poderá fazer um clone do projeto com o seguinte comando:

git clone git://github.com/valeriofarias/fupload.git

Na figura abaixo você pode ver a hierarquia de pastas do utilitário fupload:

hierarquia de pastas do fupload

hierarquia de pastas do fupload

  • backup -> (antes era historic) armazena uma cópia de todos os arquivos que são enviados para o servidor
  • log -> armazena os arquivos de log
  • script -> pasta principal do utilitário. Nela se encontra o arquivo fupload.prg que é o programa principal. Nela também se encontra o arquivo .bat.
  • start -> como o nome já diz, essa pasta é onde você coloca os arquivos que serão enviados para o servidor. É o primeiro passo.
  • tmp -> quando o arquivo é processado pelo script fupload, ele é renomeado e enviado para essa pasta, nessa pasta também é criado o arquivo de log que será utilizado para criar a página HTML.

O script já vem pré-configurado para ser executado na unidade c, mas você pode facilmente modificar as configurações para executá-lo em outra unidade(d:\, e:\). É só modificar a constante: DEFAULTFOLDER, para a unidade que você desejar.

Obs.: É preciso também configurar a pasta destino do servidor. No caso do script modifique as constantes: SERVERFOLDERPDF (caminho no servidor para os arquivos .pdf) e SERVERFOLDERZIP (para arquivos .zip).  Na imagem abaixo você pode ver o trecho do código do arquivo fupload.prg:

configuração do fupload

configuração do fupload

É preciso também fazer a configuração do arquivo upload.winscript. Primeiro é preciso renomear esse arquivo para upload.bat. Depois abra-o no notepad, modifique o pathserver e salve o arquivo:


@ECHO OFF
ECHO PAUSA DE SEGURANCA
PAUSE

COPY c:\fupload\tmp\*.pdf pathserver\pdf\
COPY c:\fupload\tmp\*.zip pathserver\zip\

MOVE c:\fupload\tmp\*.log c:\fupload\log\
MOVE c:\fupload\tmp\*.zip c:\fupload\backup\
MOVE c:\fupload\tmp\*.pdf c:\fupload\backup\

DEL c:\fupload\tmp\*.*

Feita a configuração, agora é só colocar os arquivos que você quer enviar para o servidor na pasta start.
No exemplo abaixo você pode ver que os arquivos tem acentos e espaços vazios entre as palavras. É aqui onde o fupload faz a mágica, eliminando os espaços vazios e os acentos:

primeiro passo: coloque os arquivos na pasta start

primeiro passo: coloque os arquivos na pasta start

Agora você já pode carregar o fupload.prg no Visual Fox Pro como na imagem abaixo. Se quiser usar sem parâmetro não tem problema nenhum. O parametro é só para colocar um prenome no início do arquivo identificando sua natureza como: doc, form, etc.


Carregando o fupload.prg no Visual Fox Pro

Carregando o fupload.prg no Visual Fox Pro

Quando o processamento é finalizado aparece o messagebox abaixo:

Messagem indicando que o script foi finalizado

Messagem indicando que o script foi finalizado

Agora já podemos acessar a pasta tmp e ver o resultado. Note que os arquivos estão todos renomeados, agora sem acento e sem espaço vazio. Foi adicionado também um prenome no início, nesse caso doc. Também foi criado o arquivo de log:

arquivos modificados pelo fupload

arquivos modificados pelo fupload

Vamos dar uma olhada agora no arquivo de log. O nome do arquivo segue o padrão: “logupload_ano_mes_dia__hora_minuto_segundo_[prenome (facultativo)]_n[número de arquivos].txt”. Quando você abre o arquivo de log. Já aparece o código HTML definitivo para colocar na página. Se quiser você pode alterar o texto do link para algo mais chamativo ou legível. Depois é só copiar e colocar na página HTML.

arquivo de log

arquivo de log

Para finalizar é só executar o arquivo upload.bat (figura abaixo), na pasta script. Esse procedimento enviará os arquivos para o servidor e limpará a pasta tmp. Os arquivos .pdf e .zip serão copiados também para a pasta backup, só por segurança. O arquivo de log será movido para pasta log. Isso te dar um histórico dos últimos uploads. No momento que você quiser, poderá apagar o conteúdo da pasta backup.

arquivo upload.bat

arquivo upload.bat

Esse post é baseado no vídeo de Richard St. John: “8 segredos do sucesso”, que está disponível no TED.

Quero deixar bem claro que o vídeo de Richard é infinitamente melhor do que esse humilde post.

Eu apenas assisti ao vídeo algumas vezes, me foquei na imagem abaixo (última imagem do vídeo), e comecei a escrever o que vinha na minha mente a respeito dessas palavras-chave. Não é uma tradução do vídeo, é a minha forma de ver as palavras-chave que levam ao sucesso.

8 segresdos do sucesso. Créditos para Richard St. John

8 segredos do sucesso. Créditos para Richard St. John

Fique agora com o texto:

Vamos imaginar o sucesso como um percurso do ponto A para o ponto B.

Acabei de levantar da cama no ponto A e quero ser bem sucedido. O que devo fazer?

Nada começa sem boas IDÉIAS. Empresas e profissionais bem sucessidos começaram com boas idéias. Só que é preciso mais porque idéia sem ação é sonho. É preciso colocar a mão na massa! Sucesso é um sonho que se torna realidade e alimenta novos sonhos.

Já tenho boas idéias, mas tenho que me olhar no espelho um pouco para ter a certeza que no longo prazo eu ainda vou continuar trabalhando nessas idéias com empolgação. Se não houver PAIXÃO pela idéia, não haverá energia suficiente para mantê-la. Faça o que você gosta, que o dinheiro virá como consequência. Caso não possa fazer isso, lute até que você consiga fazer o que gosta. Somente o ato de lutar já dá satisfação.

Já sei o que eu quero e tenho paixão por isso, então vamos ver o que devo fazer durante a jornada:

Eu preciso ser muito BOM no que eu faço, para se destacar dos demais. Bom o suficiente para que ninguém me imite no curto prazo.

Para chegar a essa eficiência é preciso TRABALHAR duro, pois é a única forma de chegar lá e se manter lá. Já vi muitos casos de filhos que assumiram as empresas do pai sem esforço algum e deixaram a empresa com dívidas.

Não posso simplesmente executar as tarefas e ir dormir. Eu devo EMPURRAR minha mente e meu corpo para frente sempre, estar aberto a experimentações, procurando pontos de vistas diferentes, estar com uma mente sã em um corpo são.

No meio de tanta tarefa e informação é preciso manter o FOCO para continuar no rumo certo. Muitas vezes é preciso filtrar as informações e acompanhar somente o que for essencial, o ruído deve ser eliminado.

Em quase 100% dos casos você não terá frutos da noite para o dia. O seu objetivo será modificado e aperfeiçoado durante a jornada. O caminho está cheio de altos e baixos e é preciso PERSISTÊNCIA para suportar a estrada acidentada.

No início era só uma idéia e a paixão por torná-la real. Durante o processo utilizamos vários mecanismos para chegarmos ao objetivo, mas, de nada adianta se outras pessoas não gostarem do que estou fazendo. É preciso ter algo que alimente esse sistema e torne-o coletivamente sustentável. Esse ingrediente que falta é gostar de SERVIR. Gostar de servir implica em olhar e tratar o ser humano como um ser humano e não como uma fonte de dinheiro. Quando você gosta de servir, todo seu esforço será focado para algo que mudará o meio que você vive ou uma pequena parte dele para melhor. A partir daí seu sistema ganha vida própria, essa vida eu chamo de sucesso e finalmente chegamos ao pontos B.

Sobre esse blog

Geyserway = Desenvolvimento Web + Negócios + Tecnologia + Administração + Finanças + Marketing + Vendas + Reputação + Gostar de Servir

-->