Archive for the ‘Web’ Category

Extração Automática de Palavras-Chave

Tuesday, February 23rd, 2010

Publiquei no fim-de-semana um artigo no Tecnlogia Inteligente sobre um projeto que desenvolvemos na Vetta Labs: extração automática de palavras-chave usando processamento de linguagem natural e aprendizado de máquina.

O sistema foi treinado com textos em inglês e português. A versão em português foi desenvolvida para o site de divulgação científica Ceticismo Aberto, do Kentaro Mori, que comentou num artigo a respeito algo que nos deixou muito felizes:

Os resultados são fabulosos e não apenas tornam mais fácil encontrar o que se procura, como acabam sendo um indicador curiosíssimo de todo o conteúdo publicado.

Na prática: Firefox 3.1 beta com Tracemonkey

Tuesday, September 16th, 2008

Meu irmão Diogo me deu a dica de que o Firefox com Tracemonkey (a máquina virtual JavaScript com compilação Just-In-Time, de desempenho similar à V8 usada no Google Chrome) já estava funcionando bem.

Eu baixei um nightly build do Firefox, e acontecia um crash ao entrar no GMail, então fiquei bastante frustrado. Pensei que o problema eram as extensões - eu uso a Nightly Tester Tools para forçar a instalação de extensões mesmo que o número de versão não bata, mas rodando com firefox -safe-mode deu o mesmo problema.

Hoje descobri a causa: a interface antiga do GMail (a que você acessa clicando no link “Older version” no canto superior direito, ou com a URL https://mail.google.com/mail/?ui=1 ) é que dava a zica! Passei a usar a interface nova, default, e tudo está bem (até agora), com todas as extensões funcionando redondinho.

Vejamos se dá pra manter ou se vou precisar voltar pra versão estável… Até agora já deu uns random crashes (um deles quando cliquei em “Send” dessa mensagem no GMail, mas o Draft me salvou), então só recomendo se você souber dar uns nós. :-)

UPDATE: Tive mais vários crashes depois que escrevi essa mensagem, mas usando o browser em -safe-mode eles sumiram, logo a culpa é de alguma extensão. Como a Tab Mix Plus e a Tree Style Tabs apresentaram comportamento estranho (não se abriam novas tabs ao clicar em bookmarks) estou suspeitando delas; desabilitei-as e vou continuar o test drive.

