Seções iMasters
Banco de Dados + Carreira

Dicas de produtividade para DBAs e programadores

Olá, pessoal! Neste artigo vou apresentar algumas dicas e ferramentas que podem auxiliar a produtividade tanto do programador, como do DBA durante a realização das tarefas no dia a dia.

Antes de começar a detalhar cada uma das dicas gostaria de anunciar que finalmente publiquei o meu primeiro livro de banco de dados! Este livro é uma coletânea das 75 melhores colunas sobre banco de dados que escrevi para o iMasters desde 2001 até 2011. Para mais detalhes, recomendo aos leitores interessados que procurem informações sobre este livro neste site. Agora, vamos começar a falar sobre as dicas de produtividade para desenvolvedores e DBAs otimizarem as tarefas a serem realizadas no dia a dia de seus trabalhos!

 1. Seja organizado

A primeira dica fala sobre algo um pouco óbvio: a organização. Durante a minha experiência na área, não houve uma só empresa que visitei onde não encontrei um profissional que fala que tem mais coisas para fazer do que tempo o seu tempo lhe permite. É bem possível que realmente a pessoa tenha recebido mais atribuições do que ela seja capaz de aguentar, mas, muitas vezes, a falta de organização pode ser a responsável por sobrecarregar desenvolvedores, designers e DBAs.

 Aqui destaco as ótimas soluções para organização e gerenciamento de artefatos relacionados à software (código fonte, diagramas, especificação, imagens, ícones, etc), tais como Git Hub, CVS, Team Foundation Server e outras. Recomenda-se que algum tipo de SCM (Software Change Management) seja utilizado mesmo que apenas uma pessoa seja responsável por trabalhar com artefatos de software.

 2. Escolha uma ferramenta de SQL  adequada

Atualmente, os fornecedores de banco de dados provém diversas ferramentas para se trabalhar com a linguagem SQL do produto que comercializam. Contudo, existem outras ferramentas de terceiros que são bem interessantes quando é necessário manipular instruções SQL em uma interface gráfica. Com certeza estas ferramentas possuem recursos muito valiosos que vão além dos simples comandos e scripts voltados para editores de texto avançados. Como exemplo destaco as seguintes:

  1. Toad for Data Analysis;
  2. Embarcadero’s Rapid SQL XE;
  3. SwissSQL Console;
  4. FlySpeed SQL Query;
  5. RazorSQL.

O fato das opções acima serem focadas apenas no SQL lhes fornece uma vantagem em relação a editores de texto de propósito múltiplo, como o Visual Studio.NET, Eclipse ou Netbeans. Porém, a produtividade realmente só pode ser obtida quando se cultiva o hábito de empregar no dia a dia recursos avançados para otimizar a execução de tarefas.

3. Formate suas instruções SQL

 

É comum um DBA ou programador se deparar com uma instrução SQL gigantesca e incompreensível  obtida a partir de um log ou mesmo coletada de um código fonte. Para facilitar a formatação visual (e também o entendimento), recomendo um ótimo formatador online de instruções SQL chamado OnLine SQL Formater. Copiar, colar e formatar uma instrução nesta ferramenta pode ser muito útil para facilitar o seu entendimento e compreensão, economizando valiosos esforços mentais necessários para tal tarefa.

 4. Use o Intellisense

O recurso de sugestão de palavras, sintaxes e texto em geral é uma das características que está se tornado cada vez mais comum em qualquer lugar onde é necessário digitação. Atualmente, este recurso não é exclusivo de aplicativos móveis ou IDEs, como o Visual Studio.NET ou o Eclipse. Ele pode ser colocado em qualquer caixa de texto ou editor. Uma ótima ferramenta que faz isso se chama Typing Assistant, que pode simplificar muito a digitação e entrada manual de dados frequentes em qualquer aplicação.

5. Use atalhos e snippets

A utilização de atalhos, não só os do desktop do sistema operacional, snippets e templates (partes de código previamente criadas com lacunas a serem preenchidas), facilita e ajuda muito o desenvolvedor que precisa lidar com instruções, trechos, blocos e partes de código fonte e instruções SQL. Geralmente os IDEs já possuem um bom suporte para estes recursos, mas destaco dois links com informações sobre estes recursos no Management Studio – a ferramenta principal de implementação e administração do SQL Server -: este e este.

6. Use e abuse do hardware

 O mercado está cheio de soluções de hardware que podem impulsionar a produtividade de um profissional. Aqui destaco os meus dois preferidos: o uso de mais de um monitor (que requer uma placa de vídeo que suporte tal tarefa) e o uso de mouses especiais com botões. Estes recursos são extremamente interessantes e dependendo da situação podem auxiliar drasticamente no tempo de redução das tarefas. Por exemplo, o mouse voltado para gamers profissionais chamado Razer Naga possui doze botões laterais posicionados perto do polegar que podem ser customizados.

Imaginem que nestes botões seja possível configurar a tecla Del, Page Up, Page Down e combinações como CTRL+C, CTRL+V e outras. Este tipo de recurso facilita muito que trabalha diretamente com código fonte e instruções SQL. Já para a se trabalhar com mais de um monitor indico este link.

7. Tenha à mão um guia de consulta rápida

Guias de documentação são pequenos livros com o resumo de instruções, sintaxe e conceitos prontos para serem rapidamente revisados. Com certeza eles não substituem a documentação oficial, mas podem gerar ganhos de produtividade até que se acostume com os principais comandos, funções, estruturas, classes, método e outros de determinada tecnologia. O exemplo clássico envolve os guias produzidos pela editora Novatec, que já são bem conhecidos no mercado. Mais informações sobre estes guias são encontradas neste local.

 8. Não se perca com senhas e mais senhas

