28 October 2008

SNCF: 225 software engineers who don't write tests!

The biggest French e-commerce web site is http://voyages-sncf.com, they sell train tickets for the National Railway of France providing high speed train travel to Europe. It's supposed to be a public company and provide an affordable, reliable and sustainable transport public service.

In reality, the European Commission and a lot of people who fight for their private interest are trying to privatize it with marketing madness such as IDTGV: a train without driver (!!!) as they "attach" it behind another TGV train. This allow them to contract private staff and pay them less and with less social protection than scnf employees.

The same people also created an over complex pricing system that no one but computers can understand (does it remind you some financial crisis?). This complexity was denounces by a report written by a deputy in October 2008.

Despite a team of 225 people, I am kind of astonished by the poor quality of their latest site: http://www.tgv-europe.com/

This is the kind of email you receive when you order a ticket through http://www.tgv-europe.com/:

Delivered-To: anonymous@anonymous.com
Received: by 10.86.4.12 with SMTP id 12cs66877fgd;
Thu, 23 Oct 2008 12:23:23 -0700 (PDT)
Received: by 10.210.54.19 with SMTP id c19mr1159156eba.116.1224789802208;
Thu, 23 Oct 2008 12:23:22 -0700 (PDT)
Return-Path:
Received: from voyages.sncf.fr (libellule.voyages-sncf.com [195.101.72.30])
by mx.google.com with ESMTP id j8si7755870gvb.1.2008.10.23.12.23.21;
Thu, 23 Oct 2008 12:23:22 -0700 (PDT)
Received-SPF: neutral (google.com: 195.101.72.30 is neither permitted nor denied by best guess record for domain of reply@tgv-europe.es) client-ip=195.101.72.30;
Authentication-Results: mx.google.com; spf=neutral (google.com: 195.101.72.30 is neither permitted nor denied by best guess record for domain of reply@tgv-europe.es) smtp.mail=reply@tgv-europe.es
Date: Thu, 23 Oct 2008 21:23:21 +0200 (MEST)
Message-ID:
Reply-To: reply@tgv-europe.es
fromUnknow sender
reply-toreply@tgv-europe.es
tomyname@anoymous.com
ccconfirmation@raileurope.com
dateThu, Oct 23, 2008 at 7:44 PM
subjectConfirmación de su pedido

hide details Oct 23 (5 days ago)
Reply

Images are not displayed.
Display images below - Always display images from

Logo TGV Europe

arrondi
Confirmación de su pedido
Bienvenido Señor XXXX

Usted ha realizado una reserva en nuestro sitio el 23/10/2008 a las 20h44 A continuación le recordamos los detalles :

Le recordamos que su equipaje debe llevar etiquetas con su nombre, apellidos y dirección.

Para garantizar las salidas TAV en las mejores condiciones, se pide en adelante al conjunto de los viajeros TAV acceder al tren como muy tarde 2 minutos antes de la hora de salida indicada en los billetes.

MONTPELLIERLYON
144.00€
Salida:MONTPELLIER13h5616/12/2008
Llegada:LYON PART DIEU15h50

06866 - Plaza(s) sentada(s) garantizada(s)
Salida:LYON PART DIEU11h3728/12/2008
Llegada:MONTPELLIER13h26

05113 - Plaza(s) sentada(s) garantizada(s)
Referencia - Nombre asociado :XYZSHIT - XXXX

