sexta-feira, dezembro 31, 2010

S. Silvestre da Amadora

O último post deste ano vai coincidir com o meu último desafio deste ano, a corrida de S. Silvestre da Amadora. Vai se a primeira vez que antes de uma passagem de ano vou fazer uma S. Silvestre, e prevejo que depois de 10km a correr, eu não me vá encontrar nas minhas perfeitas capacidades para passar a noite toda a 100 à hora.

Quanto ao resultado da prova em si não estou à espera de conseguir bater o meu tempo da corrida do Tejo, esta semana tive treinos duros todos os dias e já vou um bocado "moído" para a prova, para não falar que não conheço o percurso e que o tempo tem estado horrível, a humidade não me favorece nada. A ideia é cumprir os mínimos e acabar a prova em menos de 50 minutos o que vier por acréscimo será bom.

domingo, dezembro 26, 2010

Programação da noite de natal

A única coisa que posso dizer é que quero que todas as noites sejam noite de natal para os canais portugueses, nada de telenovelas só filmes com alguns filmes de animação bem engraçados e que possibilitam um programa que é efectivamente para toda a famílias, desde as crianças até aos avós.

quinta-feira, dezembro 23, 2010

XL Party - FIL

No fim-de-semana passado estive na FIL na XL Party a promover o Orion's Belt. O resultado foi um pequeno acréscimo do número de jogadores, mas o mais importante ainda foi receber opiniões novas e perceber as dificuldades de quem entra no jogo pela primeira vez.

Uma coisa percebi claramente e é algo que temos debatido dentro da equipa, o jogo tem de ser muito mais interactivo, o primeiro impacto tem de ser melhorado as coisas têm de se desenvolver mais rapidamente, possibilitando aos jogadores numa primeira aproximação ter diversas tarefas a fazer, nunca estando à espera que algo aconteça para poderem desenvolver a próxima acção.


quinta-feira, dezembro 16, 2010

Amortizar e calcular a nova prestação

Muitas vezes falo com amigos meus sobre o assunto crédito habitação e sobre as amortizações. Apesar de não sermos consensuais quanto a ser bom amortizar ou não, eu sou um defensor das amortizações, mas não vou entrar agora nessa discussão. O objectivo deste post é mesmo demonstrar os cálculos feitos para obter a antiga e nova prestação, para isso vou usar como exemplo números redondos para simplificar os cálculos, contudo são valores perto da realidade.Imaginando o seguinte cenário:

Empréstimo de 100.000€, prazo de 30 anos (360 meses), spread de 0,8% e euribor a 1,2%, temos a pagar mensalmente:

Juros= (0,8% + 1,2%) * 100000 / 12 = 166,67€
Amortização = 100000 / 360 = 277,78€
Total = 444,45€

Imaginando agora que se faz uma amortização de 5000€ vamos refazer as contas:

Juros= (0,8% + 1,2%) * 95000 / 12 = 158,33€
Amortização = 95000 / 360 = 263,89€
Total = 422,22€

E quanto isto representa em poupança de juros ao longo dos 360 meses de prestações que faltam? Aqui fica a resposta

Poupança = (444,45 - 422,22) * 360 -5000 = 3002,3€

E este valor é obtido através de uma euribor simpática de 1,2%, agora se a euribor chegar por exemplo a um valor de 3,2% que é um valor expectável, refazendo as contas a poupança alcança os 6000€ ao final dos 360 meses. Agora voltando um pouco a discussão de se vale a pena amortizar ou não, não vale a pena amortizar se em 360 meses se conseguir com 5000€ obter um retorno superior a 6000€.

terça-feira, dezembro 14, 2010

Eval para C#

Por acaso nunca tinha precisado de avaliar uma string em C# para calcular o valor numérico dela, e fiquei surpreendido quando me apercebi que o C# não tinha de framework uma função equivalente ao Eval do javascript. Como a minha necessidade era só para contas simples somas, multiplicações, etc resolvi perguntar ao meu amigo Google se ele tinha alguma coisa que me resolvesse o meu problema.

Apesar de não ter encontrado nenhum código facilmente 'digerível' em meia dúzia de minutos e que não fosse uma black-box, encontrei um código que sabia fazer umas continhas, mas só funcionava para números com um dígito e para ter noção de precedência tinham que forçosamente serem colocados parêntesis. Após alterar esse código cheguei ao seguinte resultado:
public static double Evaluate(String input){
String expr = input.Substring(0, 1) == "(" ? input : "(" + input + ")";
expr = expr.Replace("+", ")+(");
expr = expr.Replace("-", ")-(");
Stack<string> ops = new Stack<string>();
Stack<double> vals = new Stack<double>();
  for (int i = 0; i < expr.Length; ++i){
    String s = expr.Substring(i, 1);
    if (s.Equals("(")) { }
    else if (s.Equals("+")) ops.Push(s);
    else if (s.Equals("-")) ops.Push(s);
    else if (s.Equals("*")) ops.Push(s);
    else if (s.Equals("/")) ops.Push(s);
    else if (s.Equals(")")){
      int count = ops.Count;
      while (count > 0){
        String op = ops.Pop();
        double v = vals.Pop();
        if (op.Equals("+")) v = vals.Pop() + v;
        else if (op.Equals("-")) v = vals.Pop() - v;
        else if (op.Equals("*")) v = vals.Pop() * v;
        else if (op.Equals("/")) v = vals.Pop() / v;
        vals.Push(v);
        count--;
      }
    }else{
      int idx = expr.IndexOfAny(new char[] { '+', '-', '/', '*', ')' }, i);
      vals.Push(Double.Parse(expr.Substring(i, idx - i)));
      i += (idx - i - 1);
    }
  }
  return vals.Pop();
}

segunda-feira, dezembro 13, 2010

Patinagem no gelo

A semana passada aproveitei para dar uma voltinha maior e resolvi ir a Elvas experimentar a pista de gelo. Como nunca tinha experimentado estava a confiar nas minhas fracas capacidades de patins em linha, mas mal ponho o patim no gelo percebi que não ia ser a mesma coisa. Os patins começaram logo a mexer-se por todo o lado como se tivessem vontade própria. Mas homem que é homem não anda agarrado ao bordo lateral, vamos mas é lá para o centro.

Devo dizer que a primeira volta deve ter sido feita tão rápida como se fosse uma tartaruga, mas a coisa lá foi melhorando e apesar de ter posto as mãos no chão uma meia dúzia de vezes não dei nenhum trambolhão também conhecido por 'bate cu'. Realmente o problema ali é a aderência, ou falta dela, enquanto era a direito tudo bem, quando era para curvar ai estava a dificuldade, curva...curva...curva e o corpo parecia que não mudava de direcção, outras vezes a curva saía tão bem que entrava em peão.

Outra coisa engraçada foi a temperatura, quem já tinha ido avisou-me para levar casaco que aquilo era frio e pelo senso comum gelo igual a frio eu confiei. Efectivamente antes de entrar na pista dá jeito, passados 5 minutos o que apetece é estar em t-shirt pois suava tanto que parecia manteiga a derreter no Verão. Conclusão, é uma modalidade que vale a pena experimentar por ser diferente e bastante divertida, com amigos que sejam patinadores nabos também já agora, assim dá para fazer competições do género quem aguenta mais tempo só tendo os patins em contacto com o chão e mais nenhuma parte do corpo.

sexta-feira, dezembro 10, 2010

Spartacus: sangue e areia

