Precisa de passaporte? É urgente? Está tudo fechado? Vá ao SEF!

Ok, foi lerdice nossa admitidamente pois sempre viajamos dentro da Europa, mas hoje por volta do meio dia dizem-nos que necessitamos de passaporte para uma viagem. É o pânico total! Uma maquia razoável em vias de ir para o lixo.

  • Mal recebemos a notícia, tentamos descobrir como nos resolver, e dizem-nos que o melhor é ir ao Governo Civil. Sábado, estão a ver? Correria louca até à Loja do Cidadão mais próxima. Não há hipótese, só recebem os pedidos e depois encaminham para o Governo Civil, na melhor das hipóteses às 16h de Segunda é entregue. Está o leite a entornar…
  • Correria para o Governo Civil, chegamos lá já às 13, porta fechada claro. Leite todo entornado no chão.
  • Entretanto a burra da agência (o muito prestável que foi não compensou a burrice infelizmente) agenda-nos um avião que parte às 11 de Lisboa para ligar com o nosso em Madrid. Alguma esperança… o Governo Civil abre às 9…
  • Vamos à TAP para confirmar/pagar a nova reserva. Não pode ser, temos de pagar à agência e eles não nos dizem mais nada. De qualquer das formas, o check-in fecha uma hora antes do voo (10h portanto), e o avião chega apenas 2h antes do voo em Madrid, logo a probabilidade é de falhar o voo em Lisboa, e caso fosse apanhado de falhar em Madrid. Leite novamente entornado.
  • Telefonamos a amigos que nos mencionaram que no SEF seria possível. Volta a haver esperança.
  • Falamos com seguranças: não, apenas para levantar passaportes. Para emitir novos, só no serviço central do SEF que está fechado e reabre Segunda-feira. Leite novamente entornado.
  • Mas não desisti, começo a alegar querer levantar um passaporte já emitido e os seguranças lá me explicam que há um telefone com uma iluminação verde à sua volta, onde podemos ligar para o SEF (a extensão está escrita num painel por cima do telefone).
  • falamos com o SEF: é tirado no momento, precisa de duas fotografias, e custa 120.10€ por pessoa.
  • Combinamos um ponto de encontro, esperamos, esperamos vão 10 minutos, nada. Tentamos falar outra vez: «Ainda não foi aí ninguém? Então já aí vai.»
  • Esperamos, esperamos, no total já vão 3/4 de hora à espera numa secção do aeroporto onde não há nenhum local excepto o chão para uma pessoa se sentar até que volto a telefonar, e desta vez chega um agente do SEF para nos buscar.
  • Seguimos pelo aeroporto adentro, até que ouvimos alguém a chamar, como o agente ignorou e continuou, nós também o fizemos, até que fomos interpolados por um segurança da Prossegur que exigia que fossemos revistados.
  • O agente do SEF nem me deixou justificar-me dizendo que ali quem fala é ele, e tentou explicar firmemente ao segurança que aquela área do aeroporto é do SEF, e é ele que nos está a acompanhar, que não temos nada que passar na área de controle da Prossegur.
  • Mas o segurança não saia da dele, embora se tenha visto limitado a nos acompanhar até ao posto do SEF enquanto trocavam mimos.
  • Depois o agente esclareceu-nos: onde é que isto iria parar se ele deixasse que um segurança (que é um civil) achar-se com mais autoridade que a polícia, especialmente dentro da sua (SEF) própria jurisdição.

Em suma: um inferno de stress das 12 às 22:30, que teve um final feliz. 1h e 240.20€ por um par de documentos válidos por seis meses, mas era deitar fora isso ou 5 vezes mais sem qualquer proveito.

Moral da história:

  1. não recomendo como a forma de obter um passaporte
  2. mas numa emergência e estando tudo o mais fechado…
  3. peguem em «120.10€ + 2 fotografias + bilhete de identidade» por pessoa e dirijam-se aos telefones verdes no aeroporto de Lisboa para chamarem por alguém do SEF para a emissão de passaportes urgentes.

