segunda-feira, 30 de novembro de 2015

Nesse último FIQ nós conseguimos pegar o autógrafo do quadrinista Sávio. Ele é autista e tem dificuldade de comunicação verbal, mas isso não atrapalha em nada na hora de fazer gibis!
Eu estava bem curioso para ler. Da história da arte nós sabemos que "deficiências" não são um impeditivo na criação, pelo contrário, é só lembrar que Beethoven era surdo, Monet não enxergava direito, Van Gogh era esquizofrênico, e essas características acabaram se incorporando como estilo na arte deles.
Pois bem, com o Savio não tinha como ser diferente. Uma característica comum entre os autistas é que eles gostam de padrões regulares e repetitivos. Nós compramos dois gibis do Savio, e olha só, os dois partem da mesma premissa! Ambos são histórias sobre um par de meninos que acham dinheiro na rua, e resolvem fazer estrepulias com o dinheiro. Mas apesar da premissa igual, a história se desenvolve de maneira levemente diferente. Nesse ponto o trabalho do Savio me lembrou os quadros do Andy Warhol.
E a história não é simples, pelo contrário, ela tem indagações morais bem complexas. Os trapaceiros protagonista são retratados como anti-heróis, tendendo a vilões. Mas eles possuem um amigo que é bom e ordeiro, e graça da história é justamente o conflito interno desse amigo. Ele deve preservar a amizade mesmo quando seus amigos cometem atos ilegais? Se ele não participar do ilícito, mas também não contar para ninguém, ele é cúmplice por omissão?
Eu fico pensando que esse desenvolvimento da história deve ser um reflexo de como o ele vê o mundo. Aquelas pequenas transgressões sociais que todos nós fazemos devem ser gritantes para quem vê o mundo em binário. Todos nós devemos ser pequenos trapaceiros sob os olhos daquele personagem.
Durante o FIQ o Savio, além da sessão de autógrafos, também deu uma palestra de quase meia hora. Note que dar uma palestra já é difícil para a maioria das pessoas, para ele deve ter sido intensamente desgastante. Mas ainda assim, foi melhor que muita palestra que eu já vi! Ele não ficou lendo slides como boa parte das pessoas fazem, pelo contrário, ele tinha palavras-chaves no slide e desenvolvia o texto na hora a partir delas.
Fica aqui meus parabéns para o Savio e minha recomendação para todos comprarem os gibis dele.


domingo, 29 de novembro de 2015

Acabou agora mais um contest do codinggame, fechei em 35 global e primeiro brasileiro.

https://www.codingame.com/leaderboards/global/challenge/code-vs-zombies/25917060f87223d9e663378f192e4c1216da532

O jogo era fazer uma IA matadora de zumbis. Você tem um campo 2D onde tem um punhado de humanos estáticos e um punhado de zumbis de velocidade 400 que sempre andam na direção do humano mais próximo. Você controla um herói com velocidade 1000 e shotgun de alcance 2000, o objetivo é matar todos os zumbis de modo que sobre pelo menos um humano vivo.

Tinha 24h para codar, eu nem esquentei em fazer nada complicado, escrevi direto um monte carlo tree search. A parte bacana desse método é que ele escala com o número de simulações, então você está basicamente transformando otimização inteira em otimização de código (quanto mais rápido, mais iterações nos 100ms por round do jogo).

Se fosse 48h minha próxima otimização seria tirar fora o O(h*z) para calcular o zumbi mais próximo de cada humano, e trocar por uma BSP, aí esse mesmo check poderia ser feito em O(n lg n + z lg n).

O próximo contest é em fevereiro, é bem divertido, recomendo a todos :)

sábado, 28 de novembro de 2015

quinta-feira, 26 de novembro de 2015

Saiu na Science um paper sobre como treinar pombos para detectar cancer em imagens, com precisão igual à de um profissional da área e superior aos algoritmos no estado da arte:
Mas eles não foram os primeiros, o Google já usava pombos para fazer PigeonRank desde 2002 !

terça-feira, 24 de novembro de 2015

Fallout 4 sem spoiler. Estou com umas 20h de jogo no xbox one, minhas impressões até agora:

- Estou jogando no Survival, o jogo fica imensamente divertido. Uma granada que pega em você é 1-hit kill e para matar um Super Mutant parrudo vai uns 100+ tiros de sniper. O jogo fica muito tático, você precisa planejar cada encontro. Não dá para maximizar uma armadura e uma arma só, tem que customizar pelo tipo de inimigo.

- Os gráficos são piores que o Witcher 3, até piores que o GTA V no 360. Mas não estraga a experiência, eles são bons o suficiente.

- Vamos ser honestos, a função dos companions é carregar coisas para você. Dos companions que eu achei até agora, o que consegue carregar mais coisas é cachorro. Eu só não sei onde ele guarda todos aqueles itens (e francamente, prefiro não saber).

- A parte minecraft, de ficar criando casinha, eu não estou usando muito. Mas a customização de armas e armaduras é bacana (e essencial, no survival).

- O pip-boy de android eu achei muito bacana, porém ele gasta muita bateria, e desconecta muito fácil. Eu jogo do lado do router então não é flutuação de sinal, é touperice de quem fez mesmo.



segunda-feira, 2 de novembro de 2015

Quando criança eu sempre gostei de jogar Padeiro Maluco no MSX, talvez porque eu fosse viciado em game & watch e esse jogo é basicamente um game & watch com gráfico melhorado. (Talvez ser descendente de padeiros tenha influenciado também).

Mas eis que ontem eu fui jogar e notei alfo que não tinha visto antes. 30 anos jogando esse negócio, e eu nunca reparei que as máquinas tinham nome. Tem um nome em kanji logo abaixo de cada uma delas!

É claro que eu fiquei na nóia para traduzir. É claro que eu me dei mal. Essas coisas que parecem simples sempre são mais difíceis do que parecem! Os kanjis naquela resolução jurássica são praticamente ilegíveis, eu levei literalmente uma hora para conseguir entender o que estava escrito. As três máquinas são:

整型 - Modeladora
第二発酵 - Segunda Fermentação
焼き上がり - Forno

A Modeladora foi a pior de todas, porque eu não conseguia usar o google para me ajudar. Só depois eu fui entender o que deu errado. 整型 em japonês é "máquina modeladora", mas 整型 em chinês é "cirurgia plástica", e sem contexto o google retornava só o mais comum, que era o chinês.

Para tentar traduzir eu fui até atrás do manual original em japonês, e acabei descobrindo outra curiosidade: esse jogo é educativo! Os primeiros jogos da Konami são sempre associados com uma matéria de escola:

Antartic Adventure -> Geografia
Athletic Land -> Educação Física
Macaco Acadêmico -> Matemática
Hyper Sports -> Ciências
Padeiro Maluco -> Estudos Sociais

Os dois últimos são os menos óbvios. Estudos Sociais é uma matéria que não tem no Brasil, lá eles ensinam a criança o que você precisa saber para morar sozinho. As tarefas nessa aula incluem coisas diversas como economia doméstica e culinária, sendo que esse último é o que encaixa no jogo.

Hyper Sports é mais bizarro, imagino que está como ciência porque envolve um pouco de física para achar os ângulos certos para pular na piscina e tal; mas a impressão que me deu é que foi marretado mesmo. Meu chute é que a Konami deve ter pego dinheiro emprestado subsidiado com o governo e prometeu fazer jogos educativos em troca, aí teve que ficar achando desculpa educativa para jogos que já estavam planejados.


domingo, 1 de novembro de 2015

Finalmente eu tenho um autógrafo do Alan Moore! Esse é nível hard de conseguir, porque ele não vai mais em convenções e não autografa mais gibis. O truque é que de vez em quando ele brinca de roteirizar filmes, e os DVDs ele autografa.


Tive um sonho louco hoje.
Sonhei que ganhei um carrossel, desses grandões de parque de diversões mesmo. Mas ele veio desmontado. Aí eu pensei: esse negócio é todo mecânico, só o motor que é elétrico, não tem muito segredo para montar, eu mesmo faço.
Aí eu encaixei um dos cavalos, sentei, liguei, e o bicho começou a rodar igual doido, parecia centrífuga! Eu saí meio tonto e pensei "ah, deve trabalhar em torque constante, então se colocar carga menor fica mais rápido mesmo". Daí eu encaixei os outros cavalos e funcionou normal.
Eu não sabia que minha cabeça calculava torques enquanto eu dormia!


quarta-feira, 28 de outubro de 2015

Povo lançou uma rede social nova onde você recebe dinheiro para postar (na verdade eles compartilham o ganho dos anunciantes com quem produz conteúdo, no caso, você). Mas o facebook está bloqueando todos os links para essa rede social nova, dizendo que é "unsafe" (apesar de nada indicar que é unsafe, parece censura mesmo). Mas nada me impede de fazer uma página com um link e postar o link né?
Para entrar precisa de indicação, coloca que quem indicou foi "ricbit".

segunda-feira, 26 de outubro de 2015

Dia desses o Marco Lazzeri me perguntou qual a linguagem de computador mais antiga que eu sei programar. Provavelmente é LISP, criada em 1958, já até escrevi um compilador dela.

E dessas linguagens antigas, qual a minha predileta? Quando você pensa em linguagens antigas, tipo ALGOL, FORTRAN, LISP, BASIC, você está pensando na segunda leva de linguagens. A minha predileta é da primeira leva, chama Plankalkül. A imagem tem o algoritmo TPK implementado em Plankalkül.

Os mais desavisados devem olhar para a imagem e ficar se perguntando como eles faziam para digitar essa linguagens cheia de traços e linhas. A resposta é simples: eles não digitavam. Não existia teclado nessa época, aliás os computadores não tinham nem sequer tela.

E como eles compilavam, se não tinha como digitar o programa! Ora, não compilavam! Ainda não tinham inventado o compilador! A linguagem era só um jeito de colocar as idéias no papel de forma legível, depois algum humano ainda teria que converter o algoritmo para código de máquina.

E por que ela é minha preferida? Porque ela veio direto do mundo bizarro! O único motivo de hoje em dia considerarmos o Alan Turing como pai da computação é porque os aliados ganharam a guerra. Se o eixo tivesse ganhado a guerra, então o criador do computador seria o Konrad Zuse, e essa era a linguagem que ele usava para programar o Z2, computador que ele criou que é anterior ao trabalho do Bletchley Park.

Mas poucas pessoas conhecem o Plankalkül. O motivo disso é que ele demorou para ser publicado. O Plankalkül era parte da dissertação de doutorado do Zuse, mas a faculdade queria que ele pagasse uma quantia alta como taxa de matrícula. Sem grana na época, o Zuse deixou pra lá, e esses documentos só vieram a público quase 30 anos depois.


quarta-feira, 21 de outubro de 2015

Hoje é dia de postar sobre BTTF, então aqui vai uma foto da Ila Fox com o DeLorean original do filme (usaram 6 carros nas filmagens, mas esse era o único que era usado nas cenas de close).
Eu sempre achei que Capacitor de Fluxo era uma piada escondida. Capacitores funcionam com a derivada da carga, quem funciona com a derivada do fluxo é o indutor. Para mim "capacitor de fluxo" é tipo "subir para baixo" ou "entrar para fora", a graça é que são conceitos opostos.
Se fosse eu a fazer um remake, o carro usaria um capacitor de fluxo para ir ao passado, e um indutor de carga para ir ao futuro.


Como está chegando a data do Star Wars novo, Ila Fox e eu resolvemos assistir de novo os filmes, dessa vez usando a ordem do machete.
Mas eu fiquei intrigado com essa cena onde a Falcon fica presa na Death Star, aí os Stromtroopers entram e não acham ninguém a bordo, porque estavam todos escondidos nos buracos para contrabando.
Poxa! Lá no começo do filme eles falam que não detectaram nenhuma forma de vida no escape pod dos droids. Se eles tem um lifeform detector que funciona à distância, por que raios não usaram na Falcon, ao invés de fazer inspeção manual?!
(Personagem burro a gente super releva, mas worldbuilding com inconsistência interna é pecado).


O sentai dessa semana no Japão teve participação do Jiraiya, rolou até um mini remake da abertura! E não foi só pegar o uniforme no armário e colocar em um dublê, chamaram o Takumi mesmo. Ficou bem legal.

Aqui o video do episódio completo:
https://www.facebook.com/urameshi.ismael/videos/836191206480245/
Tirar foto de gato preto é difícil, então eu experimentei um pouco com exposição longa no gato Rabisco.


quarta-feira, 14 de outubro de 2015

Ontem eu reparei que tem uma representação da BIOS no teto do Municipal, decerto a mulher da figura é a placa-mãe então!
Outra leitura do Lohengrin é ver o destino final dos personagens. A trama toda é maquinada por uma sacerdotisa de Wodan, que faz uma invocação bem bacana no ato 2. A tradução do libreto é "Deuses profanos! Ajudai agora a minha vingança! Puni a ignomínia que aqui vos foi feita! Aniquilai o delírio pérfido dos apóstatas!".
Aí você vê o que acontece, a heroína morre de desgosto, o cavaleiro do Graal é exilado, o rei cristão perde o exército, a única que saiu ilesa foi a sacerdotisa mesmo, ou seja, a vingança de Wodan tem poder!
(Vale lembrar que Wodan é a grafia antiga de Odin, então ela estava rezando pro pai do Thor. Daí você vê de onde o Stan Lee tirava a inspiração para aqueles discursos empolados dos asgardianos).


