I would guess the project was (is?) running pretty much just as the people in charge wanted it to run.
10 years in and they were still billing -- more than ever -- for a project that would have completed 7-8 years previously if things had been done according to plan.
All the seemingly massively stupid and counter productive decisions made make sense if the goal is to confuse matters to make it seem like progress has been made or reforms instituted or bold corrective actions taken while actually keeping the project hopelessly mired.
It's like the Producers. (Though without the ironic twist... in reality it surely must be impossible to accidentally complete a software project successfully. No doubt, without the laughs either.)
But they are being fined at E1000's a day. In the UK we now have projects forced to go through regular if not frequent traffic light reviews - a panel of actual experts reviews the project - i think it was one such thing that killed the NHS network project (12 billion over spend). one panel, one review. saved money.
i suspect the french gov will have put something similar in place, but i do agree with the final paragraph of the piece - it's probably a corrupt practise not top management stupidity.
Doing a first checkout requires taking an appointment with the version control team, usually granted a week later. Editing files is not permitted without authorization from middle management.
Ah, I recognize this. It is a special level beyond workplace hell, Tokugawa shogunate hell, where the entire organization is structured to provide as much busywork for as many superfluous management layers as possible. Fifteen porters for every samurai...
The Tokugawas liked to spy on their daimyo and samurai, the better to maintain and consolidate power. Giving each samurai fifteen porters was a great way to make sure that eyes friendly to the shogun were on that samurai at all times.
I'll leave the workplace parallels as an exercise.
So what was the ultimate fate of the project? The 2018 follow-up post [1] says the boss was jailed for fraud, but doesn't say whether the project eventually shipped or was killed (or, even worse, is still in development).
"In a country like France, corruption is not uncommon at that level, goes mostly undiscovered and is rarely prosecuted. "
My brother is working in a construction bussiness in France and he has a handfull of stories of this type of high-level corruption (house built for the ex-mayor, refection work done for a lawyer, invitations to Roland-Garros...). But as the author have said, it's the same thing everywhere.
Not to mention that we have the former president Nicolas Sarkozy on trial for corruption right now. He just took a few millions from Muammar Gaddafi to finance his 2008 campaign.
And there were a slew of big international military contracts in the 80ies/90ies which were subverted to finance political campaigns (Taiwanese frigates, Agosta contract with Pakistan).
These scandals tend to be judged long after the facts (10 to 20 years), and the verdict is generally underwhelming to say the least.
> It is forbidden to come to work after 9am. One day, the site manager stayed behind the main gates and fired on the spot every person who came in after 9.01am, including a number of managers and sales.
This surprised me. I thought it was extremely difficult to fire people in France.
"Among the many comments, some surprised me. Seems lots of people cannot believe you can be fired in France for being 1 minute late at work. Sorry to burst your bubble, mates, but this is what SSIIs (contractor companies) were invented for. You don’t lose your job, you immediately lose the contract you are working on (no justification needed, this is what contractors are for)"
So they were not really employees, but consultants.
Still, he also wrote:
"For people who have a direct contract with the company, same story. Nothing prevents the company from saying you have committed a major blunder, fire you on the spot, and see you a couple of years later in court (Prud’hommes). Yes, that will cost them money if people choose to sue (I hope they all did). When you are unemployed, are you really looking forward to two years of battle with your former employer, even though you know you will win?"
> Coffee machines are regularly out of order for several days. Somebody who drinks coffee is less productive than somebody sitting at his desk, typing away precious lines of code.
> The same coffee machines are switched off whenever officials come to visit the site, to give the impression that everybody is at work.
Inconceivable! I'm convinced this person worked for aliens in human skin suits. Think Edgar from Men in Black. Obviously missed the memo from high command where it is mentioned that humans perform better when caffeinated so supply them with plenty of free coffee and tea to keep them productive and ready to harvest, er, review.
I love how the first thing complained about was the use of C++ for the project. Compared to the lack of sane source control and release management, inexperience of the team, dozens of layers of abstraction, management bureaucracy, toxic culture, basic facilities like toilets being inoperative...
I think using C++ was literally the least of their concerns.
They also started, if I'm doing my arithmetic right, in 1996. Honestly, I could see C++ having been their best choice back then. Every language I would rather do a large project in is either newer than that or would have been pretty immature for a large project in the mid-90s.
Surprised they didn't get fired for reading/learning at work when you're paid to be programming all the time. Although I've never been fired for reading at work, I've had it made clear on multiple occasions at different jobs that reading wouldn't be tolerated, and I was already down a couple of strikes.
What in the actual fuck? I can't fathom how this would even theoretically work. Like people ostensibly would just memorize every api and library they might ever have to use in advance?
C++ as a language for an enterprise business logic software like a payment system in this case? You put together Stroustrup, Thompson, Pike and Torvalds and they still would probably fail to deliver a fully working project or at best it would be very past the delivery schedule (until of course they "cheat" and develop appropriate DSL and compiler/runtime for it first :)
There are lots of people on the pipeline that take their share of our taxes to deliver to "the letter of the contract" [1], without considering the intend.
Closest I've been is when an agency sold my time to another agency which sold my time to the end client, who paid me with "profit" from insurance money ( the end client was an insurance agent ).
And as I'm not in my 20s anymore and I look at how government related IT services work, I'm so much afraid about everything else happening around me. Questions like "What about the tram I use every day? There should be a company maintaining these things. Probably is hell there as well."
There are a lot of jobs like this in economies where stasis and stability are prized over creative destruction. These organization continue to exist because companies are considered sacrosanct ... they are sources of jobs that are to be protected at all costs. The jobs themselves are sacrosanct. Very hard and slow to fire people. So people hire slowly. So there are few jobs. So the few open positions are positions where the employer abuses the employees.
Have you ever noticed how many smart French programmers there are in the USA? People vote with their feet when given a chance.
With a moment of silence in sympathy for this poor sod who is sharing a special level of pain few of us have encountered...
> With so many files in store you may think that two people working on the same file would be rare, but it turned out that most work happened within the same 100 files or so.
Not really surprising, unfortunately. This is a hallmark of the Big Ball of Mud. Thousands of code files and yet people keep tripping over each other.
I think I've used the source code control system mentioned in the article. It was indeed a pile of garbage. Took a couple days of training in it, and the folks running the class kept telling us not to use certain checkboxes and features of the UI "or bad stuff will happen".
In Polish there are different words for free as in free speech and for free as in free beer. But, interestingly, the words for "free" as in free speech and for "slow" are the same, so "wolne oprogramowanie" can mean both "free software" and "slow software" :-) If I remember correctly, the etymology for both words is "wola" which means "will" - if you were free, you could act on your own will, but you also could do things on your own pace. Slowly, that is. But I'm not completely certain if I remember the etymology right, so take it with a grain of salt:-)
What I have witnessed there is beyond everything I could possibly have imagined in terms of software engineering. Far more serious than just a lack of professional competence was the utmost contempt for human dignity which at some point made me compare the whole experience to (what I imagine can be) jail.
I think these two actually go hand-in-hand. Happy Monday!
This is the 2nd 'French' horror story I've heard. An ex-colleague (ex-pat french man) told me an almost exact same story (different software: numerical simulations). Of course bad software happens all over the globe (Looking at you Canadian Phoenix pay system).
However (to me) there are some cultural issues which make things even worse it seems : a VERY rigid chain of command structure and a strict 'political' hierarchy which makes changes happen very very slowly and not always towards the best outcome (for the project, billing is $$$ great).
As mentioned each country has issues, but I don't know if I could go into such a strict hierarchical corporate environment.
> No dynamic library linking: executable sizes in the range of several hundred megabytes
I thought that with Golang and the popularity of static linking for apps in Docker containers that this was now considered acceptable again (tongue firmly in cheek).
> And there are people who claim performance doesn't matter, only correctness does. Hmm..
Performance is meaningless if the code is not correct.
After all, I can make the code arbitrarily fast if I'm not going to be held to any standard of correctness: It always returns "FOOBAR". Done, and very, very fast.
> Also: we chose C++, because it is fast.
That is a bit naive. C++ is a standard, so how fast is a stack of paper?
> 12 years after [1996], the project is still active. The company recovers daily penalties by billing ever-increasing change requests to the government. The year is 2008.
So this was a project for a government agency in France that limped along for years.
[+] [-] jmull|8 years ago|reply
10 years in and they were still billing -- more than ever -- for a project that would have completed 7-8 years previously if things had been done according to plan.
All the seemingly massively stupid and counter productive decisions made make sense if the goal is to confuse matters to make it seem like progress has been made or reforms instituted or bold corrective actions taken while actually keeping the project hopelessly mired.
It's like the Producers. (Though without the ironic twist... in reality it surely must be impossible to accidentally complete a software project successfully. No doubt, without the laughs either.)
[+] [-] lifeisstillgood|8 years ago|reply
i suspect the french gov will have put something similar in place, but i do agree with the final paragraph of the piece - it's probably a corrupt practise not top management stupidity.
[+] [-] ryandrake|8 years ago|reply
[+] [-] lainga|8 years ago|reply
Ah, I recognize this. It is a special level beyond workplace hell, Tokugawa shogunate hell, where the entire organization is structured to provide as much busywork for as many superfluous management layers as possible. Fifteen porters for every samurai...
[+] [-] hinkley|8 years ago|reply
[+] [-] bitwize|8 years ago|reply
I'll leave the workplace parallels as an exercise.
[+] [-] cpeterso|8 years ago|reply
[1] https://projectfailures.wordpress.com/2018/03/24/follow-up-o...
[+] [-] ordinaryperson|8 years ago|reply
An article in French about it: https://www.franceinter.fr/emissions/secrets-d-info/secrets-...
In 2018 it still does not exist. The French government has decided to try again, awarding the contract to the same company.
[+] [-] _hearsay|8 years ago|reply
I am not sure they actually worked on Louvois, so this is possibly another unrelated epic failure.
[+] [-] baud147258|8 years ago|reply
"In a country like France, corruption is not uncommon at that level, goes mostly undiscovered and is rarely prosecuted. "
My brother is working in a construction bussiness in France and he has a handfull of stories of this type of high-level corruption (house built for the ex-mayor, refection work done for a lawyer, invitations to Roland-Garros...). But as the author have said, it's the same thing everywhere.
[+] [-] kakwa_|8 years ago|reply
And there were a slew of big international military contracts in the 80ies/90ies which were subverted to finance political campaigns (Taiwanese frigates, Agosta contract with Pakistan).
These scandals tend to be judged long after the facts (10 to 20 years), and the verdict is generally underwhelming to say the least.
[+] [-] toomanybeersies|8 years ago|reply
This surprised me. I thought it was extremely difficult to fire people in France.
[+] [-] baud147258|8 years ago|reply
"Among the many comments, some surprised me. Seems lots of people cannot believe you can be fired in France for being 1 minute late at work. Sorry to burst your bubble, mates, but this is what SSIIs (contractor companies) were invented for. You don’t lose your job, you immediately lose the contract you are working on (no justification needed, this is what contractors are for)"
So they were not really employees, but consultants.
Still, he also wrote:
"For people who have a direct contract with the company, same story. Nothing prevents the company from saying you have committed a major blunder, fire you on the spot, and see you a couple of years later in court (Prud’hommes). Yes, that will cost them money if people choose to sue (I hope they all did). When you are unemployed, are you really looking forward to two years of battle with your former employer, even though you know you will win?"
Link to the post: https://projectfailures.wordpress.com/2018/03/24/follow-up-o...
[+] [-] MisterTea|8 years ago|reply
> The same coffee machines are switched off whenever officials come to visit the site, to give the impression that everybody is at work.
Inconceivable! I'm convinced this person worked for aliens in human skin suits. Think Edgar from Men in Black. Obviously missed the memo from high command where it is mentioned that humans perform better when caffeinated so supply them with plenty of free coffee and tea to keep them productive and ready to harvest, er, review.
[+] [-] ryandrake|8 years ago|reply
I think using C++ was literally the least of their concerns.
[+] [-] sjm-lbm|8 years ago|reply
[+] [-] commandlinefan|8 years ago|reply
Surprised they didn't get fired for reading/learning at work when you're paid to be programming all the time. Although I've never been fired for reading at work, I've had it made clear on multiple occasions at different jobs that reading wouldn't be tolerated, and I was already down a couple of strikes.
[+] [-] recursive|8 years ago|reply
[+] [-] ILikeConemowk|8 years ago|reply
Story time? Please?
You definitely seem like a good prospect for the following "workplace of hell" saga? ;)
[+] [-] unknown|8 years ago|reply
[deleted]
[+] [-] trhway|8 years ago|reply
C++ as a language for an enterprise business logic software like a payment system in this case? You put together Stroustrup, Thompson, Pike and Torvalds and they still would probably fail to deliver a fully working project or at best it would be very past the delivery schedule (until of course they "cheat" and develop appropriate DSL and compiler/runtime for it first :)
[+] [-] drinchev|8 years ago|reply
Closest I've been is when an agency sold my time to another agency which sold my time to the end client, who paid me with "profit" from insurance money ( the end client was an insurance agent ).
And as I'm not in my 20s anymore and I look at how government related IT services work, I'm so much afraid about everything else happening around me. Questions like "What about the tram I use every day? There should be a company maintaining these things. Probably is hell there as well."
1 : https://en.wikipedia.org/wiki/Letter_and_spirit_of_the_law
[+] [-] TheMagicHorsey|8 years ago|reply
Have you ever noticed how many smart French programmers there are in the USA? People vote with their feet when given a chance.
[+] [-] draw_down|8 years ago|reply
[deleted]
[+] [-] hinkley|8 years ago|reply
> With so many files in store you may think that two people working on the same file would be rare, but it turned out that most work happened within the same 100 files or so.
Not really surprising, unfortunately. This is a hallmark of the Big Ball of Mud. Thousands of code files and yet people keep tripping over each other.
[+] [-] kabdib|8 years ago|reply
[+] [-] ww520|8 years ago|reply
[+] [-] baud147258|8 years ago|reply
"they had to pay soon for Free Software. None of them ever mentions ‘Software Libre’, but they all know about ‘Software Gratuit’. "
In French, we have two word for Free: Libre is for free as in free speech and gratuit is for free as in free beer.
[+] [-] maxxxxx|8 years ago|reply
[+] [-] lainga|8 years ago|reply
[+] [-] SomethingStars|8 years ago|reply
[+] [-] KKKKkkkk1|8 years ago|reply
I think these two actually go hand-in-hand. Happy Monday!
[+] [-] nudpiedo|8 years ago|reply
EDIT: unless personal boundaries would be trespassed.
[+] [-] kelvin0|8 years ago|reply
However (to me) there are some cultural issues which make things even worse it seems : a VERY rigid chain of command structure and a strict 'political' hierarchy which makes changes happen very very slowly and not always towards the best outcome (for the project, billing is $$$ great).
As mentioned each country has issues, but I don't know if I could go into such a strict hierarchical corporate environment.
[+] [-] nineteen999|8 years ago|reply
I thought that with Golang and the popularity of static linking for apps in Docker containers that this was now considered acceptable again (tongue firmly in cheek).
[+] [-] std_throwaway|8 years ago|reply
[+] [-] mpweiher|8 years ago|reply
Also: we chose C++, because it is fast.
[+] [-] msla|8 years ago|reply
Performance is meaningless if the code is not correct.
After all, I can make the code arbitrarily fast if I'm not going to be held to any standard of correctness: It always returns "FOOBAR". Done, and very, very fast.
> Also: we chose C++, because it is fast.
That is a bit naive. C++ is a standard, so how fast is a stack of paper?
[+] [-] hestefisk|8 years ago|reply
[+] [-] unknown|8 years ago|reply
[deleted]
[+] [-] jt2190|8 years ago|reply
So this was a project for a government agency in France that limped along for years.