Thursday, December 31, 2009

Romania's unsafe roads

I have to write again about the roads here.
Apart from being incredibly low speed designed - as they are going in a proportion of 40% through the villages (I am talking here about major European roads as E69, E70, E671, ...) they are in an incredible bad state. They are so full of holes that they look as a they have been made of Schweitzer cheese loafs. 400 km in Romania means about 8 hours so an average speed of about 50 km/h. In the cities the lines drawn on the roads are almost in any cases invisible so when it is to head for a certain direction you get a little confused. The drivers are carelessly stopping on the rightmost (first) lane so it is impossible to correctly drive on the tow lane roads as yoou are constantly obliged to change the lane and then to go back because on the second one the urban speeders are constantly flashing and horning.
It is exhausting to drive here....

Tuesday, December 29, 2009

Avatar dissappointment

Everybody praised the Avatar movie.
From my point of view the plot is quite thin while the CGI isnot as good as all the reviews said.
They said that the movement is very credible and the characters are realistic. Oh, no, the faces are absolutely horrible and the physics of the flying creatures is quite idiotic.
The landscapes are quite okay.
I think that LOTR had better CGI than this.

Saturday, December 12, 2009

Google everywhere

Google search, Google mail, Google wave, Google voice, Blogger, Google maps, Picasa.
I like those applications and I often use them. They are nice and clean and especially easy to use.
Then came the desktop applications Google Talk, Google Earth, Picasa, Widgets and the mighty Chrome browser. Again they are quite good desktop applications. But what I love most at Google is their development frameworks. GWT, Protocol buffers, Guice, etc. I am doing part of my job using them and they are awesome.
However there are two things I do not like at all about Google:

1. Go! language. It doesn't feel like a system programming language as it has quite an awkward syntax and misses pointer arithmetics.
And... What code does the code generator of this language creates? I remember that one of the first backdoors on Unix was to hack the C compiler to insert backdoor code for the login program whenever it compiles another C compiler... What if G does the same? I really do not trust this.

2. ChromeOS. I do not want google to control the internals of my OS and know everything about what I have on my hard drive. It is like having a Google Desktop search bolt into the OS itself. Ant it cannot be uninstalled or even disabled. Also the Google sign-on is strange. It means that I have to be online to use my device?

Tuesday, December 8, 2009

Perfect for today in Romania

Sonnet LXVI

Tired with all these, for restful death I cry,
As, to behold desert a beggar born,
And needy nothing trimm'd in jollity,
And purest faith unhappily forsworn,
And guilded honour shamefully misplaced,
And maiden virtue rudely strumpeted,
And right perfection wrongfully disgraced,
And strength by limping sway disabled,
And art made tongue-tied by authority,
And folly doctor-like controlling skill,
And simple truth miscall'd simplicity,
And captive good attending captain ill:
Tired with all these, from these would I be gone,
Save that, to die, I leave my love alone.

Monday, December 7, 2009

Projects wishlist

1. Python scripted SS7 simulator
A small simulator written in Python that could simulate ISUP/TCAP/INAP. Every message could be a class. Simple integration into automated tests via Python's built in 'unittest' module. Easy to learn for telecom people as Python syntax is very simple.
Something SWIG based for message wrapping?

2. Java ISUP interfaces
For easier integration into JSLEE environments.
Javolution based?

3. IMS virtualization
Quite simple to do - only hardware is the problem. I'd do an installation of OpenIMS Core on several virtual machines and then play a little bit with them. I'd check if Ericsson SDS can be used with this.

4. Statistics processor
Java application that should read statistics tickets written in a LISP like syntax and then store them in a database and display them out in different graphical/textual formats.

Sunday, December 6, 2009

Exit poll (part II)

The results are now reversed.
This is a confirmation that Circus will reign for the next five years here.
I mind asking what was in Geoana's head to proclaim its victory before having the official results.
And I am very amused that all the comedy shows presented sketches with Geoana as a winner (maybe they had alternative versions and presented the wrong one).
There are only two possible explanations for this:
1. Basescu and his party forged the elections.
2. We were victims of a massive media intoxication last night.

Exit poll!

The political life in Romania went from bad to worse.
Mircea Geoana, in my opinion a stupid and non charismatic figure, won the elections with the help of Crin Antonescu. Not longer that two weeks ago Crin Antonescu hit hardly on Geoana but now they are friends. In fact Geoana did not win elections. Media won the elections. Geoana was a pussy that wah unable to sustain its ideas and even in the last confrontation he came with his homeworks not done.
On the other hand, Basescu lost on his own hand. Although he had powerful PR (especially online) he made lots of image mistakes during his mandate. The fatal one was that he fought against the most important media groups. Associations with Udrea and Ridzi, scandals with his daughters destroyed his image, an image that started with a 'wind of change'. Unfortunately he turned into an autocratic figure and he tried to manipulate (and in several occasions he really succeeded) the electors he started a war against the parliament and constitution. So having so many enemies there's no wonder that he lost.
But still, the results are not final...
I'll keep looking for opportunities elsewhere...

Saturday, December 5, 2009


One of the things it bothers me most is that most of the bugs I am working on are not functional ones. They are rather due to the fact that the integration teams that are using our software and are creating the products from them have a poor understanding of how packaging works, what are the protocols used between internal and external interfaces and generally refuse to think outside the bos as they stick in having a set of procedures to that they adhere strictly. They seem to like the army-like environment where the creativity and research are not welcomed.
As for ops teams - it is even worse.

Virtualization and stuff

This week was quite crappy from a technical point of view.
The VXML Interpreter we have been developing for some time now has to discuss with Nuance software for TTS/ASR.
The problem with Nuance is that it runs on x86 hardware. Our baseline is HP DL380 G6 running RHEL 5 which is purely x64. I had to make lots of tricks and combinations between Realspeak, Recognizer, SpeechServer and some compatibility libraries in order to have a working setup.
The backup solution was to create a RHEL4 + Nuance virtual machine and force the RHEL5 host to boot it and present it to the TTS+ASR client. Management was very reluctant to it. However this solution would have bring other advantages - the developers could have used the virtual machines for unitary testing.
In the meanwhile my SS7 simulator ceased to work. It was not a big issue - a DHCP conflict in the network - bu this determined me to have a look on the system. I have discovered that the whole simulator is in fact a system having two ATCA blades. One is a DHCP/BOOTP/TFTP server (hence the conflict) ant the other is a diskless blade with SS7 and SIGTRAN interfaces. Again both machines could be virtualized - so I could replicate the expensive simulation setup on every PC on my team. And all this at 0 costs.

