quarta-feira, novembro 25, 2009

Saw VI

Estive a ver o Saw VI e a única coisa que se pode dizer é BRUTAL. O filme está bombástico, cada vez se abre mais o livro, e começa-se a perceber todo o plano da mente brilhante de John Kramer. A relação entre as personagens começa-se a revelar e a perceber-se que tudo não é feito ao acaso e tem um sentido.

Para o ano que vem há mais, pois virá o Saw VII, esta saga não deixa-me de surpreender. Quando dizem que o Saw I foi o melhor eu não concordo nem um pouco, dizem que foi o melhor porque foi novidade, eu digo que todos os filmes têm uma sequência lógica e que se algum deles não existisse os outros já não faziam sentido, no fundo vejo é todos como um só grande filme.

terça-feira, novembro 24, 2009

Ultimate Symphonic Metal

Para os fãs do Symphonic Metal como eu aqui fica uma lista das melhores bandas que conheço. Devo confessar que muitas das que estão na lista não conhecia, mas sem dúvida têm músicas muito boas na sua generalidade. Repare-se ainda a concentração de bandas oriundas de países nórdicos, outra culta outro modo de olhar para esta música.

LinkedIn abre as portas

Apesar de ter algumas restrições, como é óbvio devido a serem dados pessoais, a LinkedIn disponibiliza agora uma API de modo a poder ser integrada noutros sites. A sua nova plataforma, sem dúvida é um bom modo de se publicitarem a si próprios, ao mesmo tempo que disponibilizam um serviço interessante para os seus utilizadores.

segunda-feira, novembro 23, 2009

Obter as últimas queries

Necessitava de obter as últimas queries que estavam a ser executadas no SQL Server, mas devido a ter concorrência no código seguindo o seu fio de execução não conseguia perceber o que estava a acontecer.

Até que descobri este artigo que explica como obter as últimas queries executadas pelo SQL Server.
SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query]FROM sys.dm_exec_query_stats AS deqsCROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS destORDER BY deqs.last_execution_time DESC

quarta-feira, novembro 18, 2009

Estou a ficar esclerosado

Hoje tive o seguinte diálogo:

Sujeito A: "Sabes dizer-me o que é OOP?"
Eu: "Não faço ideia!"
Sujeito A: "E se for POO?"
Eu: "Por acaso tive uma cadeira na faculdade que tinha esse nome mas não me recordo o que significava..."

É nesta altura que chamo URSO a mim próprio, POO - Programação Orientada por Objectos

segunda-feira, novembro 09, 2009

De volta a Frankfurt

Este ano a equipa do Orion's Belt voltou a Frankfurt para a BGF2009. Além da conferência em si que nos pôs a par das novidades do mercado, dos resultados de algumas das maiores empresas na área dos jogos online, a nossa visita também foi bastante interessante porque tivemos tempo para conhecer melhor Frankfurt.


Ver mapa maior

No sábado depois da conferência ainda conseguimos andar durante mais ou menos 15km enquanto percorríamos Frankfurt. Como já conhecíamos a parte norte porque o ano passado andámos só na parte norte e este ano o próprio hotel e conferência também eram da parte norte decidimos fazer uma passagem rápida e atravessar a ponte para o lado sul.

E foi aí que finalmente conseguimos comer algo tipicamente alemão num género de uma tasca local, que nos foi aconselhada por umas pessoas que conhecemos durante a conferência. Eu pedi ombro de porco, bem pensava que era carne do ombro...não, era mesmo o ombro...que grande naco de carne, deu luta!

Outros detalhes interessantes: não consigo passar nos aeroportos sem ser revistado desta vez foram umas caixas que levava dentro da mala, por isso já sabem traficantes não contem comigo; no meio de Frankfurt experimentei um restaurante turco, é uma cidade com uma grande diversificação de etnias e nacionalidades; e durante o nosso passeio descobrimos que Frankfurt tem um género de Red Light District - "É pá esta avenida parece-me que são só bares de strip, clubes de vídeo alusivos e sex shops...ainda não comprámos souvenirs pois não?"


terça-feira, novembro 03, 2009

Criar um indexer num objecto

Não conhecia esta técnica, mas em C# podemos simular que um objecto é uma colecção. O truque é simples o objecto tem uma colecção interna que a expõe indirectamente através de uma propriedade.

class Tester
{
 private Dictionary<string, int> dictionary = new Dictionary<string, int>();

 // Indexer
 public int this[string key]
 {
    get { return dictionary [key]; }
    set { dictionary [key] = value; }
 }
}
//[...]

static void Main(string[] args)
{
 Tester tester = new Tester();
 //[...]
 int data = tester["xpto"];
 //[...]
}