Os meus muito agradecidos parabéns aos agentes do SEF. Foram extremamente simpáticos, muito prestáveis, e salvaram-nos as férias.

OpenMoko Rotate 0.2.1

Yes, it’s out, release early, release often, yadada yadada. I’m grumpy because of less sleep time than usual, and a whole day of ITIL Foundation V3 lesson (3 more days of it, plus an exam later on).

Get it here: rotate-0.2.1.tar.gz (signature)

Anyway, here’s the good news:

$ head -5 ChangeLog
2008-09-22 - 0.2.1
        * more heuristic fixes (hopefully really fix when laying around, and
          turned up)
        * workaround with alarm() for the accelerometer read-hang problem
        * sleeping for 100ms seems to get cpu usage quite low (0% to 0.9%)

OpenMoko Rotate 0.2.0

Woke up 2h earlier because of a problem, solved quickly, took the extra time to greatly improve the heuristics.

If you haven’t tried it before, now it’s the time to try. If you did, NOW is the time to try again 🙂

Fetch it now: rotate-0.2.0.tar.gz (signature)

$ head -3 ChangeLog 
2008-09-22 - 0.2.0
	* greatly improves heuristics
	* fixed heuristics when laying around, and turned up

First brown paperbag release of new Rotate

Oops, heuristics were bad, very bad. Still has quirks, but at least now they’re not so shameful.

There’s a new release: 0.1.1 (signature)

$ head -2 ChangeLog 
2008-09-21 - 0.1.1 - First brown paper bag release
	* improves heuristics
$ cat KNOWN_ISSUES 
Known Issues:
	* reading from the accelerometer hangs after X time/reads
	* some heuristic values may need finetunning (specially when
	  laying around, turned up)

New Rotate for OpenMoko

As said before, since I’m not entirely happy with the previous version of Rotate for OpenMoko, also using it as a way to learn how to write programs for it, I’m writing a new version of Rotate for OpenMoko.

I’m now announcing the first results: release 0.1.0 is out (signature)! The tar.gz file contains both source and a binary suited to run on Om200x.y (at least 2008.9 should work).

Be careful, it bytes.. 🙂

$ cat ChangeLog
2008-09-21 - 0.1.0 - First release.
	Current Features:
	* makes some rotations

	Known Issues:
	* reading from the accelerometer hangs after X time/reads
	* some heuristic values may need finetunning (specially when
	  laying around, turned up)

	Near Future:
	* don't rotate when screen is locked
	* change profile to silent/meeting when phone is turned down
	  and revert when it is turned back up

Getting ready for Rotate rewrite

So… following up on my patch for a better xrandr rotation on Rotate, I’ve been learning how to read the accelerometers, and it’s a lot of fun, actually. I’m so thrilled… I really missed programming 🙂

Now, the good news is that in a couple of days (hopefully) I’ll be posting a completely new Rotate. I’m collecting some positioning data from the second accelerometer, and right now I already know a few positions, at least my little test program is guessing some positions quite right…

s/guess position/libxrandr rotate/ and you get the new Rotate 🙂

All this without running the risk of seeing this software banned (like the iDictatorPhone), where it seems some programmer got his application banned on the iDictatorPhone because it competed with Mail.App. Nice one, Apple, you’re only proving us, Free Software activists, right. Again. 🙂

The following is the current output as I pick it up from the table and place it from turned up into turned down.

