jQuery TOOLS

Publicado em Javascript em January 21st, 2010 por Vinicius Ebersol – Comente

jQuery TOOLS é uma biblioteca super completa que facilita muito a criação de tarefas hoje comuns, veja as demos dos recursos dessa biblioteca:

  • Tabs;
  • Tooltips;
  • Overlay – Screenlocker para popups;
  • Expose – Serve para destacar elementos da página;
  • Scrollable – entre outras coisas serve para fazer galerias de imagens bem legais;
  • Flash embed – uma espécide de SWF Object que já vem inclusa e funciona muito bem com o player de vídeo dos mesmos autores dessa biblioteca;

É possível combinar esses recursos como você pode ver aqui. Ou ainda existe uma demonstração de como integrar o player de vídeo em flash deles com o jQuery TOOLS.

Flowplayer

O Flowplayer é um player de vídeo em flash desenvolvido pelos mesmos autores do jQuery TOOLS. Veja aqui algumas demos do player em ação.

drails – Dojo + Rails

Publicado em Javascript, Plugins, Ruby on Rails em September 15th, 2009 por Vinicius Ebersol – Comente

drails

Dica rápida para quem se interessou no post anterior sobre Dojo. Eu pesquisei e encontrei um plugin que substitui os helpers do Rails para utilizar Dojo ao invés de Prototype. É o drails.

A instalação é simples:

# drails relies on the dojo-pkg gem.  Installing this gem can sometimes take a while
gem install dojo-pkg

cd my_rails_app
script/plugin install git://github.com/foobarfighter/drails.git

Para maiores informações acesse o README do plugin no github.

Abra sua caixa de ferramentas com Dojo

Publicado em AJAX, Javascript em September 10th, 2009 por Vinicius Ebersol – Comente

dojo toolkit logo

Antes de tudo, Dojo não é só mais um framework Javascript como jQuery, Prototype e Mootols. Em muitos casos esses facilitam o desenvolvimento, no entanto, quando a questão é desempenho, somente agilidade no processo de desenvolvimento não é uma boa escolha.

Desenvolver aplicações web de grande porte significa preocupar-se com desempenho não só do lado do servidor, o cliente (alvo principal) deve ser peça fundamental. Incluir dezenas de arquivos javascript com funções que muitas vezes sequer serão usadas, causa um aumento de tráfego pouco significante se analisarmos as coisas de forma isolada, mas imagine um excesso de 10kb a cada request feita por milhões de usuários, isso pode gerar um excesso de gigabytes por mês dependendo do número de acessos mensais, causando uma lentidão nas respostas do servidor.

Acerca do desempenho no lado do cliente

Um teste realizado neste blog mostrou resultados surpreendentes relacionando frameworks e browsers. Na média, o Dojo é o mais rápido de todos os frameworks.

speed-compersion-graph

Sobre o tráfego

Muitos desenvolvedores usam jQuery e Prototype, inclusive eu. O jQuery tem todo o seu core em um único arquivo, já o prototype tem arquivos separados que você inclui dependendo de suas necessidades. Para esse segundo caso, creio que você não fará um header diferente para cada página que criar, portanto, na maioria das vezes inluímos todos os arquivos que irão usar em toda aplicação.

A facilidade do Dojo nesse aspecto está no seu maior segredinho: ele é dividido em dezenas de partes que você inclui somente de acordo com a sua necessidade utilizando um médoto próprio do dojo.

dojo.require("dojo.NodeList-fx");

A primeira vista pode parecer semelhante ao prototype, porém, se você analizar o código que está contido em cada arquivo vai entender. São em média 50 a 100 linhas incluíndo comentários e quebras de linha por arquivo (na versão não reduzida do dojo). Comparando com o arquivo effects.js do Prototype (que contém aproximadamente 1200 linhas) é algo realmente significativo.

Dijit: O diferencial do Dojo

