Firebird SQL: por que tão impopular? (e como melhorar a situação)

Recentemente iniciei um novo projeto no qual  precisei responder a questão: qual SGBD usar? Até então, vinha usando o MySQL para basicamente tudo (fou fanático pelo MySQL), porém, devido ao seu esquema de licenciamento e algumas restrições do próprio projeto, tive de ignorá-lo desta vez.

Foi quando me lembrei de um velho conhecido: o Firebird! Devo confessar: depois do MySQL, o Firebird se encontra em segundo lugar (talvez empate com o PostgreSQL) para mim.

Porém algo no Firebird sempre me incomodou: basicamente ele só é popular entre programadores Delphi. Mais interessante ainda: provávelmente o Firebird é mais popular aqui no Brasil que no resto do mundo (temos uma comunidade excelente por sinal: http://www.firebase.com.br/fb/).  Isto é natural, visto ser derivado do Interbase da Borland, cujo Delphi dominou o mercado de desenvolvimento no Brasil por vários anos. Porém, ao observar as vantagens do Firebird, o mistério referente à sua baixa popularidade fora deste grupo só aumenta:

  • Licença realmente livre: ao contrário do MySQL que te prende no GPL se você o quiser utilizar gratuitamente, o Firebird é de fato 100% livre para uso em aplicações comerciais.
  • O básico dos SGBDs “grandes”: stored procedures, triggers, conformidade com A.C.I.D., backups online, generators, integridade referencial,  suporte a diversos tipos de caracteres… todas as buzzwords estão presentes no Firebird.
  • Footprint mínimo: o Firebird possui uma versão embutida (uma única DLL) que ocupa menos de 1 Mb e não corta básicamente NENHUM recurso da versão completa!
  • Baixos requisitos de hardware: o bichinho pode ser executado em práticamente qualquer computador!
  • Multi plataforma: Linux, Windows, Mac OS, Solaris e outras
  • Suporte a
  • Performance razoável: não é lá estas maravilhas, mas fica entre o PostgreSQL e o MySQL
  • O projeto é ativo (e muito): apesar de sua baixa popularidade, o projeto é bem ativo. Em abril deste ano, por exemplo, saiu o beta da versão 2.5 do projeto.
  • Banco de dados fácil de transportar: este ponto é polêmico, mas o fato do banco de dados estar contido em um único arquivo torna suas bases de dados muito fáceis de serem transportadas (é possível ter um banco de dados com mais de um arquivo).
  • BDs com tamanho ilimitado: a limitação do tamanho do BD é definida pelo sistema de arquivos utilizado pelo sistema operacional. Se o seu arquivo superar este limite, basta dividir o seu banco de dados em mais de um arquivo.
    (o maior banco de dados conhecido possui 960 Gb de tamanho link)
  • 100% compatível com o padrão SQL 92
  • Inúmeras formas de ser acessado: basicamente é possível acessar o Firebird a partir de qualquer linguagem de programação. Existem diversos drivers ODBC, JDBC, ADO, PHP, .net, etc.

Tenho utilizado o Flamerobin para administrar o banco de dados do projeto e está sendo uma experiência muito agradável. Mas é muito triste constatar que desde que escrevi o meu conversor de banco de dados no formato Microsoft Access para Firebird em 2006 (MDB2FDB http://www.firebase.com.br/fb/downloads.php?categ=8) a situação não mudou em nada: Firebird continua sendo popular apenas por desenvolvedores Delphi.

Dado que gosto do produto, e acho um absurdo o seu problema de popularidade, penso que seria interessante listar algumas formas de ajudar o projeto. Segue minha lista de sugestões:

  • Usar o Firebird. Sério: experimente o bichinho. Caso não o conheça, você ficará surpreso com o fato de uma imensidão de recursos caberem em um software tão pequeno.
  • Caso já use o Firebird, você pode também fazer doações ao projeto.
    Eis o link: http://www.firebirdsql.org/index.php?op=ffoundation&id=contributions
  • É também possível ser um patrocinador do mesmo.
    Eis o link: http://www.firebirdsql.org/index.php?op=ffoundation&id=sponsor_howto
  • Caso sinta falta de alguma ferramenta para trabalhar com o Firebird, você pode criar a sua e distribuir gratuitamente, como eu fiz com o MDB2FDB.
    Se não for para distribuir gratuitamente, o simples fato de produzir algo para o Firebird já ajuda a aumentar a sua popularidade.
  • Escrever a respeito, e participar de grupos de usuários.

Claro, eu não poderia deixar de imaginar quais as razões pelas quais o projeto não é tão popular quanto o MySQL ou PostgreSQL:

  • Não há uma empresa de peso como Sun/Oracle ou IBM apoiando o projeto. Ele é mantido basicamente por voluntários e alguns patrocinadores.
  • O site oficial (http://www.firebirdsql.org). Parece futilidade, porém a primeira impressão que o projeto passa é péssima!
    O maior patrocinador do projeto é a IBPhoenix: uma empresa cujo negócio é o Firebird. Porém, mesmo esta ainda possui um site com péssima aparência.
  • O fato de ter sido desde o início associado ao Delphi. Com a decadência da ferraemnta, a popularidade do banco também foi junto.
  • Documentação pobre: ao acessar a documentação pelo site, você encontra diversos links voltados para as versões anteriores à 2.0 do Firebird. Além de que, é bem desorganizada.

Porém, estas razões são apenas um chute. Gostaria de saber agora de vocês as suas opiniões a respeito deste SGBD.

108 thoughts on “Firebird SQL: por que tão impopular? (e como melhorar a situação)

  1. Toda a sua afirmação é válida até a versão 2.5 do firebird. A versão 3.0 (lancada em abril/2016) traz segurança a nível de base.

    Responda

    Fernando Fraga Reply:

    Ainda não vi como proteger o banco de dados com senha, se você souber como, por favor compartilhe conosco, porque pra mim é um problema gravíssimo do Firebird.

    Responda

  2. Hola, los saludos desde Argentina, Firebird es una muy buena alternativa como base de datos, la usé en un proyecto Java Enterprise, actualmente el producción y sin ningun problema, uso un 30% de las capacidades de esta espectacular base de datos.

    Responda

  3. Pessoal,

    alguem ainda lendo estas noticias? Pesquisei no google sobre banco de dados e o Firebird apareceu entre minhas buscas, através desse post. HOje em dia, ainda vale a pena? Não encontrei muitas informações sobre programadores que utilizam a ferramenta.

    Responda

    Kico (Henrique Lobo Weissmann) Reply:

    Continua a mesma coisa, talvez um pouco pior.

    Responda

    victor Reply:

    Rs…
    Mas ainda vale a pena usar a ferramenta ou é perda de tempo, melhor ir atrás de outro banco de dados?

    Responda

    Kico (Henrique Lobo Weissmann) Reply:

    Olha, eu fiquei muito impressionado quando saiu a versão 3.0 é quase não foi noticiado o fato. Que o projeto está ativo, isto é um fato, está bem ativo.
    Sobre a qualidade é que não posso dizer nada neste momento, mas aí menos na época em que usava era uma ferramenta excelente.

    Responda

Leave a Reply

Your email address will not be published. Required fields are marked *