h1

Linux cada vez mais perto do Windows…

Abril 5, 2008

Hoje eu vi uma coisa engraçada.

Estava no PC procurando informações sobre como fazer o upgrade do meu MP3-Player xing-ling, quando tive a idéia de inserir o CD-ROM que veio com o aparelho no PC. Eu só queria alguma informação sobre o aparelho, para baixar o arquivo certo.

Mas sabia que era um CD para Windows, e que funcionaria como um CD comum no Linux. Mas não.

Qual foi minha surpresa ao colocar o CD no leitor? Foi esta mensagem:

Eu nem li direito o que estava escrito e cliquei no segundo botão.

Logo em seguida, vejam só o que me aparece:

Sim, isto mesmo! O Xfce (estou utilizando quatro ambientes: WindoMaker, Enlightenment-0.17, Xfce e KDE) agora executa CD-ROMS como no Windows! Aliás, ele executa como se fosse o Windows, já que utiliza o wine para isso.

Na minha opinião este é um recurso excelente, que só vem a ajudar usuários do Windows a migrar para sistemas operacionais “alternativos”. Mas também pode trazer problemas, principalmente no caso de mídias que contenham vírus, já que o wine irá executar o autorun de forma besta como faz o Windows. Lógico que o risco de um vírus para Windows via wine fazer alguma destruição no Linux é baixíssima, mas devemos levar em consideração que o wine é capaz de acessar os arquivos do usuário, trazendo risco à segurança destes.

Mas está aí um recurso bacana. Ainda bem que o gerenciador de mídias do Xfce pelo menos pergunta se você quer executar a mídia, coisa que o Windows só veio fazer no Vista…

Mas hoje não é dia de falar mal do Windows ;-)

h1

Porque o Linux é ruim e o Windows o melhor

Março 29, 2008

 

Não. Não é um texto troll (que é o mesmo que um louco dizer que não é louco). Trata-se de mostrar um vídeo que acabo de ver no Youtube, linkado pelo pessoal da lista de discussões FUG-BR, onde um cara afirma com argumentos convincentes à sua visão, de que o Windows é muito mais seguro que o Linux. Na verdade a intenção do vídeo não era nem dizer que o Windows é melhor que o Linux, mas que o Linux e PIOR que o Windows - da mesma forma que algumas vezes fazemos isto com o Windows.

O que me chamou a atenção no vídeo não foi tanto a luta anti-fanboys - nunca disse que tem relação com o meiobit, olha lá! - mas os argumentos utilizados pelo autor do vídeo para defender o que dizia.

Seu argumento: o windows é mais seguro que o linux, já que naquele o usuário não consegue apagar diretórios essenciais ao sistema, enquanto que neste isto é possível.

Para demonstrar, ele nos mostra que, após executar no linux o comando “sudo rm -rf /”, o sistema simplesmente pára de funcionar. E isto é a mais pura verdade!

Já no windows o comando “deltree c:\windows” não afeta o sistema.

Ainda segundo o autor, o Linux só não tem vírus por não ser dominante no mercado de sistemas operacionais. Tem lógica: se ninguém usa, ninguém cria malwares.

Agora tento analisar o outro lado das questões, e expressar minha opinião.

Primeiramente, faço citação a um colega meu, analista de sistemas, que me disse uma vez: “acesso físico à uma máquina É falha de segurança”. Um sistema que é acessado fisicamente nunca é 100%. Isto é fato. Há várias maneiras de se invadir um sistema fisicamente. Algumas são um tanto inusitadas, como modificar dados em disco com um imã, derrubar um servidor jogando água no processador etc.

Como escrever um programa
Surrupiado do blog do Peczenyj 

O que isto siginifica dentro do contexto em questão? Para que o usuário possa apagar o diretório raíz de um sistema Unix, ele deve estar logado como root ou usuário com poderes equivalentes. Isto é fato. O root é considerado o usuário deus de um sistema Unix. Ele pode fazer tudo que quiser. Exatamente tudo. Inclusive fud%$& o sistema. Tanto que a maior recomendação que fazemos às pessoas é: não utilize o computador como root!

O Unix implementa as permissões de arquivo no próprio sistema de arquivos. Isto é básico. É físico: existem alguns bytes em cada arquivo que diz quem pode mexer em tal arquivo. Se um usuário tem direitos sobre um arquivo, não existe razão para que seja impedido de fazer o que quiser com ele!

Isto denuncia uma grande diferença no modo como o Unix e o Windows vêem a segurança do sistema: no unix, toda a segurança existe para proteger o sistema de ataques externos; já no windows o sistema se protege do próprio usuário.

Para exemplificar: quando você quer recuperar uma instalação do Windows XP, dá boot pelo CD de instalação do sistema e, para acessar o sistema que está no HD, deve digitar a senha de administrador. O primeiro problema: muitas vezes o usuário que quer utilizar seu computador simplesmente não tem a senha de administrador, muitas vezes por não ter sido ele a instala o sistema. Sem senha, sem acesso. O usuário não pode utilizar o próprio computador.

No Linux (e acredito que na maioria dos ‘unixes’), não há este tipo de restrição, já que o sistema reconhece que para que a pessoa possa dar boot em outro sistema, no caso, pelo liveCD, é necessário acesso físico. E não há como lutar contra acesso físico! Você pode até pegar um LiveCD de um Linux e acessar a partição do Windows normalmente (em modo rw), sem senha nem nada.

Outra diferença é o fato de o Windows colocar os dados do sistema numa estrutura chamada registro. A principal propriedade deste sistema é que tudo é centralizado ali, de forma binária e que somente o próprio Windows entende o que há lá. Isto garante que ninguém irá “bagunçar”as configurações do sistema. O problema novamente é que isto protege o sistema somente do usuário (já que poucos sabem modificar o registro), mas ao mesmo tempo é totalmente frágil contra ataques de programas maliciosos, como vírus e outros malwares. Além do mais esta é uma estrutura muito confusa, que muitas vezes fica corrompida após a remoções e instalações freqüentes de programas que a modificam, o que dificilmente acontece nos sistemas baseados no Unix.

Já no Unix temos uma regra definida já na época de seu surgimento: “não complique; guarde todas as configurações do sistema em arquivos de texto”. Isto é seguido à risca no Linux, que guarda tudo, desde senhas, informações da inicialização do sistema, até configurações dos programas. Poucos programas guardam suas configurações em binários, e normalmente isto acontece em casos específicos.