Postion (90,90,1026):  horizontal turnedUp
Postion (90,72,990):  horizontal turnedUp
Postion (36,54,990):  horizontal turnedUp
Postion (-36,36,990):  horizontal turnedUp
Postion (18,18,972):  horizontal turnedUp
Postion (18,936,0):  upsideDown
Postion (18,36,882):  horizontal turnedUp
Postion (36,36,900):  horizontal turnedUp
Postion (18,18,1008):  horizontal turnedUp
Postion (-36,1080,0):  upsideDown
Postion (-36,-36,1080):  horizontal turnedUp
Postion (72,1134,0):
Postion (54,18,1314):  horizontal
Postion (54,54,1386):  horizontal
Postion (18,144,1404):  horizontal
Postion (-36,198,1386):  horizontal
Postion (-72,234,1296):
Postion (-54,108,1152):  horizontal
Postion (-396,-72,936):  horizontal turnedUp
Postion (-864,-198,1080):  horizontal left turnedUp
Postion (-504,-36,918):  horizontal turnedUp
Postion (-504,54,1026):  horizontal turnedUp
Postion (-414,54,1098):  horizontal turnedUp
Postion (18,-54,774):  horizontal
Postion (234,-288,378):
Postion (180,-666,18):
Postion (414,-720,216):
Postion (-36,-1080,0):  vertical
Postion (90,-774,-72):
Postion (126,-270,-216):
Postion (234,702,360):
Postion (-360,378,-2304):
Postion (864,1170,-918):  right turnedDown
Postion (126,702,-1800):
Postion (288,558,-1494):
Postion (270,288,-1314):
Postion (54,108,-1206):  horizontal
Postion (108,162,-1098):  horizontal turnedDown
Postion (288,108,-882):  horizontal turnedDown
Postion (342,162,-792):  horizontal
Postion (270,72,-828):  horizontal turnedDown
Postion (306,36,-972):  horizontal turnedDown
Postion (306,90,-1188):  horizontal
Postion (270,324,-1332):
Postion (180,396,-1278):
Postion (126,450,-1386):
Postion (-36,522,-1674):
Postion (36,270,-1404):
Postion (180,90,-1080):  horizontal turnedDown
Postion (72,72,-1044):  horizontal turnedDown
Postion (54,90,-1044):  horizontal turnedDown
Postion (-18,72,-1080):  horizontal turnedDown
Postion (18,72,-1026):  horizontal turnedDown
Postion (18,36,-1080):  horizontal turnedDown
Postion (18,36,-1134):  horizontal
Postion (36,36,-1098):  horizontal turnedDown
Postion (54,36,-1098):  horizontal turnedDown
Postion (90,54,-1080):  horizontal turnedDown

OpenMoko Rotate now using libxrandr

As I peeked into the code of OpenMoko’s Rotate (a program that rotates the screen acording to the current tilt), I noticed it made use of system to launch the xrandr program with appropriate arguments.

Well, system costs a lot in terms of processing power, not to mention launching another program, and that means even less battery time. I didn’t like that, so I wrote a patch that alters the current rotate.c into a new rotate.c in order to use librandr and get it to rotate the screen without the costly system+xrandr duo from hell.

I also built a binary of rotate, which you can download from this link and place on your OpenMoko Neo Freerunner with 2008.8 or 2008.9 (I haven’t the foggiest idea if it works on other versions).

Hopefully, you might want to verify the sha1sums:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

afc833b7cd2c874c1c815a0cb9f7c38a65998ff5  rotate
efcc6277080b2aadc3306a000a97ab202ca2bece  rotate.c
c1eb847d05cd36e0e9f31b5e5f6eb9337f730d0f  rotate_libxrandr.patch
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFI1ES1o+C50no0+t4RAjSrAJ41N0KpD7JaY3WfiRViexn4CvQw7QCePNr3
G8Z3ejIwprpK7J7unjMaS1A=
=anNm
-----END PGP SIGNATURE-----

I realise the way I wrote didn’t make it very obvious, so here’s a listing of the files:

Séries [update 2008-09-17]

Estamos em época de recomeçarem várias séries televisivas. Como de costume, primeiro que cá passem… bem eu não devo ficar à espera que passem. 🙂

As esperadas…

  • 8 de Setembro: Terminator: The Sarah Connor Chronicles, 2ª temporada. Custou a pegar, mas pegou. Se tem Summer Glau, não pode ser mau, quanto mais não seja tem a Glau 🙂 [Update: Ooo… Um(a) T-1000…]
  • 16 de Setembro: House MD, 5ª temporada. Humor mórbido q.b., e uma personalidade de encher a vista actuada pelo grande Hugh Laurie. [Update: «We’re not friends any more, House. I guess we never really were…»]
  • 22 de Setembro: Heroes Volume 3: Villains, 3ª temporada. Depois de uma desastrosa 2ª temporada, onde notoriamente os argumentistas fizeram falta para manter a congruência, espero que a 3ª volte à qualidade da 1ª temporada.
  • 28 de Setembro: Dexter, 3ª temporada desta deliciosa série centrada à volta de um CSI especializado no sangue em cenas de crime que é um serial-killer em part-time. Mas só mata quem… erms… merece… mas parece que se vai enganar nesta temporada…
  • 29 de Setembro: Life, 2ª temporada. O multi-milionário detective continua a desvendar a trama que o levou à prisão.
  • Natal de 2008: Doctor Who, Especial do Natal de 2008
  • Inícios de 2009: Torchwood, 3ª temporada. Apenas com 5 episódios, regressa o Capitão Jack Harkness, saído para este Spin-off de Doctor Who e primeiro (que eu saiba) bisexual apresentado como “herói da fita, role-model, etc…”
  • Inícios de 2009: o FIM de Battlestar Galactica (esta nova versão é muito melhor que a antiga)
  • Durante 2009: Doctor Who, 4 episódios especiais
  • Em 2010: Regresso de uma série completa de Doctor Who.

As curiosidades…

  • 9 de Setembro: Fringe, 1ª temporada. Estilo X-Files antigo, por JJ Abrahams. [Update: promete, pelo menos o início está muito bom]
  • 24 de Setembro: Knight Rider. Depois de um episódio piloto fraquinho, será que a série melhora ou será algo para esquecer? Não é que esteja à espera de algo muito bom, mas pelo menos que entretenha…
  • Irá Jericho voltar?

As “céus que nunca mais acabam…”

  • Stargate Atlantis, 5ª temporada, a falta de imaginação é atroz, já vi séries acabarem a meio com muito mais imaginação. Episódios de encher chouriço desde meados da 2ª temporada. Guilty pleasure… já começou e quero ver como acaba (sim, há luz no fim do túnel, é a última temporada, seguida de um filme).
  • 18 de Setembro: Supernatural, 4ª temporada. De vez em quando tem episódios que compensam todos os outros. Outro guilty pleasure

As boas memórias:

  • Babylon 5, vi tudo (filmes e Crusade), de forma intensiva, do início ao fim e segunda uma sequência de visionamento que considero acertada. Claramente houve alguma divergência entre quem mete o dinheiro e J. Michael Starczinsky, a guerra Shadow-Vorlon foi terminada à pressa, e a partir daí a qualidade caiu significativamente. Seja como for, ao ver o último episódio junto-me aos que lamentam o fim da série.
  • The 4400, 4 temporadas. Aproximação mais realista à temática de seres humanos com poderes. Infelizmente lá para o fim começaram a ter uma crise que descrevo como “The Highlander Effect”: tentaram arranjar uma explicação para a história e estragaram tudo. Aproveitaram a greve dos argumentistas do ano passado para suspender, sine-die, a série.

LHC: Hoje o mundo acaba (ou talvez não)

Mortais, arrependei-vos, pois dentro de quase 8 horas (pelas 8 da manhã, 9 de Zurique, Suiça) será ligado o Large Hadron Collider será ligado em Zurique Genebra. Trata-se do maior e mais energizado acelerador de partículas.

Há quem tenha receios (infundados) sobre nele resultar o fim do mundo. Bem, se acabarem por ser “fundados” espero que o fim do mundo seja depois de tomar o pequeno almoço 🙂

Existe um webcast, para os mais ansiosos podem já deixar o mplayer a tocar:

mplayer mms://wmsuds.cern.ch/webcast