Google Chrome vs. Mozilla Firefox - Round 3, Fight!

Mais um comparativo, após uma semana e meia sem build do Chrome (chamado Chromim, é a versao não oficial e open-source do produto), que andaram quebrando, saiu uma nova versão, já com muito menos features "not-implemented" e com inícios de otimização no código, também temos o beta4 do Firefox 3.5. Estou inclusive postando do Chromium, e já deu para notar que ele nao escreve acentos :)
UPDATE: Corrigi os acentos usando o Firefox, ainda não dá para se livrar dele, mas estamos chegando lá.

Entao, vamos a screenshot:
Dá para notar que mesmo somando-se a memória de todos os processos do chrome (38+38+9+6=91) nem se chega perto dos 150 mega do Firefox, e o melhor é que, como o chrome usa um sistema de processo para cada pagina/aba, se você é um usuário não muito exagerado e usa umas 6 abas no máximo, nunca vai passar do que o firefox consome. Além disso a memória compartilhada entre os processos é de 12MB, abaixo também dos 33 do firefox.
E a CPU? Bom, aí é humilhante. Não é incomum o Firefox usar uns 70 a 80% da CPU, e quando parado, ainda continua consumindo de 10 a 20%, no caso do meu teste, 11%. O Chrome, além de consumir muito menos enquanto renderizando páginas, de 30 a 40% consome.. ZERO parado. O que diz muito sobre a engine de Javascript, já que parado, basicamente, tudo que ele tem que fazer no caso deste teste, é executar de minuto em minuto a chamada Ajax do gmail e a cada segundo atualizar o relogio do D&D Tiny Adventures no Facebook. Então para que 11% de CPU para esses duas tarefas insignificantes?
Aí é que entra a grande ratiada do Mozilla até hoje, basicamente toda a UI dos produtos deles (Songbird, Firefox, Thunderbird, etc) usa Javascript+XML (XUL). Ou seja, ele consome um monte para fazer a UI, coisa que deveria ser tarefa dos toolkits como Qt e Gtk que consomem muito menos para isso, afinal são escritos em C/C++ ao invés de Javascript, e bastante optimizados, afinal é o trabalho deles e eles o executam bem, e não do próprio browser, desenhar a UI.

Enfim, vitória fácil do Google Chrome que está evoluindo rápido na versão Linux e deve conseguir um desempenho em velocidade ainda maior em dual e quad-core, por sua natureza de processos independentes.

Férias, aí vou eu!


View Larger Map

PS: No google reader, por alguma razão, a trilha não aparece. Abra o link para ver.
PSS: O rosa é porque é lua de mel ;)

Bola fora é GOL!

Tempo aproximado de duração no projeto de firmware: 35 minutos.
Entre começar a saber sobre o projeto no 10º andar e voltar para o 9º, chegou projeto novo com Adobe Flex. Sensacional! Happy-happy, joy-joy!!

Agora é aprender Flex, já vi que ele é bem grande, não apenas uma biblioteca de Javascript com capacidade de criar aplicativos desktop, mas principalmente é um elo de ligação entre tecnologias, dá até para o Javascript chamar um método de um ActionScript dentro de um Flash incordorado ao HTML, mó legal. Vou ter que comprar um livro disso e levar nas férias, por sinal preciso comprar uma câmera digital Sony wXXX para tirar fotos lá do oerdeste para poder publicar aqui depois. Ai, ai, ai, meu rico dinheirinho está se indo embora... :)

Amanhã é dia de Marmelada? Sim senhor!

Amanhã, visto que não tive nenhuma resposta nova, começo no projeto de firmware que eu não sei nada, e vou demorar um longo tempo para saber algo sobre - porque eu simplesmente não tenho interesse, então vou ler toda a documentação com calma, parcimônia e profunda análise, começando pela wikipedia apra saber direito como trabalha um firmware.

Estou mais preocupado com a festa do dia 2, que vai ser uma tortura para mim, obviamente, do que com projetos "mandato-tampão", ou "não tem tu, vai tu mesmo", ou ainda "enfia no buraco escuro até ficar quieto". Aliás, amanhã também começa a campanha "quero minhas férias!". :D

E depois do dia 2, dependendo do andar da carroça, novas aventuras vão se desenrolar ;)

É nós, ganhando faixa no estádio, de novo

Me associei no Interem julho de 2007, mas não costumava ir muito no estádio, nem fui na final da Recopa.

 Visão geral do estádio

Mas desde o ano passado eu vou, e já levei 3 títulos, gauchão 2008 enfiando 8 a 1 no Juventude, Sul-Americana 2008 empatando em 1 a 1 na prorrogação com o Estudiantes e agora gauchão 2009, os mesmos 8 a 1 sobre o time da serra, que desta vez era o Caxias.

Eu sou o cara de capa amerela

Fonte: Super Foto Beira Rio - ClicRBS

Bored

Dias chatos enquanto não se define o que diabos eu vou fazer a partir da semana que vem.
Para compensar, programando em lambdaMOO e retomando um editor em PHP de objetos, salas e NPCs. Em PHP é bastante complicado manter uma task rodando por muito tempo, então um cliente completo é muito chato de fazer, mas um editor é uma sequência bastante simples sempre: envia comando -> lê dados -> mostra na tela.

versão um pouco antiga do editor rodando

O legal é criar comandos (uma espécia de API) no MOO primeiro para depois interpretá-los, por exemplo:
- php_area(1) retorna o número do objeto que contem a área número 1
list_area(1, 1) retorna os números de cada sala da primeira linha (o mapa é 20x20) da área 1 separado por pipe (|). Além disso tem um indicador no iníco da linha para informar o que essa linha está trazendo de informação, por exemplo:
*linha*^#176|#177|#178|#179|#180|#181|#182|#183|#184|#185|#186|#187|#188|#189|#190|#191|#192|#193|#194|#195
Em PHP é tão fácil fazer o parse que chega a ser chato, então vou reformular esse negócio e meter um ajax para diminuir o loading - ao salvar uma sala reler somente ela e atualizar essa informação na matriz de salas (porque a cor de cada sala se refere ao tipo de relevo dela), etc.

Dia de Happy Hour

No último eu estava meio ruim do estômago e passei muito mal depois de comer calabresa e batata-frita com cheddar. Então hoje vou no mercado ao meio dia, comprar um hot-pocket para comer antes de sair e comer pouco durante a noite :)

Copa Gauchão Intercontinental?

Essa é a taça Intercontinental que posteriormente foi dada junto com a Copa Toyota (e não mundial viu brasileiros?):
E olha a taça do gauchão 2009, que o Inter está a um (ou 3) jogos de ganhar:



E ainda tem gente que acha que o Intercontinental vale um Mundial? Não se engane, mundial só da FIFA:


Volta e meia, o mundo dá uma volta

Tem coisas na vida que a gente não consegue largar, ou melhor não quer. Quer é manter por perto, ainda que jogado dentro de uma gaveta, para ir buscar na eventualidade e em momentos de nostalgia. Como é assim o MOO (MUD Object Oriented).
Para quem não conhece, o MOO é um ambiente em rede, uma mistura de chat com ambiente de programação, em que cada sala, pessoa e objeto, é literalmente um objeto, em termos de programação, e todos possíem funções (verbos) e propriedades que podem ser criadas, editadas e programadas. Esse ambiente de interatividade, em que você programa e vê o resultado ali mesmo, torna o MOO muito divertido e interessante.

A linguagem de programação se chama lambdaMOO, que é o nome do primeiro MOO também, desenvolvido por Pavel Curtis e baseado em MUDs (Multiple User Dungeon), sistema de RPG em modo texto, precursor dos atuais MMORPGs. Até hoje eu acho que essa linaguagem deveria ser usada para ensinar orientação a objetos, é mais mais educativo que usar Java.
Aqui vai um pequeno exemplo dele, vamos criar uma bola, e depois, um programa que nos permita chutá-la:

@create $object named Bola
@verb Bola:chutar any any any rxd
@program Bola:chutar
player.location:announce_all(player.name, " chutou ", this.name);
.

Explicando, @create cria um objeto, @verb adiciona uma função a um objeto e @program edita essa função. Player é quem executa o programa, e sendo objeto tem várias propriedades, como location, que é o objeto (sala) onde está localizado, e este, por sua vez, tem uma função chamada announce_all(string) que escreve algo na tela para todo mundo que estiver dentro do objeto ou sala. This é o próprio objeto, que, como foi dado no @create, possui um nome na propriedade name.

No próximo post sobre o MOO, passearei da teoria para o sistema de RPG que estou criando dentro de um MOO, baseado em Dungeons & Dragons 3.0.

No aguardo

Não faço idéia do que vou fazer no novo projeto de firmware, nem estou aí para falar a verdade, pois entre o atual acabar dia 20 e minha folga de casório + férias (eu espero) vão só 10 dias.

Então, até quase junho eu só estou na espera... nesse meio tempo me divirto com o Inter, jogos, exercícios e cia :)
PS: Meti um template novo no blog, mais neutro, aquele estilo google chrome me cansou, aliás eu canso rápido dos templates. O próximo acho que vou fazer imitando a página da GreenNeko.

Pula borboleta

Tudo certo no Rio Grande do Sul, tudo em seu lugar as borboletas decolam:
E durante seu vôo, a bola vai mansa bater no fundo da rede:
Mais uma vez: eu estava lá!
Vai ser o terceito título que precensiarei ao vivo e em cores no estádio em 1 ano e meio.

100 anos de glórias

Estouram os fogos lá fora e o que era um sonho distante finalente chegou, o Inter tem hoje 100 anos sendo campeão de tudo e mais um pouco. Parabéns!
PS: Linda camiseta nova, dourada.

Odeio política

3 labs, personal (cool), enterprise (old and boring) and image&printing (variado). Um não deixa funcionários saírem para outro.
E assim um web developer vai parar em um trash projeto de firmware...

Não vou durar muito nessa situação, ainda bem que tenho férias acumuladas para esfriar a cabeça, na volta, eu começo a decidir o que/onde fazer.