El modo de retirada para este billete es: IAD_WEBEL BILLETE IMPRESO
Imprima sus billetes ahora
Usted puede imprimir posteriormente desde la página de inicio :
  • Introduzca luego GARNIER - QBJPQBto be translated
  • Haga clic en el enlace " Imprimir su billete "
  • Para más información,
    Para más información práctica sobre el billete impreso, consulte las condiciones de uso.

    Para cualquier preguntas sobre el billete impreso, escriba a :Contacto.

    TOTAL pagado 44.00€

    Le agradecemos la confianza que ha depositado en nosotros y le deseamos un buen viaje.

    ¡Visite nuestro sitio cuando lo desee!



    Bugs:
    1. The email sender does not appear in gmail: it says "Unknown sender", they pro
    2. The link "Contacto" (Contact) redirects to an 404 page in the http://www.idtgv.com/. This sound like a copy-paste from their previous work which probably was a copy-paste from http://voyages-sncf.com
    3. The most annoying bug is not in the email but in the booking system when you buy a Return ticket. After you have selected a time for the first trip, it won't let you navigate through the different times for the return ... You can't press "back" and changing the time won't work: it keeps displaying the times for the first trip!!!! At the end, it will take you 30 minutes to buy a ticket ...
    If someone of the SNCF reads me, please simplify your system!!!! That will save a lot of time and headaches for citizens, sncf employees who sell the tickets and finally for the software engineers who don't write tests!

    At the end of the day, the European decision to push for privatization of the railways and open it to competitions in 2011 is purely dogmatic. The invisible hand of "free market" will eventually lead to the melt down of the system . Even Margaret Thatcher thought privatizing British Rail was off limits ... To be coherent, the European Commission should subsidize more the road and air transport.

    As a an evangelist of automatic unit testing and user acceptance testing, I'd love to to a bit of consulting for them in order to reduce the frustration for millions of citizens, including me.

    As an ecologist, I will swallow my frustration and take the train for traveling in Europe as I did when I went from Barcelona to Amsterdam to attend the Citcon Europe conference.

    23 October 2008

    Ubuntu 8.04 xorg.conf for Samsung SyncMaster 2243LNX

    It took me 20 minutes so I thought I shared my configuration:

    # xorg.conf (xorg X Window System server configuration file)
    #
    # This file was generated by dexconf, the Debian X Configuration tool, using
    # values from the debconf database.
    #
    # Edit this file with caution, and see the xorg.conf manual page.
    # (Type "man xorg.conf" at the shell prompt.)
    #
    # This file is automatically updated on xserver-xorg package upgrades *only*
    # if it has not been modified since the last upgrade of the xserver-xorg
    # package.
    #
    # If you have edited this file but would like it to be automatically updated
    # again, run the following command:
    # sudo dpkg-reconfigure -phigh xserver-xorg

    Section "Files"
    EndSection

    Section "InputDevice"
    Identifier "Generic Keyboard"
    Driver "kbd"
    Option "CoreKeyboard"
    Option "XkbRules" "xorg"
    Option "XkbModel" "pc104"
    Option "XkbLayout" "us"
    EndSection

    Section "InputDevice"
    Identifier "Configured Mouse"
    Driver "mouse"
    Option "CorePointer"
    Option "Device" "/dev/input/mice"
    Option "Protocol" "ImPS/2"
    Option "ZAxisMapping" "4 5"
    Option "Emulate3Buttons" "true"
    EndSection

    Section "InputDevice"
    Identifier "Synaptics Touchpad"
    Driver "synaptics"
    Option "SendCoreEvents" "true"
    Option "Device" "/dev/psaux"
    Option "Protocol" "auto-dev"
    Option "HorizEdgeScroll" "0"
    EndSection

    Section "Device"
    Identifier "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
    Driver "intel"
    BusID "PCI:0:2:0"
    EndSection

    Section "Monitor"
    Option "DPMS"
    Identifier "Samsung2243LNX"
    VendorName "Samsung"
    ModelName "SyncMaster 2243LNX"
    HorizSync 31.4 - 80.0
    VertRefresh 56.000 - 75.000
    Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089
    EndSection

    Section "Screen"
    Identifier "Default Screen"
    Device "Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller"
    Monitor "Samsung2243LNX"
    DefaultDepth 24
    SubSection "Display"
    Depth 24
    Modes "1680x1050" "1600x1200" "1440x1440" "1280x1024" "1152x864" "1024x768" "832x624" "800x600" "720x400" "640x480"
    Virtual 2960 1050
    EndSubSection
    EndSection

    Section "ServerLayout"
    Identifier "Default Layout"
    Screen "Default Screen"
    InputDevice "Generic Keyboard"
    InputDevice "Configured Mouse"

    InputDevice "Synaptics Touchpad"
    EndSection


    For more details, please check out another post I wrote about setting up a Dual screen on Ubuntu Gutsy with Toshiba laptop Intel 945

    20 October 2008

    Selenium on ubuntu hardy 8.04

    The upgrade to ubuntu hardy went very smooth but unfortunately, a few softwares were broken and among them selenium remote control, which was unable to launch firefox.

    Here is a list of commands inspired from a chinese blog I used to fix it by running firefox 2:

    Re-install firefox 2:

    apt-get install firefox-2

    Selenum server firefox-bin, so let's visible in our PATH:
    sudo ln -s /usr/lib/firefox/firefox-2-bin /usr/local/bin/firefox-bin
    sudo ln -s /usr/lib/firefox/firefox-bin /usr/bin/


    Also, firefox-bin needs some shared library, and we need to tell the system where those libraries are by adding the following line to /etc/ld.so.conf

    /usr/lib/firefox

    Then running the following command to update the .conf setting:

    $ sudo ldconfig

    If we don't update ld's configuration, we will probably get the following error while running firefox-bin:

    /usr/lib/firefox/firefox-bin: error while loading shared libraries: libmozjs.so: cannot open shared object file: No such file or directory

    libMagick.so.9: cannot open shared object file: No such file or directory

    /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.10/lib/RMagick.so: libMagick.so.9: cannot open shared object file: No such file or directory - /usr/lib/ruby/gems/1.8/gems/rmagick-1.15.10/lib/RMagick.so (LoadError)

    This problem happenned after I updated Ubuntu to 8.0.4 and Ruby to ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux].

    Very simple solution: update to the latest version of rmagick!
    sudo gem update rmagick

    06 October 2008

    citcon Barcelona 2009?

    On Saturday 4th of October 2008, the participants of the Continuous Integration and Testing Amsterdam 2008 conference voted at a large majority for Barcelona to hold the conference next year.

    I think this is going to be a challenge for the following reasons:

    1. Language. Spanish people have a poor command of English - as bad as French people - which might limit the communication and especially the affluence. Nearly half of the people in Amsterdam came from the NL! Despite my 2 years in London, I found it hard to follow native english speakers at citcon 2008...
    2. Agile Community. Does it exist in Barcelona? I don't think it does. There was no one from Spain at citcon 2008. When I worked for a spanish company, developers did not value or practice testing and Continuous Integration (especially the architects ;-) I would not expect any support neither sponsoring from spanish companies. For example, onlu 20 job offers out of 2812 contain the keyword "junit" in the main spanish job site
    3. Venue. Barcelona holds hundreds of conferences every year so it might be an hard time to find a free venue such as in IBM Amsterdam.
    4. Barcelona hype. Barcelona has been very good in the last 15 years to promote an image of "cool" city worldwide. It spends 74 000 000 € each year to promote its image and it has done well so far as the city is always packed with tourists and lots of people would love to live there (and earn a decent salary). Life is more expensive in Barcelona than most of medium size french cities and it's hard to find good and cheap accomodation if you don't book in advance.
    As far as I am concerned, I'd suggest Berlin. It is is also a cool city, much cheaper than Barcelona and with lots of agile geeks ;-)

    Spanish people, please prove me I am wrong and contact the organizers to help!

    Back from citcon amsterdam 2008

    I am back from the citcon amsterdam 2008 conference and I have to say one word:

    WOW!

    I really liked the citcon conference, the people and the organization:
    • it's a free conference, it's on Friday evening and Saturday so the people who show up are really passionate about the subject: Testing and Continuous Integration
    • They got so many sponsors and the venue was great, thanks IBM. However, 2 t-shirts might be a bit too much, I am looking forward to seeing a sustainable approach to goodies left by the sponsors ;-)
    • There so much time (+ beers & tapas) to socialize so you could talk to almost everybody. All the conferences should be like citcon! web 2.0 social networks are a waste of time, you meet the real people face to face !
    • The planning was decided on site with a lot of people proposing some sessions, everybody voting and everybody changing the time slots. This collective intelligence appeared a bit chaotic but the end result is astonishing
    • Special cheers to PJ and Jeff who moderate the conference.
    It's a shame they were too many tracks on parallel and you had to make some choices. I am going to add my notes to the wiki of the conference.

    I have particpated to 2 sessions:



    Later today, I will post another article into my blog to express what I think about organizing the conference in Barcelona !