Tuesday, February 27, 2007

Full day

I have spent most of the day to finish the SNMP agent I had to write.

It works okay and I will test it live tomorrow.

The most time consuming part was to write a decent build.xml file that can build the agent locally, then transfer it to a Solaris machine and create a .pkg file for it remotely.

I think that I will start creating an Ant task for this job as it is not very nice to do it by hand in XML. Moreover it will ease my work for the next projects...

Wednesday, February 21, 2007

Strikes in France

I have found this site:

I guess it is clear what they believe about the "happy marriage"!

Monday, February 19, 2007

Keep the music evil

I have found them some time ago on: http://www.brianjonestownmassacre.com/.
I didn't know them but I was trying to find something similar to "The Dandy Warhols".
The differenece betweent the two bands - although they play some similar music - is the way they are promoting their music. The BJM is giving it for free, all of it is available on their site without DRM's. The DW sold it's music and were quite popular (I must admit that I enjoyed the most "13 Stories from Urban Bohemia").
The relation between the two bands was pictured in the movie "DiG!" that describe the relatiion between the two bands and it's evolution.



Sighet - Bocicoi - Valea Viseului - Petrova - Leordina - Viseu de Sus - Iza - Sacel - Dealu Stefanitei - Fiad - Romuli - Cosbuc - Telciu - Salva - Beclean - Dej - Gherla - Cluj Napoca - Campia Turzii - Aiud - Razboieni - Alba Iulia - Vintu de Jos - Sibot - Orastie - Simeria - Deva - Ilia - Savarsin - Radna -Arad - Timisoara.

All this places are in my mind like a long mantra or prayer. They are all the stations for the train that makes the connection between my birthplace and the town where I live now.

I have memorized their names in the countless train voyages between Sighet and Timisoara. It is only 613 km bu the train makes now 12:34 hours. This roughly means an average speed of less than 50km/hour.

The voyage with this train is a continuous adventure: cold in the winter hot in the summer, with old and smelly cars and restless passengers. Often the train is a scene for fights or parties. Even if you take 1st class (as I usually do) the situation is not better. Al;though the train is a night one there is no sleeping car.

I wish that this train will someday travel the distance in 6 hours and stops in fewer stations.

Still it is the best solution for me to reach home - with my car I could do in in about 7 hours - but during daytime, meaning that I would need one full free day to go home and sometimes I can't afford this

Friday, February 16, 2007

Rennes is closing down

The first result of the happy marriage between Alcatel and Lucent is a massive downsize.
There will be about 12500 jobs dropped all around the world.
Okay, somebody might say, but this is the cost of beeing profitable.
Yes, I agree, but there are many people that are really crushed by this decision.
For example my colleagues in Rennes.
They weere roughly 200. Most of them were really capable people. They have built their lives in Rennes, their homes, their families are there.
Some of them are not young anymore.
Now, they will have to make some hard choices. Leave their city for another location or just quit the company and trying to search for a new job home - not very easy in France for an over 40 years old engineer...
This is one of the times when I really would like that the management would see the situation with another pair of glasses... Not the horse glasses but something more human.

a cat on the end of spring

spring's end...
i've been looking to my cat with indulgence,
as he sadly came home.

he walked a lot and he must be tired,
he cleaned himself up
and was taking a nap.

and he was dreaming wonderful catish dreams.

he has ben seldom blinking
to see the bitter reality
that has been abbruptly stoping
his wonderful dream.

but i... i can no longer dream.

Monday, February 12, 2007

Perl gotcha's

I had to port a tool from Solaris 8 to Solaris 10 and I was not able to understand what was happening with the timestamps. All the events were somewhere long in th past... They were not taken into account.

I've spent 6 hours today on this silly thing:

[dvoina@su1125na08 ~]$ perl -v

This is perl, v5.8.4 built for sun4-solaris-64int

[dvoina@su1125na08 ~]$ perl
print sprintf("%x", 1000*time());

while on

[dvoina@sucomp2307 dvoina]$ perl -v

This is perl, version 5.005_03 built for sun4-solaris

[dvoina@sucomp2307 dvoina]$ perl
print sprintf("%x", 1000*time());

WTF: b68c7d88 on one machine and 110b68ea068 on the other?
The leading 110 were a pain in the back.
I guess that time() was changed between Perl 5.0 and 5.8.

Finally diff solved the problem.

Saturday, February 10, 2007

Saturday activities

This saturday was a quiet one. I was kind of an idler all the day.
I cleaned my room as I felt iit was necessary and I started to play with Squeak.
In the afternoon I had an idea on how to implement a CLI client in Python for the Annlab thingie I am working on this weeks.
I have also found a nice book: Ship it! A Practical Guide to Successful Software Projects and I intend to read it today.
In the meantime I have started to prepare the docs for SNMP (SNMP4J) for the fortchoming agents I will have to develop.
I wish I'll have also a quiet Sunday (aka no beer :)

Good requirements do good software

I have had a meeting with some guys from a major telecom.
We have provided them some software and they wanted some changes.
I was impressed. Really. It was the first time when I met somebody with a clear vision of WHAT they want. They gave us the demands. They said they didn't care how would we implement this as long as:
1. Works.
2. Works correctly.
3. Works fast.

I felt well to discuss with them as I felt that this is the way the software should be done. The client asks for something an imposes some restriction, but it will never tell you how to do your job.
Contrariwyse inside many companies specifications are hideous mix of what and how.
I have often seen specs that did not describe only the requirements and domain specific business rules but also contained big chuncks of pseudo implementations.
In my oppinion it is not a good practice to do this as it is dangerous from solution's point of view to mix this details in spec. The spec is somehow a contract between developer and client. If implementation details are bound into spec they should be present in the code. More than this the spec is crafted long before design documents so the decisions taken at spec level will heavily influence the design (generally in a bad way).