Hacker News new | past | comments | ask | show | jobs | submit login
Remote: Windows 3.11 Administrator (m/f/d) (gulp.de)
60 points by mfiguiere 7 months ago | hide | past | favorite | 49 comments



Interesting that Siemens seem to still be willing to support a Win 3.11-based system for at least one operator. That said, this looks like it's a third-party doing that work but Siemens must be tacitly allowing the third party to try to do so, as they'd have a complete stranglehold on the design, software and hardware underneath it.

I worked for a rail operator and the driver interface systems of our locos (from other suppliers) were running on WinXP. We wanted some changes and feature upgrades, but the supplier said it was obsolete and they would not do any code changes to the WinXP software. Instead, they were telling us to move to a QNX-based version of it (which came with all of the fun joys of ensuring feature and interface equivalence for both the system and the human-computer interfaces). This was even for old locos, where moving to the QNX-based system wasn't just about running the same front-end software on a different OS, but in some cases was a fundamental hardware design upgrade (i.e. moving from a dumb terminal with a rack of hardware in a cupboard to fully integrated computers in the dash), which then meant making it interface with other hardware systems that may not be designed to talk to it. In some cases, those additional systems had to be upgraded. It was well in to 8 figures of work to do.

I am surprised that Siemens have, in some degree, allowed ongoing support for this. Whichever operator uses it must be fairly big in order to bend them to still actively manage it.


>I am surprised that Siemens have, in some degree, allowed ongoing support for this. Whichever operator uses it must be fairly big in order to bend them to still actively manage it.

The ICE 1 and ICE 2 trains use this for their internal system. Deutsche Bahn will keep them running until at least 2029 (ICE 1) and 2030 (ICE 2).

A co-worker showed me a video of a display of the passenger information system that boots in MS-DOS and then restarts after it fails to load network drivers. BIOS from 1996 (166 MHz, 8 MB RAM). I guess they also need some people to maintain network drivers (and serial/parallel port drivers and the applications using it).

SIBAS is also used in Japanese and Swiss trains.


Oh Win 3.11 is a modern system compared to support PDP-11 until 2050. https://web.archive.org/web/20161022133810/https://vcfed.org...

(GE Canada tried to headhunt me for that but I don't want a job where a typo turns Toronto into a parking lot. Thanks but no thanks. I will stick to web pages.)


Oh man… PDP-11. It’s scary to ponder how much critical infrastructure runs on obsolete systems that a vanishingly small number of people understand.


Contemporary with the PDP-11 is the IBM Series/1 which runs the nuclear forces of the USA. The 8" floppies were retired in 2019 though. Progress? I guess.

Much older than that are the IRS Master files: the US tax system runs on IBM 7074 assembler although I think the actual 7074 hardware is long gone.


Presumably for something as expensive as the US nuclear weapons program, they could afford to hire and fully train 10x as many people as they need to be experts in externally-obsolete software/hardware and it just have the effect of a rounding error in their overall budget?

If that were cheaper, or considered more reliable or less hackable, than upgrading the systems to run on more modern technology then why not, as long as they look ahead far enough to make sure they fund the required tutoring to get the knowledge being passed down a generation or two, and do it before getting to the point where not having enough young experts actually has become a problem.


Can you give an example of modern technology that you believe would be supported or maintained in 50 years?


The PDP-11 was unusually well suited for that. They designed it so you needed less skilled workers to assemble it which meant a lot of tolerance in components which leads to much easier maintenance. For example, the backplane is wire wrapped so there's no soldiering there which can eventually tire out. If things move around, oh well.

Also the PDP-11 was designed at the time boundary of core vs semiconductor memory with the clear intent to be able switch to semiconductor which led to an unusually flexible design around memory (and also affected I/O design). Check this 1975 paper https://dl.acm.org/doi/pdf/10.1145/800110.803541


The tax system might soon be running on something more modern. Supposedly they are nearing the finish line on porting the whole stack to Java.


Nearing the finish line? https://crsreports.congress.gov/product/pdf/IF/IF12525

> One of the plan’s priorities is the retirement of the Business Master File by FY2027 and the Individual Master File by FY2028

But it's not at all clear whether there's funding available to execute this plan.

I mean, yes, it's been 15 years and now only about five remains (because these projects never meet deadlines, let's face it) so they are nearer the finish line ... but it's very far still.


Wow I remember my grandmother telling me about 8” floppies. Literally, my actual grandmother. Amazing that they were still in use up to 2019.