Esta série que conheci por portas e travessas, tenho de dizer que é a melhor série que vi nos últimos tempos e entra para o meu pódio das melhores séries juntamente com o 24 e o Prison Break. O título original da série é Spartacus: Blood and Sand, e como é expectável conta a história de Spartacus de uma forma mais ou menos verídica.

Claro que não é uma série que possa dar em horário nobre devido à imensa violência e cenas de sexo, mas é com grande estranheza que não a vejo publicitada ou falada em vários meios, nem que seja na própria internet, quando acabo por ver séries medíocres como o Walking Dead ter um destaque brutal, inclusive em telejornais portugueses quando a série nem é emitida em Portugal.

Pelo que sei a season 2 do Spartacus encontra-se em risco devido ao actor principal (Andy Whitfield) que representa o papel de Spartacus ter um linfoma, mas com pena minha tenho de dizer "The show must go on", arranjem um actor parecido, façam tratamento por computador, qualquer coisa, mas não deixem esta excelente série morrer.

sexta-feira, novembro 26, 2010

Que simbiose!

Hoje apanhei um vídeo no youtube que consegue juntar duas das coisas que mais gosto, o mergulho e música symphonic metal. O vídeo trata-se de um vídeo clip da música Until My Last Breath da cantora Tarja Turunen, mais conhecida por ser a ex-vocalista nos Nightwish, e é uma das vozes femininas que mais aprecio. A letra da música e o vídeo no mergulho encaixam na perfeição um no outro, que até parece que um foi feito a pensar no outro.