UPDATE: Hmm, desabilitar a Tab Mix Plus e a Tree Style Tabs ajudou, mas não resolveu o problema - às vezes cai tudo quando clico no Send do GMail… :-( Vou ficar mais tempo em safe-mode agora.

UPDATE: Firefox sem extensões não tem muita graça, então deixei de lado apenas as mais complexas como WebDeveloper e Firebug, pelo menos até descobrir as culpadas. Uma delas era mesmo a Tab Mix Plus; instalei o último build de desenvolvimento fornecido pelo autor, e desde então o browser não deu um problema sequer (estou rodando há várias horas)!

Com o tempo fui testando mais algumas extensões, e fiquei feliz ao notar que quase tudo está redondinho! A principal dica que dou é a seguinte:

Se você tiver problemas com a tracemonkey e uma extensão específica, uma alternativa é habilitar a tracemonkey apenas para o conteúdo de páginas web, e não para as extensões propriamente ditas.

Isso pode ser configurado indo na página about:config e modificando, respectivamente, as seguintes variáveis:

javascript.options.jit.chrome

javascript.options.jit.content

Note que por default ambas são false, ou seja, a tracemonkey só é usada se você explicitamente mudar esses valores! Desabilitei a primeira para poder usar a Password Maker e a Tree Style Tab, e continua tudo OK.

Por enquanto, aqui está a lista das que estou usando (produzida por outra extensão, a FEBE) sem problemas:

  • AdblockPlus{0.7.5.5}.xpi
  • BugMeNot{2.0}.xpi
  • CacheViewer{0.4.7.1}.xpi
  • ClassicCompactOptions{1.1.3}.xpi
  • ColorfulTabs{3.4}.xpi
  • Console{0.3.9.1}.xpi
  • DOMInspector{2.0.0}.xpi
  • DownThemAll{1.0.3}.xpi
  • DownloadStatusbar{0.9.6.3}.xpi
  • FEBE{6.0.1}.xpi
  • FaviconPicker3{0.5}.xpi
  • Flashblock{1.5.6}.xpi
  • TabMixPlus{0.3.7pre.080830}.xpi
  • UnitedStatesEnglishDictionary{3.0.3}.xpi
  • VerificaoOrtográficaPT-BR{1.1}.xpi
  • XPather{1.4.1}.xpi

Porque não acho graça no Google Chrome

Tuesday, September 16th, 2008

2008/9/12 Gustavo Fraguas wrote:

Eu pergunto: ande estão as extensions para o Chrome? Se não tiver extensions esse browser não vale uma bufa enfiada num cordão.
Pode esperar sentado, porque vai demorar *muito* pra aparecer. Existem tantas extensões para o Firefox porque você escreve uma com Javascript e XML (XUL, especificamente). Qualquer um que sabe fazer uma página html com JS sabe fazer extensão para o Firefox.

Isso rola porque a interface do Firefox inteira é definida com arquivos XML (XUL). Se você não gosta de JS dá pra fazer com Java e Python (mas fica meio tosco).

Já a interface do Chrome, IE e outros browsers são tradicionais, hard-coded, e pra mudar só mexendo no código-fonte e recompilando. Então simplesmente não dá pra ter um esquema simples de extensão como no Firefox (só dá pra fazer plugins, que usam uma interface limitada).

O problema é que a flexibilidade do XUL traz lentidão e maior consumo de memória, além de expor o browser a instabilidades causadas por extensões mal-escritas. Dá pra otimizar isso, mas é algo trabalhoso.

O legal é que a cada improvement na VM javascript (como o Tracemonkey) a interface e as extensões do Firefox inteiro ficam mais rápidas. E renderizar interface (botões, janelas, scrollbars) definidas por XML não é muito diferente de renderizar páginas web definidas por HTML, então cada otimizações em rendering engines em geral acabam melhorando o desempenho de interfaces XUL.

Eu acredito que vai ser mais fácil o Firefox chegar no nível do Chrome em termos de velocidade e consumo de memória (o Firefox 3 é mais rápido e mais leve que o 2, que era mais que 1, etc.) do que o Chrome chegar na flexibilidade e extensibilidade do Firefox.

Digo isso porque o Google segue um pouco a linha da Apple, acha melhor manter tudo o mais simples possível para atender 90% do gado do que dar a corda que os os geeks usam pra escalar montanhas e fazer bondage na namorada e os manés usam pra se enforcar… :-)

(Já houve quem risse dizendo que os 1990s ligaram para pedir a metáfora obsoleta de volta, então não precisa repetir a piada)

E nem precisa usar exemplos extremos de extensões sofisticadas voltadas para desenvolvedores e usuários avançados, como a WebDeveloper, Firebug, XPather e XQUSEME. Veja as minhas sugestões de modificações exclusivamente visuais, muito simples e que fazem uma diferença enorme:

  • Classic Compact: tema enxuto para ocupar menos espaço.
  • Classic Compact Options: (habilite a opção Merge Menubar into One Button) e coloque a barra de navegação ao lado da entrada “Menu”.
  • Tree Style Tab: Tabs na lateral do browser, organizadas hierarquicamente.
  • Colorful Tabs: tabs coloridas por domínio.
  • FavIcon: defina ícones personalizados para os bookmarks; escolha ícones para bookmarklets e páginas que não os definem em favicoop.com (são mais de 20.000 ícones). Depois remova o nome dos seus bookmarks, e identifique-os apenas pelos ícones.
  • LocationBar²: barra de endereços formatada (com highlight pro domínio e outras opções)

E essas não são nem metade de todas as extensões que uso. Obviamente não é pra qualquer usuário; é preciso saber dar uns nós. :-)