My grandfather worked with Marcell Jánosi https://www.inventingeurope.eu/knowledge/floppy-contradictio...


> Much older than that are the IRS Master files: the US tax system runs on IBM 7074 assembler although I think the actual 7074 hardware is long gone.

There HAS to be a project to feed the Master file(s) thru a modern AI to analyse and document the file(s).


You want to write documentation of something with significant legal repercussions using a probabilistic analyzer?

Your Honor, my client could not have committed tax evasion because these were the most likely numbers based on millions of tax reports analyzed.

Please, please do that in front of a judge, I will bring the popcorn.


An interesting scenario.

But I refer to the IRS's core executable code. Isn't the current state of affairs that it is code that is not well-documented, or not even documented at all ?

That's the impression I have gotten. Correct me if I am OTL.


What's the difference between AI documenting the system that makes decisions on the tax code and using AI to make decisions about the tax code? Nothing. I used this hypothetical scenario to highlight the absurdity and absolute idiocy of what you are suggesting.


I think number of such machines in developing countries is much larger then in developed.

In 80s, people said "it is good, that we don't have western infrastructure, because when become democracy and need it, will build all new from zero".

What really happened then, few waves of upgrades at West, when obsolete systems exported to developing countries very cheap.

But this is not whole picture. As First World is just about Billion humans (from more than 6 Billion at about Y2K) and have very limited land, number of obsolete systems exported to developing countries is just not enough for their size, so developing countries could not build whole infrastructure from just obsolete systems from West, but have to do (or to buy) something other.

So now, developing countries usually have mixed infrastructure, partially already obsoleted when imported systems, partially modern systems (many made in China), and partially some custom, even literally hand-made or garage-production.


I'd argue that if everything generally worked fine, and it is an estimated 8-figure upgrade, that I would only be surprised if they bothered an upgrade at all.


Note: In order to improve the readability of the text, the masculine form is used to refer to persons, functions, etc. However, it stands for all genders without exception.


German is a very gendered language.

Assuming that you’re male, would you be inclined to apply for a job if the description referred only to the “female employee who will hold this position” and what “her” responsibilities will be?

That’s essentially analogous to the situation that women have when applying for jobs in German-speaking countries.


This is a recent thing insisting that words don't include women because they have a male genus. And only in this specific direction. Nobody complains that men are not persons because "person" is always a "she" in German.

The burden of proof still lies on the people arguing that word X does not include women.


German work anti-discrimination laws are very pro-employee. I know a case where a company had an advert for a "junior developer" and a guy in his late 50s who got rejected after sending his application sued for sole purpose of age discrimination. The company settled in the end for almost a years salary after the judge hinted that a settlement would be wise (labour cases are often settled in Germany). Just because the usage of the word "junior".


I am pretty sure it was not because of using the word „junior“ but because they did not give him the job because of his age.


This makes a lot more sense in German than it does in English- it was likely translated directly.


In German, "Softwareentwickler" (software developer) is the male form, so for a long time, any job ad would say "Softwareentwickler/in" (short for "Softwareentwickler oder Softwareentwicklerin") to cover both forms. Nowadays, you can't do that either because that'd exclude people who don't identify with either gender, so I guess this is the workaround they use now to not get sued into oblivion even before interviewing the first candidate.


What's bad with "Softwareentwicklerchen" for the diverse ? /s


For the name of love to those who spends their life waiting train arrival and operates locos through old-fashioned OS!

There is no sense to accept risks of business continuity and prolong such outdated software with heap of security vulnerabilities together with significant hard-'n'software limitations.

I propose: - SWAP ALL unsupported system software (Win 3.11) and start using modern opensource OS distributives. - migrate all GUI's to to web interfaces with flexible markup. I believe you will require different resolutions and displays also! - to expect regular system software update process in critical infrastructure.

Now i know the reason why trains always coming not in time. We all wait until Win3.11 is loaded))


i would love to create CI/CD for whatever app is targeting win3.11. my 6yo self would be happy.


Not even sure it is possible: Visual C++ for Win95 can't target Win3.1 (as I remember) meaning just building will be something.. Talking about CI/CD software working on this target kinda sum-up to 0.

I am already surprised that a company still support this target knowing that most dev tools for this platform are more found over enthusiast website rather than Microsoft itself. And having hardware for making these tools running too!


The 16-bit Visual C++ 1.52c compiler (CL.EXE) and linker (LINK.EXE) are MS-DOS (DPMI[1], IIRC) executables, and should run under a variety of DOS emulators.