A parte do mergulho diz respeito ao recordista mundial de profundidade sem garrafas de ar, Guillaume Nery. Este não é o mergulho em que ele bate o record mundial mas é o mergulho mais belo que eu vi em vídeo pelo local (Dean's Blue Hole) e pela própria representação que ele faz durante o mergulho. Fica aqui também o vídeo do mergulho.


quinta-feira, novembro 18, 2010

Os desenhos animados da minha infância

Normalmente não sou uma pessoa de aderir a campanhas, mas achei engraçado que no facebook fosse proposta esta campanha de escolhermos desenhos animados como imagem de perfil. Por acaso já era para ter escrito aqui no blog sobre a mudança de paradigma nos desenhos animados de antigamente e dos actuais, então esta é uma boa hipótese para isso.

Antigamente, todos os desenhos animados tinham uma mensagem educativa, incluindo os ditos violentes para a altura como o He-man, que no fim de cada episódio tinha sempre uma lição de moral. Actualmente os desenhos animados têm um teor mais competitivo, mais agressivo, mais selvático reflectindo a selva na qual a nossa sociedade se tornou. Bem sei que o Mundo não é para os fracos, mas existem várias formas de fortalecer as nossas crianças e prepara-las para a agressividade da vida adulta.

É nestas alturas que não me importo de ter a idade que já tenho, de me poder lembrar de desenhos animados fantásticos, de poder ter desfrutado deles de uma forma que infelizmente já não o consigo fazer actualmente, de me levantar cedo aos fins-de-semana agarrar do cobertor e ir para a sala ver os desenhos animados na RTP porque naquela altura não havia SIC e muito menos TVI, não esquecendo ainda do "Agora Escolha" que dava todas as tardes no RTP2 e que era o único espaço semanal onde se podiam ver séries infantis/juvenis.

Deixo aqui a lista dos desenhos animados que me acompanharam na minha formação como pessoa, não incluindo nela as super produções da Disney senão a lista seria quase interminável: Ana dos cabelos ruivos, Asterix, Bocas, Capitão Planeta, Cavaleiros do Zodiaco, Conde Drácula, D'Artagnan, Dartacão, David o gnomo, Dennis o pimentinha, Denver, Dragon Ball, Ducktales, Era uma vez..., Fábulas da floresta verde, Flinstons, Garfield, Gárgulas, Gummi Bears, He-man, Heidi, Inspector Gadjet, Looney tunes, Lucky Luke, Mofly, Motoratos de Marte, Panda Tao Tao, Pantera cor-de-rosa, Pequeno Pónei, Pica-Pau, Popeye, Ren & Stimpy, Saber rider, Sailor moon, Samurai X, Scooby Doo, She-ra, Simpsons, Smurfs, Sport Billy, Tartarugas ninja, Thundercats, Tintin, Tom & Jerry, Tom Sawyer, Transformers, Tsubasa, Turma da Mónica, Ursinhos carinhosos, Vickie o Viking, Visionaries, Wacky races, Zé Colmeia e Catatau, etc.

Realmente recordar é viver...

quarta-feira, novembro 17, 2010

Consumo da mota

Comprei a minha Daelim Roadwin à 8 meses atrás, e ao fim deste tempo completei os primeiros 4000km. Não poderia estar mais contente com a mota, tanto tempo que já poupei com ela a evitar o transito infernal. Mas além da vantagem de poupança de tempo, acresce a vantagem da poupança monetária, completei os 4000Km com menos de 150€ em combustível.

Como factor de comparação posso dar o exemplo do meu carro, que é um pequeno utilitário a gasóleo, e apesar de ser a gasóleo que é mais barato que a gasolina e de ser um utilitário e como tal gastar bastante pouco, com 150€ conseguiria no máximo fazer 2500Km.

quarta-feira, novembro 10, 2010

Escolher uma password forte

Uma das coisas que mais me irrita quando estou a fazer um registo num site qualquer, por exemplo um forum, é ter restrições de passwords ridículas que vão contra todas as regras de segurança. Restrições do tipo:
  • Só pode conter letras
  • Não pode ser maior que X caracteres
  • Não pode conter maiúsculas
Todas estas restrições são estúpidas e vão contra as regras do que é uma password forte e logo dificilmente quebrável:
  • No mínimo 12 caracteres
  • Contendo maiúsculas e minúsculas
  • Contendo números
  • Tendo pelo menos 1 caracter não alfanumérico.
E isto irrita-me também porque eu próprio não respeito uma das regras de segurança, que é não utilizar a mesma password em vários sítios, mas neste caso que se lixe são tudo sites irrelevantes que não me comprometem em nada, que só tenho de ter registo porque sem ele não consigo ler alguns artigos. Por estes sites terem estas restrições idiotas depois tenho de andar a inventar passwords diferentes para cada um, passwords essas que acabo por esquecer porque vou a esses sites para aí uma vez por mês.

terça-feira, novembro 02, 2010

Móveis Ikea

Hoje passei um dia agradável a montar os meus móveis da sala comprados no Ikea. Tirando o facto da qualidade dos aglomerados ser duvidosa, ou melhor de duvidosa não tem nada, ninguém duvida que aquilo não tem qualidade nenhuma, mas dado o preço reduzido comparado com outros locais acho que foi a decisão acertada. No fundo o Ikea é um fast food aplicado aos móveis, tem bom aspecto, custa pouco mas não é grande coisa.

O divertido disto tudo, é que para mim montar os móveis é quase como voltar à minha infância, a diferença é que na altura montava os Legos e Playmobil, e agora monto os móveis. Devo dizer que é facílimo montar aquilo, as instruções são simples e é só seguir os passos e rapidamente temos os móveis prontos a utilizar.

segunda-feira, outubro 25, 2010

Corrida do Tejo

A primeira coisa que tenho de destacar nesta corrida foi a excelente organização da prova, não é nada fácil organizar uma prova com 10000 participantes. Depois a introdução do chip para medir com exactidão o tempo de real de corrida, e escalonamento na partida por tempos para que os atletas que levam a prova um pouco mais a sério evitarem as pessoas que só vão andar, duas excelentes medidas sem dúvida.

Infelizmente no meu caso como não tinha nenhuma prova do tempo que normalmente faria, tive de partir juntamente com toda a multidão cá bem para trás, o que fez com que demorasse só a chegar à partida 1m50s. No final fiz 46m29s de tempo real e 48m19s de tempo de prova, e mesmo tendo em consideração que perdi 1m50s só para partir consegui acabar no lugar 1760, o que não foi nada mau, mas não consegui chegar ao meu objectivo de baixar dos 45m, quem sabe para uma próxima prova.

Ficam aqui alguns dados da minha prova:
  • 23m14s aos 5km, o que me diz que fiz uma prova extremamente regular pois demorei o mesmo tempo nos primeiros 5km e nos últimos 5km.
  • Média de cada quilómetro feito em 4m39s, o que significa que apenas tenho de melhorar 9 segundos por quilómetro para chegar à minha meta de 45m aos 10km.
  • Velocidade média de 12,9km/h.
  • Média de 165 batimentos cardíacos por minuto.
  • Máximo de 174 batimentos cardíacos por minuto.

sexta-feira, outubro 22, 2010

Hóquei subaquático

A primeira coisa que tenho a dizer em relação ao hóquei subaquático é que é das modalidades mais exigentes que já pratiquei, bastante cansativa, bastante difícil tecnicamente. A primeira vez que experimentei foi com o pessoal da CNA (Clube de Natação da Amadora), ontem fui novamente desafiado para ir fazer um treino, desta vez ao Boa-Hora Futebol Clube e como é óbvio não havia como recusar.

Após estes dois treinos, e apesar de ser um novato, notei clara diferença de estilo entre os dois treinos e as duas equipas, a CNA é uma equipa extremamente física, com uma preparação incrível, junto ao disco debaixo de água parece que está sempre um cardume de tubarões esfomeados num frenesim. No caso da Boa-Hora dão muita importância à componente táctica, com posicionamentos mais rígidos, com uma maior dependência e entre ajuda entre os elementos da equipa. A nível de palmarés a CNA encontra-se claramente em vantagem tanto nacional como internacionalmente, mas devo dizer que tecnicamente encontrei muito bons jogadores nas duas equipas.

Deixo aqui um vídeo para dar um pouco a noção do que é o hóquei subaquático, o rapaz que aparece nesta entrevista foi o meu treinador de ontem.


quinta-feira, outubro 07, 2010

Frequencímetro no treino

Ultimamente tenho variado um pouco o meu treino e por isso senti a necessidade de comprar um frequencímetro de modo a poder medir instantaneamente a minha frequência cardíaca. No treino que costumava fazer, dito treino em esforço crescente, que é um treino mais tradicional onde o objectivo é ir aumentando a carga/esforço ao longo do treino não sentia a necessidade de ter o frequencímetro, pois o objectivo era dar sempre mais um bocadinho que no exercício anterior.

O treino que tenho feito nos últimos tempos, em conjunto com o treino anterior, é um treino por picos, em que o objectivo é ter durante 45-50 minutos 3 picos de esforço seguidos de 3 recuperações. Neste tipo de treino é importante o frequencímetro para se conseguir avaliar se o pico está efectivamente a ser bem feito e estamos a alcançar o nosso limite. Mas mais importante ainda é avaliar a recuperação de forma a que esta seja efectiva, e o corpo esteja preparado para o pico de esforço seguinte.

Existem frequencímetros desde 25€ até 300€ em que a precisão vai aumentando, mas o que realmente encarece é o aumento das funcionalidades havendo alguns que por exemplo dão a altimetría, o que é interessante para quem corre ou anda de bicicleta em terrenos acidentados. Se é só para medir a frequência cardíaca um de baixo custo é o suficiente.

sexta-feira, setembro 17, 2010

7 Cidades - Açores

Não há assim tanto a dizer sobre as 7 Cidades, basta dizer que agora é uma das 7 maravilhas de Portugal para se perceber a beleza que se pode apreciar. As 7 Cidades são conhecidas essencialmente pelas duas lagoas que estão na cratera do vulcão a lagoa Verde e a lagoa Azul. Para quem gosta de percorrer trilhos este é um excelente local para o fazer, por isso se forem a S. Miguel tirem pelo menos um dia para percorrerem esta natureza espectacular a pé, de modo a conseguirem desfrutar da sua beleza.Junto às lagoas existe uma pequena aldeiazinha como se vê pela imagem, nessa aldeia aconselho a visitar o jardim e a igreja. As igrejas são uma constante ao longo de todas as povoações de S. Miguel, existem por todo o lado mesmo em locais com poucas casas.

Finalmente, e visto que se está muito perto da costa oeste da ilha, aconselho a um mergulho na ponta da Ferraria. Neste local as águas termais misturam-se com as águas do mar o que faz com que a água do mar seja mais quente que o habitual. Quanto mais baixa estiver a maré mais quente fica a água pois sente-se mais a temperatura vinda das águas termais.

Fábricas dos Açores

Em S. Miguel existem algumas fábricas/indústria que tem é interessante visitar pela forma artesanal como são fabricadas as coisas. A Cerâmica Vieira é o primeiro local que aconselho visitar, aberta desde 1862 mantém o a moldagem e pintura de peças de forma manual, fazendo assim peças únicas. Esta fábrica localiza-se no centro sul.
No local oposto da ilha, no norte centro, encontra-se a fábrica de chá Gorreana. Tal como a fábrica de cerâmica esta mantém ainda uma forma artesanal de preparar o chá. Nesta fábrica podemos ver todo o processo desde a chegada das ervas (os campos à volta da fábrica estão minados de plantações) até a moagens, secagem, separação pela qualidade e embalagem.

Finalmente podemos ir a Fajã de Baixo perto de Ponta Delgada, e ver as plantações do típico ananás dos Açores. Eu não fazia ideia, mas um ananás demora 2 anos a estar pronto a ser consumido, e a altura do ano em que é colhido determina a sua qualidade e tamanho, e neste caso tamanho não é qualidade. O típico licor de ananás também pode ser comprado nesta plantação sendo feito a partir dos ananases da plantação.

segunda-feira, setembro 13, 2010

Novo programa de treino

Desde à 16 anos para cá que pratico natação, e esse tem sido o único exercício regular que faço todas as semanas, cerca de 3-4 treinos por semana. Devo de dizer que regularmente acontece ano após ano, que quando chego a uma certa altura da época tenho de me obrigar a ir treinar porque não me apetece, sinto-me aborrecido por fazer a algum tempo sempre o mesmo exercício.

Este ano mudei o meu plano de treinos, a minha ideia é fazer 6 treinos por semana mas não só de natação, quero fazer além da natação, top ride, u-bound e x-55, de forma a exercitar outras áreas que a natação não ajuda assim tanto, e também evitar o efeito monotonia que a natação me provoca ao fim de alguns meses. A semana passada por exemplo fiz 2 treinos de natação, 3 de top ride, 1 de u-bound e 1 de x-55.

O top ride é uma aula onde se simula um treino de alta competição de bicicleta, onde se simula 3 subidas 3 sprints com recuperação intermédias entre cada um deles, ou seja, não é um treino em crescente como é habitual mas sim um treino em picos.

O u-bound, é tão intenso como o top ride, acabamos o treino mesmo a suar por todos os lados, bastante divertido, e é um treino bastante bom pelo facto de não dar muita carga sobre as articulações por ser feito em cima dos mini trampolim.

Finalmente o x-55 foi a que menos gostei, é menos intenso que os anteriores e é uma aula mais ou menos de localizada mas com um pouco mais de intensidade, como se trabalham os músculos com pesos e com a utilização do step.

sexta-feira, agosto 27, 2010

Nordeste - Açores

Um dos pontos/áreas turísticas de S. Miguel é o Nordeste da ilha. Esta região é a mais remota, e apesar de S. Miguel ser uma pequena ilha, devido aos péssimos acessos da região esta fica a mais de 1 hora de qualquer uma das cidades importantes da ilha. Assim sendo acaba por ser o local menos povoado da ilha. A zona das Furnas e do Nordeste são geologicamente o local mais antigo da ilha, contudo devido à sua topologia montanhosa e as suas escarpas viradas para o mar, é pouco interessante do ponto de vista de estabelecer povoações, logo acaba por ser a zona da ilha onde a natureza ainda está mais virgem.
O mais interessante deste local são mesmo as paisagens fenomenais, tanto de montanhas cobertas de verde, como de um belo mar azul a perder de vista. O outro ponto de interesse nesta zona da ilha são as cascatas de Achada, apesar de não serem muito grandes a paisagens envolvente, a nitidez da água e o trabalho que foi feito no local para dar boas condições aos visitantes torna este local num dos pontos obrigatórios numa visita a S. Miguel.

Furnas - Açores

Uma das coisas mais conhecidas dos Açores são os cozidos nas Furnas. Apesar de estar um pouco séptico em relação ao sabor do comer feito nas Furnas não podia deixar de experimentar estando nos Açores.Uma coisa posso dizer, o cheiro emanado das furnas é mesmo nauseabundo, assim como a água das fontes frias que parece vinagre, contudo os alimentos não apanham assim aquele sabor, existem algumas partes do cozido que sim apanham um saborzinho, mas nada de intragável. Também fiquei a saber que além do cozido, nas furnas também se faziam outros comeres como bacalhau, apesar de não ser tão conhecido.

quarta-feira, agosto 25, 2010

Caldeira Velha - Açores

A Caldeira Velha é uma das mais míticas fontes de água quentes dos Açores, tipicamente aparecendo em quase todas as imagens que se referem a S. Miguel. A Caldeira Velha contem águas quentes devido a fenómenos de vulcanismo secundário, do mesmos vulcão onde está contida a Lagoa do Fogo, ficando a poucos quilómetros da mesma.

Apesar da água poder parecer um pouco barrenta é muito agradável dar um mergulhinho só para experimentar a sensação de 'água da banheira' em plena natureza verdejante. Aqui ainda é possível observar algumas fumarolas, também indicadoras de vulcanismo secundário.

Lagoa do Fogo - Açores

Este ano passei as minhas férias em S. Miguel nos Açores, e devo dizer que é uma ilha fantástica para se passar férias. E como há muito a dizer, vou durante os próximos dias dedicar alguns posts aos sítios mais emblemáticos por onde passei.
A lagoa do Fogo está sobre a cratera de um dos 3 vulcões que a ilha tem que apesar de adormecidos ainda estão activos. O acesso à lagoa é feito por trilhos, sendo que de carro o mais perto que se consegue aproximar é a distância que se vê da foto. A lagoa do Fogo fica no centro da ilha de S. Miguel, a poucos quilómetros de Ponta Delgada e da Ribeira Grande que é a segunda cidade mais importante de S. Miguel.

domingo, agosto 08, 2010

A-Team - O filme

Ora aqui está um filme que me surpreende pela positiva, e eu a pensar que iam denegrir uma série de culto, e ai está o A-Team (Soldados da Fortuna) no seu melhor. Um filme com acção ao estilo dos anos 80, mas com um aguçado sentido de humor, sem dúvida um bom filme para ver tiros, explosões, murros mas sempre com uma boa dose de divertimento. A história do filme passa-se antes da série mostrando a origem do A-Team, como se juntaram, algumas curiosidades como porque do B.A. Baracus ter medo de voar

Liam Neeson
encara brutalmente bem o papel de Colonel Hannibal Smith, e para mim os papeis mais míticos os de B.A. Baracus e de Captain H.M. Murdock, porque são os papeis mais difíceis de descolar dos actores originais foram interpretados superiormente por estes dois novos actores. Acho que os fãs da série vão aplaudir o filme porque faz justiça ao original, e para acabar bem não poderia acabar com outra frase que não fosse - I love when a plan comes together!

quinta-feira, agosto 05, 2010

Threading em C#

Apesar de conhecer bem os conceitos de threading, existem certos detalhes que começam a ficar esquecidos por não usar constantemente todos os mecanismo de threading ao meu dispor. Como algumas vezes surgem-me dúvidas em relação a threading, estou a ler este artigo, http://www.albahari.com/threading/threading.pdf, que me parece bastante bom e aconselho a sua leitura para quem tiver com dúvidas sobre threading em C#.

sexta-feira, julho 30, 2010

Adeus António Feio

Infelizmente a riqueza cultural portuguesa perdeu mais uma das suas jóias, depois de Camacho Costa e Raul Solnado, agora foi o grande António Feio que após muita luta contra o cancro no pâncreas acabou por não resistir. Obrigado pelo legado, obrigado por todas as recordações imortais que nos deixas.

quinta-feira, julho 22, 2010

Update com join em SQL

Muitas vezes é necessário actualizar campos de uma tabela com dados de outra tabela com que ela se relaciona. Acontece que não é possível num statement de update por um inner join como se põe num statement de select, nem é possível igualar o campo ao qual se está a fazer set a uma cláusula de select. Então a sintaxe muda ligeiramente, mas o raciocínio por trás é o mesmo.

UPDATE Table1
SET Table1.FieldA = Table2.FieldX
FROM Table1 INNER JOIN Table2
ON Table1.keyA = Table2.keyX

quarta-feira, julho 21, 2010

Backups de SQL em batch

Em muitas aplicações é necessário fazer backups constantes das bases de dados. A solução mais simples é criar um job que chama um batch file. No batch file basta ter um simples comando que é responsável por criar aos backups.

osql -S {servidor} -U {username} -P {password} -Q "BACKUP DATABASE {base de dados} TO DISK = N'{path}' WITH NOFORMAT, NOINIT, NAME = N'{name}', SKIP, NOREWIND, NOUNLOAD, STATS = 10"
Ex:

osql -S localhost -U admin -P 12345 -Q "BACKUP DATABASE [MyDB] TO DISK = N'C:\backups\MyDB.bak' WITH NOFORMAT, NOINIT, NAME = N'MyDB-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10"

quarta-feira, julho 14, 2010

Parabéns ao ciclismo

Como sabem as pessoas que me conhecem sou um fã da volta à França (Tour) de há muitos anos para cá. E nestes anos todos que vejo o Tour, têm em quase todos contado com a presença de pelo menos um português. E nestes anos todos sempre desejei poder ver o sucesso de um português individualmente (vitórias colectivas não interessam), hoje finalmente um português ganhou uma etapa do Tour.

Parabéns Sérgio Paulinho!!!

segunda-feira, julho 12, 2010

Nós de gravata

Já houve uma altura da minha vida onde tinha de usar diariamente gravata, hoje em dia já uso raramente, mas uma coisa engraçada que ficou, e apesar de eu ser um esquecido por natureza, foram os nós de gravata que me lembro ainda como se fazem.Normalmente variava entre o Windsor e o Half Windsor.

O Windsor usava em gravatas finas ou de seda, no primeiro caso para fazer um mais grosso e vistoso, no segundo caso porque as gravatas de seda têm tendência a a deixarem o deslizar. No caso do Half Windsor usava em gravatas grossas que por esse facto facilmente faziam nós robustos. Ainda usava de vez em quando uma variação do Windsor, que creio que é única pois nunca vi ninguém a utilizá-la ou a falar nela. Não aconselho a utilização do Four in Hand e do Double, que são dois nós muito idênticos, aliás o Double tem como base o Four in Hand, pelo facto que o nó da gravata fica assimétrico e com um ar de "feito a despachar".

Deixo aqui dois sites que explicam de um modo simples como se fazem os nós de gravata:
http://www.tieknot.com/
http://www.tie-a-tie.net/

segunda-feira, junho 28, 2010

Acessibilidade vs Usabilidade

Falando de uma aplicação web, acho difícil conciliar estas duas coisas, especialmente quando se desenvolve uma aplicação e quando estamos a chegar ao fim é nos pedido para que a aplicação respeite as normas de acessibilidade.

Olhando às normas de acessibilidade e às validações que são feitas, algumas são extremamente ridículas e até comprometedoras do desempenho de uma aplicação. Agora imagine-se que um cliente nos pede uma aplicação que tem de ser super interactiva, com flash, com silverlight, com gráficos, coisas a mexer por todo o lado, que aparecem e desaparecem por pedidos AJAX, bem já se está mesmo a ver que a acessibilidade passa a ser um mito. Nesta situação existem três coisas a fazer, ou se ignora a acessibilidade, ou se ignora a usabilidade, ou finalmente fazem-se duas aplicações porque as acessibilidade e usabilidade não conseguem coabitar.

segunda-feira, junho 07, 2010

Cinema de fim-de-semana

Este fim-de-semana vi 2 filme, Príncipe da Pérsia (Prince of Persia) e Um sonho impossível (The Blind Side). Quanto ao primeiro é um bom filme para ir ver ao cinema, boa história, boa dinâmica, bons actores... Não sou um fã do vídeo jogo, por isso não posso dizer se está fiel à história, mas o que me interessa é que está com um bom argumento e um bom final, claro que não é um épico, mas é um bom "filme pipoca".

Em relação ao segundo, excelente filme, uma história tocante de uma pessoa que nada tinha, nada tinha perder, e com um grande humanismo conseguiu alcançar os seus objectivos e vencer na vida. Quanto ao Óscar para a Sandra Bullock, acho que é mais um prémio de carreira que outra coisa, não é que tenha sido uma má interpretação, mas não foi uma interpretação de excelência.

terça-feira, junho 01, 2010

Dados em memória ou em BD?

Quantas e quantas vezes são necessários dados estáticos numa aplicação? Imensas vezes, por exemplo para preencher valores de dropdowns. Em relação a estes dados estáticos (ou mesmo pouco mutáveis) ao longo da vida de uma aplicação, eu defendo que eles devem ser armazenados em memória por razões de desempenho, e porque não vejo nenhuma desvantagem significativa. Contudo até acredito que vendo as coisas de outra perspectiva que eu não estou a ver que exista alguma desvantagem, mas enquanto não me conseguirem provar isso mesmo vou continuar a optar por guardar os dados em memória.

quinta-feira, maio 27, 2010

Comportamento do atributo disabled

Hoje estava de volta de um daqueles bugs chatos quando descobri um comportamento interessante (ou não) do atributo disabled. Imaginando que temos o seguinte código de exemplo a caixa de texto vai estar disabled?
<span disabled="disabled">
 <input type="text" />
</span>

Se eu disser que o bug está relacionado com a diferença de browsers, ilumina alguma coisa? Pois é, o problema aqui é que o IE interpreta isto pondo a caixa de texto a disabled, visto que ela está dentro de um span disabled e o Firefox interpreta isto pondo a caixa de texto enabled pois efectivamente ela não está marcada como disabled. Qual o comportamento correcto não sei, mas gostaria que todos os browsers se portassem da mesma maneira.

quarta-feira, maio 26, 2010

Programador milagreiro

A frase que mais me tem vindo à cabeça nos últimos dias é: "Sou programador não sou Deus, logo programo e não faço milagres!!!".

P.S.: Agradeço a todos os que me possibilitaram escrever este post, obrigado por me colocarem num plano divino!

terça-feira, maio 25, 2010

Google TV

Para quem diz que a TV está a morrer e não tem futuro, aqui está uma aposta de um gigante que contraria essa ideia. A ideia por trás disto é excelente, quase como um agregador de canais onde é possível fazer pesquisas como se faz actualmente no Google. A questão agora também passa pela sua comercialização, porque quereria a TV Cabo por exemplo comercializar um canal, que só por ele daria acesso a todos (ou quase todos) os outros? Deixo aqui o vídeo que demonstra a ideia em causa.

quinta-feira, maio 20, 2010

Kill Theory

Há muito tempo que não falo aqui de nenhum filme, talvez porque como já disse cada vez me tenho mais afastado de ver filmes para ver séries, de qualquer forma ainda vejo alguns filmes. Um dos géneros cinematográficos que mais me agrada é o terror, especialmente terror psicológico, são filmes que por muito maus que sejam, já sei à partida com o que posso contar e de vez em quando lá se apanha um filme que esteja acima da média.

Ontem estive a ver o Kill Theory, e apesar de ser um filme com nota baixa, talvez por alguns maus efeitos de sangue que tem, na verdade a teoria que está por trás do filme agradou-me bastante, à semelhança do Saw, que também é dos meus filmes de eleição, o "mau da fita" quer provar alguma coisa, quer provar que tem a teoria correcta. E o que é engraçado é que parece que o vilão tem sempre um QI superior à soma do QI de todas as outras personagens. Para não falar que o final do final é daqueles finais selados a ouro, é mesmo a cereja no topo do bolo.

segunda-feira, maio 17, 2010

Reunião NetPonto

Este fim-de-semana pela primeira vez fui a uma reunião do NetPonto. Já algum tempo que conhecia o NetPonto, e pessoas que estão directamente envolvidas com o mesmo, mas como as reuniões são sempre ao sábado e normalmente só sabia com pouca antecedência nunca tinha tido oportunidade de ir. Desta vez finalmente consegui ir e agradou-me imenso.

Como as apresentações não costumam ter muitas pessoas, neste caso devíamos ser a volta de 30-40, e conhecemos sempre bastante pessoas (posso dizer que no meu caso apesar de ter sido a minha primeira vez conhecia mais de 5o% das pessoas que lá estavam), as apresentações acabam quase por se tornar uma round table, em que muita gente participa, questionando, apresentando soluções, experiências, etc. Outra coisa que me agradou é que a grande maioria das pessoas via-se que percebi do que estava a falar, não andava ali so a "mandar umas coisas para o ar" ou a tentar perceber o que se estava a passar, o que possibilita que as discussões se tornem mais profundas e interessantes. Quanto a mim, vou tentar ir às apresentações sempre que possa, porque elas acabam sempre por ser mini-cursos.

sexta-feira, maio 14, 2010

Mais pessoas = Trabalho mais rápido?

Será que esta igualdade é verdade? Na minha experiência de vida são muito poucos os casos em que ela se aplica. Vejamos, se demoro 10 dias para cavar um buraco com 2 pessoas, teoricamente demoro 5 dias para cavar o mesmo buraco se tiver 4 pessoas. Em actividades que requeiram pouca especialização isto até pode ser verdade, mesmo assim o buraco poderia não ficar exactamente como era projectado inicialmente.

Na minha actividade profissional existe muito a política, se o projecto está atrasado então metem-se mais pessoas. Como irei provar, e a não ser que os prazos finais ainda estejam distantes, isto acaba por se tornar não uma solução mas um problema maior.

Normalmente quando se recorre a esta estratégia de por mais pessoas é porque os prazos já estão mesmo prestes a derrapar, é a solução de recurso, logo tem-se muito pouco tempo para se fazer muitas coisas. Então vamos por mais pessoas, o que vai acontecer? As pessoas que já lá trabalhavam e têm conhecimento do projecto, vão ter de 'formar' as novas pessoas, ou seja, em vez de estarem a gastar o seu tempo no projecto em si, estão a gastar tempo em tarefas auxiliares. As pessoas novas, não por culpa própria mas por não terem um conhecimento tão profundo do projecto que não se adquire em pouco tempo, vão fazer com que a qualidade final do projecto diminua. Resultado, cliente insatisfeito!

quinta-feira, maio 06, 2010

Insert de MySql para SQL

Uma das coisas que mais me chateia em trabalhar com diversos sistemas de base de dados é que não é fácil fazer backups e restores entre eles. Se alguém conhecer uma ferramenta gratuita que nos auxilie nesta tarefa agradecia se me dissessem pois não conheço.

Bem, vamos ao que interessa, tenho um script de um backup em MySql e quero passar os inserts para sintaxe SQL para inserir na minha base de dados SQL.

Script MySql:

INSERT INTO distrito (DistritoID,CodDistrito,DesDistrito) VALUES
(1,'01','Aveiro'),
(2,'02','Beja'),
(3,'03','Braga'),
(4,'04','Bragança');

Passos para a alteração do script:
  • Apagar a string "Values" e ");"
  • Find and replace de "(" por "select " (não incluir o 1º parêntesis)
  • Find and replace de ")," por " union all"
E aqui está o script com sintaxe SQL obtido:

INSERT INTO distrito (DistritoID,CodDistrito,DesDistrito)
select 1,'01','Aveiro' union all
select 2,'02','Beja' union all
select 3,'03','Braga' union all
select 4,'04','Bragança'

sexta-feira, abril 30, 2010

Levantar os certificados de Aforro?

Sempre ouvi dizer que os certificados de aforro eram seguros desde que o país não entre na banca rota. Ora no estado actual das coisas parece que já estivemos mais longe que isso venha a acontecer, e agora vem a minha pergunta, será que devo de levantar os meus certificados, não é que sejam muitos? Será que se isto continuar e eu adiar o levantamento dos certificados, quando os tentar resgatar isso me será negado?

quinta-feira, abril 22, 2010

Techdays - Dia 3

E este foi o último dia do Techdays deste ano, hoje tenho 2 áreas a destacar, a primeira a nível mais tecnológico com algumas das novidades da framework 4.0 e o segundo mais a nível de gestão com algumas recomendações que podem ajudar para o sucesso de um projecto.

No que tocam a inovações tecnológicos foco alguns pontos como: variância, argumentos por nome (suspeito que esta é uma forma de tornar o código ainda mais javardo por parte de alguns programadores cowboy), valores por omissão, tipo dymanic e muito importante, novos serviços de suporte a multi-threading. Realço o multi-threading pois como disse no post de ontem os sistemas têm de ser cada vez mais assíncronos, de modo a aproveitar os multi-core que actualmente já são comuns, logo faz todo o sentido que a framework e a própria IDE tenha sido refinada deste ponto.

Em relação à gestão de um projecto fiquei com algumas ideias de como minimizar o risco de falha como:
  • Ter uma boa comunicação entre a hierarquia que está responsável pelo projecto,
  • Envolver o cliente nas especificações e testes,
  • Garantir que todos estão a pensar a mesma coisa sobre cada funcionalidade,
  • Usar tecnologia recente, documentada e com bom suporte,
  • Cuidado com a qualidade (flexibilidade, performance, tolerância a falhas, manutenção simples, segurança, etc),
  • Estimativa de riscos gerindo as expectativas,
  • Garantir que toda a equipa está motivada e tem as capacidades necessárias,
  • O cliente tem de sentir que o que lhe fornecemos tem uma mais valia para a sua organização.

quarta-feira, abril 21, 2010

Techdays - Dia 2

Bem hoje posso dizer que foi o dia "retorno ao ISEL", visto que além do imenso número de ex-colegas que encontrei, também foi o dia em que metade das sessões que vi tinham como oradores ex-professores.

Passando às sessões em si, além de todos os detalhes tecnológicos, das arquitecturas, etc, saí de lá com 3 ideias/pontos a explorar:
  • Em 2007 a minha biblioteca javascript de eleição era o JQuery, por diversos motivos, entre os quais querer aprender outras bibliotecas, estudei mais a fundo YUI e comecei a trabalhar nos meus projectos com Mootools. Como a Microsoft está neste momento a apostar em força no JQuery com suporte de intellisense, desenvolvimento de novas funcionalidades, a JQuery UI, CDNs específicos de JQuery, entre outras coisas, vejo como melhor opção para o futuro voltar a utilizar JQuery.
  • Cada vez mais a arquitectura de um sistema tem de ser pensada com um paradigma assíncrono, de modo a dar uma melhor experiência de utilização e muito importante permitir a fácil escalabilidade através de processamento em paralelo.
  • Tenho de ir investigar a biblioteca Unity que facilita a prática de modularizar os diversos componentes de uma aplicação, através do conceito de Inversão de Dependência, mais conhecido por dependency injection (DI). Não é que isto seja fundamental, mas é uma boa prática, e como tal devemos estar conscientes da sua importância.

terça-feira, abril 20, 2010

Techdays - Dia 1

Começou hoje o Techdays, a maior feira nacional de tecnologia Microsoft. Algumas novidades tecnológicas estão a ser abordadas como:
  • Cloud (a nova moda);
  • Redefinição do sistema de cache (derivando de OutputCacheProvide);
  • Possibilidade de redefinir os clientId;
  • Variáveis de ambiente no web.config;
  • Disable do viewstate ao nível da página;
  • etc.
Mas não posso deixar de destacar a apresentação brutal sobre "Optimização da performance de um web site", feita pelo César Silva e baseada num livro do Steve Souders. A apresentação focou 14 pontos / boas práticas, para optimizar uma aplicação web:
  1. Reduzir número de pedidos HTTP (número de recursos)
  2. Utilizar CDN (Content Distribution Network)
  3. Expires no header o mais longo possível
  4. Pedidos utilizando GZIP
  5. Colocar CSS no topo
  6. Colocar JS no final
  7. Evitar CSS expressions
  8. JS e CSS externos
  9. Evitar DNS lookups
  10. Comprimir os JS
  11. Evitar redirects
  12. Remover scripts duplicados
  13. Remover ou configurar as ETags
  14. Utilizar cache em chamadas AJAX
Já agora ficam também aqui ferramentas para nos ajudarem nesta tarefa: YSlow, Http Watch e a Web Page Test.

segunda-feira, abril 19, 2010

Confronto de Titãs

Este fim-de-semana fui ver o Confronto de Titãs, e ao contrário da maior parte das pessoas com quem tenho falado até foi um filme que me agradou, apesar de não ser um filme de antologia, mas não deixa de ser um bom filme. Mais uma vez fiquei foi desiludido com a fraca qualidade do 3D, e isto é o que dou de nota mais fraca ao filme

Já sabia que este filme era um remake de um filme de 1981, não sabia é que já tinha visto o filme umas quantas vezes no canal Hollywood. Só me apercebi que era o mesmo filme quando vi a coruja mecânica que no antigo filme aparece umas quantas vezes, e está igualzinha neste remake. Depois os Escorpiões, as bruxas, a Medusa e o Kraken, tudo começa a bater mais ou menos com o filme original.

quarta-feira, abril 14, 2010

Música online

Ontem conheci um site muito interessante o http://listen.grooveshark.com. A ideia é simples ter playlists online, sem ter de comprar as música. Este site tem milhares e milhares de músicas, basta fazer um search e procurar o que se quer, criar playlists e aí estamos nós a ouvir música, sem ter de a comprar e sem a ter de armazenar em disco. O desempenho do site é excelente, a procura é rapidíssima e o streaming da música é tão bom que nem se sabe que se está a trazer a música conforme a estamos a ouvir.

sexta-feira, abril 09, 2010

Table sort com JQuery

Recebi no meu mail uma referência para este site. Dele pode ser encontrada uma biblioteca assente sobre JQuery que possibilita ordenação de tabelas recorrendo só a javascript, html e css. Visualmente muito agradável, sem requests server side, simples de utilizar e com um bom desempenho.

segunda-feira, abril 05, 2010

De volta à Berlenga

Isto hoje está a ser um dia produtivo a nível de posts, já não me lembro o dia em que escrevi 2 posts. Bem, este fim de semana fui mergulhar à Berlenga, aos destroços do Primavera e à gruta Azul, ficam aqui algumas das fotos.




Estas fotos são da autoria do meu buddy de mergulho o Rui Martins, se quiserem ver todas fica aqui o link.

Primeira vinda para o trabalho de mota

Depois de andar a treinar na mota ao pé de casa em voltinha relativamente curtas, hoje decidi aventurar-me e vir de mota para o trabalho pela primeira vez. É verdade que hoje está um dia em que o transito é quase inexistente, só apanhei resistência da saída da A5 até o Saldanha, mas de qualquer forma demorei 40 minutos a fazer o percurso que normalmente demoro 1h15m a fazer de transportes. Para não falar que como não tenho passe, porque não me compensa, a viagem de ida e volta fica-me em cerca de 2,5€, enquanto se for de transportes é à volta de 4,5€.

sexta-feira, março 26, 2010

Bicicleta a motor

Heis o meu novo meio de transporte, apresento a minha Daelim Roadwin 125 FI





terça-feira, março 16, 2010

Novas regras ao subsídio de desemprego

Bem sei que esta é uma matéria sensível que mexe com a vida de muitas famílias, mas até estou de acordo que se reveja algo porque há por aí muitos abusos. Se na maioria dos casos o subsídio de desemprego é uma ajuda fundamental para a dignidade de vida de uma pessoa, existem outros que é um incentivo ao 'não fazer nada'.

Tenho um amigo que há pouco tempo se virou para mim e disse algo como: "Para que vou aceitar as ofertas de emprego? Recebo mais estando em casa sentado no sofá!". A minha resposta foi: "Para não estares a 'chular' o pessoal que como eu desconta!".

Mas também tenho noção que existem pessoas que por exemplo têm prestações de casa para pagar que são elevadas, e se normalmente receberiam 1000€ por mês, passar a receber o ordenado mínimo não é de alguma forma uma solução. Mas então porque nestes casos não se obriga essa pessoa a trabalhar e o subsídio de desemprego seria a diferença entre os 1000€ e o ordenado mínimo? Acho que é uma excelente solução, caso a pessoa não quisesse mesmo ir trabalhar passaria só a receber essa diferença ou então até lhe seria retirado o subsídio. Isto sim era uma medida de incentivo ao trabalho e à produtividade, só assim um país se pode tornar próspero.

sexta-feira, março 12, 2010

Jogos - uma nova era

Devo dizer que a Nintendo Wii me atrai especialmente devido à sua interactividade que não é possível com outras consolas. Contudo veja-se bem o coelho que a Playstation está a preparar para tirar da cartola...estamos quase quase a chegar ao ponto em que nós estamos dentro do jogo no corpo da personagem...


quinta-feira, março 11, 2010

Ler dados do Excel através de C#

Há cerca de de 2 anos tive de trabalhar pela primeira vez com a leitura de dados a partir de um ficheiro excel, e nessa altura até cheguei a escrever um post sobre o assunto. Mas o solução que tinha estava longe de optima, apesar de funcionar num ambiente controlado que tinha.

Num projecto que estou actualmente foi-me pedido que um utilizador pudesse fazer upload de um ficheiro excel, e que os dados fossem lidos para dentro da base de dados. Como já se tinha passado algum tempo desde do meu código original, fui investigar e tentar resolver alguns problemas que tinha, nomeadamente o problema da cultura, o que provocava que não conseguisse utilizar a minha aplicação anterior em todos os ambientes. Outra preocupação que tive desta vez foi o desempenho, a leitura é algo 'pesado' logo devemos ler o máximo de células de uma só chamada (à semelhança do que acontece quando se lêem dados de uma BD), e ter cuidado com a memória que estou a utilizar e liberta-la sempre que já não for necessário.

using System;
using System.Collections.Generic;
using System.Globalization;
using System.Text;
using System.Threading;
using System.Reflection;
using System.IO;
using System.Xml;
using System.Web.Security;
using Excel = Microsoft.Office.Interop.Excel; 
  
    public class ExcelUtils
    {
        public static void GetDataFromExcel()
        {

            Application xlApp;
            Workbook xlWorkBook;
            Worksheet objWorkSheet;
            object misValue = Missing.Value;

            using (new LanguageHelper())
            {
                string file = "example.xls";
                xlApp = new Excel.ApplicationClass();
                xlWorkBook =
                    xlApp.Workbooks.Open(file, 0, true, 5, "", "", true, 
                  XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
                objWorkSheet = (Worksheet) xlWorkBook.Worksheets.get_Item(1);


                Array cod = (Array)objWorkSheet.get_Range("A4", "Z4").Value2;
                string name = cod.GetValue(1, 1).ToString();

                Console.WriteLine("cod={0}", name);
                
                xlWorkBook.Close(true, misValue, misValue);
                xlApp.Quit();

                releaseObject(objWorkSheet);
                releaseObject(xlWorkBook);
                releaseObject(xlApp);
            }

            Console.WriteLine("Ended!");
        }

        private static void releaseObject(object obj)
        {
            try
            {
                System.Runtime.InteropServices.Marshal.ReleaseComObject(obj);
                obj = null;
            }
            catch (Exception ex)
            {
                obj = null;
                Console.WriteLine("Unable to release the Object " + ex.ToString());
            }
            finally
            {
                GC.Collect();
            }
        } 
    }
    
    public class LanguageHelper : IDisposable
    {
        private CultureInfo mCurrentCulture;

        public LanguageHelper()
        {
            // save current culture and set culture to en-US
            mCurrentCulture = Thread.CurrentThread.CurrentCulture;
            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
        }

        #region IDisposable Members

        public void Dispose()
        {
            // return to normal culture
            Thread.CurrentThread.CurrentCulture = mCurrentCulture;
        }

        #endregion
    } 

quarta-feira, fevereiro 24, 2010

Durabilidade = Tempo de garantia

Cada vez esta igualdade é mais verdadeira, a maior parte das coisas que são vendidas têm como objectivo durar o tempo da garantia. Agora foi o meu monitor, em Dezembro vez 2 anos que o comprei...a semana passada deixou de funcionar!!!

terça-feira, fevereiro 09, 2010

Top Symphonic Metal

Parece-me que este tipo de música ainda continua algo discriminada, só pelo nome a maior parte das pessoas sente à partida alguma resistência. Ainda à 2 semanas atrás, quando um amigo meu soube que eu ouvia este tipo de música disse - "Freak!!!" - depois de passar 1 horinha a ouvir, lá disse - "Pois...até se ouve bem!". Vou deixar aqui a lista das 10 bandas que mais gosto, juntamente com uma música de cada, pode ser que alguém tenha curiosidade de ouvir para verificar se efectivamente gosta ou não.

1) Nightwish - Wish I had an angel
2) Within Temptation - What have you done
3) Avantasia - Avantasia
4) Lunatica - Words unleashed
5) Delain - April rain
6) Evanescence - Bring me to life
7) Epica - Feint
8) After Forever - Equally destructive
9) Sirenia - The other side
10) Xandria - Now and forever