Qual a vantagem nos arquivos-texto? A vantagem é você poder fazer modificações no sistema sem precisar recorrer à ferramentas específicas (como acontece com o regedit no windows). Você simplesmente abre o arquivo com um editor de textos e faz as modificações que julgar necessárias.

“Mas isto é imbecilidade! Assim todos saberão qual as senhas dos usuários só abrindo o arquivo de senhas!” Ledo engano. Há vários recursos que impossibilitam que o usuário comum tenha acesso às informações, que vão desde o sistema de permissões do Unix, até técnicas de criptografia, como pode ser visto neste artigo do Elgio Schlemer, no vivaolinux.

É claro que o armazenamento em arquivos-texto muitas vezes não é muito prático e eficiente. Tanto que muitos sistemas e programas utilizam banco de dados para agilizar o acesso à determinadas informações. Posso citar sistemas de pacotes como o apt e o rpm, além do armazenamento de senhas no FreeBSD (me corrijam se eu estiver enganado).

Em segundo lugar, não existe no Windows XP/Vista o chamado “modo texto”. Isto significa que o “terminal” do Windows não passa de uma imitação de um prompt do DOS. Enquanto que no Linux este modo ainda existe. Tanto que programas como xterm, konsole, Eterm, gnome-terminal são chamados de emuladores de terminal, simplesmente por estarem “rodando” um terminal, mas não o mesmo terminal “em modo texto”, embora cada “comando” seja passado para o sistema operacional da mesma forma que num terminal tradicional. Isto significa que não existe uma barreira entre um comando “rm -rf” e o sistema operacional, ao contrário do Windows, onde deve - xii - existir um mecanismo entre o comando de deletar uma pasta executado pelo usuário o comando passado para o sistema operacional (que aí verifica as permissões, etc). Ou seja: no Windows, um administrador não tem todo o poder, que é algo totamente contraditório, já que um administrador existe para fazer o que bem entender. E é por isso que deve ser utilizado somente em tarefas específicas, nunca para uso constante.

( Em terceiro lugar? ) Também há a questão: a qualtidade de usuários num sistema é proporcional à quantidade de falhas que este sistema tem? Pego como exemplo o OpenBSD, que em mais de 10 anos, teve somente duas falhas de segurança! Será que é por ser realmente seguro ou pelo fato de “ninguém utilizá-lo”? Suas raízes unix podem te dar uma noção da resposta.

Façamos a seguinte comparação: existem pelo menos 100 vírus e outros spywares para Windows. Eu disse PELO MENOS! ;-) E o windows coresponde à 90% das instalações de sistemas operacionais. Já o Linux corresponde à o que? 5%? Vamos supor que sim. Por uma regrinha de três, podemos dizer que, se o Linux tivesse 90% do mercado, a quantidade de vírus para ele seria… 5? Sim, 5!

Ou vamos pelo caminho contrário. Sabemos que não foi registrada nenhuma ocorrência de vírus - palavras que pode ter várias interpretações - para Linux. Pelo menos nunca numa situação real. O sistema tem falhas sim, que inclusive permitem que um usuário ganhe privilégios de root, como o desoberto no final do ano passado e já corrigido na versão 2.6.24 do mesmo. Mas o total de vírus nativos para linux - “Ho, Ho, peguei um vírus via wine! - é ZERO. Sim. ZERO.

Então zero para um sistema que tem 5% do mercado. Novamente fazendo regrinhas de três, podemos estabelecer que o Windows deveria ter… dezoito multiplica por zero…. ZERO vírus!

Olha! se eu realmente passei em lógica (por um fio, pra dizer a verdade), poderia dizer que provei por contradição que o Windows é mais suscetível à vírus! ;-)

Tanto que o próprio sistema do tio Steve - o OS X ou Mac -, passou a ser muito mais seguro depois que adotou base Unix. E o Mac tem uma base de usuários pouco maior que do Linux (embora em conheça dezenas de usuários linux, mas nenhum de OS X!).

O fato é que a própria origem no Unix já garante ao Linux uma maior segurança, coisa que também acontece no OS X, FreeBSD, etc, tão seguros quanto o sistema do pingüim.

Já o Windows, como todos sabemos, teve um caminho contrário ao Linux. Começou como sistema monousuário, como desktop ou estação de trabalho, para depois ir para o mundo corporativo, como servidores. E este é um caminho totalmente oposto ao Unix. É natural então que o Windows tenha mais facilidades para o usuário, mais que o Linux, que reúne muitas características de um sistema que visa segurança em primeiro lugar. E como todos sabemos, quanto mais segurança, mais chato é utilizar um computador (como ter que lembrar aquele monte de senhas!).

Ou seja: o Windows só será um sistema realmente seguro quando adotar uma base Unix. A empresa de Steve Jobs fez isso e obteve sucesso. Há rumores - Leão Lobo-bo! - de que este sistema seja o OpenBSD, que já recebeu ajuda da Microsoft em outras ocasiões.

Em favor do Linux e demais sistemas operacionais de código aberto é o fato de que ele tenta barrar ao mínimo o usuário. Se a máquina é sua, você pode usufruir dela como bem quiser. Por isto temos poucos programas para Linux que exibem propagandas indesejadas, executam tarefas que que o usuário não queira. E esta liberdade - aff, não queria falar esta palavra - também é a mesma liberdade - de novo! - que permite ao usuário também cometer cagadas que impossibilitem o funcionamento do sistema. Mas no Linux sempre somos avisados do que pode acontecer quando não andamos na linha… ;-)

PS: Este texto expressou somente minha opinião. Opinião inclusive, de uma pessoa tão especialista em segurança quanto o cara que criou o vídeo que motivou este texto…

PS2: Estes dias foi contratada no DIN uma professora especialista (doutorada e tudo) em segurança. E o mais engraçado é que ela usa Windows! Mais engraçado ainda é que no seu primeiro dia de trabalho enfrentou problemas com um vírus que se espalhou pelas máquinas com Windows do departamento. E o que me deu de dor de cabeça este vírus (um worm na verdade, chamado de W32.USBWorm)… Segundo a professora, ela nunca pegou um vírus no Windows!

PS3: onde digo Linux, substitua por GNU/Linux, se quiser ;-)

Até mais.

h1

Promessas de estudo? Só no dia de São Nunca!

Março 14, 2008

Me lembro no colégio, quando a professora de português/redação dizia que não é muito bom escrever frases e parágrafos muito grandes. Lembro também que eu sempre implicava com ela dizendo que, se Guimarães Rosa poria inventar novas palavras - se chama neologismo -, porque eu não podia? Ela dizia que eu não nome suficiente para tal façanha. Muito injusta esta literatura…