Sunday, November 29, 2009

Forgotten news,-insa,-cauta-profesor-de-moldoveneasca-s149844.html

Maybe one of the most important piece of news. Sadly it was almost forgotten because of the countless scandals in Romania.
Somehow this means that extraordinary people as Grigore Vieru did not died in vain.

Interesting game trailer

Monday, November 23, 2009

Sunday, November 22, 2009

Winnie the Pooh

I found it on - a nice memory from the days when I was watching it on Russian TV as there were no cartoons on Romanian pre-revolutionary TV.

Election results

Sad. It is time time for me to consider opportunities elsewhere.

The Romanians have been manipulated again wit the referendum. Here is a tremendous lack of political culture. Having a single chamber parliament is not in line with the global trend. One chamber is strictly consultative while the other is legislative. A single chamber will be less reliable as there will be no filtering in the law proposal process.

However in 2013 EU will impose again a bicameral institution - so this referendum is quite useless apart from demonstrating again what suckers we are.

For the reduction of the number of chairs to 300 - it is idiotic in my opinion. Mathematically with a constant ratio of corruption and idiocy among them on 471 will be more smart persons than in 300.

As for the president... no comment. God help us!

Weekend works

After about one year with the Gemini Dreambox image I decided to reflash my Dreambox to PLi.
So far so good - it works okay, I'd say that slightly better than Gemini although it lacks some of the tools fount on the other image. The best feature is that the samba client on dreambox works better and now I can browse my music shares directly from Dreambox (audio is connected through RCA connected to my stereo)

In the same update spree I have updated my router firmware. As a result I got traffic reports on all interfaces. To my horror the numbers were quite high.

Thursday, November 12, 2009

Books for managers wannabe

1. The Deadline - MUST
2. The Mythical Man Month - MUST
3. Fearless Change
4. Peopleware
5. Pragmatic Thinking and Learning

Thursday, November 5, 2009

The Road King

I was driving. 90 kmph.
Suddenly I have been flashed. Then flashed again. Then some horns.
I panicked a little and pulled right to make space for the monster car that wanted to surpass me.
It surpassed me in a blink.
I had just a little time to see its registration plate. It was reading ASS.
Just perfect.

Saturday, October 31, 2009

Upgrade 9.04 to 9.10 headlessly

I did those steps from SSH (although not recommended).

1. apt-get update -> all repos updated
2. apt-get dist-upgrade -> somehow not necessary
3. do-dist-upgrade - the magic begins here
Respond to the questions according to the customizations you've done on your system.
In my case I've chosen to keep my locally installed versions.
At the end DO NOT REBOOT the system (do not answer Y at the final question).
4. Edit the /boot/grub/menu.lst and check if the serial console lines are still present. If not add them by hand before the beginning of "AUTOMAGIC KERNEL" section.
5. Now it would be safe to reboot... Good luck.