terça-feira, fevereiro 02, 2010

Trabalhar onde os outros se divertem

Ontem estava na natação quando um colega referiu no meio de uma conversa, que estava num estágio de ginecologia, e diz ele - "...o que normalmente se diz é que eu estou a trabalhar onde os outros se divertem!!!". Vira-se outro colega e diz - "É pá eu também tenho um amigo nessa situação, ele é segurança numa discoteca".

Foi quando comecei a pensar, realmente a expressão aplica-se bem a diversas profissões, aliás até se aplica a mim próprio, como game developer o meu trabalho é fazer jogos para depois os outros andarem-se a divertir, e eu também. Mas mais uma vez pensando bem nas outras profissões os outros também se divertem!

quarta-feira, janeiro 27, 2010

Parabéns a mim!!!

Pois é, hoje eu faço 4 aninhos, já passaram 4 anos desde que aquele Tiago, mais conhecido por assassino da língua portuguesa me criou e desde então a cada post mostra a sua veia artística para dizer disparates atrás de disparates. Bem sei que não se pode ter tudo na vida, mas bolas 4 anos a ter uma educação defeituosa qualquer blog tem o seu limite...

Os meus desejos para o meu próximo ano de vida é que me torne um bocadinho mais interessante, mas está difícil, sei lá, até poderia falar de coisas um bocadinho mais culturais como ópera, exposições de arte, museus...mas não aqui o meu gestor de conteúdos só quer é programações, filmes e séries, passarinhos e desporto...ai ai que hei-de fazer à minha vida!!!

