quinta-feira, março 30, 2006

Identificando CDs e DVD virgens

Interessante. Nunca tinha pensado no fato que podemos estar comprando CDs e DVDs com preços diferentes, mas com qualidade idêntica, por serem do mesmo fabricante.

Vale a leitura desta dica, retirado do website Dicas-L: Identificando seus CD's e DVD's virgens. Ela mostra como podemos usar as ferramentas que vem com o Linux para identificar o real fabricante da mídia.

quarta-feira, março 29, 2006

CREATE AGGREGATE

TE METE, GURI!

Bah, essa daqui fazia tempo que eu queria ver um banco que suportasse. Quantas vezes não quebrei a cabeça tentando fazer isso no SQL Server.

O mais interessante é que foi muito intuitivo... Em poucas linhas, poucos segundos e com pouco código, fiz esse aggregate novo, quase no chute:

create function join_state(varchar, varchar)
returns varchar
as 'select $1 || '','' || $2;'
language sql immutable strict;

create aggregate join (basetype = varchar, sfunc = join_state, stype = varchar);


Daí, consultas desse tipo já podem ser feitas:

select grupo.nome, count(item.*), join(item.nome)
from grupo join item


Perfeito, não?

Documentação em: Manuals: PostgreSQL 7.4: CREATE AGGREGATE

P.S.: parece que no SQL Server 2005 já é possível fazer isso, usando .NET.

segunda-feira, março 20, 2006

Site da Suprifattus + MonoRail

Troquei a arquitetura do Website da Suprifattus.

Em substituição ao ASP.NET padrão que tinha antes, com uns controles pra cabeçalho e rodapé... Agora temos um website baseado em modelos, seguindo padrão MVC, mais rápido e muito mais fácil de manter e expandir, utilizando MonoRail.

A adição de conteúdo agora pode ser feita sem que eu precise abrir o Visual Studio, apenas com um editor de texto qualquer... E sem que eu tenha que ter desenvolvido ou utilizado algum pesado CMS para isso.

O mais legal foi a mudança das URLs, de:
http://suprifattus.com.br/suprifattus/Noticias.aspx?id=9
para:
http://suprifattus.com.br/suprifattus/noticias/ver.rails?id=9

Parece uma mudança pequena, mas eu gostei. O próximo passo é convencer a Locaweb a fazer uma alteração no IIS, para que eu possa utilizar o módulo de routing do MonoRail. Aí, sim, vamos ter URLs mais ao estilo Web 2.0:

http://suprifattus.com.br/suprifattus/noticias/9

Mas por enquanto não é prioridade :)

Ahn: detalhe muito interessante: ainda programei um mini-routing, para mapear as URLs antigas do website para as novas. Assim, nada de links quebrados ;)

terça-feira, março 14, 2006

VB.NET 2005

Estou reestruturando o framework de um cliente, utilizando recursos do VB.NET 2005. Está muito interessante utilizar todos os recursos do .NET 2.0 no VB, principalmente os tipos genéricos.

O namespace My também tem sido útil. Mas, hoje, navegando um pouco mais por seus métodos, dei de cara com este daqui:



Fiquei espantado. Daqui a pouco não vai mais ser necessário aprender nada sobre as classes Uri, WebRequest, etc...

Antes que alguém "meta o pau" no pobre do VB.NET, que só está tentando fazer seu trabalho... Lembre-se que este pseudo-namespace My não está fazendo nada diferente de implementar o design pattern Façade, só que para todo o Framework 2.0.

sábado, março 04, 2006

SourceForge se rendeu ao SVN

Finalmente, depois de muito dizerem que o Subversion era uma aplicação "muito boa, porém muito nova e instável", o SourceForge resolveu se render às maravilhas do SVN.

Além de adicionar o suporte, ainda automatizou o processo de migração do CVS para o SVN. Com 3 cliques, você faz a migração completa, inclusive com mensagens de log e tags, através do cvs2svn.

Agora dá gosto de voltar a usar o SourceForge. Quem sabe num futuro próximo eles também não dão uma melhorada no Issue Tracker, pra ficar algo mais parecido com o Trac...

Documentação de uso do SVN no SF.NET: SourceForge.net: E09. Subversion

sábado, fevereiro 18, 2006

ReSharper 2.0

É com felicidade que escrevo novamente sobre o ReSharper 2.0 Beta para Visual Studio 2005.

Estou utilizando o novo build, 218, e está me saindo realmente muito estável! De vez em quando aparece algum bug esquisito, mas não impede você de trabalhar.

Faça o download aqui: Download - JetBrains.net

Tail para Windows

Meu Deus, por que é tão difícil encontrar um tail decente para Windows?

Claro, estou sendo um pouco exigente também. Quero um tail que monitore vários arquivos, numa interface com tabs, e faça highlight de linhas dependendo de alguns critérios (por exemplo, pintar de vermelho as linhas que contenham a palavra "ERROR" ou "EXCEPTION").

Depois de muitas buscas, encontrei o Hoo WinTail, que é pago (US$ 39,95), mas tem uma versão gratuita que só não faz highlight, mas tem todo o resto. É interessante.

Se alguém quiser desenvolver um tail em .NET, segundo estes meus requisitos, pra liberar open-source... Conte com meu apoio e colaboração!

segunda-feira, fevereiro 13, 2006

Conectando ao MSN através do GTalk

Quem quiser experimentar a novidade, pode seguir as instruções abaixo:

BigBlueBall - Connect Google Talk to AIM, MSN, & Yahoo

Apenas um aviso: eu segui as instruções, e, sem notar, adicionei novamente todos os meus contatos do MSN. Um tanto desagradável... Mas vale a pena!

Liberar 75Mb de memória não tem preço! O GTalk ocupa 6Mb na minha memória, enquanto o MSN 8 estava ocupando 80!

domingo, fevereiro 12, 2006

Os pinguins também jogam!

Interessante artigo comentando sobre diversos jogos disponíveis para Linux:

Os pinguins também jogam!

domingo, fevereiro 05, 2006

Visual Studio 2005 Web Deployment Projects (Beta Preview)

Acabei de encontrar, mas não testei ainda. Parece que soluciona alguns problemas relacionados ao deployment de aplicações web no .NET 2.0.

Visual Studio 2005 Web Deployment Projects (Beta Preview)

Adeus, Alt-Tab

Hoje conheci um softwarezinho muito interessante, principalmente pra quem (como eu) trabalha com várias janelas e odeia ter que navegar entre elas com Alt-Tab.

Antes de encontrar esse último programinha, eu já tinha tentado utilizar vários "desktop switchers"... Para manter uma similaridade do sistema de janelas do Windows com o do Linux. Sou realmente viciado nessa história de múltiplas desktops.

Esse TopDesk imita a interface de um MacOS... Não sei bem que interface é essa, pois não conheço muito o mundo dos Macs... Mas me lembro de ter visto algo assim já.

Bom, segue o link: Otaku Software

Parece valer mesmo a pena. Até agora não ocupou mais de 16,5Mb de memória da minha máquina, e é muito rápido trocar de aplicativo. Apenas a inicialização é um pouco demorada.

Chega de palavras. Teste você mesmo, vai gostar.

ReSharper Beta para Visual Studio 2005

Quem já virou dependente do ReSharper, deve arrancar os cabelos ao ter que trabalhar com o Visual Studio 2005, que ainda não é suportado por este excelente plugin da JetBrains.

Bom, quem quiser arriscar a versão beta, pode encontrá-la aqui: Download - JetBrains.net

Eu instalei... Apesar de ser um tanto mais pesada que a versão 1.5, e completamente cheia de bugs, ainda assim, traz um pouco mais de produtividade.

Parece que o build 213 é mais estável. Mas não testei ainda.

quinta-feira, janeiro 19, 2006

FeedXs - RSS for Dummies

Quem sempre quis começar a escrever seus feeds, mas nunca quis se aventurar a aprender o padrão RSS, pode agora perder o medo com o FeedXs.
Se trata de um website onde você pode publicar conteúdo em RSS, mesmo sem ter um blog ou ter que escrever o RSS à mão (como eu faço para o website da Suprifattus: veja aqui).
Para quem ainda não conhece muito sobre o RSS, segue uma dica de alguns links:

Breves comentários sobre RSS, quando o website da Suprifattus passou a suportar o formato:
http://suprifattus.com.br/suprifattus/Noticias.aspx?id=4
Projeto RSSFicado (contém uma boa informação introdutória):
http://rssficado.com.br/

sexta-feira, dezembro 23, 2005

Cartão de Natal da Suprifattus

Modéstia a parte, este ano o já tradicional cartão de natal da Suprifattus se superou :)

Um excelente trabalho, e seguem os créditos:

Idéia e Especificação: Priscila Coelho
Produção e Design: Josias Oliveira
Programação: eu, Fábio Batista

Agradecimentos especiais ao André Cassal , pela grande ajuda com o ActionScript.

Confira o cartão em: http://suprifattus.com.br/natal2005/

Para personalizá-lo, basta adicionar o nome da pessoa, sem acentos, ao final da URL. Exemplo:

http://suprifattus.com.br/natal2005/?Destinatario

domingo, dezembro 11, 2005

Primate Programming(tm) Inc

Problemas com custos? Pensando em outsourcing?

Contrate macacos para programar para sua empresa. Cientistas começaram treinando macados para programar em VB3, e hoje eles já programam inclusive em VB.NET:

Primate Programming(tm) Inc