Category Archives: .plan - Page 3

Navegadores 2

Mais uma brin­cadeira com CSS3… E como ficou no Opera.

Opera

Opera

Gostei assim… O que o pes­soal acha?

Navegadores

Desen­vol­vendo uma view do VCNews uti­lizando algu­mas coisas de CSS3 como border-radius, veja os screen-shots.

IE8

Inter­net Explorer 8

Firefox

Fire­fox 3.5.9

safari

Safari

opera

Opera

Bem, sem­pre gostei e usei o Opera… Recomendo. =)

Nao tinha Google Chrome insta­l­ado na maquina (viper) onde rodo os nave­g­adores para teste (post sobre a viper). Irei insta­lar e ver a difer­enca. Quem sabe nao escrevo sobre isso aqui mais tarde.

USB Mouse FreeBSD

Em minha atu­al­iza­cao do FreeBSD 7.3 para o 8.0 na work­sta­tion Darth­vader (yeah! I’m on the dark side. hehe) tive alguns prob­le­mas com o mouse e teclado USB. Com a nova ver­sao do Xorg e tudo mais pararam de fun­cionar. Detalhe, eu tinha meu Xorg feito na mao e todo o endereco de per­iferi­cos eram diretos.

Minha solu­cao foi meio que bruta, nao perdi tempo e ativei o hal e dbus no sis­tema e para ter certeza total, tirei o moused tambem. Eu sei que o moused nao mod­i­fica em nada o con­t­role do mouse no X, ja’ que ele e’ ape­nas para o con­sole vir­tual. Porem nao uso o con­sole vir­tual muito. Real­mente, passo quase que 100% do tempo no X. Hoje e’ difi­cil, em work­sta­tion, lap­tops e desk­tops, eu ficar fora do X, salvo servi­dores que nao tem de ter um rodando, claro.

Entao adicionei/modifiquei/coloquei no meu /etc/rc.conf as seguintes linhas:

moused_nondefault_enable="NO"
moused_enable="NO"
hald_enable="YES"
dbus_enable="YES"
usbd_enable="YES"

Foi subir os ser­vi­cos e o X estava per­feito com mouse e key­board funcionando.

oauth, Twitter e VCNews

Hoje foi um dia muito pro­du­tivo, fiz algu­mas mudan­cas no VCNews. Agora nao temos mais acesso via aut­en­ti­ca­cao basica, ja’ que dia 30 agora o pes­soal do Twit­ter ira’ tirar esse recurso, ja’ mudei todo o sis­tema para OAuth. Usei uma lib chamada oauth2 para fazer a aut­en­ti­ca­cao. Gostei muito do pro­jeto. Esta’ com var­ios casos de testes. O que real­mente fal­tou foi uma doc­u­men­ta­cao melhor.

Bem, tirando o Objects.Twitter.Drive, temos o Objects.Twitter.Client. Ja’ fiz todas as mudan­cas para nao uti­lizar mais o Drive e atu­al­izei os testes. Con­sidero sta­ble ja’.

Outra mod­i­fi­ca­cao que vale a pena comen­tar foi a trans­fer­en­cia de todos os Objects para o seguinte padrao:

universeObject >> Object_core >> interface 1/2/3/4

Assim temos maior liber­dade para mod­i­ficar os obje­tos  garan­ti­ndo que nao ira’ causar nen­hum erro no sistema.

==

Colo­quei a maquina Viper para fun­cionar como ter­mi­nal remoto usando o Win­dows 7 para essa tarefa. Com o dll que con­segui, veja, con­sigo deixar var­ios users conectados/usando a maquina ao mesmo tempo. Gostei muito desta solu­cao para manip­u­lar o Inter­net Explorer 7 e 8 (IE6 pes­soal­mente nao dou suporte, nen­hum, quem usa nao dev­e­ria estar na frente de um com­puta­dor ou ate’ mesmo res­pi­rando, existe varias oti­mas opcoes como Opera, Fire­fox, Google Chrome, Safari, Dillo e ai vai…), mel­hor que deixar uma maquina vir­tual para fazer esse tra­balho. Imag­ino que uma boa maquina como a Viper e’ (AMD Athlon 7750 Dual-Core Proces­sor 2.70GHZ com 4GB de ram) fica otimo para 3 usuar­ios (fiz o teste conectando 3 users ao mesmo tempo via rede e um usando a maquina nor­mal­mente), colo­car um work­sta­tion para essa tarefa em uma equipe e’ muito mais “barato” e sim­ples que obri­gar a equipe que ira’ fazer o front-end uti­lizar 2 ou mais maquinas virtuais.