by: "A minha visão do Mundo..." (aka: "O Blog refilão")

EDIT by Tiago Sousa: Meu...tanto sentimentalismo que pareces um jogador de futebol a chorar porque foi mal expulso...vê lá se te pões na linha...ópera...museus...deves pensar que és uma prima dona...porta-te mas é como um homenzinho!!!! Ah, e já agora...Parabéns!!!

segunda-feira, janeiro 25, 2010

58º Campeonato Mundial de Ornitologia

Durante este fim-de-semana decorreu em Matosinhos, na Exponor, o 58º Campeonato Mundial de Ornitologia. Cerca de 19000 aves para todos os gostos e feitios, incluindo as espécies que são proibidas por lei em Portugal tal como as aves selvagens e os híbridos de aves selvagem.

Espero que a vinda do Mundial a Portugal tenha servido para sensibilizar algumas pessoas que têm poder nesta matéria, está na altura desta lei ser alterada porque quanto sei, somos o único país europeu com tais restrições, e como se vê até o campeonato mundial incluí este tipo de aves. Os criadores não têm o intuito de exterminar as espécies selvagens, bem pelo contrário até ajudam na sua preservação.








sexta-feira, janeiro 22, 2010

Oracle adquire Sun

A Comissão Europeia aprovou a aquisição e provavelmente o gigante vai tornar-se ainda maior. Mais informação pode ser obtida aqui.

