Netbeans + Tema Twilight + Fonte Monaco

Programar é uma coisa que exige do programador bom conhecimento na linguagem que ele programa. Chega um momento que as coisas começam a se tornar repetitivas e você adota um framework (ou não!) para deixar que tudo o que for chato e repetitivo seja feito por ele. Tudo vai bem até que outro momento você pensa em otimizar melhor ainda seu trabalho (ou o seu ambiente de programação) e decide repensar melhor o editor/IDE que usa para programar.

Todo mero mortal programador vai passar por isso, se você está lendo este texto com certeza está ou já esteve próximo esse pensamento. Poupando melhor o seu tempo, ano passado passei por este mesmo período e fiz o dever de casa avaliando inúmeros editores de uso livre/gratuito para minha plataforma de trabalho e … minha escolha caiu sobre o NetBeans.

Rails Code
Creative Commons License photo credit: davestfu

Se você esperava um post te convencendo a usar o NetBeans, se deu mal. Sim, ele tem suporte a edição de CSS, geração quase automática de testes unitários, documentação baseada no phpDocumentor, projetos remotos, refatoração de código, trabalho em equipe com SVN/CVS, autocomplete de funções e variáveis e muitos outros inúmeros recursos.

Netbeans com Tema Twilight e Fonte Monaco

Gosto muito de usar o NetBeans com uma fonte que vem no Mac, chamada Monaco e o tema Twilight. Porém sempre encontro problemas ao habilitar diversas versões desta fonte por ela não ser Unicode e por ai vai. Neste cenário, eu escrevi este post para ter guardado para o futuro meu setup pessoal para o NetBeans:

  1. Instalar o NetBeans (eu instalo somente a versão PHP no meu Ubuntu)
  2. Instalar o tema Twilight for NetBeans (inspirado no disponível para textmate)
    • Ferramentas » Opções » Importar
  3. Instalar a fonte Monaco Unicode em TTF no Ubuntu
    • Copiar para ~/.fonts
    • Executar fc-cache -fv
  4. Configurar o NetBeans para usar a fonte Monaco
    • Ferramentas Opções » Fontes & Cores Sintaxe » Categoria » Padrão

Técnica Pomodoro: foco e produtividade sem procrastinação

Se eu falar que a partir de hoje você vai produzir o dobro que produz, trabalhando com períodos de 25 minutos e descansando 5 minutos entre eles, você acredita? Espere, e se eu acrescentar que a cada 4 períodos completados você pode descansar um período também de 25 minutos?

Estranho não?
Mas basicamente é isso que a Pomodoro Technique ensina.

Pomodoro

Facilidade

Por tempos todos procuramos soluções eficazes para melhorar nossa produtividade, todas elas muito complexas, difíceis de colocar em prática e que no fim acabavam só virando siglas para a nossa sopa de letrinhas.

Há aproximadamente 45 dias venho usando a técnica Pomodoro diariamente quando estou desenvolvendo, e acabei me surpreendendo com a quantidade de pomodoros que são concluídas x interrupções.

Como Funciona?

  • No início do dia, reserve 1 pomodoro (25 minutos, lembra?) para organizar seu dia. Parece bobeira eu pensei isso mas depois você vê que faz muito sentido.
  • Trabalhe focado por 25 minutos em uma mesma tarefa sem interrupções. Eu falei sem interrupções?
  • Finalizando seu pomodoro, vá curtir um intervalo de cinco minutos (Twitter? Yeah!)
  • Ao final de 4 pomodoros, faça um intervalo mais longo porque ninguém é de ferro. Eu levo isso a sério e uso 1 pomodoro pra descansar (sem interrupções, yeah!)

Tomato sauce
Creative Commons License photo credit: funadium

Você precisa de:

  • papel
  • caneta
  • algo que marque o tempo

A cada pomodoro, marque um X ao lado da tarefa. Muita gente fala em timer de cozinha pra controlar o tempo. Eu gosto de usar o FocusBooster

Interrupções

A cada interrupção, anote a tarefa/urgência em questão, e coloque-a numa lista chamada URGENTES NÃO PLANEJADOS.
Faça um pomodoro com TODAS estas tarefas, assim que possível, e resolva suas pendências, uma a uma.

Vantagens

Sensação de dever cumprido e um domínio sobre uma coisa difícil de manusear: O SEU TEMPO. Sua percepção sobre o tempo gasto e tempo disponível vai mudar completamente do que você tenha hoje em mente.