Trabalhar com programação e administração vai requerer o armazenamento de senhas e logins de acesso pessoais a diversos serviços, sites, plataformas, redes sociais, etc. Como este tipo de informação é sensível recomenda-se utilizar uma ferramenta apenas para isso. Uma exemplo é o Keepass Password safe que com certeza economiza alguns preciosos minutos quando não lembramos aquela senha ou login necessários para a autenticação em um local.

 9. Otimize o seu desktop

Os sistemas operacionais com interface gráfica fornecem um desktop básico com algumas funcionalidades tais como criação de atalhos, alternância entre aplicações ativas e controle de recursos. Porém, atualmente, existem diversas aplicações que modificam o desktop visando organizá-lo e torná-lo mais eficiente. O vídeo abaixo mostra algumas destas aplicações – com destaque para aquelas que transformam o desktop em um verdadeiro ambiente 3D. Enquanto alguns leitores podem classificar estas abordagens como “apenas modificações visualmente agradáveis”, é possível obter muita produtividade quando se emprega corretamente estas ferramentas para otimizar a execução das tarefas no dia a dia.

10. Crie novas teclas de atalho

Muitas aplicações fornecem um conjunto de teclas de atalho para acessar itens do menu ou as ações mais frequentes junto com a possibilidade a customização destas teclas. Porém existem situações onde nem sempre temos uma tecla de atalho ou queremos montar uma combinação complexa de teclas e mapeá-la para uma tecla de atalho. Para isso recomendo o ótimo programa chamado AutoHotKey que fornece uma linguagem para a criação de atalhos complexos. Estes atalhos podem ser utilizados em qualquer aplicação uma vez que o AutoHotKey funciona integrado com o sistema operacional.

 11. Monte scripts de acordo com a interface

Uma das tarefas mais tediosas envolve a manipulação repetitiva de controles da interface. Para automatizar este tipo de manipulação alguns pesquisadores propuseram o conceito de Picture Driven Development, no qual é possível programa em um script diversas opções que se baseiam na interação com da interface. A ideia é um  pouco complicada de explicar sem demonstração e, por isso, o vídeo abaixo mostra a excelente ferramenta chamada Sikuli, que permite montar scripts avançados de acordo com certas figuras obtidas a partir da interface gráfica:

Destaco também alguns outros exemplos de scripts que podem ser montados, como os exemplos apresentados neste link.

 12. Mapeie um endereço de FTP como driver do Windows

Muitos desenvolvedores Web e designers trabalham diariamente com o FTP para atualizar sites em ambientes remotos. Uma pequena ferramenta chamada NetDrive permite o mapeamento de um endereço FTP (com login e senha) diretamente para um driver local. Este tipo de recurso pode gerar muita produtividade, pois com ele é possível editar, abrir ou salvar um arquivo diretamente de um local remoto, acessível via FTP, como se ele fosse local.  

 13. Facilite a manipulação de arquivos CSV

Os arquivos CSV (Comma Separated Values) são arquivos texto bem conhecidos por quem trabalha com banco de dados e programação. Hoje, existem diversas ferramentas específicas de cada banco de dados para se trabalhar com este formato e, por isso, quando há necessidade de trabalhar com mais de um banco de dados, muitas vezes precisamos alternar entre diferentes ferramentas. O CSVexpress facilita este trabalho, pois ele foca na importação, manipulação e exportação de arquivos CSV de forma independente do destino dos dados.

 14. Meça seu tempo de trabalho automaticamente

Quando estamos trabalhando diretamente em um código ou em uma tarefa específica, muitas vezes, estamos tão concentrados que esquecemos de documentar em algum tipo de planilha quanto temos gastamos naquela tarefa. Para auxiliar quem trabalha diretamente com programação, existem diversas aplicações de Time Tracking úteis para documentar o tempo gasto em atividades e até integrar este tempo diretamente no controle de projeto. Este link possui uma lista de aplicações neste estilo que realmente auxiliam a documentar e ajudar a identificar quanto tempo foi gasto em cada uma das tarefas realizadas pelo desenvolvedor.

 15. Esteja sempre com ferramentas para viagem

Muitos desenvolvedores precisam se locomover do seu local de trabalho habitual para resolver problemas ou desempenhar seu trabalho remotamente. Nestas situações é sempre bom ter um conjunto de ferramentas de software básicas para não passar aperto. Já descrevi algumas das ferramentas que sempre levo em consultorias de banco de dados em  um neste artigo, mas nunca é demais se equipar com ferramentas que podem ser rapidamente utilizadas a partir de um pen drive em situações emergenciais.

16. Procure novas dicas de produtividade e práticas de trabalho

O bom profissional sempre procura melhorar o trabalho que ele faz e compartilhar como ele trabalha. Isso envolve a otimização e a busca não apenas por novas ferramentas mas também por novas práticas para se tornar produtivo. Atualmente existem diversos sites especializados nisso e posso recomendar os seguintes links para quem procura sempre novas técnicas de produtividade:

Para finalizar, gostaria de sugerir aos leitores que compartilhem nos comentários abaixo as suas ferramentas de produtividade e também as suas práticas, configurações, atitudes e ações que aumentem a produtividade nas tarefas do dia a dia de quem programa e desenvolve software.

Comente também

3 Comentários

Davi Marcondes Moreira

Gostei muito do artigo! Adquiri na semana passada o livro Conversando Sobre Banco de Dados pelo Clube de Autores, e já está na lista de leitura.
Meus parabéns pelo trabalho, e muito obrigado por compartilhar esse conhecimento!

Eriky Sousa

Otimo Artigo

Reinildes

Realmente muito Bom !

Parabens!

Qual a sua opinião?