O melhor do Dojo com certeza é a sua biblioteca de widgets, chamada Dijit. Com ela você pode adicionar elementos à sua aplicação tornando a experiência do usuário muito satisfatória. Existem soluções semelhantes para jQuery e Prototype, porém, você terá que ir em busca das soluções que necessita e contar com a sorte para que o desenvolvedor do plugin tenha desenvolvido algo que irá funcionar corretamente e suprir as suas necessidades.

O mais importante de tudo é que o Dijit é internacionalizado e em muitos casos, acessível. Veja aqui algumas features do Dijit.

DojoX

O DojoX é uma área de desenvolvimento de extensões, uma espécie de incubadora de novas idéias que mais tarde podem estar disponíveis na ferramenta principal ou serem removidas se não obtiverem o sucesso esperado. Podem não ser internacionalizadas e não ter a mesma qualidade dos widgets do Dijit, porém, são sempre coisas novas que podem ser úteis na hora do aperto.

Conclusão

Utilizar Dojo é uma revisão de conceitos, mas como todo bom desenvolvedor dedicar um pouco de tempo ao aprendendizado da “filosofia” do Dojo pode torná-lo um desenvolvedor versátil e independente de tecnologias, pois pode ocorrer de uma oportunidade de emprego solicitar experiências com esta e(ou) aquela ferramenta de acordo com a aplicação ou ainda as determinações do cliente.

De volta ao WordPress

Publicado em Off-topic em July 12th, 2009 por Vinicius Ebersol – Comente

Há uns meses eu já fiz essa migração do Mephisto para o WordPress, mas a falta de tempo não permitiu que eu a finalizasse. A princípio eu iria tentar desenvolver algo parecido com o WordPress em Rails, mas não deu. Eu encontrei muitos problemas com o Mephisto e tive dificuldades com o controle de meus arquivos enviados, etc… São bugs que fui resolvendo aos poucos, mas eu não posso me dar ao luxo de resolver todos os bugs na atual situação em que me encontro.

A escolha pelo WordPress foi simples: ele está anos luz à frente do Mephisto, embora o esse seja muito promissor e tem muito a crescer. Com o WordPress é possível adicionar outras funcionalidades facilmente além de recursos que já são nativos do próprio. E o mais importante, “pingback” de posts.

Eu tenho uma série de dicas legais que pretendo publicar em breve. Então, aguardem que estou de volta.

Dicas para otimizar o Redmine

Publicado em Ruby on Rails em February 25th, 2009 por Vinicius Ebersol – Comente

A cada atualização do Redmine tenho notado as mudanças e quão significante elas são. O Redmine ainda nem chegou a versão 1.0 e na minha opinião já é significativamente melhor que alguns gerenciadores de projeto. Por exemplo, compará-lo com o Jira (licensa de $4,800 anuais) é piada. Redmine é software livre e muito mais completo.

Em sua versão padrão ele é muito bom, mas imagine que existem muitos plugins para turbinar o seu Redmine. Segue abaixo uma lista de plugins extraída da wiki do Redmine:

Plugin list

  • BotsFilterPlugin previne URLs contra indexação de mecanismos de busca.
  • Bulk Time Entry adiciona múltiplas entradas de tempo de uma vez só.
  • Budget é um plugin para gerenciar o conjunto de resultados de cada projecto, automaticamente calcula alguns indicadores de desempenho.
  • Collapse transforma a barra lateral padrão do Redmine para uma barra expansível.
  • Customer gerencia informações básicas do cliente e analisa os projetos deste cliente.
  • Embedded permite enviar arquivos HTML (ex.: documentação auto-gerada, resultados de testes) em seu projeto.
  • Exception Handler habilita o Redmine a enviar e-mails quando algum erro ou excessão ocorrer.
  • ezFAQ gerenciador de FAQ para redmine.
  • ezLibrarian cria um módulo que serve para a gestão de seus livros em sua empresa.
  • Google Analytics inclui de um modo simples o Google Analytics no Redmine.
  • Google Calendar integra o Redmine com o Google Calendar.
  • Project Scores permite ao usuário atribuir uma pontuação ao projeto, incluindo muitos critéiros de análise.
  • RD formatter permite formatar texto no estilo Ruby Doc
  • Question plugin que permite comunicação entre usuários nas tarefas.
  • Simple CI
  • Stuff To Do Permite o usuário atribuir a ordem das tarefas atribuídas a ele.
  • System Notification habilitao Administrador a enviar notificações por email para usuários recem logados.
  • Timesheet plugin para análise de horas trabalhadas de cada usuário, por projeto.

Encontre mais plugins no GitHub.

Dica: Siga o tutorial de como criar um plugin para o Redmine.

Como instalar um plugin

1. Se você está usando a versão 0.7.x, você precisa instalar o Rails engines plugin (certifique-se de que esteja usando a versão 2.0.2 do Rails). A partir da versão 0.8.0 o Rails engines plugin já está incluso no Redmine, então não precisa seguir este passo.

ruby script/plugin install http://svn.rails-engines.org/engines/tags/rel_2.0.0/
mv vendor/plugins/rel_2.0.0 vendor/plugins/engines

2. Copie o diretório do plugin para #{RAILS_ROOT}/vendor/plugins

3. Se o plugin requer migração, rode o seguinte comando para atualizar a sua database (faça um backup primeiro).

rake db:migrate_plugins

4. Reinicie o Redmine (siga as instruções de acordo com o servidor que você está usando).

Reforma na Wiki do Rails

Publicado em Ruby on Rails em January 15th, 2009 por Vinicius Ebersol – Comente

ror_wiki

Foi anunciado no blog Riding Rails que a wiki do Rails será reformada (revitalizada).

Para dar início ao projeto, a equipe do Rails está formando um grupo de pessoas dedicadas e interessadas em colaborar nessa “revitalização”. Interessados devem ingressar no grupo Ruby on Rails Wiki e ler esse tópico (acredito que seja esse) wiki software.

Atual wiki do Rails:

Dica rápida: tail no windows

Publicado em Linux, Windows em January 15th, 2009 por Vinicius Ebersol – Comente

Eu adoro plataformas UNIX principalmente pelo fato de eu ter à minha disposição um comandinho milagroso:

$ tail -f log/development.log

Este comando permite que no terminal eu acompanhe o log de desevolvimento da minha aplicação (log/development.log) mostrando-o sempre atualizado.

Hoje lendo a lista de e-mails rails-br eu encontrei um assunto sobre isso e alguns usuários deram dicas realmente relevantes, como quase sempre. Dessas dicas, dois projetos que simulam o tail no windows foram apresentados: WinTail e Tail for Win32.

Aqui onde eu trabalho eu uso normalmente windows, pois trabalho muito com client side e interface. Então essa ferramenta com certeza será muito útil.

Porém, creio que em casa eu vou seguir usando o tail mesmo.

A vergonha dos provedores de internet no Brasil

Publicado em Off-topic em January 6th, 2009 por Vinicius Ebersol – Comente

Atenção: O texto a seguir é produto de um usuário descontente com o serviço de internet fornecido pela Viacabo TV Pelotas desprovido de interesses comerciais e comprometido com a verdade.

viacabotvpelotas

O provedor de internet Viacabo TV Pelotas aumentou a velocidade da internet nos comerciais e reduziu a velocidade na prática. Em suma, um aumento real de valores, semelhante a redução de peso nas embalagens de alimentos, embora estes informassem, mesmo de leve as alterações.

Como profissional de internet, me sinto obrigado a publicar uma nota repudiando a atitude de algumas provedoras de internet brasileiras. Nós pagamos pelos serviços de comunicação – de baixa qualidade – preços europeus com salários brasileiros.

Recentemente venho enfrentando um problema muito grave diante do meu atual provedor de internet, a Viacabo TV Pelotas. Eu assinei inicialmente um plano de 500 kb pelo preço de R$ 50,00 mensais nos primeiros seis meses. Tudo estava maravilhosamente bem, downloads na média de 75 kb/s, algo razoável pra mim. No entanto, passados os 6 meses eu fui tentar renegociar o plano, pois o preço da internet subiria para aproximadamente R$ 100,00. A tentativa de negociação ia se encaminhando bem quando eu vi que iria sair perdendo, e resolvi então cancelar a negociação e seguir com o plano atual.