Desvantagens

Nem todos são adeptos desta técnica, e muitos dias você verá que teve o tripo de interrupções dos pomodoros completados. Invariavelmente você vai trocar o termo “horas” por “pomodoros” para qualquer atividade que irá calcular tempo necessário.

Conclusão

Enfim … é uma técnica maravilhosa que é fácil de colocar em prática e que no mesmo dia vai te mostrar que é possível ser produtivo em ciclos de 25 minutos, com a sensação de dever cumprido.

No site oficial tem materiais disponíveis, como o livro oficial, folha de TODO e o meu preferido Cheat Sheet.

Ps: Esse post foi escrito num Pomodoro de descanso, agora me dê licença que eu quero completar mais pomodoros :)

Usando Memcache com Kohana PHP

O Memcache é um sistema de cache de memória distribuída de alta performance, que permite acesso rápido a objetos que são armazenados em seu cache. A utilização vai da criatividade e necessidade do programador, que pode armazenar resultados de consultas, imagens, objetos, códigos para rápido acesso posterior.

Servers
Creative Commons License photo credit: JohnSeb

O uso de Memcache normalmente segue um padrão:

  1. O aplicativo recebe uma consulta do usuário ou do aplicativo.
  2. O aplicativo verifica se os dados necessários para satisfazer a consulta estão no cache de memória.
  3. Se os dados estiverem no cache de memória, o aplicativo utiliza os dados.
  4. Se os dados não estiverem no cache de memória, o aplicativo consulta o armazenamento de dados e armazena os resultados no cache de memória para solicitações futuras.

Legal, e no Kohana?

Primeiro passo, vamos copiar o arquivo /system/config/cache.php para /application/config/cache.php
Configure o arquivo para que fique desta forma:

$config['default'] = array(
  'driver'   => 'memcache',
  'params'   => '',
  'lifetime' => 3600,
  'requests' => 1000
);

Você pode alterar os parâmetros como precisa, onde sugiro:

lifetime = 3600 segundos (1h de timeout)
requests = 1000 (mil requisições de timeout)

E se o MemCache estiver em outro servidor?

Ai está, uma dica importante! Se você não executa o MemCache no mesmo servidor do Kohana, você precisa alterar o arquivo cache_memcache.php  em application/config. Se você tiver mais de um servidor memcached, você pode adicioná-las ao array $config['servers']. Veja um exemplo:

$config['servers'] = array(
  array(
    'host' => '127.0.0.1',
    'port' => 1234,
    'persistent' => FALSE
  )
);

Exemplos

Pronto as configurações, agora é a hora tão esperada em usar o cache, e realmente é a etapa mais fácil:

// Instancia o cache
$cache = Cache::instance();

// Tentando obter dados do cache
$retorno = $cache->get('item');

if(!$retorno)
{
  // Dados não retornaram, obtendo dados da origem
  $retorno = ORM::Factory('teste')->dados();

  // Gravando novo cache
  $cache->set('item',$retorno);
}

Simples, não? É Kohana e é por isso que eu gosto!

Instalando fontes da Microsoft no Ubuntu

Por mais que no Ubuntu temos a disposição o OpenOffice, você ainda vai acabar precisando as fontes TrueType da Microsoft para que os documentos que você criar sejam apresentados corretamente. Para quem desenvolve pra web, ter fontes como Arial, Tahoma e Verdana instaladas são fundamentais, porque são usadas em 90% dos projetos.

Fontes TTF Microsoft

Fontes TTF Microsoft

No Ubuntu, é só instalar o pacote ttf-mscorefonts-installer usando o apt-get:

sudo apt-get install ttf-mscorefonts-installer

Fontes Truetype que são instaladas neste pacote:

  • Andale Mono
  • Arial Black
  • Arial (Bold, Italic, Bold Italic)
  • Comic Sans MS (Bold)
  • Courier New (Bold, Italic, Bold Italic)
  • Georgia (Bold, Italic, Bold Italic)
  • Impact
  • Times New Roman (Bold, Italic, Bold Italic)
  • Trebuchet (Bold, Italic, Bold Italic)
  • Verdana (Bold, Italic, Bold Italic)
  • Webdings

Após instalar o pacote ttf-mscorefonts-installer, vocẽ precisa limpar e refazer o cache de fontes no seu Ubuntu:

sudo fc-cache -fv