If you want to upgrade to grub2 (as I did) do the following:
1. apt-get install grub2
2. Edit the /etc/defaults/grub to something as:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`

# Uncomment to disable graphical terminal (grub-pc only)

GRUB_CMDLINE_LINUX_DEFAULT="console=tty0 console=ttyS0,38400n8"
GRUB_SERIAL_COMMAND="serial --speed=38400 --unit=0 --word=8 --parity=no --stop=1"
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux

# Uncomment to disable generation of recovery mode menu entrys

The bolded lines are my modifications for the file.

3. Run /usr/sbin/update-grub as advised.

Friday, October 30, 2009

Finally SnowLeopard in VMWare

It works witn VMWare 7 in Ubuntu 9.10.
I had quite a trouble to get it right. The main differences are:
1. The name of operating guest system should be changed into "darwin10-64"
2. the VMWare tools iso images should be upgraded to Fusion 3 or the one you can find on the net (see the InsanelyMac forums). offering both a better video driver and usable sound with Ensoniq emulation,
There is a bug - I do nyt know if in VMWare or drivers - but the screen shots/Grab are not working.

I have seen a lot of traffic to this post therefore I've decided to make some pointers to the online resources I've used to instal SL:
Below there is also my VMX config in case that you need a reference config:
.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "7"
maxvcpus = "4"
scsi0.present = "TRUE"
scsi0.virtualDev = "lsilogic"
memsize = "1024"
scsi0:0.present = "TRUE"
scsi0:0.fileName = "SnowLeopard.vmdk"
ide1:0.present = "TRUE"
ide1:0.fileName = "auto detect"
ide1:0.deviceType = "cdrom-raw"
floppy0.startConnected = "FALSE"
floppy0.fileName = ""
floppy0.autodetect = "TRUE"
ethernet0.present = "TRUE"
ethernet0.virtualDev = "e1000"
ethernet0.wakeOnPcktRcv = "FALSE"
ethernet0.addressType = "generated"
usb.present = "TRUE"
ehci.present = "TRUE"
sound.present = "TRUE"
sound.fileName = "-1"
sound.autodetect = "TRUE"
pciBridge0.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
roamingVM.exitBehavior = "go"
displayName = "SnowLeopard"
nvram = "SnowLeopard.nvram"
virtualHW.productCompatibility = "hosted"
extendedConfigFile = "SnowLeopard.vmxf"
ethernet0.generatedAddress = "00:0c:29:15:c1:82"
uuid.location = "56 4d 39 e8 53 4d 0a 31-e0 84 32 c9 3d b0 d6 39"
uuid.bios = "56 4d 4b c4 53 dd 96 1e-cd 9d 44 09 57 15 c1 82"
cleanShutdown = "TRUE"
replay.supported = "TRUE"
replay.filename = ""
scsi0:0.redo = ""
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "16"
usb.pciSlotNumber = "32"
ethernet0.pciSlotNumber = "33"
sound.pciSlotNumber = "34"
ehci.pciSlotNumber = "35"
vmci0.pciSlotNumber = "36"
vmotion.checkpointFBSize = "16777216"
ethernet0.generatedAddressOffset = "0" = "1461043586"
guestOS = "darwin10-64"
ich7m.present = "TRUE"
keyboard.vusb.enable = "TRUE"
mouse.vusb.enable = "TRUE"
monitor.virtual_exec = "hardware"
monitor.virtual_mmu = "software"

ide1:0.startConnected = "TRUE"
usb:0.present = "TRUE"
usb:1.present = "TRUE"
usb:1.deviceType = "hub"
usb:0.deviceType = "mouse"
tools.syncTime = "FALSE"
tools.remindInstall = "FALSE" = "FALSE"
sharedFolder0.present = "TRUE"
sharedFolder0.enabled = "TRUE"
sharedFolder0.readAccess = "TRUE"
sharedFolder0.writeAccess = "TRUE"
sharedFolder0.hostPath = "/home/nilu/Public"
sharedFolder0.guestName = "Public"
sharedFolder0.expiration = "never"
sharedFolder.maxNum = "1"
ide1:0.autodetect = "TRUE"
usb.autoConnect.device0 = "path:2/4 autoclean:1"
svga.autodetect = "TRUE"
svga.maxWidth = "1024"
svga.maxHeight = "768"
svga.vramSize = "134217728"
mks.enable3d = "FALSE"
smc.present = "FALSE"
usb.autoConnect.device1 = "path:7/1 autoclean:1"
usb.autoConnect.device2 = "path:6/2 autoclean:1"
checkpoint.vmState = ""

Sunday, October 25, 2009


Movies in weekend

1. Blidness

An adaptation of Jose Saramago's novel. A bitter look on how mankind reacts in a situation of crisis. Some hard scenes depicting degradation.

2. Antichrist

Again, not an easy movie. Interesting story - where Antichrist really is? Lars Von Trier dives deep in the human mind and reveals some dark sides of it.

Thursday, October 22, 2009

How not to use RPM

This one would better go to the dailywtf.
In order to achieve some kind of multiple installed versions of the same package some guy thought a "wise" solution.
Every release of package foo will install itself in /opt/foo/<version> and will create a symbolic link as /opt/foo/current -> /opt/foo/<version>. Every time the package would be installed with rpm -ivh foo-<version>.
On uninstall the rpm -e will erase the latest version and move the link to the previously installed one.
In my humble opinion this is not really the way RPM was meant to be used. The idea behind RPM is to offer consistent package management and not handling concurrent versioning for packages. Upgrading is handled by the package manager itself via internal mechanisms.
The most flawed part of this approach is that human errors would compromise this kind of multi version setup for packages in a manner that automated recovery would not be possible.
The management of concurrent versions of the same package proved - at least for me a real pain in the ass over the time therefore I am more than reluctant to apply such a scheme.

Things to be changed

I had today one of the most bitter experiences from all my career in ALU.
The idea was to offer a HA web service to a 3rd party application.
I proposed a HAProxy based solution that would hide the internal structure of the media server cluster offering to the client application a single and reliable entry point. This would be in my opinion the standars approach for this kind of setups.
One of my line managers (not the direct one) had a brilliant idea. He suggested that the client should modify its application and add code that will do the load balancing and failover inside its software.
In vain I have tried to explain to him using technical and economical arguments that this is really not a good idea, he continually pushed its own vision.
I really do wonder how ALU will realize the so called "Application Enablement" with this kind of managers? I think that we have a looooong way to come until this wish would come true. The reason is not the technical competence - there are a lot of very talented people in ALU but the managerial lack of vision and the intestine wars.

As a conclusion - management has to be changed.

In the meanwhile have a look at - it is one of ALU's first attempts to open towards web.

Monday, October 19, 2009

Breaking news

I had also my religous wdding on October the 17th.
Do not ask for photos - I do not have yet.

Thursday, October 15, 2009

Idea: EFI hypervisor

What do you thinkabout an EFI hypervisor?
Something similar to VMWare ESXi/VSphere but EFI based.
I think that it would be doable with moderate effort via TianoCore and GNUefi backed up by qemu.
Maybe even VirtualBox can be ported to EFI - thus competing with VMWare.

Bluetooth driver for Toshiba U400-13k

On my laptop the bluetooth was not properly discovered.
The solution was to use the omnibook drivers ( but they were too heavy. Apart from bluetooth the omnibook drivers contained also wireless, touchpad, leds, lcd drivers that were not needed on my laptop and the stock kernel 2.6.31 was functioning excellent.
So I have trimmed down the drivers removing all the unnecessary backends and drivers.
The resulting kernel module contains only the bluetooth code over an ACPI backend. It works well on my machine:

[   19.019306] omnibook: Forced load with EC type 12.
[ 19.019360] omnibook: Begin table match of bluetooth feature.
[ 19.019362] omnibook: Try to init ACPI backend
[ 19.019369] omnibook: ACPI EC device found
[ 19.019402] omnibook: Enabling Toshiba Bluetooth ACPI device.
[ 20.150198] omnibook: ACPI backend init OK
[ 20.150200] omnibook: Returning table entry nr 0.
[ 20.262178] usb 7-1: configuration #1 chosen from 1 choice
[ 20.631559] Bluetooth: Generic Bluetooth USB driver ver 0.5
[ 20.631666] usbcore: registered new interface driver btusb
[ 20.720197] omnibook: BTST raw_state: c1
[ 20.720204] omnibook: Enabled features: bluetooth.

The command line to start the module is:
modprobe omnibook ectype=12

The modified sources are available here:
If you have problems with the code drop a comment on the blog and I'll try to help you.

Tuesday, October 13, 2009

Foreign King

The "Boc" cabinet was revoked by the parliament.
The proposal for a technocratic replacement is now on everybody's mind.
I still doubt about it. In Romania they should create a government of well paid FOREIGN managers that will have their bonuses and wages for the results they would show at the end of each year. Thus they will assume responsibility for their actions.
It was already the case for Romania in 1873 when King Carol the I-st came after the long debated reign of Alexandru Ioan Cuza.
The reign of Carol was a true golden age for the developing Romania.

Otherwise - if the government is with Romanian people - they should be under MARTIAL LAW.
The same for senate, representative's chamber, president and other high ranking officials.
Every strategic position in Romania should be controlled this way. It is the only solution to eradicate corruption at high levels.

Sunday, October 11, 2009

Ubuntu 9.10 (Beta)

Fast, really fast and extremely polished - looks very mac-ish.
The only flaw is that VmWare does not work yet with kernel 2.6.31.
Overall - the best distro/release since Redhat 6.2

Sunday, October 4, 2009

Millenium 3 - The Girl Who Kicked the Hornets' Nest

I have read this book during the weekend. Thanks to Adina from whom I've borrowed it.
I is better than the previous one and almost at the same level as the first volume.
The funny thing is that they are discussing about the secret services and how a crisis is handled in Sweden by the government.
In comparison with Romanian way of handling those things (UM0215 for example) the story of the Swedish way in that the "SaPo" works is almost sane.

Idea: Hosted TimeMachine

I think that it would be possible to created a hosted TimeMachine backup service for OSX.
The requirement would be to have a VPN link (TAP device) to the provider in order to support multicast/broadcast.
On the server side I think that a Linux server or a Solaris/ZFS (better!) machine would be enough for about 25 users (considering a quota of about 20GBytes/user). The investment in machines + bandwidth should be returned in about three years. Additional costs would include the web interface for managing accounts and users and some marketing costs (I have strong fears that marketing would be more expensive than the hosting itself).

Done on WE

1. Added a fan on MyBook WE. I have already voided the warranty therefore it was quite obvious that a fan will not change the situation.

2. Installed netatalk + avahi + firefly on MyBook. Now it is sen as a XServe on the network.

iTunes sees the shared music collection


As I am using VMWare I had to change the network interface in Bridged mode rather than in NAT because AFP needs broadcasts at layer 2 and that is not possible on NAT.

3. Python servlets using Jython.

Saturday, October 3, 2009

Political circus in Romania

If you are not from Romania and it happened to land on this blog, please comment what do you think about Romania. About how do you really see us and our country. No offense will be taken. Frankly I'd like to know directly from you.
If you are a Romanian please do the same.
Comments are open and unmoderated.


Maybe it is what we lack as a nation.
Where is it? Where did we lost it along our history? How did others kept it?
Hard to say. But if we critically look at each other what do we see?

Thursday, October 1, 2009

RIP Galli

Timisoara will be a sader place without Galli.
He survived Irak but not here...

Monday, September 28, 2009

Back to school...

Oana Dobre vs. Radu Tudor

Although I like the fact that Oana Dobre is sharply incisive as a reporter I think that she is too stubborn to accept other points of view as it was the case with Radu Tudor in a polemic regarding the Orthodox Church.
Radu Tudor on the other hand is more impartial and more open to dialog. He has also firm ideasand strong points but is by far more flexible in his reasoning.

The rest of the crew at "Sinteza zilei" ranges from jesters to sages... but, alas, who can tell when they are all together.

The Soloist

Not so thrilledabout the movie although it has good music.

Adam's Wall


The Quest for Soundtracks

I have started to collect soundtracks since I have received as a gift for my birthday a vinyl LP called "Arii celebre din filme si musicaluri" (Famous tunes from movies and musicals). It contained Henry Mancini's Pink Panther theme - a theme associated in my mind with the funny cartoons I was watching on Hungarian television's "Esti mese" show every Wednesday. In that period Romanian television was broadcasting only two hours a day - but this is another story.
During my high school years I could hardly find such music - a few BW Polish tapes were available on the market. In that period I have learnt about Maurice Jarre, Vladimir Cosma and Angelo Badalamenti (Twin Peaks was a hit).
When the MP3 revolution stroke me I started to collect more and more soundtracks, learning this way about bands that were not in the mainstream in that period (this is how I have discovered trip-hop). Soundtracks - apart from fulfilling their role of plot support in movies can be seen as a very clever statement of the intentions of the film's directors/producers. They explore both mainstream and obscure domains of music, they range from world music to classical, dodecaphonic and jazz. That mixture colorizes and marks sometimes my memories about a movie. Many of the movies I remember have that mark inside my mind: Jungle Books, Star Wars, The Saint, Hopscotch, etc.
Today, as I was sorting some other music using Music Brainz' Picard tool, that there lots of soundtracks search engines. It was new for me as I have been getting the music just by IMDB's references.
The search engines are:

... In this very moment I am listening to game's soundtrack - Grim Fandango :)

Thursday, September 17, 2009

Building rockets with stone-age tools

It is possible. This is why we are so amazed when we see the pyramids or the Antikitera mechanism.
But I do not think it is productive at all. Why the upper management insists into using 20+ years technologies and tools (Clearcase mon amour) now in a period when everything tends to be leaner and agile?
This is because they really lack the vision and the technological status quo and they stick with what it is familiar for them. They do not embrace the change - they really fear it. Therefore they circle themselves with paperwork to create the impression of stability.
However looking arround they should realize that the rockets they dream of or that are already in the neighbourhood were built using finer tools and with the finest crafts available on the market.
But that is what I have arround. And I've started not to like it anymore.

Saturday, September 12, 2009

I'm back

Unfortunately my vacation is over. I will dream of the sunny Greece for a long time!

Mount Athos

Faith is a risk of reason, but certainly not a cancellation, but rather an illumination of it.

(father Arsenie Boca)

Saturday, August 29, 2009


31.08 - 14.09
Unreachable by any communication mean.


I have the "Solaris vs. Linux" quiz.
It's no surprise as I have been using both OS-es for a long time and I am feeling very comfortable with both.

Sunday, August 16, 2009

Leopard 10.5.8 in VMWare

I have used VMWare 2.5 player on Linux. The installed system is a 10.5.6 upgraded to 10.5.8.
I have started from Donk's tutorial available here
The VM specs are below.
In order to enable the VMWare tools I have downloaded the VMWare Fusion 2.0.5 and then using dmg2img tool I have extracted the content. Inside the extracted image there is a file called Archive.pax.gz. Using pax you can uncompress it. Inside the Library directory of the compressed file there is an ISO file called darwin.iso. Connect it to the VM and install the tools from it.
They will enable shared folders and better performance of the VM.

.encoding = "UTF-8"
config.version = "8"
virtualHW.version = "7"
scsi0.present = "TRUE"
scsi0.virtualDev = "lsilogic"
memsize = "1024"
scsi0:0.present = "TRUE"
scsi0:0.fileName = "OSX.vmdk"
ide1:0.present = "TRUE"
ide1:0.fileName = "/home/nilu/darwin.iso"
ide1:0.deviceType = "cdrom-image"
floppy0.startConnected = "FALSE"
floppy0.autodetect = "TRUE"
ethernet0.present = "TRUE"
ethernet0.connectionType = "nat"
ethernet0.virtualDev = "e1000"
ethernet0.wakeOnPcktRcv = "FALSE"
usb.present = "TRUE"
ehci.present = "TRUE"
sound.present = "TRUE"
sound.fileName = "-1"
sound.autodetect = "TRUE"
pciBridge0.present = "TRUE"
pciBridge4.present = "TRUE"
pciBridge4.virtualDev = "pcieRootPort"
pciBridge4.functions = "8"
pciBridge5.present = "TRUE"
pciBridge5.virtualDev = "pcieRootPort"
pciBridge5.functions = "8"
pciBridge6.present = "TRUE"
pciBridge6.virtualDev = "pcieRootPort"
pciBridge6.functions = "8"
pciBridge7.present = "TRUE"
pciBridge7.virtualDev = "pcieRootPort"
pciBridge7.functions = "8"
vmci0.present = "TRUE"
roamingVM.exitBehavior = "go"
displayName = "OSX"
nvram = "OSX.nvram"
virtualHW.productCompatibility = "hosted"
ft.secondary0.enabled = "TRUE"
tools.upgrade.policy = "useGlobal"

extendedConfigFile = "OSX.vmxf"

floppy0.fileName = "/dev/fd0"

checkpoint.vmState = ""
ethernet0.addressType = "generated"
uuid.location = "56 4d 70 12 43 d2 19 fe-fd 0c 32 6e e2 bc 29 80"
uuid.bios = "56 4d 70 12 43 d2 19 fe-fd 0c 32 6e e2 bc 29 80"
scsi0:0.redo = ""
vmotion.checkpointFBSize = "16777216"
pciBridge0.pciSlotNumber = "17"
pciBridge4.pciSlotNumber = "21"
pciBridge5.pciSlotNumber = "22"
pciBridge6.pciSlotNumber = "23"
pciBridge7.pciSlotNumber = "24"
scsi0.pciSlotNumber = "16"
usb.pciSlotNumber = "32"
ethernet0.pciSlotNumber = "33"
sound.pciSlotNumber = "34"
ehci.pciSlotNumber = "35"
vmci0.pciSlotNumber = "36"
ethernet0.generatedAddress = "00:0c:29:bc:29:80"
ethernet0.generatedAddressOffset = "0" = "-490985088"

tools.syncTime = "FALSE"
guestOS = "darwin-64"
ich7m.present = "TRUE"
smc.present = "FALSE"
keyboard.vusb.enable = "TRUE"
mouse.vusb.enable = "TRUE"
monitor.virtual_exec = "hardware"
monitor.virtual_mmu = "software"

ide1:0.startConnected = "TRUE"
usb:0.present = "TRUE"
usb:1.present = "TRUE"
tools.remindInstall = "FALSE"
usb:1.deviceType = "hub"
usb:0.deviceType = "mouse"

sharedFolder.option = "alwaysEnabled"
sharedFolder0.present = "TRUE"
sharedFolder0.enabled = "TRUE"
sharedFolder0.readAccess = "TRUE"
sharedFolder0.writeAccess = "TRUE"
sharedFolder0.hostPath = "/home/nilu/Public"
sharedFolder0.guestName = "Public"
sharedFolder0.expiration = "never"
sharedFolder.maxNum = "1" = "FALSE"

debugStub.linuxOffsets = "0x0,0xffffffff,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0"

Now I can join the world of Cocoa developers :)

Thursday, August 13, 2009

The Short Reign of Pippin IV

It is so not Steinbeck. The book is amusing indeed - but it is surprisingly unlike other Steinbeck's works.

Wednesday, August 12, 2009

Android phone

Although Android is a nice OS the phones with it are quite crappy and extremely expensive. I really do not understand why they are so expensive as they should be cheaper than the Windows Mobile/OS-X/Blackberry/Symbian counterparts because they pay less for OS royalties.
The hardware is also not something revolutionary - phones with equivalent hardware but without the Google brand cost sensibly less money.

I was offered today an HTC Magic from Vodafone - but I had to say that it did not stroke me with anything but the price - an outrageous 469 EUR.
I am wondering to what market those phones are addressing? Because despite the flashy new OS they will be niche players when competing to Blackberry/WM in business class and OS X/Symbian for feature phones.
iPhone 3Gs is still a better alternative to those HTCs

Monday, July 20, 2009

Headlessly install Ubuntu 9.04 on a headless server

This information is quite old and I have found another method, more reliable, since I have first published this.
For details please see this post:
I will post also the remaster script I've done for the CD.

Basically it is not a server. It is a 2nd hand Dell GX520 on that I've put an 1 TB drive and 1 GB of RAM. I needed a machine on that I can test drive SAP/Netweaver.
I have no monitor home (although I have a spare keyboard) so when I got to install something on the machine I realised that it won't work.
I solved this issue with this trick:

1. I have installed Ubuntu Server 9.04 on my laptop using a 4 GB slash USB stick as target drive.
2. I have modified the GRUB bootloader on the stick to offer a serial console during the boot:
serial --unit=0 --speed=38400 --word=8 --parity=no --stop=1   
terminal --timeout=10 serial console
defopts=console=tty0 console=ttyS0,38400n8

3. I have created the file /etc/event.d/tty0 with the following content:
start on runlevel 1
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5

stop on runlevel 0
stop on runlevel 6

exec /sbin/agetty ttyS0 38400 vt100

4. I have rebooted the server from the stick. The serial was connected via a null modem cable and a PL2303 serial2usb adapter to my laptop.
5. After boot I have created the same partition scheme as on stick to the main drive. I've put labels on the created partitions in order to mount the easily and to have a human readable fstab
6. I have transferred all the files from the partitions of the stick to hard drive
7. I have modified the /etc/fstab in order to reflect the changes
8. I have modified again the file /boot/grub/menu.lst to take into account the new disk.
9. As root I have ran the command grub-install /dev/sda in order to update the MBR and make the drive really bootable.
10. Reboot from the first hard drive.
11. It seems taht the trick worked. Hourray!

I have used some information from You can get more info there.

Saturday, July 4, 2009

I've got married

I did it today.
So I have joined the 'institution'...

Sunday, June 21, 2009

Rainy weekend

The weekend was rainy. On Sunday there was abundant rain and some thunderstorms.
I watched several movies home:
1. Very interesting Dutch movie 'Ben X'. An insightful analysis of the autism and how it is perceived by us, the so called normal people.
2. 'War Inc' despite the names on the credits it was boring, previsible and not so satyric. John Cussack was in the same killer-like stereotype

Tuesday, June 16, 2009

500 Giga are gone

My work, the SVN repositories, my music collection, all the Dilbert strips since 1993, countless programs, tools, experiments, toys, photos, books, documents...
They are gone because I did not backed up the only storage drive I had.
Harsh lesson for me.

The Barnyard

Extremely motivating movie, especially for me, a taurus....

Saturday, June 13, 2009

Extreme video

I have learnt today about nVidia's Tesla GPGPU. This is a headless GPU but still a highend GPU.
In my humble opinion a very powerful video streaming server could be built with this GPGPU. It would offer fast transrating/transcoding because of it's optimized SIMD architecture for streaming media. The basic idea is to access all its 240 cores via the CUDA API and recompile some codecs (FFMPEG on CUDA?)for the new platform.

Wednesday, June 10, 2009

Solaris on ARM

According to Solaris has ben ported to ARM CPUs.
From a MyBook/similar device it is great. I would say GREAT.
ZFS for ARM!

Cultural event in Baia Mare

Unfortunately I cannot attend it. Too far. Not from Sighet but from Timisoara.

It was also highlighted by

I'll be looking forward to read the books.

Tuesday, June 9, 2009

Romanian retail

During the weekend my fridge crashed. It's coolant gas mysteriously disappeared therefore everything inside the refrigerator melted.
I have called service on Monday morning and they appeared promptly and after a quick check they decided that the fridge cannot be repaired.
That's life. I have to buy another one. The criteria for a new one were:
1. Maximum warranty
2. Two compressors
3. Over 350 liters
4. Known brand
5. Rich controls
I have looked on the net for some models and with the list I went to some retailers.

At the small Contorul I have found two interesting models:
Electrolux ERB4040 - but it was the exposed one (and this is not something I'd like) and had only two years warranty.
Gorenje - either with 5 years warranty XOR 2 compressors and very few controls

At Domo I have

Saturday, May 23, 2009

Bulgarian network

Last weekend I have been to Sofia in Bulgaria.
I had a strange experience at the Serbia-Bulgaria border crossing.
1. Just after crossing the Serbian border I reached a booth where I was asked for the car's documents. They were checked and I have received them back together with an usb stick.
2. At the passport control I was asked again for all the papers (passport and car papers) and "chip" - the usb stick I've received on the first booth
3. Customs asked me again for the "chip".
4. Road tax office - I was asked for the chip and car documents.
5. Another road tax office - I have ben asked for chip and then I have received the vignette and I have paid 6 EUR (with an invoice) - although at the previous booth it was marked 5 EUR, for a 7 days vignette.
6. Last road tax booth - I have given back the usb stick.

I do not understand. Is this some kind of a token based network? Do they achieve higher bitrate this way?
Strange system...

Tuesday, May 19, 2009

Simple way to solve differential equations

I have tried Wolfram Alpha today. I was pleased by the result. It would have been interesting to have something similar in my high school years.

Thursday, May 14, 2009


I have prove about four years ago that a free IPTV solution can be accomplished with free components as Darwin Streaming Server, VLC, MPEG4IP.
What I was missing in that time was a source for MPEG streaming data.
The commercial alternatives as envivio are friging expensive.
I have managed today to stream with my DreamBox to a VLC Linux client (it was just a mouse click really). I can now use VLC to pump data into Darwin from this very nice and cheap device.
It isnot exactly pvServer or envivio, but it works :) for free.

Sunday, May 10, 2009

Oracle + Sun = Love?

I do not know. On the software side I have found some areas where they already compete:

Operating systems: Linux vs. Solaris
Virtualization: OracleVM vs. Sun xVM
File systems: BTRFS vs. ZFS
Virtual Machines: JRockit vs. Sun JVM
Databases: OracleXE vs MySQL
Application Servers: Weblogic vs. GlassFish

Which one will survive? There is no way imho that a company as Oracle to keep two different product lines. Personally I am on Sun's side.
The biggest win for Oracle is "He who controls the Java middleware controls the enterprise market". And Oracle did it. I do not know what to say about the othe major player on this market, IBM. They have WebSphere + DB2 + Linux/AIX + iSeries/pSeries engaged in a fight with WebLOgic/Glassfish + Solaris/Linux + Sun Enterprise.

Probably the biggest losers in this merger are Dell and HP because they stay present only with hardware. Redhat/JBoss will have a hard time. Microsoft... hmmm... hard to say but I think that they missed a good opportunity here and they will start shrinking in to their core business Desktop/Office.

Tuesday, May 5, 2009


The concise dictionary of sins

Apostasy -
Simony -

Which one is the next in the line?
For those who are curious of what I am thinking - the names are IPS Nicolare and IPS Teodosie.

Tuesday, April 28, 2009

Daily routine

1. I have looked into a possible integration of curl and memcached for a distributed caching of VXML pages. The idea is that when a media server makes a HTTP request to an application server in order to fetch something (vxml page, audio, video, javascript) the retieved content is stored into memcached so that a subsequent request for the same resource would be served faster. For the media server traffic model this would be quite a good speedup as it is very likely that the SIP requests would often reach the same IVR service (the same VXML pages) and therefore all the data would be already cached. What I am thinking further would be to cache somehow the TTS prompts.

2. Problems with my satellite dish. After the weekend I cannot see any TV. The HH mount works, the alignment is correct but still no signal.

3. Ubuntu 9.04 - works and looks nice. No more wireless issues but the same omnibook modules I had to recompile for my Toshiba. Now I have windows only in a VM (VirtualBox)

4. Issues with VirtualBox - if the guest uses poll/epoll the CPU consumption is considerably higher than with VMWare.

Wednesday, April 22, 2009


What if Romania would make a commemoration day of all the victims of Romanian rapists and murderers throughout Europe. It would be the case... sadly. We were outraged when some Hungarian gypsies killed Marian Cozma but we are indifferent when idiots from Romania kill and rape in Italy and steal in other countries. However people died and us, the real Romanians, should pay at leas a little respect to them.

I wondered through churches and I have seen the bishop's chair always empty. It was sad. In Greece there is almost a bishop in every town. In Romania are quite a few, but their place is taken by other dignities and this leads to chaos. Moreover, I was disappointed that Iustin Sigheteanul - the bishop of Maramures - although having the name of Sigheteanul (of Sighet) did not participate to the divine service in the city of Sighet. Is he really a bishop for Sighet? If he is not among the people of Sighet why does he has this name? Are the people from Sighet 2nd hand christians that do not deserve a divine service led by a bishop?

Romania is not a rich country anymore. We are getting from poor to poorest on a daily basis. Everything seems to be decaying: people, nature, building, roads...
Hovever on thing thrives: the fees.

Forfait taxes in Romania. They somehow abolished the 16% profit tax. Many small/micro companies will be closed and the results would be against of what they hoped when they introduced this tax.

Wednesday, April 8, 2009

Revolts in Modova

Has the communism reached the its final end in Moldova?

I really hope so although I think that this movement will end badly because of the very fragile position Moldova has in the relations with the strong neighbours, Russian interests and impotent Romania.

May God be with you brothers!

Cheap hire year

2009 will be maybe the year with the cheapest hire price in Romania.
There are two main reasons:

1. The well-known crisis

2. This year will graduate two promotions of CS students. Those with a 5 years curricula and those with 4 year curricula in addition. Therefore this year the number of available candidates will be with about 40% higher overall.

This is good for employers because:
1. The selection base is broader and therefore better candidates would appear
2. the demand will be higher than the offer and there will be real concurrency for the declining number of positions
3. The employers would be able to negotiate the wages more tightly.

Maybe this will be the end of some odd situations in the Romanian HR. Very young and unexperienced candidates with very high demands. They were chosen just because nobody else asked for the job. Now this will end... This is good! Also for us those that are already in 'comfortable' positions because young wolves are coming and we will have to strive at our best to keep our jobs.

Tuesday, March 17, 2009

Sun Cooltols

I have had an epiphany today. I had to port quickly something from Linux to Solaris.
I had some alternatives as SunStudio 12, build my own GCC for sparc or use the GCC4SS Cooltools. I went on the last path as the code generator is the same as for Sun Studio and more optimized. I modified nothing in the makefiles and everything worked as a charm.

Thank you, Sun Microsystems!

Monday, March 16, 2009

The World Is Flat

I have finished reading Thomas Friedman's "The World Is Flat". It was a nice book.
I have witnessed personally most of the things described in the book (including details as Fractint).
However I discovered how insignificant is Romania on a global scale. Despite being a promising destination for call centers and software outsourcing, the biggest European shoe maker, Romania is never mentioned in the book. The reason is simple - it is too small to matter. Comparing Romania with India for software or China for production of goods we Romania tends to zero. In India there are thousands of readily certified low payed software engineers. In Romania are some, but they are hard to find and more expensive. As for cheap work in other domains the EU admission increased the wages and therefore it is no longer so attractive for foreign outsourcing.
The conclusion I drove from this book is that in a flat world we should build something of our own. It does not really matter what but we have to be perfect in doing it. Otherwise we will melt into a flat sea of nothingness or, as Friedman said, we would finish by selling hamburgers one to the other.

Sunday, February 22, 2009

Serial port on MyBook

Kind of a low tech mount but it works.
I can now see the bootloader output. I have used a modified Nokia CA-42 data cable for RS232 conversion.

Mon Jan 21 08:49:25 GMT 2008

U-Boot 1.1.2 (Jan 21 2008 - 08:50:09)

U-Boot code: 48D00000 -> 48D17648 BSS: -> 48D1B2B8
RAM Configuration:
Bank #0: 48000000 32 MB
In: serial
Out: serial
Err: serial
Initialising disks
No FIS received from device 1
Detecting SATA busses:
Bus 0: Found first device OK
Device 0: Model: WDC WD5000AAJS-98YFA0 Firm: 12.01C02 Ser#: WD-WCAS87380126
Type: Hard Disk
Supports 48-bit addressing
Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
Device 1: not available

IDE read: device 0 block # 63, count 1 ... 1 blocks read: OK
Upper 32M of SDRAM is alias of lower 32M
Hit any key to stop autoboot: 0

IDE device 0: Model: WDC WD5000AAJS-98YFA0 Firm: 12.01C02 Ser#: WD-WCAS87380126
Type: Hard Disk
Supports 48-bit addressing
Capacity: 476940.0 MB = 465.7 GB (976773168 x 512)
... is now current device

IDE read: device 0 block # 300, count 5700 ... 5700 blocks read: OK
## Booting image at 48500000 ...
Image Name: Linux-
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1231380 Bytes = 1.2 MB
Load Address: 48008000
Entry Point: 48008000
Verifying Checksum ... OK

Starting kernel ...


Saturday, February 21, 2009

NIO adventures

I assumed anew task for myself last week. Due to some performance constraints in one of the pieces of software I had into maintenance I decided that the only possible solution for improvement is to rewrite it. I knew that this would not be an easy job I had no real certitude that this would really work better. Bu I took the chance because I considered that having one thread per concurrent client in this software was really not the best approach.
Therefore I had to implement something lighter.
I took the approach of non blocking IO. All the incoming SIP requests are handled by a thread that is using a selector to react on the incoming requests. The incoming messages are then queues into a dispatch thread that dequeues them and depending on the SIP method/answer's CallID dispatches to a state machine that handles that client.
The results seem promising for the moment. Before I had about 16% CPU per process on a Netra T2000 server, now it dropped to a maximum of 9% while in traffic and 1% in idle mode.
However the NIO documentation is quite scarce. I was quite lucky with those two sources:

that clarified me some of the NIO ways of doing things.

On Unices NIO works well (I'd say that it works best on Solaris). On the other hand it works awfully on Windows. It hogs 50% of CPU and after the program is finished it doesn't dive back the CPU (System process on my XP stays all the time at 50%).

Wednesday, February 18, 2009

Black Wednesday?

In 1992 UK was forced to withdraw the British Pound from the ERM.
I am feeling that the same pattern is happeninig now with some currencies in Eastern Europe for the profits of some financial sharks. I really do not understand why the Romanian government does not go to a fixed exchange rate (or a pegged one) in order to stop those actions. Thde Bulgarians already did it? So? What is the catch? The sooner the stabilize RON the sooner they stabilize the Romanian economy.

Sunday, February 1, 2009

New obsession

I have developed a new obsession.
Digital television. Yesterday I have been digging on the internet for DreamBox resources, HDTV and stuff. There is very much information but let's say it is unstructured and hard to link. The information is ecclectic and you have to consult three or four sources in order to understand something. Most of it is on forums and seems not to be maintained. I am working now for understanding everything I've downloaded and bookmarked yesterday.

Saturday, January 31, 2009

O noua leapsa

Adina m-a provocat din nou.
Iata deci raspunsurile mele:

1. Care este cea mai bună carte citită de tine?
Nicolae Steinhardt - Jurnalul fericirii

2. Ai făcut cadou cărţi?
Da. Cred ca sunt cel mai frumos cadou posibil.

3. Care este viitorul literaturii?
Nu stiu. Cert este ca in viitor literatura va imbraca forme noi si ca modul de receptare si propagare a ei se va schimba (cartea va evolua in dimensiuni media noi - audiobooks, e-books).

4. În ce limbi ai citit cărţi?
Romana, engleza, franceza.

5. Ce cărţi “celebre” nu ţi-au plăcut?
Nu-ma omor dupa literatura engleza si franceza din secolul XIX (Balzac, Dickens).
In schimb apreciez poezia perioadei - atat ca forma cat si ca idei este mult superioara si mai lipsita de mainierism.

6. Ce ţară a produs cea mai buna literatură?
E imposibil safac o astfel de dihotomie. Fiecare tara a produs literatura buna dar o receptez in mod diferit in functie de starea mea sufleteasca.

7. Iei notiţe din cărţile pe care le citeşti?

8. Cam câte cărţi ai citit până acum?
Pana intr-o mie de carti. Citesc destul de putin in ultima vreme.

9. Cu ce cărţi ai dormit în braţe de plictiseală?
Irvine Welsh - Jeg.

10. Ce înseamnă cărţile pentru tine?
Chihlimbar cu vise. Deoarece capteaza si pastreaza vise - asa cum chihlimbarul pastreaza si face nemuritoare viata din trecut.

11. Care este cea mai scumpă carte pe care ai cumpărat-o?
Mda, daca zic - o sa ma lapidati. "Design patterns: elements of reusable object-oriented software" - in jur de 60 de euro.

12. Care este cel mai tare final la o carte citită?
Vladimir Volkov - Strutocamila.

13. Care este cea mai influentă carte citită de tine?
Biblia. Pare un cliseu dar este cartea care a influentat toata omenirea intr-un fel sau altul in ultimele doua milenii.

14 Care scriitor te-a influenţat cel mai mult ?
Nicolae Steinhardt. In sensul ca pana am citit Steinhardt literatura era pentru mine exlusiv fictiune. Steinhardt a reusit sa ma faca sa descopar alte dimensiuni ale literaturii. Steinhardt a fost pentru mine "sfarsitul copilariei".

15. Cât de repede citeşti o carte?
Depinde de carte, daca me prinde naratiunea atunci nu o las din mana pana nu o termin, altfel dureaza cam o saptamana, poate doua.

16. Poate literatura să schimbe lumea?
Cu siguranta. Cuvintele nu au incetat sa fie puternice.

Pintea? Sorin? Dorutu?

Saturday, January 17, 2009

FSC 2020 resurrected

As my new Toshiba is broken I had to improvise something in order to have a computer.
The hinges of the lid were broken so the display was unusable.
I bought a 30x40cm photo frame and two 10x15cm photo frames.

I have used glued the two smaller frames at the back of the bigger one in order to provide support and after I have mounted the display on the bigger one.

So I have been able to reuse the old laptop until the new one will come back from the repair shop

Friday, January 9, 2009

Dark week

1. RON dropped at the lowest ever value 4.23 RON = 1 EUR.
2. Russia closed the gas pipes for Romania.
3. State reserve is low still government is raising the wages and pensions.

What to do?

Monday, January 5, 2009

Crisis arrives in Romania (2)

The year has begun with only 424 vacancies in IT - half of the number available in 27.12.2008.
The declining trend is accelerating.


My new laptop is broken. It has lots of dead pixels - over 30 an I treally do not know why.
I will give a call service tomorrow.
In the meanwhile I might start looking again for alternatives (Lenovo/Dell/HP).

Dell Axim x51v

Nice device. I have managed to upgrade it to Windows Mobile 6.1 via LennySh.
I liked the wide bright VGA scren - it makes the Axim a perfect companion for trips as it can be used as a navigator and also as a very powerful media player via TCMP.
What I really disliked on the WM 6.1 image was the quantity of bloatware installed (rlToday, lots of unneeded gadgets) and the short battery life.


Happy New Year to everybody!

I have celebrated the Sylvester 2008 and tne New Year in Bratislava.
The city is nice, not as grandious as Prague, but nice and cosy.
People were warm and we had a nice time in the streets (everybody was partying - the city is called Partyslava :) ).
The Slovak rock music sounds nice, lthough I could understand nothing of the verses.
I wandered a little bit in Austria, Bratislava beeing only 62 km away from Vienna.
Coming back to Romania I had again the bitter taste of the Romanian roads. More than a half of the time - but only a quarter of the distance was on Romanian slow and bumpy roads.