quarta-feira, janeiro 20, 2010

Appender para TextBox em log4net

Este problema apareceu-me porque tenho uma aplicação já construída que usa o log4net para fazer log, neste caso para ficheiro, mas eu queria por essa aplicação a ser invocada por um windows form estando o log a ser escrito para uma RichTextBox.

Esta técnica não só serve para esta situação, mas para qualquer objecto que tenha uma propriedade/campo que seja do tipo string. É necessário fazer 3 coisas:
1) Criar uma classe que derive de AppenderSkeleton;
2) Registar o appender no xml de configuração;
3) Dar ao appender o objecto para o qual vai escrever.

1)
using log4net.Appender;
using System.Windows.Forms;
using log4net.Core;

namespace LogExample
{
    public class TextAppender : AppenderSkeleton
    {
        private RichTextBox logPlace;

        public RichTextBox LogPlace
        {
            get { return logPlace; }
            set { logPlace = value; }
        }

        /// 
        /// Writes the logging event to a TextBox
        /// 
        override protected void Append(LoggingEvent loggingEvent)
        {
            LogPlace.Text += string.Format("\n{0}", loggingEvent.RenderedMessage);
        }
    }
}

2)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
  </configSections>
  <log4net>
    <appender name="Writer" type="LogExample.TextAppender, LogExample">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%d{HH:mm:ss} %-5p - %m%n"/>
      </layout>
    </appender>

    <root>
      <priority value="info"/>
      <appender-ref ref="Writer"/>
    </root>
  </log4net>