Changes…

Depois de algum tempo pen­sando vi que o mel­hor a fazer e’ mudar. Pois vamos la’:

O que entra:

dog­tags

A nova engine para gerar HTML usando obje­tos. Mais rap­ida, sim­ples e de menor tamanho. Sim­ples­mente faz tudo o que a OCGI fazia so’ que melhor.

UDB

O nosso drive se tornou algo real­mente usavel. Com os testes que real­izei esses dias eu vejo que esta’ mel­hor que o padrao antigo. UDB agora fica como padrao para “IO” em Post­greSQL e MySQL.

VCNews

O VCNews e’ um pro­jeto para ter um certo con­t­role nas midias dig­i­tais. A Engine esta’ com­pleta para o Twit­ter e Meme (Yahoo!). Falta alguns out­ros mod­u­los que ja’ estao em linha de pro­d­u­cao como Yahoo! News, Google Search e Flickr. Face­book e Orkut entram na lista porem nao sei se e’ de grande val­i­dade a entrada do Orkut. Face­book eu gosto e tem muito recurso. Ja’ o Orkut acho um pedaco de soft­ware que nao deu certo nunca, me des­culpem Orkuteiros. Mas desde sem­pre aquilo foi lento e sem uso pratico.

Com sua Engine pronta, digo que a sua API tambem esta’ pronta para o Uni­verse! Podemos usar o Twit­ter e o Meme dire­ta­mente do VCNews.

PyQt4

Agora podemos ter a saida em PyQt4. As UI sao ger­adas pelo pyuic. As saidas, threads e oper­a­coes ficam no Universe.

O que sai:

OCGI

Sim­ples­mente nao faz mais sentindo ter ele quando o sta­ble e o usavel com os novos padroes (HTML5 e cia). Depois de alguns anos vejo que a manu­ten­cao da engine OCGI nao faz sentindo. O uso de obje­tos para pro­duzir o front-end e’ otimo, porem a manu­ten­cao dos padroes usa­dos e’ muito maior nessa solucao.

DB

O drive que usava­mos para MySQL esta’ sim­ples­mente usando muito recurso para oper­a­coes grandes.

API Twit­ter

Ja’ que o VCNews entrou e esta’ sta­ble, nao vejo o porque deixar essa API na plataforma. Nao vamos dar manu­ten­cao direta nela. E quando tiver vai sair como sta­ble primeiro para a VCNews’ Engine. Logo nao e’ mais necessaria.

==

E tambem… Aban­donei o Jabber/XMPP/Gtalk. Nao vejo mais o porque usar. Nao me ajuda em nada, ape­nas atra­balha e per­tuba o desen­volvi­mento. Pre­firo o IRC. Quem ainda usa pode me achar na rede FreeN­ode, canal #mit­gnu ou pro­cure por umge­her. Para quem nao usa, mande email mesmo que respon­derei assim que conseguir.

wm step

Hoje fez 12 anos que uso o padrao de desktop/workstation que veio com o NeXTstep. Claro, hoje nao tenho uma maquina NeXT aqui comigo, uma pena. Porem ainda uso o Win­dow­maker e alguns soft­wares “no padrao” GNUstep, como o Talk­Soup. (Ai fica um pedido, se tiver alguem por ai que tenha um NeXT, entre em contato!!!)

Algu­mas novi­dades vem vindo para o .plan… Vamos ver se ter­mino e ja’ escrevo aqui.

Emacs and Profont

Mudei minha font padrao do Emacs. Quero dar um tempo para a ado­ravel fixed, muito otima essa font, uso a anos e anos (emacs20 mmm final de 1997 se nao me engano). Peguei a Pro­Font para fazer um teste legal e tudo mais. Vou usar ela agora.

A Pro­Font e’ uma font iden­tica a Monaco, so’ muda algu­mas coisas como 0 (zero) com barra (slashed 0). O que e’ per­feita para programadores/engenheiros/tecnicos/matematicos e assim vai…

Quer colo­car ela no seu Emacs23 (gtk)?

  1. pegue a font aqui
  2. crie uma dire­to­rio para suas fontes que ja’ esteja den­tro de um font-path, use um nome como “cus­tom” para man­ter um padrao. (ex.: /usr/share/fonts/truetype/custom )
  3. exe­cute fc-cache com as opcoes “r” e “v” (ex.: fc-cache –v –r)
  4. coloque essa. Emacs.font: Pro­FontWin­dows, linha no seu ~/.Xdefaults (ex.: echo “Emacs.font: Pro­FontWin­dows” » ~/.Xdefaults)
  5. rode emacs com a cara nova

Gostei muito desta fonte. Bem prat­ica, me lem­bra a fixed e tem alguns “truques” para quem desen­volve software.

    Universe + YQL

    Dei uma olhada no YQL da Yahoo! para colo­car como um recurso do Uni­verse. Ja’ exis­tia uma API em Python para esse recurso, porem nao gostei da solu­cao e colo­quei fiz uma do zero para nosso Uni­verse. Gostei mais da solu­cao que fiz porque temos padroes na saida, entao li a doc­u­men­ta­cao inteira do Meme (primeiro da minha lista) e fiz esque­mas e obje­tos para a saida de cada resul­tado pos­sivel. Tor­nando o tra­balho de manip­u­la­cao dos dados mais facil do que ape­nas um parser de XML. Tambem fiz uma boa saida para nao uti­lizar todo o lim­ite ofer­e­cido pela YQL foi o drive direto em UDB ou XML. Antes de finalizar o mod­ulo quero colo­car um cache uti­lizando a saida do drive. Deixar o mais rapido pos­sivel a con­sulta e diminuir o uso de HTTP no server.

    Tambem tenho de colo­car o Oauth para fun­cionar neste cara. Vi que a solu­cao python-yql usa o mod­ulo python-oauth, como ja’ temos um mod­ulo no Uni­verse, vou ver o que posso fazer com o nosso e porque nao, se tiver fal­tando recurso, mel­ho­rar ele.

    Resumo:

    • acesso rapido e facil da YQL usando um Obj
    • retorno sim­ples de todos os resul­ta­dos pos­siveis do Meme

    Para quem tem acesso: universe.Apps.Yahoo.YQL

    Universe + Yahoo + feedparser

    Mmm… Faz um tempo que nao dou um upgrade no Universe:

    • Y! search, colo­quei a api deles para fun­cionar no Universe
    • feed­parser, tambem esta’ disponivel nos Parses.lib

    Twitter API

    Depois de um bom tempo sem mudar a API do Twit­ter, tive­mos de fazer algu­mas mod­i­fi­ca­coes nela. Vamos la’…

    • saiu de dominio ape­nas da Engine VCnews e veio para base do Universe
    • gan­hou manip­u­la­coes via reg­u­lar expres­sions do conteudo
    • pos­sui ja’ um drive para escr­ever em sqlite, mysql e xml (como vem do twit­ter) para nao abusar do twitter
    • temos obje­tos: Sta­tus, Men­tions, User em sta­ble e List em unstable
    • authen­ti­ca­tion ok

    O que achei bacana e’ reaproveitar a saida em difer­entes adapters. Ja’ que podemos manip­u­lar dire­ta­mente na saida dos meto­dos, podemos aplicar diver­sos esta­dos e lay­outs para a mesma “con­sulta”. Pelo o que testei con­seguimos cair em ate’ 5% o con­sumo de recurso.