No mês seguinte eu notei que minha internet estava mais lenta e fui ao ponto de vendas reclamar. Fiquei sabendo que o meu plano havia sido modificado, sem o meu consentimento, para um plano de 800 kb e que por mais que eu tentasse não seria possível voltar atrás, pois eles não ofereciam mais o plano de 500 kb.

Por incrível que pareça, as prestadoras de serviço têm uma matemática diferente da convencional. Em condições naturais, coeteris paribus, 800 é maior que 500, e eu acredito nisso mais que em qualquer coisa. Mas na Viacabo TV Pelotas essa matemática é inversa. Os meus ótimos downloads de 75 kb/s deram lugar a downloads de 20 kb/s a 40 kb/s com muita sorte. Em suma, a minha conexão embora tenha um rótulo de mais veloz – e preço também – está muito mais lenta do que o aceitável, o que me levou a reclamar por inúmeras vezes do problema de conexão.

medidor1Resultado do medidor de velocidade do site Grátis dia 06/01/2009.

medidor2Resultado do medidor de velocidade do site RJNet dia 06/01/2009.

O fato é que todas as tentativas na central de atendimento foram em vão. Dezenas de ligações e conversas com funcionários que acham que eu tenho que me contentar com o limite de 10% que eles garantem, o que acreditam que o problema seja no meu Windows (e eu nem sou usuário de Windows). Ora, se é pra ter 10%, ou 50% da banda, que seja, quero pagar proporcionalmente. Eu quero ter direito a uma internet de qualidade, é o mínimo que eu desejo. Acontece que Viacabo TV Pelotas não é sinônimo de qualidade, e digo mais, está muito longe disso.

Esgotadas todas as possibilidades diante da Central de Atendimento da Viacabo TV Pelotas eu apelei para a Anatel que é o órgão regulador das telecomunicações no Brasil. Abri um protocolo e aguardei os cinco dias úteis, que se tornaram quase 10 devido aos feriados de fim de ano. Aguardei a Viacabo TV Pelotas entrar em contato comigo e não tive nenhuma resposta. Portanto, liguei à Anatel o atendente me relatou que alguém responsável pela Viacabo TV Pelotas deveria ter entrado em contato comigo. Eu disse que ninguém contactou-me e gostaria de saber a resolução do problema relatado – “Disponibilidade de conexão com qualidade muito inferior a contratada”.

O resultado:

download

A Viacabo TV Pelotas se manifestou dizendo que para eu ter uma internet de 800 kb/s, de fato, deveria solicitar um link dedicado.

Ora, eu não entendo muito de telecomunicações, e até que alguém me diga o contrário, conexão dedicada é fornecida para pessoa jurídica, a preços elevadíssimos e de taxa de upload igual a taxa de download. Eu assinei um plano de 500 kb/s de download por 256 kb/s de upload e fui migrado para qual plano? Pois a conexão de 500 kb/s era muito melhor que a de 800 kb/s!

A promessa deles enquanto estavam vendendo é de que eles forneciam uma banda maior que a da Brasil Telecom (uma das 3 concorrentes da Viacabo TV Pelotas) . E onde está a qualidade superior? Só vejo preços elevados e qualidade inferior na internet banda larga fornecida pela Viacabo TV Pelotas.

Chega!

Diante do problema ocorrido venho por meio deste solicitar que divulguem a todos os usuários da Viacabo TV Pelotas a baixa qualidade dos serviços prestados por esta provedora de internet banda larga e que aos futuros clientes, pensem bem antes de assinar. Utilize o seu poder de consumidor para lutar por maior qualidade nas telecomunicações brasileiras. Experimente as concorrentes Brasil Telecom, GVT e NET Virtua.

Reclame muito para garantir um serviço de qualidade digno dos preços que pagamos. Em última instância utilize o telefone da Anatel – 0800 33 2001, e se mesmo assim o problema não for resolvido, garanta os seus direitos no Procon.

Já que 2008 passou, que venha 2009

