post

Renascer uma comunidade

Arregaçar as mangas

Tenho como objectivo uma difícil – mas não impossível – tarefa de renascer uma comunidade que se perdeu. Esta tarefa hérculea de relançar o fórum que me deu o prazer de conhecer variadíssimas pessoas com estilos e conhecimentos dos meus mas que contribuíram significativamente para aquilo que sei hoje.

Está na altura de identificar aquilo que está errado e em falta e começar a resolver os problemas para que o fórum possa ser novamente enriquecido com qualidade.

Para quem conhece o fórum Webtuga e tenha uma opinião concreta sugiro que deixem um comentário neste tópico, criado precisamente para obter as vossas opiniões. Para quem não conhece é uma boa maneira de alguém “vindo de fora” poder contribuir com a sua opinião.

 

post

O grande cenouras

Foram precisos mais de 5 anos mas finalmente tive a oportunidade de conhecer em pessoa um dos meus primeiros amigos da web, o grande Teotónio Ricardo aka cenourinha, o gestor de projectos do Webtuga. O encontro foi ontem à tarde no Dolce Vita de Coimbra juntamente com a Ana Pereira, uma das moderadoras do fórum.

cenourinha do Webtuga

Este encontro estava combinado à quase 2 meses devido a uma jantarada que ia haver e tinha decidido juntar o útil ao agradável. O jantar acabou por não se realizar por outros motivos mas como já tinha isto marcado na agenda, lá decidi fazer mais de 400 km mesmo que não estivesse em boas condições para ir (fui atropelado esta 4ª feira e fiquei com o joelho esquerdo em mau estado).

Falámos do passado, do presente e do futuro sobre vários assuntos. Debatemos cada um as nossas ideias para os projectos nos quais estamos presentemente envolvidos e as nossas ambições pessoais. Acabou por ser um serão agradável e fiquei satisfeito pelo encontro e ansioso para uma próxima vez. A repetir de certeza 🙂

post

New projects in mind

I’ve just added to my To-Do List a bunch of projects I would like to do. Starting tomorrow I’m going to organize my busy schedule to find time to do these projects. I’m tired of always managing my time for others. Unfortunately, I ebb-and-flow between being super-motivated and burnt-out/overwhelmed. It’s easy to get pessimistic, but at the end of the day, when you’re finished just take a deep breath and feel you’re accomplishment.

So what projects am I planning to work on? In time to time you’ll see them. Meanwhile, I can tell where am I getting my motivation. For example, when do we do our best work? That’s easy, when we’re excited about something. Excitement morphs into motivation. A great way to stay motivated is to work on something new. No one likes being stuck on a project that never seems to end. In order to enlighten you about this issue let’s look at the following picture:

Working on a big project

The typical project starts out great but then our motivation and interest wanes as time goes on – resonance is a cool idea to parallel motivation btw. It’s natural. Staying interested in a project over a long period of time is a challenge for anyone. The longer the project the thinner the tail. We’re not going to do your best work in the tail.
What I am planning to do is follow some “universal laws”

  • The classic divide and conquer strategy. It definitely works well on any long term development projects as it keeps your focus in tight enough to get each piece done without distraction.
  • Keep it simple, do what’s in front of you, and don’t focus so much on the unknown, unseen and – probably – unwanted.
  • Being hyped up on coffee also during the start of a new project breeds the best work 😀

Figuratively speaking my plan is this:

Small projects, more motivated

Bottom line: Shatter big projects into little pieces. Finish and launch one piece at a time. Over time you can recombine these pieces into the one big feature you had planned. Working on and finishing one little piece at a time will help to stay motivated because we’re always working on something new. Our best work is in the bursts, not in the tails.

Wish me luck 🙂

post

Konami Code

Recentemente, tive o privilégio de ser uma “vítima” de uma brincadeira destas. No comentário do Facebook do meu primo, vi referência a um pequeno truque que faz com que apareçam uns círculos depois a seguinte sequência de teclas:

Qual o meu espanto quando reparei que o que ele se estava a referir era o Konami Code criado por Kazuhisa Hashimoto em 1985, o developer da Konami que procurou “ajudar” o jogador a passar o jogo Gradius para a NES. Este código foi passado de geração em geração nos vídeo jogos e para além da Konami, muitas editoras incluíram também o código nos seus jogos em jeito de homenagem.

Existem referências ao Konami Code em letras de músicas, t-shirts e até em alguns sites como o Digg e o Google Reader (e agora o Facebook), por isso estejam atentos, experimentem introduzir o Konami Code em jogos e sites, nunca se sabe quando podem descobrir algo escondido! 😀

Btw, se quiserem ver o Konami em acção no Facebook aqui está o vídeo:

Get the Flash Player to see this content.

post

SQL – Retirar horas de uma data

Há pequenas dicas que servem sempre para ajudar. Esta foi uma que aprendi hoje. Trata-se de uma maneira fácil e essencialmente rápida para retirar as horas e minutos de uma data em SQL:

DECLARE @date DATETIME
SET @date '2009-11-19 23:12:12'
SELECT(datediff(d, 0, @date))

O resultado final será este:

Basicamente o que faz é calcular o número de dias entre a data mínima do motor SQL e a data fornecida (datediff), e depois soma esses dias de novo à data mínima.

Como só são usadas operações matemáticas é bastante mais rápido do que converter para VARCHAR e depois de novo para DATETIME.

post

Como arrancar o Firefox mais rapidamente

Nos últimos meses passei a ser mais utilizador do Google Chrome do que o must-have Mozilla Firefox. Embora esteja ao corrente dos problemas deste browser, considero-o ainda assim mais rápido e eficiente (e mais leve de RAM) que os restantes browsers mais utilizados.

O mês passado instalei o novo Firefox, e apesar do grande anúncio da Mozilla a dizer que o Firefox 3.5 era o mais rápido de todos os browsers, qual o meu espanto quando só por abrir, perdia cerca de 10 a 15 segundos da minha vida à espera que abrisse. Ainda para mais, ainda noto o excessivo consumo de memória (neste momento estou com 4 abas abertas e está já a consumir-me 140 MB). Com o Google Chrome, e com os mesmos sites abertos e ainda mais tabs, ainda nem cheguei a metade.

Estava para desistir do Firefox quando após um tweet meu sobre o assunto, o @trmanco indicou-me um link para resolver o problema do longo tempo de espera para abrir este browser. A partir do Firefox 3, tanto os favoritos como o histórico e mais algumas coisas, passaram a ser guardados em bases de dados SQLite. Como qualquer outra base de dados, com o tempo têm tendência a ficar fragmentados ficando com espaços livres em tudo o que era sítio. O que isto causa? Problemas de performance no arranque do browser.

A melhor solução para isto é optimizar estas bases de dados. Isso poderá ser feito através do sqlite3, um script que é executado pela linha de comandos (disponível para Linux, Windows e Mac OS X).

Basta fazer download dos binários para a pasta Profiles do Mozilla.

Fecham o Firefox e pela linha de comandos acedem à dita pasta (exemplo em Windows):

cd C:/Documents and Settings/Application Data/Mozilla/Firefox/Profiles/randomname

Depois, basta executar o seguinte comando:

for %a in (*.sqlite) do (sqlite3 %a vacuum)

Abram o browser e vejam por vocês mesmos que o Firefox passou a estar ao nível do Chrome no que toca ao arranque 😀