As an example, starting DOSBox-X with an empty scratch directory mounted as drive C, the Visual C++ 1.52c CD-ROM mounted as drive D, and no additional configuration,

  C:\>copy con hello.c
  #include <stdlib.h>
  
  void main(int argc, char **argv) {
      puts("Hello, MS-DOS.");
  }
  ^Z
    1 File(s) copied.
  
  C:\>set tmp=c:\
  C:\>set path=d:\msvc15\bin;%path%
  C:\>set include=d:\msvc15\include
  C:\>set lib=d:\msvc15\lib
  C:\>cl hello.c
  Microsoft (R) C/C++ Optimizing Compiler Version 8.00c
  Copyright (c) Microsoft Corp 1984-1993. All rights reserved.
  
  hello.c
  
  Microsoft (R) Segmented Executable Linker  Version 5.60.339 Dec  5 1994
  Copyright (C) Microsoft Corp 1984-1993.  All rights reserved.
  
  Object Modules [.obj]: hello.obj 
  Run File [hello.exe]: "hello.exe" /noi
  List File [nul.map]: NUL
  Libraries [.lib]: 
  Definitions File [nul.def]: ;
  
  C:\>hello
  Hello, MS-DOS.
  
  C:\>
Alternatively, the full Visual C++ 1.52c GUI environment should run on any 32-bit x86 version of Windows 10.

[1] https://en.wikipedia.org/wiki/DOS_Protected_Mode_Interface


I think OpenWatcom supports windows 3.x and it's quite a nice compiler if you are targeting older PC systems and don't require support for the latest versions of C or C++. You can easily use it to cross-compile from a modern OS and I used it a few years ago for a Hackathon where we implemented a simple demo that we built on Linux and ran in DOSBox with a CI-like pipeline (no Jenkins involved since it was just for fun).


This puts the problems of Deutsche Bahn in another perspective ;)

If only it was NT 3.51 instead of Windows 3.11, I might be tempted…


I read in a thread from 20 years ago that some systems in the trains use Windows NT. I guess they still use it.

I think they can't update the internal system responsible for the engine and brakes that easily, as well as the cockpit control systems.

But the system that displays the time and the next stations. With some investment you can communicate via serial or parallel port with the internal system. I guess using the WIFI for this instead would be a problem with security and reliablity, so they have to use the internal system.


The page says the work will be based in Erlangen. A quick search says Siemens has a big presence in Erlangen...


It also mentions Sibas, which is the “Siemens Bahn Automatisierungs System” (Siemens Train Automation System).

So this is probably spot on.


I suspect this is a third-party supplier who is trying to keep old Siemens driver interface systems limping along. Bold, as when we tried that it was nearly impossible to do so - the OEM had too much of a stranglehold over the design.


What's the salary?


65,535 $


So. 64k is enough for anyone!


yes, and it's best not to seek a raise.


Yes but checks are signed for -32,768


not great, not terrible for 1992 dollars


Interesting that only with an advent of IoT it became obvious, that it is hard or impossible to upgrade some systems and that writing software for small devices can be very cool.

(Having said that, I detest the usage of win3.11 here anyway ;)


It sounds like a dream job, but I’m sure that’s the nostalgia talking. And of course you have to wonder: could I rewrite this in Rust over a weekend?


Short answer: no


There is a decent chance the answer is in fact yes, but you'll spend the next 5 years on getting certification for what you wrote.


IDK. A lot of these systems are stuck not just because of complex business logic. That would be tedious to rewrite, definitely take longer than a weekend, but AI systems are actually a great use-case for helping in refactors. I think a bigger issue can be custom drivers / embedded technologies that require specific protocols / assumptions about servers. And those embedded areas may sit in hundreds of trains + train stations -- not impossible to update, but definitely more challenging to verify upgrades 100x times instead of one time. And the consequences of something bad can be train collisions = death. So it's easy to see how an organization leadership committee may decide "if it ain't broke don't fix it" because of risk with no real upside aside from a marginally lower salary cost of one maintainer -- if that.


Not even sure AI could help about it, those software might run over system where the documentation never got out from physical paper support, maybe even hand notes.

Talking Win 3.1, it means using Quick C / MFC 1.0 and co. that I image no today AI would learn as deprecated.


Visual C++ 1.52c (with MFC 2.50) is the last version to support 16-bit Windows and includes full electronic documentation (in Windows HLP and WRI format, admittedly, but it's there).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search:
  翻译: