Archive for Janeiro, 2009

Amiga Research Operating System

Sexta-feira, Janeiro 23rd, 2009

Estive a dar uma primeira voltinha com o AROS, e gostei muito do que vi! Para quem não sabe, o AROS é um sistema operativo desenvolvido de raiz, pensado para ser API-compatible com o AmigaOS 3.

A ideia é ser um OS moderno, que corra em várias plataformas (mas principalmente em arquitectura x86), e onde se possa recompilar o software escrito para AmigaOS 3 com poucas ou nenhumas alterações.

A ideia é muito boa, funciona por bounties (se pegas num projecto e o fazes, podes receber dinheiro por isso das donações), e não precisamos de hardware específico. Não posso correr o AmigaOS 4 sem uma Sam440, mas este posso começar já a explorar (e, quem sabe, contribuir)! E o AROS tb já corre na Sam440!

Gostei mesmo do que vi, e vou preparar um dos meus PC antigos especialmente para correr o AROS!

P.S.: A gatinha do logo foi desenhada pela Eric Schwartz!

WayTooSimpleDateFormatToBeBelieved

Terça-feira, Janeiro 20th, 2009

Why is it always the things that are supposed to be simple that come around and byte you in the behind? In my present (Java) project (a quasi-real-time data aquisition and archiving module), I had a SimpleDateFormat for parsing and formating dates in UTC format. Things were all cute and sweet, until I got more than one client loading the server. Then, all hell broke loose on the dates that got to the tags; here’s an example:

 

2008-07-14 10:33:52,valor_calculado1,40.0,1

2008-07-14 10:33:52,SetPointZito0,14.42,1

2008-07-14 10:33:52,SetPointZito1,50.0,1

2008-07-14 10:27:25,Posição do elevador A17,43,1

2040-01-31 10:27:00,Freq. oscilacao da plataforma A17,8,1

0037-01-01 00:27:00,Valvula IN 01V001 A50,0,1

2008-07-01 00:00:00,Valvula IN 01V004 A50,0,1

2008-06-30 00:00:00,Pressao Vapor Caldeira A17,1.256,1

2008-01-01 10:00:55,Consumo - Agua da Rede A17,3.74,1

2008-07-14 10:27:58,alarmezecovisual0,1,1

2008-07-01 00:00:00,valor_calculado0,10.25,2

2008-01-14 00:28:00,alarmezecovisual1,1,1

2008-07-14 10:28:00,valor_calculado1,25.0,1

2008-07-14 00:00:00,SetPointZito0,20.25,1

2008-01-01 10:28:25,SetPointZito1,35.0,1

2008-07-14 10:33:58,Posição do elevador A17,26,1

2008-07-14 10:33:58,Freq. oscilacao da plataforma A17,-20.0,2

2008-07-14 10:33:58,Valvula IN 01V001 A50,0,1

 

This is supposed to be the transition from 2008-07-14 10:33:52 UTC to 2008-07-14 10:33:58 UTC, but as you can see there are a lot of bogus dates in between… the problem was a transient one (and darn difficult to track down), apparently the SimpleDateFormat class is not Thread-safe (I have 7 different work threads on this baby, not counting the dynamic RMI ones of course). Oh, oh, wait, what’s this on the SimpleDateFormat API docs?

 

Synchronization

Date formats are not synchronized. It is recommended to create separate format instances for each thread. If multiple threads access a format concurrently, it must be synchronized externally.

 

RTFM situation, I guess. Oh well.

Hidden Gems

Domingo, Janeiro 4th, 2009

Buying stuff off eBay is a risky business. Still, the best deals are usually hidden in the most misterious auctions, the ones with small, blurry, misfocused pictures and very little description. Sometimes you get lucky.

I was looking for Magic: the Gathering cards from the Ice Age edition, since it is one of my favorites and it is impossible to purchase new. What I was searching for was someone selling a personal collection of cards, with rares, uncommons and commons alike, just as I would get them if I purchased some boosters. I knew it was difficult, because people usually sell/buy/trade the best cards, and someone selling cards as a lot will almost allways sell the big, rare cards seperately. But I found these auctions about Ice Age cards; blurry pictures ahoy, but the description mentioned some of the cards’ names, and they were really interesting. Many were not even from Ice Age, but from early editions like Arabian Nights, Fallen Empires, Legends or Homelands.

I think I really got lucky this time, since not only are some cards really great and dificult to find, they are in pristine condition! Some of the stuff I found: Serra Angel, Zuran Orb, Necropotence, Baron Sengir, Divine Offering, Fellwar Stone, Serrated Arrows, Northern Paladin, White Knight, Armageddon, Wrath of God, Balance, Urza’s Tower/Mine/Power Plant…

It was like opening a really BIG old booster of awesome cards!