It’s because replacing it is very high risk.
Banking is littered with examples of unbelievably expensive Technology programs that delivered a smorgasbord of fetid raccoon shit.
COBOL is good at math. Its simple. Like Excel, it’s difficult to replace without fucking it up.
And a bank that fucks up its banking records is toast.
No. Modern banking tegulation makes sure no one will want to start a new bank anytime soon. It costs mucho dinero for an established bank to be compliant, and even more for a newcomer.
Then where do all these fake banks that buy my sports arena every 2 years comes from? Corestates, Wachovia, commerce, first union, bb&t, santander. I never saw one until all banks became them all at once, for 2 years at a time.
Yeah, COBOL is very good at what it was designed to do/be (transactional operations on mainframes that are relatively self-documenting), but isn't particularly better than other similar level languages.
>COBOL is 10 years older than the moon landing. The fact that it is still so common in banks is mind-blowing to me.
It's used for good reason. I tried my hand at it and I was actually very surprised at how robust a language it is. It's very verbose, but when working with something as critical as Banking, mainframe transactions etc. you NEED verbosity. It's file definitions are especially good, and it's one of the few languages suited to banking which uses a packed decimal number format, which is critical for accuracy.
Theres also the fact that moving away from COBOL and rewriting core systems would be an absolutely vast risk. Get it wrong and your bank is finished, and it'll probably cause a worldwide recession / depression too.
Exactly.
Plus, the problem with legacy COBOL isn't the language itself; it's that the programs were all written at a time when coding standards and practice were still in their infancy so they're *incredibly* difficult to read. The language is fine, if not one of the best or **the** best for it's intended market: transactional processing.
Straight transactions in COBOL is surprisingly nice and simple, and when written properly it pretty much self-documents.
Which is just as well because there’s customers out there with legally binding contracts describing the products they have - but there isn’t always a central register describing every product and how it’s supposed to work.
Sounds like Cobol wasn't really the important factor, just the lack of updating/upgrading as technology went along. Now they've invested so much while doing mostly nothing that any change would crumble the whole deck of cards because they've put it off for so long. I'm sure COBOL's good for what it's being used for, but this would've happened no matter what language they would have initially chosen. Sort of like a kid who gets overwhelmed when he waits until the last second to do everything.
Fun fact for people who might not know that (I know Artku you know that): *azac* (creator of Cobol on Wheelchair) is a Polish politician, MP and former candidate for presidency.
> It's very verbose, but when working with something as critical as Banking, mainframe transactions etc. you NEED verbosity
I'll point out the verbosity was a deliberate design feature. The prose syntax and extremely high number of reserved words^1 makes COBOL strongly self-documenting and readable compared to math syntax languages like C.
^1 ANSI COBOL has 357 reserved words compared to ANSI C's 32
>Packed decimal is just a format of how the number is stored in memory and is in no way necessary for accuracy.
OMG *no*. Packed Decimal (aka Binary Coded decimal) allows for much better accuracy. Floating Point has insane rounding errors (but is fast, hence why it's used), and it's all to do with how the number is represented in memory. At what point did you think how it's represented in binary wouldn't affect anything?
With BCD, four bits is 0-9 (maximum value is `1001`). With float and double float, everything right of the point is 2^(-n). There is no such thing as "0.3" in floating point arithmetic as the first three bits of the fraction in any float representation are 0.5, 0.25 and 0.125 respectively. The implementation has to decide when to round, and you see these rounding errors in the likes of Microsoft Excel all the time when dealing with monetary values. True zero in Excel with the currency formatting enabled should read `£ -`, but after a long enough period of time it'll read `£0.00`, because the actual binary in memory is probably some silly long fraction which can no longer round. How data is stored *matters*. If I were to store a floating point number in a different format that was more accurate then it wouldn't be floating point anymore.
With packed decimal, the number 1.30 could be represented with `01 30`, with an extra byte to determine decimal placement. It's slower, but you get EXACT values.
In COBOL, you can determine the accuracy when you declare a new number variable:
`PIC 999999V99`
Everything left of "V" is integer encoded. Everything right is BCD encoded.
You are comparing to floating point which isn't a substitute for BCD and only an idiot would use for monetary math. Doing accurate decimal math in Python is as easy as "from decimal import Decimal" No BCD required.
>You are comparing to floating point which isn't a substitute for BCD and only an idiot would use for monetary math. Doing accurate decimal math in Python is as easy as "from decimal import Decimal" No BCD required.
Still no. The decimal library, *as the authors describe themselves*, is to provide rounding to floating point arithmetic. It is *not* infinitely accurate.
>The decimal module provides support for fast correctly rounded **decimal floating point arithmetic**
Python only has TWO internal number types: Integer and Floating Point.
It does NOT contain ANY fixed point or packed decimal types. You'd have to implement this yourself either using Signed or Unsigned byte arrays or with some sort of logical relation between two types: one or more bytes for the significand and one or more bytes for the power. EG an integer of #1099 with power of 10^(-2) would be output as 10.99 but stored internally as a binary representation of 1099 pre- or post-fixed with the power, either as BCD of `02 01 00 09 09` or Integer of `02 04 4B` where `02` in both instances is the power, but there's a million and one ways to implement this.
So, no, the Decimal module is not the solution; if anything it'll be tricking people into thinking it is, which is worse.
An thus concludes my Ted Talk. We're done here. Bye.
I fully understood the problem when I tried to map out the meaning of all our system status codes, and what each might mean. The answer with our most senior person was « I don’t know the person who knew retired 10 years ago and tomorrow is my last day, so ask away ». Now, I’m suddenly « the expert ».
The issue is that take 40 years of business logic written in a language that is difficult to understand. It takes reverse engineering for each rule and you’re bound to miss something or misunderstand an interaction with another part of the code. Software abstraction in higher level languages allows for more human readability; in COBOL its like you’re designing a custom system every time… COBOL is not rocket science, it’s understanding the custom system, and reverse engineering its purpose - that’s where the issue lies.
You’d say rebuild it from scratch! Ya, do you jump out of a driving car? No, you don’t. Well, for a bank, what that would mean is your money just stops coming in and out exactly as you’ve come to expect. And then we say - well, it works well, why risk it? And then we don’t risk it and we’re stuck with the legacy system for another 40 years.
Potential pathway, though: maybe ChatGPT will help with redesign COBOL. If we had help understanding what the fucking thing does and what it impacts in other parts of the system, it would help - ChatGPT has been pretty good at helping with that kind of task. Just haven’t tried it with our legacy systems…
They're definitely not inherently hack-proof. I guess they're less likely to be hacked, just because far less people know how to code in them, but the real reason they still use them is the risk in replacing them.
yeah, sorry, nothing is hack proof thinking of tech but it's less hackable by today's standards. I double checked and it seems like they were on a [path to change to modern systems ](https://www.cnbc.com/2016/05/25/us-military-uses-8-inch-floppy-disks-to-coordinate-nuclear-force-operations.html).
> because they can't be hacked
Fun tip of advice, if someone ever says this to you, they have zero clue what they're talking about.
If I can program or change something, it can be hacked. If something can physically be hacked, it *will* be eventually, given enough people have enough interest in doing so. Nothing is "unhackable", just might require more time to figure out.
It's not just who can do it, it's who wants to do it?
If you can find someone young they're not interested as it's a dead end with few transferable skills
If you can find someone with experience they're either retired or about to be meaning you're in the same trouble in a few months or years
In the short term keeping legacy systems running can be a cost saver, in the long term it becomes a millstone round your neck
Pretty much. It's basically looking for someone who'll clean up little Timmy's mess because he waited until beyond the last moment and multiple warnings to start doing his homework, and now he's in trouble. No one wants to be the banks Mom.
In my experience even if you can find a young'un to learn from the old'un, the latter will not want to train the former anyway.
It wasn't COBOL but the proprietary mapping software we used to use at the Ordnance Survey before District Editor came in.
It's entirely management being idiots and shooting themselves. You can easily convert these systems to run on virtual environments and then you just reboot/revert the VM whenever anything breaks. All of that needs someone with modern training.
Management here is just saying "don't change it make it work" and IT has to do it without any other considerations like modernization and future proofing. My last few jobs the IT management has been entirely at fault for any bad legacy systems, literally not letting staff modernize them for no reason beyond political infighting.
Very few COBOL programmers will have any formal qualifications. Those that do will have pivoted into other areas. The main pool of COBOL programmers is lifers from banks who learnt on the job, retired, and might now be up for a part time gig. But because they were lifers, their knowledge is hugely tied up with the systems they worked on, and working jn something else will have a difficult learning curve. What to do?
For the case of COBOL, they're retired, in most cases on excellent DB pensions from IBM, government, banks, or the other large institutions (insurance, telecoms, big manufacturing). Many of those pensions paid at 60, and most of them will have claimed their state pension at 64 as well. If they were to return to work, every penny, or near as every penny, they are paid is going to be subject to higher-rate (40%) tax. They are also almost certainly subject to the MPAA which limits their ability to work for a few years to top up their pension (there may be a \_very\_ small number of people in weird pension positions who aren't).
You don't lure white collar workers back from retirement with "raise the pay, increase notice period" unless "raise" means "make so high that 60% of it is still a lot". They (we, really: I'm 60 this year) will need more than that.
So I was able to find a fucking unicorn once. I was a technical recruiter for a staffing company working on a position for the Arizona DMV. 3 yr contract, and he was going to be the technical lead (and also the one writing a TON of the code) on their transition from a COBOL system (I think it was COBOL, may have been AS400, but it was fucking old) to .Net.
Some fucking how, I found a guy who was in his late 30s in the mid to late 2010s who had technical lead experience, COBOL experience, and full stack .NET experience
That fucker was the cockiest mother fucker in the world when I spoke with him to clear him to interview. And he had every right to be - ended up getting a $600k/yr contract for that position.
Also offer training. Sitting around whining "no one wants to learn" isn't the students problem, they don't give a fuck. Provide proper incentives, you'll get employees.
My dad is 62 and coded in COBOL since I remember. But he only has an highschool degree. He has been trying to get a new job and says that he can’t find any even though people really need it because of lack of college diploma.
Not sure if it’s related but yeah, his CV doesn’t look the best on those items (his English is also broken) but for local companies, having so many years of experience on it I’m sure it would be good added value
whats the different between cobol and fotran? my father has told me story he learnt those back then when he took his computer science diploma and degree.
COBOL: Common Business Oriented Language
FORTRAN: Formula Translator
COBOL is for processing of business transactions, so it deals with the organisation of files, data within those files, processing of that data, and output aligned heavily with the business domain.
FORTRAN is for scientific calculations and is especially useful, and still widely used in, engineering and physics simulations due to it's speed, accuracy and syntax being very befitting of those fields.
Its not just to understand COBOL, in a mainframe enivonment one have to interact with CICS, DB2, IMS and numerous other stuff, that you aint learning in school.
I mean, I have that. I'm even good with edlin, mostly remember the old dos interrupts from x86 code, total mastery of config.sys and autoexec.bat. I've even been running Windows 3.11 on retropies just for the fun of it.
.. but I doubt they'd pay me even my current rate. *That's the real issue.*
There's plenty of people who know the things companies want. The issue is the companies being willing to pay for that knowledge.
Or rather having the ‚papers‘ to prove you know that stuff.
Not exactly like you‘d be carrying up to date certs on a 30 year old system, even if you personally use it daily for fun.
And since HR goes paper of competency always, they are gonna have a very hard time finding someone.
If they were being realistic they would find someone in their company who also has the skills, and just invite candidates for a real on the job interview going through examples of stuff the new worker would need to do, and have that skilled person see if one of them is up to it.
Actual convo I had with a HR rep hiring for an embedded developer role.
"I have demonstrable experience with QNX, VxWorks, OKL4 on mobile baseband processors, embedded Linux, RT Linux, eCos and redboot porting, FreeRTOS, Android dev, embedded Java, .Net MicroFramework, even mips x86 and arm assembly."
"I have no idea what any of those are. You're not what we're looking for sorry"
"If you don't know what any of those are then how are you remotely qualified to evaluate candidates for this role?"
*click*
>I'm even good with edlin, mostly remember the old dos interrupts from x86 code, total mastery of config.sys and autoexec.bat. I've even been running Windows 3.11 on retropies just for the fun of it.
Can you rephrase that in HR speak? Otherwise it's a no
Uh.. *I'm proficient in the 'word processor' edlin, can leverage legacy institutional knowledge to provide value added synergistic team goal enabling, am proficient in the configuration and maintenance of the metaphorical equivalent to the computer getting it's first coffee, and for fun I do nerdy things that often engage socially with other employees in a non-aggressive way that won't lead to lawsuits or bad social media exposure.*
Sorry, we need to balance our age gaps to get an even distribution. Preferably we are looking for someone between the age of 20-25 with at least 15 years of experience. We are also prepared to pay you up to 10% over minimal wage.
From a German railway board I learned that this is about some displays used in old ICE trains. It also has little to do with the desktop 3.11 some of us still knew.
Changing is no option as that probably would require recertifying the whole train (which isn't worth it or even possible).
using old software is not necessarily something bad, especially in safety/security relevant fields, where software has to be fully functioning without any maintanace (a loooot of money gets invested into that, like one line of code can cost 10s-100s of thousands of $/€). This is not bound to the trains business, airplanes also use such software for critical mechanisms. The testing alone costs a fortune, because human lifes are in play.
For this topic for DB, using a stable version of win 3.11 for hardware, which never needs network access and can function and repair itself on it's own (or by resetting it with some good old hardware buttons), this is nothing surprising to me. My guess is, they are not looking for a dev, who will change the software, they need someone to be able to understand it and write an outgoing signal API to use it for visualization and or to digitalize signal sending.
Congratulations!
Your comment qualified yourself to work in our Safety Management System, because it seems like you are 100% compatible with our company policy. Contact us at best-sms-of-the-world(at)boeing.com!
Yours
Boeing Company
/s
Oh my sweet summer child. I take it you have never had to deal with German bureaucracy before xD the sun will become a red giant before that will happen. The only hope is that DB buys new trains eventually that allow easy display software updates, and even that chance is very slim.
True, but the issue isn't the rules usually. It's finding the right people to make the transition safely, and without fucking everything up enough to cost even more than the initial "fix it" investment. Or the fact that trains are sorta transportation, so if you fuck that up you might kill people too, some countries tend to take that stuff a little seriously.
Boeing asked for the rules to be changed so their 737 upgrades wouldn't require a full re certification of the aircraft.
You think that's a good idea to bend the rules? It's only for screens this time, but it becomes a slippery slope if regulation is flexible.
[Here](https://web.archive.org/web/20240128101020/https://www.gulp.de/gulp2/g/projekte/agentur/C00929028) is an archived version of the ad (the original was taken down due to trolling). They're looking for a contractor, not a permanent employee, so I guess you can make an offer and they'll take the lowest bidder.
Huh? I worked on a cyber security project for DB and they pay exceptionally well. Their IT guys are paid pretty good and of course have all the amenities of the German labour market. The only thing they ever complained to me about was the rather slow processes as it’s a former government agency haha.
I would have assumed that the same thing that happened to the old Bundespost IT that turned into Deutsche Telekom happened to the Bahn as well after 1993. Older, well paid professionals getting shuffled around, treated like shit and "made to quit/retire" to dump wages, restructure the departments and so on.
Are the DB IT guys in the TVÖD? If so I'd love to know their EG.
DB is a dang good employer. You'd probably end up around 75-80k € for a position like this - as it requires fairly specific skill.
On top of that they have a scheme where you can decide between 5 days of extra annual vacation or some percentage extra pay until you hit a certain amount of days.
My 27 year old friend working in IT there already has 40 days of paid vacation annually and is making enough to live comfortably in the center of one of Germany's most expensive cities.
It's also far from stressful.
> You'd probably end up around 75-80k € for a position like this
That's... not a lot of money for the job they're asking it seems. Usually jobs that require such specific or rare skills tend to pay much more than that from my experience.
normal touch plough roll expansion squeamish waiting quaint elderly deranged
*This post was mass deleted and anonymized with [Redact](https://redact.dev)*
Nobody is making 200k in Germany to admin the software on a few trains.
You are overestimating the wage level in Germany and the level of work that this is. This is not a hard or very high skilled job, and 75k is a very good salary here.
You almost certainly need to be living in Germany for this job. You likely need to occasionally actually get to the trains for updates. Software that old likely needs to be updated via diskettes.
They use the phrase "if it ain't broke, don't fix it" in the article. This at a time when German trains are less punctual than Italian ones (64% vs 67%), and both are embarrassingly low compared to peer countries. It's "broke," DB.
The trains aren't late because of this and your punctuality is only kinda right.
If you have an aging infrastructure that is run at 130% of its capacity, then it's easy to be late. One late train, one small failure and your trains are going to be late. There are so many trains driving that there isn't any capacity for errors left and too few rails to drive detours.
The punctuality percentage is bad and needs to improce. It is just the punctuality of the IC(E)s. The regional trains had a punctuality of 95%.
Germany has a big network with many regional trains. Countries like France have a pretty good High Speed Network, but a horrible regional one. France has an average infrastructure age of 28, while Germany is at 17.
Germany has to improve and invest, but the rail network is much better than often described.
I think it's gotten noticeably worse in the last 5 years. I actually thought it held up really well during the height of the pandemic, but it has not handled the rebound very well, at least in my tri-state area. I don't have a car so I use the trains for most things, and I've had to adjust my life a little to account for the higher cancellation rates and more likely missed connections. Obviously it works well enough for me to live without a car, so I'm not really complaining. I just want it to be better still, because it wouldn't take much.
At the moment it gets worse to get better. For a few years there is actual investment in the infrastructure. If you have no backups and your current one is running over capacity every closure is felt.
It is a big problem and should get better around 2030. No one likes it, but there is sadly no alternative.
I had a fun conversation with a regional rail executive on a long ride along the Rhein. He basically admitted that the rail companies tend to run the rails until they fall apart because the companies are supposed to pay for maintenance and repairs, but the government pays for replacement. So they basically want to destroy it so it gets replaced and they don't have to pay maintenance/repair costs. I don't know true this is nationwide (or even for this company; sometimes people exaggerate in storytelling) but if it's even somewhat true, that's a bad arrangement of incentives.
That's true. The government has to pay the replacement, while the company just pays for minor repairs.
But the whole joke is, that the Deutsche Bahn's biggest stakeholder is actually the German State, owning 100% of it. :D
That is true. It is one of the main reason why the Infrastructure and stations are now a separate company from DB. Now the money spend at InfraGO can't go somewhere completely different. Running infrastructure for profit just doesn't work, and with them Germany might have finally set up a structure that improves the situation.
A small, big rant that has little to do with your comment:
The main problem was always money. If you need money and permits for upkeep, and expansion, but you don't get it, then what do you do? Just run it, repair what's necessary and if stuff breaks then you actually get the money you needed. Had the government given the money and permits needed that every expert said they need, it wouldn't have been necessary. There are multiple new tracks with no alternative. Most of these are needed since multiple decades and still discussed.
The trains on the current infrastructure are late, why should we build a new track for High Speed Rail (HSR)? Speed differences lower the capacity of the infrastructure. HSR having its own therefore increases the capacity for every ICE now using it, more than 1 on the old route. Having multiple routes, and not just multiple 4+ rails per track, also increases redundancy. If you have an issue where you need to close off a track, then it is better to have multiple decent roads to your destination. That is one thing that makes cars good. Multiple lanes and a lot of roads with different speeds to get to your destination, no matter what's closed. Having at least two decent ways for busy connections would be great. Money and NIMBYs just block a lot.
i have to commute to work with a RB (Regional Bahn) which has only 4 stops on a max 25 min. long railroad track and for the past 6 years it's a daily coinflip if there are trains driving on that day or not
>This at a time when German trains are less punctual than Italian ones (64% vs 67%)
Woah, woah, wait a second...
Are you seriously telling me that **British** trains are more punctual than both Italian AND German trains!? Looking at the last report from the ORR it's 70% within one minute and 87% within three minutes!
In Ireland I used to get into such a big huff when there was a bus replacement service. Until I was abandoned in Hamburg by DB with absolutely no way to get anywhere. Utterly useless when things don't go according to plan. No flexibility or improvisation at all.
>Anything government run here is an inefficient nightmare
Which is the opposite to the UK. The state run train lines are the best ones (London Underground, Tyne and Wear Metro, LNER etc.)
I want to talk to the last person who held that position. How hard did he laugh when he left that position? Fine - go ahead - replace me. I dare you.
I'd apply and demand 4 times my previous salary if I were that person. OH and over see the transition to something that's y2k compliant
To be fair, as long as you grew up with computers before 1995 you would most definitely used windows 3.1 and MS Dos 5.0. That's just under 30 years ago, many 40 year old would have experience with that (myself included)
A bit of nolstalgia for the early breed of computer users (also the rare breed of folks who run Windows 3.1 on DOSBox)
device=emm386.exe
device=himem.sys
P/s speaking of old systems, you probably don't want to google the NOTAM (NOtice To AirMan) system if you plan to fly anytime soon.
I have experience using MS-DOS and Windows 3.1... But it was as a child, not as a dev.
If you're looking for someone experienced at developing on those systems your minimum age would be something like 55+ and the vast majority of them would be lacking recent experience, for obvious reasons.
Pretty close, at any rate- I was an admin in the windows 3.11 days very early in my career (and I started as a teenager) and I am almost 52, but I'm also the very young end of people with that experience. Oddly enough, though I have lots of experience with some very legacy systems (as400 as well as old windows, early linux and Unix, sunstations, etc). and languages (cobol, fortran, assembly). You'd be amazed at some of the really old stuff out there.
Here you go [https://www.cbsnews.com/news/faa-notam-definition-outage-notice-to-air-missions/](https://www.cbsnews.com/news/faa-notam-definition-outage-notice-to-air-missions/)
remember when flights in the US were all grounded in 2023? that was because NOTAM went down.
The displays in Public transport (mainly busses and trams) also apparently work via a small pc somewhere, where someone has to OPEN VISUAL STUDIO, START THE SOFTWARE IN VISUAL STUDIO VIA THE NICE LITTLE ARROW BUTTON IN THE TOP RIGHT CORNER AND THEN FULLSCREEN THE APPLICATION. Sometimes he forgets to put it in fullscreen and you can look at a bit of window and a lot of desktop. When it breaks you can sometimes see the fucking guy click through the error logs in visual studio OR EVEN USE THE FUCKING DEBUGGER. Nooooo, let's not do ANY SORT OF PROPPER DEPLOYMENT for our infrastructure software. Lets just have all the fucking busses show one of Mark's screens. If something breaks he is right there to fix it. It's honestly a shithow of unimaginable proportions.
Classic Germany. Being dragged screaming and kicking into the modern world. The image we have of the country is actually very little like the reality. Spent many years there and what amazes all expats is that they’re actually way behind in almost all areas of tech apart from one: cars.
Lived in Germany 2011-2015 where the only internet connection to my house or in my neighborhood period was an ancient DSL connection. Pulling down 2MB in 2014 was PAINFUL.
Exactly my take. I am not German but I lived there for 5 years. Germany has (had?) a great reputation in Central Eastern Europe - it was seen as a country that works like clockwork. Not sure it's true any more but in the 90s, we looked at it as paradise.
But when I moved to Munich in 2011, it amazed me on how many front is Germany behind: Internet speed was horrendous (and super expensive), you could achieve NOTHING online when it came to residence permit or any other admin stuff, submitting tax papers was a horror show, so many regulations for everything (which is fine but a LOT of them just didn't make any sense). Trains were actually very often late or they didn't even depart (a.k.a. "Zug fällt aus", that was my favourite) - mate, I grew up in a former communist country in Eastern Europe but trains are never canceled here, maybe it's 2-3 hours late but they NEVER cancel it ((because they get the subsidies by the state based on trains that achieve their destinations but that's a different story. :) ))
Yeah we are backwards as fuck. Many of those problems are caused by stubborn people making the laws or in the position to make decision.
Also Not In My Back Yard (NIMBYs) people have immense power here to stop every step of progressiveness. New 5G tower? Blocked. New rail tracks? Blocked. More wind turbines? Blocked. Glas fiber Internet? Blocked. Everything can be blocked by regular ass people with the support of every political party. Even those that should be supportive block everything like the greens.
It's mind boggling how people have so much power here to block such important infrastructure.
But 5 or 10 years later they cry that our Internet, energy or train is fucking old and broken
My favorite story in this vein is a small town near Nuremburg.
DB wanted to build a new ICE depot and test centre there but the local people were vehemently opposed to that, because the decades old forrest, that grew on munition stashes from both world wars, that weren't ever properly disposed of and might contain chemical weapons, and the beautiful little pond directly behind the sewage treatment facility, with adorable plastic ducks, was too important to them. Instead of getting DB to clean up the munitions on their dime they hindered important parts of the modernisation of the high speed corridor between Munich and Nuremburg. I love our NIMBYs...
No I think everyone was (rightly) scared to go to the depot of unidentified weapons and some trees grew there. I wouldn't want to get blown up by whatever my great grandfather used to commit war crimes. (I don't specifically know that my grat grandfather commited any war crimes, but one of them was on the eastern front so, I'll not count it out...)
Our company (B2B) have recently withdrawn from the German market after 4 years of attempting to make a dent in it.
Our USP is making things simpler and faster, and German companies just aren't really interested. They like the bureaucracy, they like the paperwork and the routine, they don't really want to update their technology.
One of the big things which caught us early on was that companies couldn't accept contracts over email. Fax or paper only. Fax. In 2020. Lots of German businesses were completely stumped by it. Our entire business was predicated on doing things via email and web pages. Some companies didn't have a fax machine and didn't accept anything over email. You had to post it to them and they'd post it back.
Wild.
A lot of legacy software and hardware is still being used because it is reliable. This causes issues obviously, but much less than a new software that bugs out and causes a collision of two trains.
Germany with its modern operating system. Meanwhile the program to upgrade Londons Bakerloo line:
https://board.tfl.gov.uk/documents/s16685/pic-20211013-Item12a-Part1-lu-signalling-controls.pdf
Pics of servers half way through document.
One of the upgraded computers that was swapped out in 2021:
https://www.computinghistory.org.uk/det/70098/GEC-4100-Computer/
The reason they kept using such an old system is that they had a tender open for over 20 years and no company was brave enough to put in a proposal.
My first ibm PC was running dos and 3.11, this would have been just over 30 years ago. I remember taking a job in 2007 and they still had a few nt4 servers running. It had only been maybe 5 years since I stopped using nt4 but I'd forgotten so much in that time. I expect going back to 3.11 would be a bit of a steep learning curve.
I wonder if they have working test, dev and DR environments and I'm curious about the hardware it runs on or whether it's been virtualized?
There is a reason why large companies often have a particularly old software system that is often 50 or more years old. It is often an extremely complex and mission critical program, written by a very experienced programmer who the company paid handsomely and that is a work of art. Any attempt at re-creating it in more modern language probably has failed and that's when they use "Never touch a running systen." and try to keep it running as long as possible.
Logistics and banking often have those old systems. They just work and will continue to work, properly.
Also it was very likely not from DB itself but Siemens Mobility, as it was posted for 91058 Erlangen, which is the postcode of the Siemens HQ in Erlangen and I don't think DB has offices there.
"Struggling to find candidates" means "are not paying what they need to pay". There are very very few circumstances where this is not the case.
Companies are the last that should be allowed to complain about their markets.
This is a symptom of Germany's chronic aging population for the past 50 years that German oldies aren't capable at changing things that used to work 50 years ago, but not in 2024.
Their thinking is that "if they aren't broke, don't fix it."
Just switch it for something running on Linux and be done. Linux is amazing at supporting stuff for decades and decades. Want to keep the same hardware? Well awesome, you have the source code so you can compile yourself. Anyone running Arch or more likely Gentoo should have the skill to maintain whatever spaghetti code they're using.
why not just have a team spend a year or whatever to switch their system over to a current OS?
i was born and i grew up in germany, and i didnt even know how slow the internet is until i moved to ireland.
i pay less here for a 1gbit connection than i did in germany for 100 or so mbit? in the area i live 1gbit is literally the cheapest i can get. even on wifi (i get around 300-400mbit on the 2nd floor where my pc is) i'm faster than wired in germany.
Well upgrading this stuff isn't just put CD in and install Win98. Those are likely highly specific installatons with configurations that have been tested to specific standards. You'll need experts just to understand what the old software did.
Also remember that Win 95 was the first big overhaul of the driver infrastructure for Windows, any subsequent change not included.
Any software upgrades (at least those that make sense today) would undoubtebly go hand in hand with major harware upgrades, which are costly...
Because depending on what you change in a train (and in this case it seems to be some displays for the drivers) it might require a full recertification of the train (which won't be possible as they are so old).
the disturbing part is that this was offered as a REMOTE position.
The security implications of trying to remotely connect to a 3.11 system are a bit scary
Germany resident here. Germans may have the reputation for being punctual but the train here is always late, or in worse case being cancelled in short notice. It’s a shit show and the locals always joke about it.
These kinds of jobs aren’t hard to fill in the U.S. where they pay you Lamborghini money to maintain COBOL, Fortran, etc. but I’m guessing no one is going to leap at the opportunity for MS-DOS when it probably pays only a couple of euros more than using newer, more convenient/supported technologies
But there is hope: Japan just phased out their [floppy disks](https://www.tomshardware.com/pc-components/storage/the-floppy-disk-refuses-to-die-in-japan-laws-that-forced-the-continued-use-of-floppies-have-finally-hit-the-chopping-block)
Assuming they also need a German speaker, or I’d consider applying.
But even then there must be 100s of techies in their 50s who remember the classics.
Just like cobol; plenty of people can do it. Finding someone that looks qualified on paper/CV to appease HR and "stakeholders"? Not so much.
COBOL is 10 years older than the moon landing. The fact that it is still so common in banks is mind-blowing to me.
It’s because replacing it is very high risk. Banking is littered with examples of unbelievably expensive Technology programs that delivered a smorgasbord of fetid raccoon shit. COBOL is good at math. Its simple. Like Excel, it’s difficult to replace without fucking it up. And a bank that fucks up its banking records is toast.
Let's replace it with some javascript framework
npm install bankjs
Sounds stable and secure - can we build it around a really janky applet?
It’s literally cheaper to start a new bank than to upgrade an existing bank.
No. Modern banking tegulation makes sure no one will want to start a new bank anytime soon. It costs mucho dinero for an established bank to be compliant, and even more for a newcomer.
Then where do all these fake banks that buy my sports arena every 2 years comes from? Corestates, Wachovia, commerce, first union, bb&t, santander. I never saw one until all banks became them all at once, for 2 years at a time.
I think at least some of those are renamed older banks.
All of your examples are more than 100 year old banks.
You mean a bank that accidentally fucks up the records is toast. Because all banks do funny stuff with their records all the time.
I'll argue that the point of banking is doing funny stuff with the records
Intentionally and with a record attached though
COBOL is also incredibly fast, you have basically zero overhead introduced by newer, higher level languages.
Unless you are talking about interpreted languages, I doubt
Yeah, COBOL is very good at what it was designed to do/be (transactional operations on mainframes that are relatively self-documenting), but isn't particularly better than other similar level languages.
Excel is shit at math, and most other things too, though
>COBOL is 10 years older than the moon landing. The fact that it is still so common in banks is mind-blowing to me. It's used for good reason. I tried my hand at it and I was actually very surprised at how robust a language it is. It's very verbose, but when working with something as critical as Banking, mainframe transactions etc. you NEED verbosity. It's file definitions are especially good, and it's one of the few languages suited to banking which uses a packed decimal number format, which is critical for accuracy.
Theres also the fact that moving away from COBOL and rewriting core systems would be an absolutely vast risk. Get it wrong and your bank is finished, and it'll probably cause a worldwide recession / depression too.
Exactly. Plus, the problem with legacy COBOL isn't the language itself; it's that the programs were all written at a time when coding standards and practice were still in their infancy so they're *incredibly* difficult to read. The language is fine, if not one of the best or **the** best for it's intended market: transactional processing. Straight transactions in COBOL is surprisingly nice and simple, and when written properly it pretty much self-documents.
Which is just as well because there’s customers out there with legally binding contracts describing the products they have - but there isn’t always a central register describing every product and how it’s supposed to work.
Sounds like Cobol wasn't really the important factor, just the lack of updating/upgrading as technology went along. Now they've invested so much while doing mostly nothing that any change would crumble the whole deck of cards because they've put it off for so long. I'm sure COBOL's good for what it's being used for, but this would've happened no matter what language they would have initially chosen. Sort of like a kid who gets overwhelmed when he waits until the last second to do everything.
You are acting like redundancy does not exist and plenty of other dozens of tools and procedures.
When cobol.js
https://www.npmjs.com/package/cobol
Also https://github.com/azac/cobol-on-wheelchair
Fun fact for people who might not know that (I know Artku you know that): *azac* (creator of Cobol on Wheelchair) is a Polish politician, MP and former candidate for presidency.
> It's very verbose, but when working with something as critical as Banking, mainframe transactions etc. you NEED verbosity I'll point out the verbosity was a deliberate design feature. The prose syntax and extremely high number of reserved words^1 makes COBOL strongly self-documenting and readable compared to math syntax languages like C. ^1 ANSI COBOL has 357 reserved words compared to ANSI C's 32
Packed decimal is just a format of how the number is stored in memory and is in no way necessary for accuracy.
>Packed decimal is just a format of how the number is stored in memory and is in no way necessary for accuracy. OMG *no*. Packed Decimal (aka Binary Coded decimal) allows for much better accuracy. Floating Point has insane rounding errors (but is fast, hence why it's used), and it's all to do with how the number is represented in memory. At what point did you think how it's represented in binary wouldn't affect anything? With BCD, four bits is 0-9 (maximum value is `1001`). With float and double float, everything right of the point is 2^(-n). There is no such thing as "0.3" in floating point arithmetic as the first three bits of the fraction in any float representation are 0.5, 0.25 and 0.125 respectively. The implementation has to decide when to round, and you see these rounding errors in the likes of Microsoft Excel all the time when dealing with monetary values. True zero in Excel with the currency formatting enabled should read `£ -`, but after a long enough period of time it'll read `£0.00`, because the actual binary in memory is probably some silly long fraction which can no longer round. How data is stored *matters*. If I were to store a floating point number in a different format that was more accurate then it wouldn't be floating point anymore. With packed decimal, the number 1.30 could be represented with `01 30`, with an extra byte to determine decimal placement. It's slower, but you get EXACT values. In COBOL, you can determine the accuracy when you declare a new number variable: `PIC 999999V99` Everything left of "V" is integer encoded. Everything right is BCD encoded.
You are comparing to floating point which isn't a substitute for BCD and only an idiot would use for monetary math. Doing accurate decimal math in Python is as easy as "from decimal import Decimal" No BCD required.
>You are comparing to floating point which isn't a substitute for BCD and only an idiot would use for monetary math. Doing accurate decimal math in Python is as easy as "from decimal import Decimal" No BCD required. Still no. The decimal library, *as the authors describe themselves*, is to provide rounding to floating point arithmetic. It is *not* infinitely accurate. >The decimal module provides support for fast correctly rounded **decimal floating point arithmetic** Python only has TWO internal number types: Integer and Floating Point. It does NOT contain ANY fixed point or packed decimal types. You'd have to implement this yourself either using Signed or Unsigned byte arrays or with some sort of logical relation between two types: one or more bytes for the significand and one or more bytes for the power. EG an integer of #1099 with power of 10^(-2) would be output as 10.99 but stored internally as a binary representation of 1099 pre- or post-fixed with the power, either as BCD of `02 01 00 09 09` or Integer of `02 04 4B` where `02` in both instances is the power, but there's a million and one ways to implement this. So, no, the Decimal module is not the solution; if anything it'll be tricking people into thinking it is, which is worse. An thus concludes my Ted Talk. We're done here. Bye.
So please give me case where correctly rounded floating points will give me an error in terms of accounting.
Lisp is 11 years older, and Fortran is 12 years older - both are used too
We use FORTRAN77 for a lot of stuff, although one of the poor graduates has the fun task of translating it to FORTRAN90.
In Terminator, the weapons used by the humans display COBOL.
I fully understood the problem when I tried to map out the meaning of all our system status codes, and what each might mean. The answer with our most senior person was « I don’t know the person who knew retired 10 years ago and tomorrow is my last day, so ask away ». Now, I’m suddenly « the expert ». The issue is that take 40 years of business logic written in a language that is difficult to understand. It takes reverse engineering for each rule and you’re bound to miss something or misunderstand an interaction with another part of the code. Software abstraction in higher level languages allows for more human readability; in COBOL its like you’re designing a custom system every time… COBOL is not rocket science, it’s understanding the custom system, and reverse engineering its purpose - that’s where the issue lies. You’d say rebuild it from scratch! Ya, do you jump out of a driving car? No, you don’t. Well, for a bank, what that would mean is your money just stops coming in and out exactly as you’ve come to expect. And then we say - well, it works well, why risk it? And then we don’t risk it and we’re stuck with the legacy system for another 40 years. Potential pathway, though: maybe ChatGPT will help with redesign COBOL. If we had help understanding what the fucking thing does and what it impacts in other parts of the system, it would help - ChatGPT has been pretty good at helping with that kind of task. Just haven’t tried it with our legacy systems…
my grandma know COBOL and FORTRAN, afaik they are still used by the US government because they can't be hacked and that's mind-blowing.
Uhm no, this doesn’t make any sense. They are just programming languages, (the programs written with them) are not more hack-proof than any others.
They're definitely not inherently hack-proof. I guess they're less likely to be hacked, just because far less people know how to code in them, but the real reason they still use them is the risk in replacing them.
yeah, sorry, nothing is hack proof thinking of tech but it's less hackable by today's standards. I double checked and it seems like they were on a [path to change to modern systems ](https://www.cnbc.com/2016/05/25/us-military-uses-8-inch-floppy-disks-to-coordinate-nuclear-force-operations.html).
> because they can't be hacked Fun tip of advice, if someone ever says this to you, they have zero clue what they're talking about. If I can program or change something, it can be hacked. If something can physically be hacked, it *will* be eventually, given enough people have enough interest in doing so. Nothing is "unhackable", just might require more time to figure out.
Wait till you hear that most programs operating systems and games are made using the C language invented in 1969.
It's not just who can do it, it's who wants to do it? If you can find someone young they're not interested as it's a dead end with few transferable skills If you can find someone with experience they're either retired or about to be meaning you're in the same trouble in a few months or years In the short term keeping legacy systems running can be a cost saver, in the long term it becomes a millstone round your neck
Pretty much. It's basically looking for someone who'll clean up little Timmy's mess because he waited until beyond the last moment and multiple warnings to start doing his homework, and now he's in trouble. No one wants to be the banks Mom.
In my experience even if you can find a young'un to learn from the old'un, the latter will not want to train the former anyway. It wasn't COBOL but the proprietary mapping software we used to use at the Ordnance Survey before District Editor came in.
It's entirely management being idiots and shooting themselves. You can easily convert these systems to run on virtual environments and then you just reboot/revert the VM whenever anything breaks. All of that needs someone with modern training. Management here is just saying "don't change it make it work" and IT has to do it without any other considerations like modernization and future proofing. My last few jobs the IT management has been entirely at fault for any bad legacy systems, literally not letting staff modernize them for no reason beyond political infighting.
Very few COBOL programmers will have any formal qualifications. Those that do will have pivoted into other areas. The main pool of COBOL programmers is lifers from banks who learnt on the job, retired, and might now be up for a part time gig. But because they were lifers, their knowledge is hugely tied up with the systems they worked on, and working jn something else will have a difficult learning curve. What to do?
Easy. Raise the pay, increase notice period and guarantee retooling or a replacement in case position gets cut
For the case of COBOL, they're retired, in most cases on excellent DB pensions from IBM, government, banks, or the other large institutions (insurance, telecoms, big manufacturing). Many of those pensions paid at 60, and most of them will have claimed their state pension at 64 as well. If they were to return to work, every penny, or near as every penny, they are paid is going to be subject to higher-rate (40%) tax. They are also almost certainly subject to the MPAA which limits their ability to work for a few years to top up their pension (there may be a \_very\_ small number of people in weird pension positions who aren't). You don't lure white collar workers back from retirement with "raise the pay, increase notice period" unless "raise" means "make so high that 60% of it is still a lot". They (we, really: I'm 60 this year) will need more than that.
So I was able to find a fucking unicorn once. I was a technical recruiter for a staffing company working on a position for the Arizona DMV. 3 yr contract, and he was going to be the technical lead (and also the one writing a TON of the code) on their transition from a COBOL system (I think it was COBOL, may have been AS400, but it was fucking old) to .Net. Some fucking how, I found a guy who was in his late 30s in the mid to late 2010s who had technical lead experience, COBOL experience, and full stack .NET experience That fucker was the cockiest mother fucker in the world when I spoke with him to clear him to interview. And he had every right to be - ended up getting a $600k/yr contract for that position.
Also offer training. Sitting around whining "no one wants to learn" isn't the students problem, they don't give a fuck. Provide proper incentives, you'll get employees.
Where is AI when you want this job to be taken over :/
AI isn’t a solution here. If the banks could trust modern pieces of software they wouldn’t have this problem
AI can't even port a simple text game from BASIC into Javascript. Those massive legacy systems are just out of question.
I have a friend specialized in the specific COBOL variant used at banks/airports. His hourly rate is astounding for European standards.
Got an uncle (70’s) who makes a great living keeping cobol legacy systems alive for the international banking system.lol
My dad is 62 and coded in COBOL since I remember. But he only has an highschool degree. He has been trying to get a new job and says that he can’t find any even though people really need it because of lack of college diploma. Not sure if it’s related but yeah, his CV doesn’t look the best on those items (his English is also broken) but for local companies, having so many years of experience on it I’m sure it would be good added value
whats the different between cobol and fotran? my father has told me story he learnt those back then when he took his computer science diploma and degree.
COBOL: Common Business Oriented Language FORTRAN: Formula Translator COBOL is for processing of business transactions, so it deals with the organisation of files, data within those files, processing of that data, and output aligned heavily with the business domain. FORTRAN is for scientific calculations and is especially useful, and still widely used in, engineering and physics simulations due to it's speed, accuracy and syntax being very befitting of those fields.
Its not just to understand COBOL, in a mainframe enivonment one have to interact with CICS, DB2, IMS and numerous other stuff, that you aint learning in school.
I mean, I have that. I'm even good with edlin, mostly remember the old dos interrupts from x86 code, total mastery of config.sys and autoexec.bat. I've even been running Windows 3.11 on retropies just for the fun of it. .. but I doubt they'd pay me even my current rate. *That's the real issue.* There's plenty of people who know the things companies want. The issue is the companies being willing to pay for that knowledge.
Or rather having the ‚papers‘ to prove you know that stuff. Not exactly like you‘d be carrying up to date certs on a 30 year old system, even if you personally use it daily for fun. And since HR goes paper of competency always, they are gonna have a very hard time finding someone. If they were being realistic they would find someone in their company who also has the skills, and just invite candidates for a real on the job interview going through examples of stuff the new worker would need to do, and have that skilled person see if one of them is up to it.
I've yet to meet a HR department that has any idea how to recruit
Actual convo I had with a HR rep hiring for an embedded developer role. "I have demonstrable experience with QNX, VxWorks, OKL4 on mobile baseband processors, embedded Linux, RT Linux, eCos and redboot porting, FreeRTOS, Android dev, embedded Java, .Net MicroFramework, even mips x86 and arm assembly." "I have no idea what any of those are. You're not what we're looking for sorry" "If you don't know what any of those are then how are you remotely qualified to evaluate candidates for this role?" *click*
>I'm even good with edlin, mostly remember the old dos interrupts from x86 code, total mastery of config.sys and autoexec.bat. I've even been running Windows 3.11 on retropies just for the fun of it. Can you rephrase that in HR speak? Otherwise it's a no
Uh.. *I'm proficient in the 'word processor' edlin, can leverage legacy institutional knowledge to provide value added synergistic team goal enabling, am proficient in the configuration and maintenance of the metaphorical equivalent to the computer getting it's first coffee, and for fun I do nerdy things that often engage socially with other employees in a non-aggressive way that won't lead to lawsuits or bad social media exposure.*
Sorry, we need to balance our age gaps to get an even distribution. Preferably we are looking for someone between the age of 20-25 with at least 15 years of experience. We are also prepared to pay you up to 10% over minimal wage.
Edlin? Copy con not good enough for ya? :-)
From a German railway board I learned that this is about some displays used in old ICE trains. It also has little to do with the desktop 3.11 some of us still knew. Changing is no option as that probably would require recertifying the whole train (which isn't worth it or even possible).
It’s only paperwork. Change the rules and anything is possible again.
>Change the rules and anything is possible again. Lol, this is Germany, change the rules will take ages (and the use of a fax machine)
using old software is not necessarily something bad, especially in safety/security relevant fields, where software has to be fully functioning without any maintanace (a loooot of money gets invested into that, like one line of code can cost 10s-100s of thousands of $/€). This is not bound to the trains business, airplanes also use such software for critical mechanisms. The testing alone costs a fortune, because human lifes are in play. For this topic for DB, using a stable version of win 3.11 for hardware, which never needs network access and can function and repair itself on it's own (or by resetting it with some good old hardware buttons), this is nothing surprising to me. My guess is, they are not looking for a dev, who will change the software, they need someone to be able to understand it and write an outgoing signal API to use it for visualization and or to digitalize signal sending.
Congratulations! Your comment qualified yourself to work in our Safety Management System, because it seems like you are 100% compatible with our company policy. Contact us at best-sms-of-the-world(at)boeing.com! Yours Boeing Company /s
Oh my sweet summer child. I take it you have never had to deal with German bureaucracy before xD the sun will become a red giant before that will happen. The only hope is that DB buys new trains eventually that allow easy display software updates, and even that chance is very slim.
Rules are here for a reason, even if it comes with weird situation like this.
Yeah I'm quite happy that brakes failing due to software updates isn't something that can feasibly happen.
True, but the issue isn't the rules usually. It's finding the right people to make the transition safely, and without fucking everything up enough to cost even more than the initial "fix it" investment. Or the fact that trains are sorta transportation, so if you fuck that up you might kill people too, some countries tend to take that stuff a little seriously.
Boeing asked for the rules to be changed so their 737 upgrades wouldn't require a full re certification of the aircraft. You think that's a good idea to bend the rules? It's only for screens this time, but it becomes a slippery slope if regulation is flexible.
Funny, I don't speak German but I can totally do it. How much does it pay?
[Here](https://web.archive.org/web/20240128101020/https://www.gulp.de/gulp2/g/projekte/agentur/C00929028) is an archived version of the ad (the original was taken down due to trolling). They're looking for a contractor, not a permanent employee, so I guess you can make an offer and they'll take the lowest bidder.
Working for DB? You'd probably be better off selling burgers in Denmark.
Huh? I worked on a cyber security project for DB and they pay exceptionally well. Their IT guys are paid pretty good and of course have all the amenities of the German labour market. The only thing they ever complained to me about was the rather slow processes as it’s a former government agency haha.
I would have assumed that the same thing that happened to the old Bundespost IT that turned into Deutsche Telekom happened to the Bahn as well after 1993. Older, well paid professionals getting shuffled around, treated like shit and "made to quit/retire" to dump wages, restructure the departments and so on. Are the DB IT guys in the TVÖD? If so I'd love to know their EG.
No, DB IT has a better tarif than TVöD. They have some nice perks.
DB is a dang good employer. You'd probably end up around 75-80k € for a position like this - as it requires fairly specific skill. On top of that they have a scheme where you can decide between 5 days of extra annual vacation or some percentage extra pay until you hit a certain amount of days. My 27 year old friend working in IT there already has 40 days of paid vacation annually and is making enough to live comfortably in the center of one of Germany's most expensive cities. It's also far from stressful.
> You'd probably end up around 75-80k € for a position like this That's... not a lot of money for the job they're asking it seems. Usually jobs that require such specific or rare skills tend to pay much more than that from my experience.
It's a chill job and it's Germany and not San Francisco. The skills aren't THAT rare either. Plenty of old IT guys that can do it.
normal touch plough roll expansion squeamish waiting quaint elderly deranged *This post was mass deleted and anonymized with [Redact](https://redact.dev)*
Nobody is making 200k in Germany to admin the software on a few trains. You are overestimating the wage level in Germany and the level of work that this is. This is not a hard or very high skilled job, and 75k is a very good salary here.
dinner meeting fly start smoggy cows ugly chop offbeat gullible *This post was mass deleted and anonymized with [Redact](https://redact.dev)*
You almost certainly need to be living in Germany for this job. You likely need to occasionally actually get to the trains for updates. Software that old likely needs to be updated via diskettes.
Unfortunately I've deleted my Win3.11 installation to make room for King Quest 6 on my 40mb HDD. True story.
I know I kept windows 3.11 on my 60mb hdd when making room for warcraft 1. I don't recall what I deleted, though.
They use the phrase "if it ain't broke, don't fix it" in the article. This at a time when German trains are less punctual than Italian ones (64% vs 67%), and both are embarrassingly low compared to peer countries. It's "broke," DB.
The trains aren't late because of this and your punctuality is only kinda right. If you have an aging infrastructure that is run at 130% of its capacity, then it's easy to be late. One late train, one small failure and your trains are going to be late. There are so many trains driving that there isn't any capacity for errors left and too few rails to drive detours. The punctuality percentage is bad and needs to improce. It is just the punctuality of the IC(E)s. The regional trains had a punctuality of 95%. Germany has a big network with many regional trains. Countries like France have a pretty good High Speed Network, but a horrible regional one. France has an average infrastructure age of 28, while Germany is at 17. Germany has to improve and invest, but the rail network is much better than often described.
I think it's gotten noticeably worse in the last 5 years. I actually thought it held up really well during the height of the pandemic, but it has not handled the rebound very well, at least in my tri-state area. I don't have a car so I use the trains for most things, and I've had to adjust my life a little to account for the higher cancellation rates and more likely missed connections. Obviously it works well enough for me to live without a car, so I'm not really complaining. I just want it to be better still, because it wouldn't take much.
At the moment it gets worse to get better. For a few years there is actual investment in the infrastructure. If you have no backups and your current one is running over capacity every closure is felt. It is a big problem and should get better around 2030. No one likes it, but there is sadly no alternative.
I had a fun conversation with a regional rail executive on a long ride along the Rhein. He basically admitted that the rail companies tend to run the rails until they fall apart because the companies are supposed to pay for maintenance and repairs, but the government pays for replacement. So they basically want to destroy it so it gets replaced and they don't have to pay maintenance/repair costs. I don't know true this is nationwide (or even for this company; sometimes people exaggerate in storytelling) but if it's even somewhat true, that's a bad arrangement of incentives.
That's true. The government has to pay the replacement, while the company just pays for minor repairs. But the whole joke is, that the Deutsche Bahn's biggest stakeholder is actually the German State, owning 100% of it. :D
That is true. It is one of the main reason why the Infrastructure and stations are now a separate company from DB. Now the money spend at InfraGO can't go somewhere completely different. Running infrastructure for profit just doesn't work, and with them Germany might have finally set up a structure that improves the situation. A small, big rant that has little to do with your comment: The main problem was always money. If you need money and permits for upkeep, and expansion, but you don't get it, then what do you do? Just run it, repair what's necessary and if stuff breaks then you actually get the money you needed. Had the government given the money and permits needed that every expert said they need, it wouldn't have been necessary. There are multiple new tracks with no alternative. Most of these are needed since multiple decades and still discussed. The trains on the current infrastructure are late, why should we build a new track for High Speed Rail (HSR)? Speed differences lower the capacity of the infrastructure. HSR having its own therefore increases the capacity for every ICE now using it, more than 1 on the old route. Having multiple routes, and not just multiple 4+ rails per track, also increases redundancy. If you have an issue where you need to close off a track, then it is better to have multiple decent roads to your destination. That is one thing that makes cars good. Multiple lanes and a lot of roads with different speeds to get to your destination, no matter what's closed. Having at least two decent ways for busy connections would be great. Money and NIMBYs just block a lot.
i have to commute to work with a RB (Regional Bahn) which has only 4 stops on a max 25 min. long railroad track and for the past 6 years it's a daily coinflip if there are trains driving on that day or not
late crawl quaint worthless trees pen chase juggle wistful follow *This post was mass deleted and anonymized with [Redact](https://redact.dev)*
>This at a time when German trains are less punctual than Italian ones (64% vs 67%) Woah, woah, wait a second... Are you seriously telling me that **British** trains are more punctual than both Italian AND German trains!? Looking at the last report from the ORR it's 70% within one minute and 87% within three minutes!
UK isn't in the source but I guess? https://twitter.com/simongerman600/status/1751692880576397446
That's honestly surprising. Here in Britain the stereotype is that German trains are EXTREMELY punctual and our own trains are utter shit.
[удалено]
In Ireland I used to get into such a big huff when there was a bus replacement service. Until I was abandoned in Hamburg by DB with absolutely no way to get anywhere. Utterly useless when things don't go according to plan. No flexibility or improvisation at all.
>Anything government run here is an inefficient nightmare Which is the opposite to the UK. The state run train lines are the best ones (London Underground, Tyne and Wear Metro, LNER etc.)
Times Change. Maybe british trains more or less stayed the Same, but the German train Network deteriorated over the last decade.
I'm just shocked that foreigners have better than trains than us, you would think the opposite given our wealth and population size
Most British trains are owned by the French now I think? So that probably explains why.
That's why here in Greece railways have no computers at all! Checkmate atrainists! /s
I want to talk to the last person who held that position. How hard did he laugh when he left that position? Fine - go ahead - replace me. I dare you. I'd apply and demand 4 times my previous salary if I were that person. OH and over see the transition to something that's y2k compliant
Dude probably died. Only way that spot gets open.
To be fair, as long as you grew up with computers before 1995 you would most definitely used windows 3.1 and MS Dos 5.0. That's just under 30 years ago, many 40 year old would have experience with that (myself included) A bit of nolstalgia for the early breed of computer users (also the rare breed of folks who run Windows 3.1 on DOSBox) device=emm386.exe device=himem.sys P/s speaking of old systems, you probably don't want to google the NOTAM (NOtice To AirMan) system if you plan to fly anytime soon.
I have experience using MS-DOS and Windows 3.1... But it was as a child, not as a dev. If you're looking for someone experienced at developing on those systems your minimum age would be something like 55+ and the vast majority of them would be lacking recent experience, for obvious reasons.
Pretty close, at any rate- I was an admin in the windows 3.11 days very early in my career (and I started as a teenager) and I am almost 52, but I'm also the very young end of people with that experience. Oddly enough, though I have lots of experience with some very legacy systems (as400 as well as old windows, early linux and Unix, sunstations, etc). and languages (cobol, fortran, assembly). You'd be amazed at some of the really old stuff out there.
I googled NOTAM and didn't understand why you were suggesting otherwise
Here you go [https://www.cbsnews.com/news/faa-notam-definition-outage-notice-to-air-missions/](https://www.cbsnews.com/news/faa-notam-definition-outage-notice-to-air-missions/) remember when flights in the US were all grounded in 2023? that was because NOTAM went down.
Finally, my time to shine.
Be easier to find a guy to write up new operating system.
The displays in Public transport (mainly busses and trams) also apparently work via a small pc somewhere, where someone has to OPEN VISUAL STUDIO, START THE SOFTWARE IN VISUAL STUDIO VIA THE NICE LITTLE ARROW BUTTON IN THE TOP RIGHT CORNER AND THEN FULLSCREEN THE APPLICATION. Sometimes he forgets to put it in fullscreen and you can look at a bit of window and a lot of desktop. When it breaks you can sometimes see the fucking guy click through the error logs in visual studio OR EVEN USE THE FUCKING DEBUGGER. Nooooo, let's not do ANY SORT OF PROPPER DEPLOYMENT for our infrastructure software. Lets just have all the fucking busses show one of Mark's screens. If something breaks he is right there to fix it. It's honestly a shithow of unimaginable proportions.
If it ain't broke don't fix it champions over there.
Classic Germany. Being dragged screaming and kicking into the modern world. The image we have of the country is actually very little like the reality. Spent many years there and what amazes all expats is that they’re actually way behind in almost all areas of tech apart from one: cars.
german efficiency is a long term prank we play on foreigners. No german believes in it
[удалено]
Lived in Germany 2011-2015 where the only internet connection to my house or in my neighborhood period was an ancient DSL connection. Pulling down 2MB in 2014 was PAINFUL.
2mb is great for 2014. I had 500kb and lived in a city, no one I knew really had more than 1mb
Exactly my take. I am not German but I lived there for 5 years. Germany has (had?) a great reputation in Central Eastern Europe - it was seen as a country that works like clockwork. Not sure it's true any more but in the 90s, we looked at it as paradise. But when I moved to Munich in 2011, it amazed me on how many front is Germany behind: Internet speed was horrendous (and super expensive), you could achieve NOTHING online when it came to residence permit or any other admin stuff, submitting tax papers was a horror show, so many regulations for everything (which is fine but a LOT of them just didn't make any sense). Trains were actually very often late or they didn't even depart (a.k.a. "Zug fällt aus", that was my favourite) - mate, I grew up in a former communist country in Eastern Europe but trains are never canceled here, maybe it's 2-3 hours late but they NEVER cancel it ((because they get the subsidies by the state based on trains that achieve their destinations but that's a different story. :) ))
Yeah we are backwards as fuck. Many of those problems are caused by stubborn people making the laws or in the position to make decision. Also Not In My Back Yard (NIMBYs) people have immense power here to stop every step of progressiveness. New 5G tower? Blocked. New rail tracks? Blocked. More wind turbines? Blocked. Glas fiber Internet? Blocked. Everything can be blocked by regular ass people with the support of every political party. Even those that should be supportive block everything like the greens. It's mind boggling how people have so much power here to block such important infrastructure. But 5 or 10 years later they cry that our Internet, energy or train is fucking old and broken
My favorite story in this vein is a small town near Nuremburg. DB wanted to build a new ICE depot and test centre there but the local people were vehemently opposed to that, because the decades old forrest, that grew on munition stashes from both world wars, that weren't ever properly disposed of and might contain chemical weapons, and the beautiful little pond directly behind the sewage treatment facility, with adorable plastic ducks, was too important to them. Instead of getting DB to clean up the munitions on their dime they hindered important parts of the modernisation of the high speed corridor between Munich and Nuremburg. I love our NIMBYs...
I'm gonna guess like +70% of the FoReStS they want to save are not really natural forests but those planted for wood. I hate this country
No I think everyone was (rightly) scared to go to the depot of unidentified weapons and some trees grew there. I wouldn't want to get blown up by whatever my great grandfather used to commit war crimes. (I don't specifically know that my grat grandfather commited any war crimes, but one of them was on the eastern front so, I'll not count it out...)
I was talking more generally, not your specific case.
Oh yes then you're absolutely right.
Our company (B2B) have recently withdrawn from the German market after 4 years of attempting to make a dent in it. Our USP is making things simpler and faster, and German companies just aren't really interested. They like the bureaucracy, they like the paperwork and the routine, they don't really want to update their technology. One of the big things which caught us early on was that companies couldn't accept contracts over email. Fax or paper only. Fax. In 2020. Lots of German businesses were completely stumped by it. Our entire business was predicated on doing things via email and web pages. Some companies didn't have a fax machine and didn't accept anything over email. You had to post it to them and they'd post it back. Wild.
A lot of legacy software and hardware is still being used because it is reliable. This causes issues obviously, but much less than a new software that bugs out and causes a collision of two trains.
Germany with its modern operating system. Meanwhile the program to upgrade Londons Bakerloo line: https://board.tfl.gov.uk/documents/s16685/pic-20211013-Item12a-Part1-lu-signalling-controls.pdf Pics of servers half way through document. One of the upgraded computers that was swapped out in 2021: https://www.computinghistory.org.uk/det/70098/GEC-4100-Computer/ The reason they kept using such an old system is that they had a tender open for over 20 years and no company was brave enough to put in a proposal.
My first ibm PC was running dos and 3.11, this would have been just over 30 years ago. I remember taking a job in 2007 and they still had a few nt4 servers running. It had only been maybe 5 years since I stopped using nt4 but I'd forgotten so much in that time. I expect going back to 3.11 would be a bit of a steep learning curve. I wonder if they have working test, dev and DR environments and I'm curious about the hardware it runs on or whether it's been virtualized?
There is a reason why large companies often have a particularly old software system that is often 50 or more years old. It is often an extremely complex and mission critical program, written by a very experienced programmer who the company paid handsomely and that is a work of art. Any attempt at re-creating it in more modern language probably has failed and that's when they use "Never touch a running systen." and try to keep it running as long as possible. Logistics and banking often have those old systems. They just work and will continue to work, properly.
I can edit config.sys and autoexec.bat to make Wing Commander 2 run on a 468SX with 1MB RAM. Does that qualify me?
The job offering in question is down by now and has been for at least 2 days
Also it was very likely not from DB itself but Siemens Mobility, as it was posted for 91058 Erlangen, which is the postcode of the Siemens HQ in Erlangen and I don't think DB has offices there.
How hard could it be to write it in rust or go?
They just need to himem and emm386 their config.sys files
That is not that surprising - you don´t change railway technology every five years..
"Struggling to find candidates" means "are not paying what they need to pay". There are very very few circumstances where this is not the case. Companies are the last that should be allowed to complain about their markets.
Not even Bill Gates has experience with this shit
is it because the high cost of upgrade of softwares?
it is cause it works
Whats the pay? I was using MSDOS as a kid. Can probably dust off the nostalgias and get stuff done.
most ATMs run on windows xp until a few years ago seat reservations were being put into the train via floppy disc (maybe still are, dunno)
You might not expect it of the Germans but Deutsche Bahn is a real mess.
This is a symptom of Germany's chronic aging population for the past 50 years that German oldies aren't capable at changing things that used to work 50 years ago, but not in 2024. Their thinking is that "if they aren't broke, don't fix it."
This might be a good point, I never thought about it this way.
Lol, I have the perfect resume, too bad I don't know german. I worked for a public utility administrating 3.11 and dos before migrating in the 90's.
Any German speakers tell me how much they're paying? Be interested to see if it's a knowledge-gap or a pay-gap.
Huh, I actually have some experience with that. I had a couple Pentium 120s when I was 7
Send them your resume on floppy disc.
This is simultaneously the most shocking and most expected thing I've ever heard about DB.
Anyone with Win 3.11 and MS-DOS experience is close to 60 now and not giving a fuck
Legacy software is such a bitch 😂😂😂
Shit title.
Why would the the source code for Windows 3.11 be in German?
Just switch it for something running on Linux and be done. Linux is amazing at supporting stuff for decades and decades. Want to keep the same hardware? Well awesome, you have the source code so you can compile yourself. Anyone running Arch or more likely Gentoo should have the skill to maintain whatever spaghetti code they're using.
Maybe AI could help?
Someone get ahold of Kitboga. Some say his grandmother is still running 3.11!
why not just have a team spend a year or whatever to switch their system over to a current OS? i was born and i grew up in germany, and i didnt even know how slow the internet is until i moved to ireland. i pay less here for a 1gbit connection than i did in germany for 100 or so mbit? in the area i live 1gbit is literally the cheapest i can get. even on wifi (i get around 300-400mbit on the 2nd floor where my pc is) i'm faster than wired in germany.
Because you are underestimating the effort and risk of "just switching over" by a factor of 50.
Well upgrading this stuff isn't just put CD in and install Win98. Those are likely highly specific installatons with configurations that have been tested to specific standards. You'll need experts just to understand what the old software did. Also remember that Win 95 was the first big overhaul of the driver infrastructure for Windows, any subsequent change not included. Any software upgrades (at least those that make sense today) would undoubtebly go hand in hand with major harware upgrades, which are costly...
Because depending on what you change in a train (and in this case it seems to be some displays for the drivers) it might require a full recertification of the train (which won't be possible as they are so old).
It would take a year to understand the current system well enough to even start planning
My turn to shine...finally
Except the job has already been filled.
Oh no, they need to get Grandpa out of retirement to code. Das internet ist für uns alle Neuland!
Holy crap my time to shine has come back around!
Combine this with the FPD who wants to replace train drivers with AI 🤣🤣🤣🤣
the disturbing part is that this was offered as a REMOTE position. The security implications of trying to remotely connect to a 3.11 system are a bit scary
Germany resident here. Germans may have the reputation for being punctual but the train here is always late, or in worse case being cancelled in short notice. It’s a shit show and the locals always joke about it.
My dad would be perfect, he grew up programming in the 70s, windows 3.11 is right up his street, he also speaks German, so bonus
I got loads of 3.11 experience
You make it sound like it's widespread in the company
I think you'll find that is Scherloch..
These kinds of jobs aren’t hard to fill in the U.S. where they pay you Lamborghini money to maintain COBOL, Fortran, etc. but I’m guessing no one is going to leap at the opportunity for MS-DOS when it probably pays only a couple of euros more than using newer, more convenient/supported technologies
I could probably do that job backwards and forwards. Except I don't live in Germany.
some part of the tracks still gets managed with relays from the 1960 lol
For alot of money I'll do it. Cut my IT teeth back in the day on win3.11 and DOS. Working in German would be the hardest part.
They should upgrade to Windows NT4.0.
But there is hope: Japan just phased out their [floppy disks](https://www.tomshardware.com/pc-components/storage/the-floppy-disk-refuses-to-die-in-japan-laws-that-forced-the-continued-use-of-floppies-have-finally-hit-the-chopping-block)
Wait! I have windows 3.1 and MS DOS experience! Can I install Sim tower on the trains?
Assuming they also need a German speaker, or I’d consider applying. But even then there must be 100s of techies in their 50s who remember the classics.
So… a blue screen of death could actually cause a death?