Publicado em Off-topic em January 2nd, 2009 por Vinicius Ebersol – 1 Comentário

Particularmente, eu odeio essa função toda de fim de ano, então normalmente não participo de correntes, previsões e todo esse sentimentalismo barato de fim de ano. O ano tem 365 dias, e não somente 7 dias. No entanto, quero compartilhar com vocês desejos meus para 2009 e algumas idéias do que virá a ocorrer.

Primeiramente, creio que em 2009 eu devo ser muito mais ativo tanto em meu blog quanto na comunidade open source. Até agora, estou muito envolvido em projetos grandes e gigantescos, que consomem 70% das minhas 24 horas. Essa vida de desgraça irá acabar, afinal a gente estuda para ter QUALIDADE DE VIDA. Há algum tempo eu já projeto algumas idéias que tenho e que quero dar o pontapé inicial em breve. Algumas das minhas idéias:

  • Quero desenvolver um blog para mim com alguns recursos do wordpress. Ainda não decidi se será um fork do Mephisto ou se eu desenvolverei na forma de plugins para o mesmo. É uma decisão que vai depender da minha leitura do código do Mephisto, pois o mesmo carece de uma API. Taí! Mais uma boa idéia, pro core, claro…
  • Eu adoro o Spesa do Nando Vieira, mas ultimamente ele não tem suprido as minhas necessidades, visto que eu tenho que controlar gastos futuros, estimar custos excedentes, analisar diariamente cotações de moeda estrangeira, realizar trocas em moeda estrangeira e outras “cositas” mais. Atualmente o Spesa não me dá todo esse suporte, por isso já estou pensando em algo que faça isso pra mim, e no futuro quem sabe compartilhar com a comunidade.
  • Vou parar de utilizar Prototype nos meus projetos em Rails. A partir dos próximos projetos já vou usar JQuery como framework de javascript. Além da qualidade existe a quantidade de plugins disponíveis.

Além disso:

  • Um grande projeto em Ruby on Rails vai surgir;
  • Vou desenvolver menos do que desejo em Rails;
  • Uma grande gem e um grande plugin serão publicados;
  • O Carlos Brando irá publicar uma coluna chamada Edge Rails com todas as novidades da “trunk” do Rails;
  • O Fábio Akita vai publicar artigos interessantes e de grande qualidade;
  • Um javista vai falar mal de Ruby;
  • Um rubista vai falar mal de java;
  • E eu vou passar a escrever mais errado ainda depois dessa reforma ortográfica.

Inspirado no post de Lédio Carmona

Mephisto finalmente “funcionando” para mim

Publicado em Mephisto, Ruby on Rails em December 29th, 2008 por Vinicius Ebersol – Comente

Vocês devem ter notado (ou não) que eu não tenho postado muito. Um dos motivos é que eu estou trabalhando em tempo integral na Conrad Caine e em projetos particulares nas horas vagas. O outro, se deve ao fato de que o meu Mephisto não estava funcionando direito e eu não conseguia entender o motivo.

Durante a semana passada fiquei animado com a possibilidade de correções de bugs com a saída da versão 0.8.1 do Mephisto, mas as mudanças para mim foram muito poucas. À excessão de que o meu blog agora roda na versão 2.2 do Rails, nada mudou.

O principal problema era no upload de Assets, que aparentemente funcionava, mas não exibia as thumbs na listagem e não apontava a imagem para o caminho correto. Finalmente explorando a árvore de diretórios descobri o problema na semana passada. Era o suporte multi-sites do Mephisto que estava surgindo, e os assets já estão funcionando nessa lógica, pelo menos o modelo, pois as views ainda continuavam desatualizadas.

Até aí tudo bem, uma mexidinha de código poderia acabar com os meus problemas, mas como eu não pretendo ter 2 blogs, isso não era o ideal.

Hoje pela manhã li no blog do Fábio Akita a rápida e indolor solução para todos os meus problemas “blogísticos”. Se você tem este mesmo problema, siga o texto do Akita e bons posts.

De agora em diante, teremos um 2009 cheio de novidades e textos que estão maduros para compartilharmos.