</configuration>

3)
using System;
using System.Windows.Forms;
using log4net;
using log4net.Config;
using log4net.Appender;

namespace LogExample
{
    public partial class Log : Form
    {
        private readonly ILog log;

        public Log()
        {
            InitializeComponent();
            log = LogManager.GetLogger(typeof(Log));
            XmlConfigurator.Configure();
            IAppender[] appenders = log.Logger.Repository.GetAppenders();

            foreach (IAppender append in appenders)
            {
                if (append is TextAppender)
                {
                    ((TextAppender)append).LogPlace = logBox;
                }
            }
        }
    }
}

domingo, janeiro 17, 2010

Filmes vs Séries

Para quem me conhece sabe que sou uma pessoa que no meu tempo livre gosto bastante de ver filmes e séries. Tenho notado que ultimamente cada vez vejo menos filmes e cada vez mais séries, apesar de isso ter sido uma mudança gradual da qual nem me estava a aperceber, agora porque isso aconteceu?

Bem, ao que me parece tem tudo a ver com uma questão de envolvimento com a história. Apesar de um filme de milhões, ser sem dúvida de melhor qualidade cinematográfica que qualquer série, não consegue elaborar tanto uma história porque tem 1h30 - 3h.

Numa série é possíveis vários volte face, a trama pode ser mais elaborada, é possível a mudança de personagens, diversas coisas que tornam uma série muito mais viciante que um simples filme. E cada vez noto mais que mesmo actor de renome, têm predisposição para fazerem séries abdicando muitas vezes de estarem no grande ecrã numa mega produção.

terça-feira, janeiro 05, 2010

A história do Avatar

Por acaso comentei com alguns amigos que a história do Avatar para mim se assemelhava à história da Pocahontas. Bem, parece que não sou o único a pensar a mesma coisa!