Fomos ao Theatro Municipal assistir à opera Lohengrin do Wagner, que é aquela história onde a Elsa casa com o Cavaleiro de Cisne. A parte bacana dessas óperas clássicas é que ninguém reconhece de nome, mas todo mundo já ouviu. O trecho em 2:35:00 é inconfundível:
A parte complicada é conseguir assistir a peça de 1850 com os olhos de hoje, para mim ficou bem claro que a moral da história é que se o marido tiver um segredo que não quer contar, é bom a esposa não insistir porque isso pode acabar com seu casamento (e, eventualmente, esposa que desobedece o marido acaba morrendo).
Quem nunca desenhou o Wolverine numa aula de teoria da relatividade?


domingo, 11 de outubro de 2015

Eu não sei mais a diferença entre -1 e 1.

Resolvi brincar de axiomatização com um provador de teoremas automático. Coloquei as definições de add e mul no Prover9, e a primeira surpresa é que ele não sabia que 0 é diferente de 1! Na verdade tanto faz, você pode completar essa aritmética dos dois jeitos sem cair em contradição.

Então eu adicionei 0 != 1 como axioma e bola pra frente. Mas aí bati no segundo problema. Se eu tento adicionar raiz quadrada, ele começa a concluir que 1=-1. Usei como definição sqrt(x)=y <=> sqr(y)=x; mas aí ele raciocina que sqrt(1)=1 porque sqr(1)=1, mas sqr(-1)=1 também logo sqrt(1)=-1 e como sqrt(1)=sqrt(1) então 1=-1.

Se eu conserto introduzindo ordem, por exemplo dizendo que (x>0) -> (0>-x) então eu não consigo representar complexos, só reais. Para fazer complexos eu vou precisar de uma definição bem mais complicada de sqrt :(

Aqui meus axiomas até agora:

formulas(sos).
 add(x, 0) = x.
 add(x, minus(x)) = 0.
 add(x, y) = add(y, x).
 add(x, add(y, z)) = add(add(x, y), z).
 mul(x, 1) = x.
 (x != 0) -> (mul(x, inverse(x)) = 1).
 mul(x, y) = mul(y, x).
 mul(x, mul(y, z)) = mul(mul(x, y), z).
 mul(x, add(y, z)) = add(mul(x, y), mul(x, z)).
 1 != 0.
 sqr(x) = mul(x, x).
 (sqrt(x) = y) <-> ((sqr(y) = x)).
end_of_list.

formulas(goals).
 1 = minus(1).
end_of_list.

segunda-feira, 5 de outubro de 2015

O dia que o Isaac Newton enfiou uma agulha no olho.
A grande maioria das coisas que o Newton fez foi culpa da peste negra. Quando a peste chegou em Cambridge, a recomendação oficial foi FUJAM PARA AS MONTANHAS! Por isso, o Newton voltou para a fazenda dos avós, e ficou lá dois anos esperando a peste sumir de Cambridge.
Mas ele não ficou parado nesses dois anos, pelo contrário, sem a burocracia da universidade para atrapalhar, esses dois anos provavelmente foram os mais produtivos dele. Foi nessa época que ele criou a teoria da gravidade, o cálculo, e a óptica.
A óptica foi curiosa. Ele era adepto da teoria corpuscular, então achava que as cores eram geradas por partículas que pressionavam a retina. Como bom cientista, ele resolveu testar a hipótese. Para isso, ele enfiou uma agulha por trás do globo ocular, e ficou apertando a retina por trás para ver o que acontecia.
A parte bacana é que a descrição do experimento sobreviveu! A imagem ao lado é um scan do diário dele, onde ele descreve que ao pressionar a retina, via bolas brancas, pretas e coloridas. ("there appeared white darke & coloured circles" - o diário é em inglês então dá para ler fácil).
COMO ele conseguiu fazer isso sem se cegar eu não sei. Eu adoro fazer experimentos científicos, mas o Newton era outro nível de dedicação.


domingo, 4 de outubro de 2015

Assistimos The Martian agora. O filme é bom, mas eu tive que assistir sabendo que eu não era o público-alvo. Para deixar mais palatável para os galeritos, toda a parte de hard sci-fi do livro ficou meio de lado. Os meus dois personagens prediletos do livro eram o oxygenator e o water reclaimer, e no filme quase não são citados frown emoticon
E eles mudaram o final também. As cenas pós-créditos são bacanas e menos abruptas que o final original do livro, mas antes disso eles adicionaram uma cena que no livro não tinha. Quer dizer, é baseado em uma idéia que aparece no livro, mas uma idéia que todos os personagens dizem que é idiota. O diretor deve ter achado que ia ficar visualmente legal e adicionou anyway. (Dica para quem for escrever filmes cientificamente corretos: se você aplica uma força em um corpo rígido fora do seu centro de gravidade, ele gira. E sem atrito nenhum, gira loucamente.)
Ah, o Sean Bean não morre, mas acontece uma coisa ruim só com o personagem dele, e todos os outros passam incólumes.