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"];
 //[...]
}

segunda-feira, outubro 26, 2009

Mount do disco com rdesktop

Devo dizer que não tenho nada contra Linux, mas tanto o meu trajecto académico como profissional sempre me levou mais para o lado do Windows, mas não pertenço a nenhum dos "clãs".

Estava aqui no Linux e precisava de fazer um remote desktop, mas precisava de ver o disco do computador que estava a estabelecer a conexão, no computador que estava a ser acedido remotamente. E o comando é algo do género:

rdesktop [maquinaDestino] -r disk:LPT1=/opt

E não é que a pasta /opt do Linux fica acessível do lado do Windows...

terça-feira, outubro 20, 2009

Fanatismo religioso

Se calhar por não acreditar em Deus, há certas coisas que estão bem longe da minha compreensão. Uma delas é o caso que vou contar a seguir, que me deixa cada vez mais com alergia a crenças e religiões.

Conheço um rapazinho que queria entrar para os escuteiros, o que deveria ser algo totalmente independente de qualquer religião. Aparentemente não, para entrar nos escuteiros teria também de frequentar as aulas de Primeira Comunhão, qual o sentido disto? O rapaz poderia nem ser católico, e seria justo impossibilitar a sua entrada nos escuteiros por esse motivo? Eu nunca fui escuteiro, mas a ideia que tenho é que o objectivo é o bem estar com a natureza, ajudar os outros, actividades para estimular o crescimento das crianças...que tem isto a ver com a religião?

Ao longo da história real do Mundo (não aquela que vem por exemplo na bíblia), os factos comprovam que a religião serve essencialmente para criar sofrimento e guerras apesar do esforço de algumas minorias bem intencionadas.

quinta-feira, outubro 15, 2009

Parar um pedido em client side

O meu objectivo é ter algo que evite que o pedido chegue ao lado do servidor, ou seja, que haja algum género de confirmação do utilizador para o pedido prosseguir. O único truque está em ter um evento/função javascript que retorne false. Utilizando o seguinte exemplo de código aspx:

<asp:button id="identifier" runat="server" onclick="ClickMe" text="Send Request" onclientclick="return Confirmation()"/>

Tipicamente a função Confirmation() faz algo como mostrar um pedido de confirmação ao utilizador e mediante a resposta o pedido segue para o servidor sendo já 'atendido' em client side pela função ClickMe.
<script type="'text/javascript'">
  function GetLineConfirmation (){
      return confirm('Quer prosseguir?');
  }
</script>

segunda-feira, outubro 12, 2009

Votar em branco

Uma das coisas que não faço no meu blog, por regra imposta por mim, é falar em política. Contudo este post apesar de estar relacionado com política não é política, apenas é uma sugestão que gostava de ver implementada.

Depois desta época eleitoral intensa, creio que muitas pessoas como eu votaram em branco em alguma das eleições que passaram. Isto leva-me a uma pergunta: "O que impede alguém mal intencionado, na altura da contagem dos votos, de por uma cruz no meu boletim em branco?".

A minha sugestão é que todos os boletins de todas as votações tivessem uma opção no fim idêntica a - "Nenhum dos anteriores (em branco)" - creio que seria muito mais justo e traria mais transparência a todo o processo eleitoral.

quinta-feira, outubro 08, 2009

Verificar se uma função javascript existe

Por acaso até é algo extremamente fácil, apesar de nunca o ter tido a necessidade de utilizar até hoje, é tão simples como:
function VerifyExistance{
  if(window.FunctionToVerify){
     FunctionToVerify();
  }
}

quarta-feira, outubro 07, 2009

Finalmente abaixo dos 30 segundos

À mais ou menos 2 anos que tentava descer dos 30 segundos aos 50 metros livres, ontem finalmente consegui fazer 29,87 segundos. Sei que é um tempo vulgar para qualquer nadador médio, mas não interessa, o que interessa é que consegui o meu objectivo. Agora o objectivo é tornar-me mais consistente e fazer abaixo dos 30 segundos regularmente. Além disso tenho de começar a tentar baixar do 1m05s aos 100 metros, mas isso é mais complicado.