E em se falando de parágrafos grandes e injustiças, vejam só o tamanho deste parágrafo da página 446 do Livro “A História da Loucura”, de Michel Foucault:

Parágrafo pequenininho…

Como podem ver, a página já inicia no meio do parágrafo, e termina praticamente no final. Caramba! Será que Foucault foi reprovado no vestibular por causa disso? Não! Êita mundo injusto! ;-)

Ah, por falar nisso, terminei de ler o História da Loucura. Este livro eu demorei para ler. Peguei ele na biblioteca no dia 19 de dezembro do ano passado. Foram três meses para algumas quinhentas e tantas páginas ;-)

(…)

Dai 30/02Eis que, no dia 25 do mês passado, fui comprar um leite de saquinho no mercado. O mais engraçado é quando vou ver a data de validade do mesmo: 30 de fevereiro (!).

Fico pensando na pessoa que criou o sistema de datação do leite. Caramba, será que é tão difícil tratar a questão do mês de fevereiro. Não deve ser assim tão difícil, né?

(…)

Este ano começamos a estudar C/C++ na UEM. Embora estas linguagens não sejam muito procuradas no mercado, elas são essenciais para o programador em Linux. Eu sempre quis desenvolver algo sério, mas sempre me deu preguiça. Já tinha um conhecimento bem básico em C, mas nada que me desse o título de programador ;-). Só basicão mesmo. Mas este ano vou começar com algo sério.

Como gosto bastante do KDE, uma idéia é estudar mais C++/Qt para desenvolver para o KDE. Material é o que não falta, principalmente na Internet. Também gosto bastante do Enlightenment, tanto que já estou tratando de reunir material sobre a EFL (Enlightenment Fundation Library). Neste caso, a linguagem utilizada é o C, mas há bindings para python, perl, e acho que até para c++. O único problema é que a documentação é escassa, mesmo a em inglês.

Mas até lá, falta muito estudo e horas na frente do computador…

h1

0% algodão

Março 6, 2008

Não que eu queira ver. Longe disso.

Eu só queria saber porque diabos quando o Bruce Benner vira Huck, a única roupa dele que não rasga são suas roupas de baixo.

Não, não. Queria somente perguntar para o Huck onde é que ele compra suas cuecas.

Aquilo sim é que é tecido! ;-)

h1

Como utilizar seu Joystick como Mouse!

Março 2, 2008

Há um tempo eu comprei um joystick para aproveitar melhor minhas horas de diversão em frente ao computador.

Sei que um video-game normalmente seria uma melhor opção nestes casos, mas como gosto muito de jogos antigos, como os de Super Nintendo, percebi que seria melhor investir num bom joystick de computador mais um bom emulador.

Depois de achar “uma penca” de ROMS na Internet - oops - e passar horas e horas tentando passar mundo aquático do Donkey Kong 3 e o oitavo e último mundo do Super Mario 3 sem usar os poderzinhos, percebi que poderia dar uma utilidade melhor ao meu novo brinquedo.

Como o cabo do dispositivo é bem grande - somado à uma extensão USB - eu poderia muito bem utilizá-lo como mouse, e operar o computador no conforto da minha cama, além de não prejudicar tanto o meu pulso pelo uso constante do mouse.

A pergunta que me veio à cabeça era: “Como fazer isto?”

Depois de muito pesquisar no Gúgou e em manuais online, posto aqui um breve tutorial de como fazer a coisa funcionar.

Deixo claro já de início que você deverá ter algum conhecimento sobre configuração no Linux para realizar o tutorial, e que muitos vão odiar a solução e querer voltar para os braços do Windows.

Há pelo menos três métodos de realizar o processo:

- Se você for o Macgyver, basta um clip de papel, um cliclete de tuti-fruti mastigado por cinco minutos e um alicate de cuticulas. Com estas ferramentas, desmonte o joystick e, com as peças, construa um mouse. Com as que sobrarem, construa um tanque blindado.

- Se você for Chuck Norris, basta olhar feio para o joystick e dizer que ele é um mouse. Tiro e queda.

- O terceiro método - que utilizarei aqui, já que não sou nenhum dos dois caras acima - baseia-se na edição do arquivo /etc/X11/xorg.conf, para configurarmos o comportamento do joystick, através de um driver chamado “joystick”.

Vamos começar?

Primeiramente, devemos verificar qual é o dispositivo físico do seu joystick. No Linux, normalmente é o /dev/input/js0. No FreeBSD, NetBSD e OpenBSD provavelmente será /dev/uhid0.

O Joystick que eu tenho é um Foston parecido com um de Playstation, com um direcional, dois analógicos, quatro botões de ação, dois no meio (start e select?) e quatro na parte superior do dispositivo. Ele é conectado na entrada USB e é reconhecido pelo sistema pelo nome “DragonRise Inc. Generic USB Joystick”.

Segundo o manual do driver, qualquer joystick reconhecido pelo sistema operacional poderá ser utilizado como mouse.

Depois, temos que saber que protocolo utilizar na emulação do mouse, e quais botões serão ativados. Eu utilizei o ImPS/2, que é o mesmo que utilizo para meu mouse real.

Devemos saber também quais são os códigos dos botões do mouse. No protocolo ImPS/2, são eles:
1 - para o botão direito
2 - para o botão do meio
3 - para o botão esquerdo
4 - para a rodinha do mouse para abaixo
5 - para a rodinha do mouse para cima

Sabendo de tudo isso, abra, como root, o arquivo /etc/X11/xorg.conf, utilizando seu editor favorito.

Insira no final do arquivo o seguinte conteúdo:

Section “InputDevice”
Identifier “Meu Joystick USB”
Driver “joystick”
Option “Device” “/dev/input/js0″
Option “Buttons” “9″
Option “Protocol” “ImPS/2″
Option “SendCoreEvents” “true”
EndSection

Vamos analisar o que cada linha significa:

- Section “InputDevice” indica que iniciamos a sessão de configuração de um dispositivo de entrada.
- Identifier “Meu Joystick USB” indica como será identificado o dispositivo em questão.
- Driver indica que driver será utilizado para manipular o dispositivo
- Option “Device” “/dev/input/js0″ Indica qual é o dispositivo físico do joystick.
- Option “Buttons” “9″ Indica quantos botões de ação o seu joystick tem
- Option “Protocol” “ImPS/2″ indica o protocolo utilizado pelo joystick para emular o mouse.
- Option “SendCoreEvents” para definir o dispositivo como um gerador de eventos.
- EndSection finaliza a sessão de configuração do joystick.

Em seguida, adicione o dispositivo do seu Joystick na sessão ‘Section “ServerLayout”‘:


Section “ServerLayout”
(…) # Tente não mexer no que estava aqui

InputDevice “Meu Joystick USB”
EndSection

Feito isto, salve o arquivo e reinicie o servidor gráfico ou reinicie o computador.

Você já terá seu joystick funcionando como mouse. O direcional ou analógico 1 controlará a direção do ponteiro, e os outros botões utilizarão a configuração default.

Mas você vai ver que ele não está como você quer.

É possível configurar o comportamento de cada botão do joystick, de forma que, quando pressionado, eles possam ativar um botão do mouse ou mesmo um evento do teclado.

Para isso, insira a seguinte linha na mesma sessão de configuração do Joystick:

Option “MapButton1″ “button=2″

Isto significa que o botão 1 do joystick disparará um evento equivalente ao botão 2 (botãodo meio) do mouse.

Insira uma linha para cada botão que quiser definir. O número máximo de botões do joystick é aquele definido na opção “Buttons”.

Com este comando também é possível atribuir eventos como os comandos do teclado às ações do joystick. Para isso, identifique qual evento do teclado você quer.

Por exemplo, se eu quiser o evento Alt-Esquerdo+F1 (normalmente o diálogo “Executar” do KDE), eu executo:

$ xmodmap -pk | grep -i ‘(Alt_L)’ ## para achar o código da tecla Alt da Esquerda (Left)
64 0xffe9 (Alt_L) 0xffe7 (Meta_L)
125 0×0000 (NoSymbol) 0xffe9 (Alt_L)

$ xmodmap -pk | grep -i ‘(F1)’ ## Para o código da tecla F1
67 0xffbe (F1) 0×1008fe01 (XF86_Switch_VT_1)

Tendo em mãos estas informações, insira na sessão de configuração do joystick o seguinte texto:

Option “MapButton2″ “key=64,67″

Isto fará o botão de número 2 do joystick disparar as teclas Alt-Esquerdo+F1. Os números 64 e 67 são, respectivamente, os códigos das teclas Alt-Esquerdo e F1, obtidas pelo primeiro campo dos comandos executados acima.

Faça isto para quais botões quiser, a seqüencia de teclas que quiser.

Mais informações sobre estas configurações, consulte o manual do joystick:

No Slackware 12:
$ man 4x joystick

Se não funcionar, tente:
$ man 4 joystick

Para saber qual número corresponde cada botão do joystick, acesse a sessão de configuração do dispositivo no Centro de Controle do KDE:
$ kcmshell joystick

Ou, dentro do Centro de Controle (kcontrol), acesse Periféricos >> Joystick.

Tá legal. Eu já consigo disparar eventos do mouse e teclado com o meu controle de video-game. Mas ainda tenho que ficar preso ao computador, justamente por precisar do teclado para digitar. Sou pobre; não tenho um teclado sem fio ;-)

Para resolver tal problema, que tal um teclado virtual, que pudesse ser utilizado pelo joystick/mouse?

Um programa do tipo que eu achei muito interessante foi o Kvkbd, um teclado virtual para o KDE. Ele pode ser obtido no site KDE-Apps:

A instalação dele é padrão, com os habituais “./configure && make && make install”, mas é bem possível que você ache o programa nos repositórios da sua distribuição. Quem quiser um pacote para o Slackware 12, pode me pedir que eu mando por e-mail ;-)

Para não ter que iniciar manualmente o programa com o teclado, mapeei um botão do joystick para ativá-lo:


# Teclado Virtual (Alt+Super+K)
Option “MapButton11″ “key=64,115,45″

Em seguida, configuro o KDE para lançar o programa kvkbd com a seqüencia de teclas Alt+Super+K. Para isso, acesse o Centro de Controle, “Regional & Acessibilidade” >> “Atalhos de Teclado”. Na aba “Atalhos de Comando”, localize a entrada “Utilitários” >> “Kvkbd”. Em seguida, pressione o botão “Nenhum”. Na janela que abrir, pressione juntas as teclas Windows (conhecido como - bleh - tecla Windows), Alt e K. Clique em aplicar e feche o Centro de Controle.

Atalho

Também é possível fazer isto acessando o menu principal, localizando a entrada do comando, clicando com o botão direito nele e escolhendo “Editar Item”.

Agora, sempre que aperto o botão 11 (o centro do primeiro analógico) do joystick, é ativado o teclado virtual!

Teclado Virtual

Mas é claro que nem tudo na vida são flores. Infelizmente este método traz alguns problemas. O principal deles é quando você tenta utilizar algum programa que utiliza o mouse e o joystick (jogos?), os comandos dos dois dispositivos são misturados, já que o programa não saberá de onde veio o sinal.

Atualizado: Existe um modo de fazer o o joystick parar de enviar tanto sinais do teclado quanto do mouse dinamicamente. Para isso, defina um botão (aquele que programa algum usa) como chave liga/desliga. No caso, utilizarei o 9.
Option “MapButton9″ “disable-mouse”

Assim, toda vez que apertar o botão 9 do joystick, este parará ou começará, conforma o caso, a enviar os sinais de mouse. As possíveis opções são:

- disable-mouse para desabilitar as ações como mouse;
- disable-keys para desabilitar os sinais de teclado;
- disable-all para desabilitar tanto os sinais de teclado quanto de mouse.

Se você ficou com alguma dúvida, pegue como referência o arquivo xorg.conf que eu utilizo. A falta de identação é culpa do editor do WordPress, que “come” os primeiros caracteres vazios de cada linha ;-(



## Arquivo de configuração do Xorg
#
# O básico foi criado pelo dpkg-configure, da época que utilizei
# o Kubuntu
# Mas não funciona muito bem no Slackware, tanto que estou o modificando-o
#
## Aqui vão os locais onde guardo as fontes
Section “Files”
Fontpath “/usr/share/fonts/misc”
Fontpath “/usr/share/fonts/cyrillic”
Fontpath “/usr/share/fonts/100dpi/:unscaled”
Fontpath “/usr/share/fonts/100dpi”
Fontpath “/usr/share/fonts/75dpi”
# path to defoma fonts
#Fontpath “/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType”
#
#
RgbPath “/usr/share/X11/rgb”
ModulePath “/usr/lib/xorg/modules”
FontPath “/usr/share/fonts/TTF”
FontPath “/usr/share/fonts/OTF”
FontPath “/usr/share/fonts/Type1″
FontPath “/usr/share/fonts/misc”
FontPath “/usr/share/fonts/75dpi/:unscaled”
EndSection
#
# Módulos carregados na inicialização do servidor X
Section “Module”
Load “i2c”
Load “bitmap”
Load “ddc”
Load “extmod”
Load “freetype”
Load “glx”
Load “int10″
Load “vbe”
EndSection
#
## Dispositivos de entrada
#
## Um teste com o Joystick
Section “InputDevice”
#
# Nome interno do Joystick
Identifier “Joystick Foston”
#
# Driver utilizado para o joystick
Driver “joystick”
#
# Onde está o Joystick?
Option “Device” “/dev/input/js0″
#
# Configuração dos analógicos…
#
# Direita-esquerda
Option “MapAxis1″ “mode=accelerated axis=+2.5x”
#
# e Cima-Baixo
Option “MapAxis2″ “mode=accelerated axis=+2.5y”
#
#
#
#
# Número de botões que o joystick tem
Option “Buttons” “12″
#
# Protocolo utilizado para o mouse de mentira
Option “Protocol” “ImPS/2″
#
# Sabe que não sei pra que serve esta opção?! ;-)
Option “SendCoreEvents” “true”
#
#
#
#### Configuração dos Botões do Joystick
#
## Botão Direito do Mouse
Option “MapButton3″ “button=1″
#
# Botão do meio
Option “MapButton1″ “button=2″
#
# Botão Esquerdo
Option “MapButton4″ “button=3″
#
# Rodinha do mouse para baixo
Option “MapButton6″ “button=4″
#
# Rodinha do mouse para baixo
Option “MapButton5″ “button=5″
#
# Alt+Tab
Option “MapButton7″ “key=64,23″
#
# Alt+Shift+Tab
Option “MapButton8″ “key=64,50,23″
#
# Teclado Virtual (Alt+Super+K)
Option “MapButton11″ “key=64,115,45″
#
# Chamar o Yakuake (Super+K)
Option “MapButton12″ “key=115,45″
#
# Tecla Enter
Option “MapButton10″ “key=36″
#
# Tecla Esc
Option “MapButton2″ “key=9″
#
#
EndSection
#
# Teclado
Section “InputDevice”
Identifier “Teclado ABNT2″
Driver “kbd”
Option “CoreKeyboard”
Option “XkbRules” “xorg”
Option “XkbModel” “abnt2″
Option “XkbLayout” “br”
EndSection
#
# Mouse PS/2
Section “InputDevice”
Identifier “Mouse Dr Hank”
Driver “mouse”
Option “CorePointer”
Option “Device” “/dev/input/mice”
Option “Protocol” “ImPS/2″
Option “ZAxisMapping” “4 5″
Option “Emulate3Buttons” “true”
EndSection
#
# Placa de vídeo nVidia
Section “Device”
Identifier “nVidia Corporation NV18 [GeForce4 MX 4000]“
Driver “nvidia”
## Adicionado para o compiz
Option “RenderAccel” “true”
Option “AllowGLXWithComposite” “true”
## FIM ##
Busid “PCI:1:0:0″
Option “AddARGBVisuals” “True”
Option “AddARGBGLXVisuals” “True”
Option “NoLogo” “True”
EndSection
#
# Monitor LCD
Section “Monitor”
Identifier “LG L192WS”
Option “DPMS”
EndSection
#
# Tela principal (monitor+placa de vídeo)
Section “Screen”
Identifier “Tela Principal”
Device “nVidia Corporation NV18 [GeForce4 MX 4000]“
Monitor “LG L192WS”
Defaultdepth 24
#
#Adicionado pelo nvidia-config
Option “metamodes” “1440×900_75 +0+0; 1440×900 +0+0″
#
SubSection “Display”
Depth 24
Modes “1440×900″
EndSubSection
#
#
Option “AddARGBGLXVisuals” “true”
Option “DisableGLXRootClipping” “true”
EndSection
#
# Sistema principal (Tela+Monitor+Teclado+Mouse)
Section “ServerLayout”
Identifier “Layout Principal”
screen “Tela Principal”
InputDevice “Joystick Foston”
Inputdevice “Teclado ABNT2″
Inputdevice “Mouse Dr Hank”
EndSection
#
Section “DRI”
Mode 0666
EndSection
#
Section “Extensions”
Option “Composite” “Enable”
EndSection
Section “ServerFlags”
Option “DontZap”
#Option “DontVTSwitch”
Option “DontZoom”
EndSection

Referência:

- Manual do driver joystick: $ man 4x joystick

- Manual do arquivo xorg.conf: $ man xorg.conf

- Tópico sobre o assunto no fórum do Ubuntu.

E se você ainda tiver o alicate de cuticulas, aproveite para fazer as unhas… hauahauhaua

h1

Banal

Fevereiro 29, 2008

Ontem.

Vou ao médico. Particular, ainda para ver a questão da minha mão.

Na sala de espera. Havia bastante gente, dentre eles uma senhora.

Esta senhora sai por um instante. De repente volta gritando e xingando todo mundo. Haviam a assaltado assim que ela saiu para ir no orelhão fazer uma ligação. Um moleque de bicicleta passou e arrancou sua bolsa. E isto à pouco menos de cinco metros da entrada do hospital.

E ela entra xingando todo mundo. Principalmente os médicos.

“Seus filhos da puta!”. “Você é uma vaca, aí sentada sem fazer nada”. Ao que parece houve uma certa “burocracia” quando ela pediu para utilizar o telefone do lugar para telefonar.

E xingava a todos. Xingava o governo, pela falta de segurança. Xingava os enfermeiros. E a atendente.

Mas parece que ninguém dava muita atenção à ela. Um médico tentava falar com ela, mas ela gritava muito. O médico dava uma certa risadinha, o que a deixava mais nervosa ainda.

As pessoas simplesmente olhavam aquilo, sem saber o que fazer. Alguns até sabiam, e viam aquilo como uma atração de circo. E isso deixava a senhora cada vez mais nervosa. Tanta gente ali, e ninguém para ajudá-la?

Eu? Bem… Eu ouvia minha música. O que podia fazer? Então saio para verificar minha moto. Sem problemas. Lá fora, tudo normal. Aliás, normal mesmo, já que fica ao lado de um cemitério e, pela janela, só se vêem os túmulos.

Entro e pergunto a minha mãe se ela sabia se a mulher já havia feito queixa na polícia, e ela disse que não sabia. E foi lá perguntar. A senhora disse que sim, mas que enrolaram demais para ela poder utilizar o telefone. E continuava xingando. Inclusive o povo que estava esperando, que ria quando ela xingava.

Eu? Continuava indiferente, ouvindo minha música e observando o comportamento das pessoas.

A senhora desce para o andar de baixo. Volta e começa a bater num quadro que fica na escadaria. Aí sim o pessoal do hospital presta mais atenção nela.

E o povo se vira, se esguia tentando ver o que a senhoa faz. E sempre rindo do espetáculo. “Olha lá, ela tá quebrando tudo”.

Já estava de saco cheio. Mais de uma hora esperando a consulta.

Minha vez.

Entro na sala, converso com o doutor e explico a situação.

Ele diz que é caso de cirurgia, e que o sistema público não faz este tipo de procedimento.

Faz a seguinte analogia com a minha mão: “Imagine que mão é um HD. O que esta cirurgia faz é o mesmo que abrir o HD para consertar um defeito. Mas quando um HD dá defeito, a gente não conserta; só joga fora e compra um novo”.

Nesta hora percebi que precisava de um upgrade…

A cirurgia é um tanto delicada e a recuperação levará um bom tempo. Algo como seis meses, com a fisioterapia e tudo.

E isto rima com o que? Sim. Dinheiro. Muito alto o custo da cirurgia.

Ele recomenda a melhor cirurgiã de mão da cidade, e já adianta que ficará bem caro, na faixa dos dois mil reais.

Mesmo assim ainda haverá seqüelas. Disse que minha mão provavelmente não funcionará como antes, e eu não conseguirei fazer coisas como fechá-la totalmente.

Percebo que ele fica incomodado com a minha calma. À toda hora teta me explicar da gravidade da situação, mas não mudo minha fisionomia. Tenho me mantido frio assim pro um bom tempo. Evita o desespero.

Me explica que quanto antes fazer a cirurgia, menores as seqüelas. Que o correto era fazê-la poucas horas após o acidente. E foi isto que fui fazer no Hospital Municipal, logo quando aconteceu a cagada. Mas a média não viu como apenas um corte superficial, e costurou a pela como sendo este o caso. Sim. Falha médica. Quanto mais demora-se para fazer a cirurgia, maiores os riscos. E um mês é uma eternidade, portanto posso esquecer.

Processar a médica, o hospital? Acho que isso não resolveria nada; não teria meu dedo de volta. Não poderia colocar a culpa na médica ou no hospital, já que que admito a possibilidade do erro. Tanto que o acidente fui o meu principal erro.

O que fazer depois? Não tenho a mínima idéia.

(…)

E aconteceu noite passada um assassinato aqui perto. Hoje se manhã, minha mão me diz que o autor foi o Leandrinho, que mora aqui na rua.

Fico espantado? Não. Já sabia que assim acabaria.

Me lembro de uma vez, há uns nove anos atrás. Eu, com uns 11 ano. E o tal Leandrinho com 10. Passo no caixa. Aí vejo no outro caixa, quando a atendente de distrai, ele pegando uma barra de chocolate e colocando no bolso. Imediatamente já vi que futuro ele teria.

Quando criança, já havia brigado várias vezes com ele. Havia quando jogávamos bets na rua. E todos sabíamos seu futuro.

Há um tempo ele tinha um cavalo. Andava por todo canto com o cavalo. Aí teve um dia que o cavalo morreu, no meio da rua.

Ele havia andado dias com o animal, sem dar comida ou água. O cavalo estava quase que só esqueleto. Veio polícia e tudo.

Mas era só um animal.

Houve outra vez que ele “pegou rabeira” num caminhão - algo muito comum aqui - e o caminhão passou em cima de sua perna. Ficou um bom tempo para recuperar-se.

Não era difícil saber seu futuro. Se envolveu cedo com drogas. Já tinha várias passagens na polícia. Talvez por sua família ser bastante religiosa.

Eis que, provavelmente por questões referentes à drogas, ele entra num bar e leva uma menina até a rua. Dispara com dois revólveres. Foge e é achado na casa de um colega, também conhecido aqui no bairro.

Provavelmente vai pegar vários anos de prisão, tanto pelos antecedentes quanto pelo jeito que descreveu o crime, com frieza e sem remorso.

É incrível como cada um pode escolher o seu caminho. Uma pena. Embora nunca tenha gostado muito dele, não desejava tal situação.

(…)

Not�cia do Jornal

Sem fugir à regra, infelizmente, penso como pode a violência ter se tornado algo tão banal em nossas vidas. Tanto que não nos espantamos mais quando assistimos na TV mais um caso de assalto, assassinato e afins.

Atualizado: Clique na imagem para ver uma cópia (cópia da cópia) da notícia que saiu no jornal local.

Ao que parece o principal motivo dos crimes foram as drogas.

Fonte da notícia: Jornal O Diário do Norte do Paraná

h1

Até a última gota de sangue!

Fevereiro 15, 2008

Ontem:

De manhã um friozinho. Adoro este clima ;-)

Acordo cedo, lá para as sete. Resolver uns problemas aí.

À tarde ao DIN. Alguém aí conhece um substituto OpenSource para o MatLab? Pois é, eu não conheço, mas o pessoal do VivaoLinux sim ;-) Na dúvida, instalo o SciLab e o Octave, ambos softwares livres e compatíveis com Windows e Linux. Instalo no Linux e no Windows virtual também. Não tenho a mínima idéia se os professores vão ou não utilizar.

(…)

Mais à tarde era a vez da prova de inglês. Prova oral, um teste para entrar no curso de inglês da UEM, no ILG.

Entro na sala, e nenhuma palavra em português.

Como resumir a conversa? Talvez com um “Sorry”. Fui mal.

(…)

Mais à tarde, quase à noite.

Na UEM há um negócio chamado “trote solidário”, e normalmente levam até o estacionamento do restaurante universitário uma unidade móvel do hemocentro, para que os alunos - principalmente os calouros - doem sangue.

Mas, como disse uma das médicas, ontem veio o pessoal da reportagem do Paraná TV, e não apareceu nenhum calouro para doar.

E eu, como estava lá, sem mais nem menos, pensei: “Não deve arrancar pedaço, não é?”

Fui à guerra.

O que eu posso dizer? Se pudesse, doaria todo dia, porque não há mordomia maior.

Você chega e faz o cadastro com o pessoal das mesinhas, pergunta alguma coisa idiota - sou muito bom nisso -, e espera nas cadeirinhas lá fora.

Aí eles te perguntam quanto tempo faz que você ingeriu alimento e tal. Aí te perguntam se ainda cabe alguma coisa no estômago.

Por acaso tem como negar comida? Eles te dão sanduíche de queijo com presunto, e suco de laranja. Mas a mordomia não pára por aí.

Você entra no ônibus, faz uns exames de sangue - uma espetadinha no dedo que mais parece uma bexiga cheia de água - , temperatura (33,6) e pressão (10/7). Em seguida senta numa mesa, onde uma médica te faz uma série de perguntas. Tudo OK (pula essa parte).

Num outro lugar do ônibus há uma caixinha onde você deposita um papel com umas perguntas. Nem li direito. Sem problemas.

Aí finalmente senta-se numa, como é o nome?, uma espécie de poltrona, meio cama, sei lá, e ela faz a limpeza da pele, amarra aquela bochacha - que quando moleque, chamávamos de tripa de mico, e a molecadinha da rua fazia estilingue para matar pombinhas; crueldade pura - no seu braço.

Pega aquela agulha incrivelmente grossa e enfia no seu braço - lógico que te pedindo para virar o rosto para o outro lado, mas o outro lado é o vidro do ônibus, quase um espelho; melhor olhar para a frente ;-) -, mas não dói.

Te dá uma bolinha de borracha - a minha era amarela! - para você ficar apertando. É gostoso apertar aquele negócio. Quando mais raiva você tem, mais forte aperta, e mais sangue é bombeado. Boa terapia ;-)

Algumas perguntas idiotas, como se eles retiram mais sangue de quem tem sangue “O negativo” - doador universal, e coisas do tipo.

Depois de 7 minutos - o meu foram sete exatos! - ela tira a agulha, coloca o curativo e diz para eu esperar mais um pouco, pois estava de moto. Vai que eu saio de uma vez, vou sair de moto, desmaio, atropelo um cachorro, entro na frente de um caminhão, sou atropelado por uma ambulância, e …

Passados estes minutos - e depois de vários “você está bem?”, devido à minha natural palidez - você vai à outro compartimento do ônibus, onde há quatro mesas, cada uma com um sanduíche, um pedaço de bolo, suco e umas bolachinhas de chocolate.

Eles ainda te presenteiam com uma camiseta da campanha, com as inscrições:

“HEMOCENTRO E VOCÊ

HÁ 15 ANOS SALVANDO

VIDAS”

Com um coração vermelho no meio. Muito bonita a camiseta que, embora seja G, eu ache que tenha ficado um pouco pequena para mim. “Pequena o que? Você tá louco?”, diz minha irmã, que está um tanto chata comigo nos últimos dias.

Lógico que a camiseta não é dada sempre, mas em determinadas ocasiões, como no caso do trote.

Ah, e junto da camiseta vem um bom-bom sonho de valsa! Não é o máximo?

Por isso, quando você não tiver nada pra fazer, passe num hemocentro da sua cidade e retire uns 400ml de sangue deste seu traseiro gordo. Não vai fazer muita diferença não, pois eles compensam com os sanduíches ;-) Não te garanto que eles irão te tratar tão bem quanto me trataram, mas certamente será uma ótima experiência. Sério.

(…)

À tarde - um pequeno regresso temporal - o Marco aparece no DIN, já que ele saiu de lá e deixou o povo na mão, sem saber como/o que fazer com o laboratório ;-)

Querem colocar todos os programas e documentação dos mesmos num repositório interno do laboratório, para o uso dos próprios desenvolvedores, para não ficar nessa de, quando um cara vai embora, levar todo o conhecimento com ele. Profundo, não?

A idéia era colocar um repositório no site com um nome legal, tipo o SourceForge ou RubyForge.

Forja? É tipo um forno. E se escreve com Jota (J), senão fica forga ;-)

Melhor não, decidem deixar algo mais simples, só uma letra pê (P), ao estilo google.

(…)

E temos mais um professor no DIN. O André Noel vai de professor de IA (inteligência artificial), e já vejo confusão à vista ;-) É brincadeira. É que com o André, o cara do Ubuntu, ninguém mais perguntará nada para mim quando tiver alguma dúvida no Linux. Invejinha infantil, né?

Boa sorte André ;-)

(…)

O engraçado é quando chego em casa e digo à minha mãe que doei sangue, mostrando o curativo no braço. Hahaha, vocês não conhecem minha mãe (nem é preciso), não viram a cara que ela ficou. “Quer comer um lanchinho?”. “Tá bem, não tá sentindo tontura? Não vai desmaiar?” hauahuahau

(…)

Para provar que doar sangue não dói, vejam um depoimento real:

(…)

Navegando pelo blog da Fabiane Lima, li que na escola ela sofria de bullying… Calmae. “Sofria de… ” parece doença. Li que ela sofria bullying. Fui então procurar na wikipédia o que seria isto:

Bullying é um termo de origem inglesa utilizado para descrever atos de violência física ou psicológica, intencionais e repetidos, praticados por um indivíduo (bully) ou grupo de indivíduos com o objetivo de intimidar ou agredir outro indivíduo (ou grupo de indivíduos) incapaz/es de se defender. A palavra “Bully” significa “valentão”, o autor das agressões. A vítima, ou alvo, é a que sofre os efeitos delas. Também existem as vítimas/agressoras, ou autores/alvos, que em determinados momentos cometem agressões, porém também são vítimas de bullying pela turma.

Então me vem à cabeça a época de escola.

Por incrível que pareça, mesmo eu tendo de tudo para sofrer de tal mal na escola e procurando me isolar dos outros, sempre acabava sendo puxado para os grupos, portanto não tenho tantos “traumas” desta época. Mas via muita gente que sofria muito mais com preconceitos idiotas.

Havia uma menina - isso em 1998,1999? - que sofria de obesidade mórbida. Ela era bem gorda, mas gorda mesmo, tanto que teve que fazer uma cirurgia de redução de estômago, anos mais tarde. Aí uma vez a Daniele começou a xingar ela de gorda, no meio do recreio - a típica cena de seriados norte-americanos. Mas o mais engraçado é que a própria Daniele não era nenhum pouco magra!

Lógico que éramos crianças - 11,12 anos? -, mas imagino como devem estar as duas hoje.

Mas que diferença faz mesmo?

 

 

 

Hoje:
Deu trabalho para tirar o curativo, que ficou colado na pele e nos pelos do braço. Para tirar, só molhando mesmo, senão acabaria fazendo depilação. Ainda ficaram dois hematomas bem pequenos na pele, por causa da agulha, mas isso a médica já tinha me avisado que iria acontecer.

(…)

Descoberta interessante da semana: Hemocentro não é um lugar cheio de emos! Duh!

h1

Mania de limpeza

Fevereiro 13, 2008

Aquele era, sem dúvidas, o mais limpo restaurante da região.

Era limpo, mas tão limpo que, quando a comida caía no chão, o chef fazia questão de colocá-la de volta na panela.

h1

A história da loucura dos memes

Fevereiro 13, 2008

Meme, segundo a Wikipedia:

Um meme, termo cunhado em 1976 por Richard Dawkins no seu bestseller controverso O Gene Egoísta, é para a memória o análogo do gene na genética, a sua unidade mínima. É considerado como uma unidade de informação que se multiplica de cérebro em cérebro, ou entre locais onde a informação é armazenada (como livros) e outros locais de armazenamento ou cérebros. No que respeita à sua funcionalidade, o meme é considerado uma unidade de evolução cultural que pode de alguma forma autopropagar-se. Os memes podem ser idéias ou partes de idéias, línguas, sons, desenhos, capacidades, valores estéticos e morais, ou qualquer outra coisa que possa ser aprendida facilmente e transmitida enquanto unidade autónoma. O estudo dos modelos evolutivos da transferência de informação é conhecido como memética. Quando usado num contexto coloquial e não especializado, o termo meme pode significar apenas a transmissão de informação de uma mente para outra. Este uso aproxima o termo da analogia da “linguagem como vírus”, afastando-o do propósito original de Dawkins, que procurava definir os memes como replicadores de comportamentos.

Na prática, no contexto da Internet, um meme acontece quando uma pessoa posta em seu blog alguma coisa sem sentido, e propõe que as outras pessoas façam o mesmo. No contexto exposto na Wikipedia, seria a transmissão de uma mente para outra. E a Internet acabou servindo como meio para esta comunicação.

Na minha tentativa de realmente mergulhar na blogosfera, posto aqui o primeiro meme que participo, com a diferença que não ter necessariamente ter vindo de site ou blog específico. Vi em tantos blogs, tantos sites, que pensei: “Hey, isso não deve machucar tanto” ;-).

Vamos ver então qual é a quinta frase da página 161 do livro que estou lendo:

“Nisso consiste, sem dúvida, o paradoxo maior da experiência clássica da loucura; ela é retomada e envolvida na experiência moral de um desatino que o século XVII proscreveu através do internamento; mas ela está ligada também à experiência de um desatino animal que forma o limite absoluto da razão encarnada e o escândalo da condição humana”.

Profundo, não? É Foucault: A história da Loucura na Idade Clássica.

Estou demorando demais para ler este livro. Espero terminá-lo até final o mês de março, pelo menos.

Viu? não doeu.

h1

Dez milhões pelo seu dedo

Fevereiro 12, 2008

PQP!

De manhã saio para ir no postinho de saúde. Ainda com relação ao meu dedo.

Aí o médico olha, olha, e finalmente diz que fizeram errado a sutura. A médica que costurou meu dedo costurou superficialmente, quando deveria ter costurado também o tendão, para que ele se regenerasse. Ele até me pediu para informar o nome da médica, mas eu não estava com a receita, e nem queria arrumar confusão. Só quero meu dedo de volta mesmo ;-)

Mas enfim. Erro médico. Caramba! PQP! Ele diz que agora só com cirurgia mesmo. Pergunto quanto tempo demorará, e ele diz para colocarem na urgência. Mas o problema é que a urgência já está com mais de 100 casos. Ou seja: só sairá daqui há - muitos - meses.

Ou seja: das duas uma: ou eu espero por essa merda de sistema público de saúde, que significa me conformar com a situação; ou procuro um médico particular. Neste último caso, existe a questão do dinheiro. Provavelmente ficará mais que mil reais. Por isso que eu amo a Terra Brasilis. E o problema não é tanto o dinheiro, mas o fato de estar gastando dinheiro com uma coisa que não precisava ter acontecido. Um amigo meu - melhor de grana - se ofereceu para ajudar nos custos, mas acho que o orgulho não deixa. Vamos ver como vai ficar.

(…)

Aí eu e minha irmã entramos no site Nostalgiando. Muito legal o joguinho do site. Funciona assim: você ouve o trecho de uma música de abertura de desenho animado, e diz de qual desenho ela é. Caramba! Muito engraçado quando minha irmã se começou a cantar a música do Fly, sendo que ela nem assistia este desenho! Nos matamos de rir. Recomendo este site à todos que tiveram infância nos anos 80 e 90.

(…)

E lá vou eu na UEM. Primeiro no ILG, instituto de línguas, para fazer a inscrição de uma prova de inglês que acontecerá amanhã. Isso para ver se consigo entrar no curso de inglês, mas já estou meio desanimado para isso - embora saiba que não arrumarei um bom emprego sem ter, no mínimo, um bom curso de inglês.

Depois disso vou ao DAA para resolver umas coisas. Aí veio a coisa engraçada. Havia várias pessoas esperando, mas não havia realmente uma fila. E o sistema de senhas não estava funcionando - nunca esteve ;-). Então como sabíamos quando era nossa vez? Simplesmente, ao entrar na sala, perguntar quem era o último. Assim, você sabe que é depois daquela pessoa. Incrível não!

Este é o mesmo princípio de um negócio que em algoritmo chamamos de lista dinamicamente encadeada. Nesta implementação, só o que um elemento “precisa saber’ é qual é o próximo elemento da fila. No nosso caso, bastava saber quem era o anterior. Logo, éramos uma fila dinamicamente encadeada inversa!

Definitivamente estudar algoritmos muda a forma como vemos o mundo.

(…)

E o filme da semana foi: Rain Man.

É um filme de 1988, estrelado por Tom Cruise e Dustin Hoffman. Ganhador de 4 Orcar, conta a história de um homem (Cruise) que, depois de 20 anos, descobre que tem um irmão, mas este é Autista (Hoffman).

Aviso desde já que é um filme “cabeça”, e muitos não vão gostar. Eu, com o meu estranho gosto para filmes, gostei muito.

(…)

Depois, no banco, fui retirar um dinheiro pra minha irmã. Mas o engraçado foi a mensagem que apareceu na hora do saque. Algo como:

“A mega-sena está acumulada em 10 milhões de reais. Espere uns instantes para retirar o dinheiro”.

Pensei: “Caramba, será que tenho bolso para sacar 10 milhões?” hauahuahauhauah