What’s the jankiest piece of tech you’ve seen a company depend on?
twitter.com
twitter.com
To prevent such an outage from occurring again, a yellow sticky saying "don't turn off" was attached to the AST.
Nobody knows anything, and documentation is rare.
That’s a way to build knowledge I guess :)
https://commons.wikimedia.org/wiki/File:First_Web_Server.jpg
This was something she had done as a maintenance request and no one else really knew anything about it, until it failed 10 years later. The server people did ask everyone who should know about the PC, so it wasn't just a plug pull.
But! External cultural tear downs aside, I'd like to show some internal cultural self awareness:
Being mostly an academic but having done stints 'in industry' or collaborating with 'real' coders I can say without a doubt that all the jankiest tech lives, and thrives, in academia. Scripts that were written by some professor with no coding background in the early 90s continuing to output data for analysis today. Entire mega projects written by single-minded individuals trying to be the academic version of a 10x developer but they're creating 100x spaghetti code (I'm looking at you RHIC/CERN). Single matlab scripts that are 10s of thousands of lines long that take voltages and currents and output a number with an "uncertainty" that nobody has really ever bothered to externally validate or quality control besides the grad student who never finished his thesis 10 years ago (from an optics lab I worked in).
The list goes on and on. Hilariously, the most beautiful pieces of tech/code I've ever seen have also been in academia that will never see the light of day. There was this ~1000 line piece of OO code that ran a Kalman filter in near-real time on the all of the particles produced in Gold-Gold atom collisions (and simulations!) at RHIC that was probably the most elegant piece of work I've ever seen, written by a coffee chugging burnt out grad student that sat alone in the corner day in and day out.
P.S. agreed about Twitter, I always wonder what these people are like in real life.
As ugly as things like SixTrack were, I vaguely trust them just because there were usually a lot of eyes on them... even if they were hideous. The more obscure chunks of code that were somewhere in the analysis chain were the ones that really terrified me. I worked on a lot of the code for simulating detector upgrades (I won't get more specific than that) and that was a terrifying place. Designing entire multi-billion dollar detectors systems based on hundreds of different pieces of code and output data that were glued together with no over-arching design or integration. The code 'review' usually came down to "that output looks good"... or not...
Related to this, I now work in the atmospheric sciences, and a completely-unrelated-but-oddly-similar problem exists in the various modeling communities. So many fragmented pieces of code glued together and untouched or touched with no real computing oversight. So many wasted computing cycles. So many failure points.
Most places, you'd figure people just wouldn't be smart enough to Rube Goldberg their way into a functional program. But someone who does high energy physics as their primary job is assuredly capable of torture a compiler as thoroughly as they want.
F.ex. look at the issues: https://github.com/SixTrack/SixTrack/issues
> remove gamma_e from calculation of kick by elens. the gamma_e factor comes from moving from the electron frame to the lab frame. It is actually compensated by the lorentz transformation applied to the electron current density
You know you're in for fun when the docs start with "SixTrack is wonderful, but it is bloody complicated." https://twiki.cern.ch/twiki/bin/view/LHCAtHome/SixTrackDoc
Our department's sysadmin was the real hero. He kept people's software running for years after they left the department. We were involved in some global-level public health data, so this wasn't trivial use-cases.
They have some survey software in a game engine which was written by a previous grad student. They re implemented textboxes using a bunch of key capture commands and if statements, in one giant file with almost no functions.
Another program he showed me cleans survey data from excel and is one giant script.
I pray for him every day.
I worked for a company a long time ago that traded with companies all around the world. A lot of their customers were small businesses in rural Africa, South America, etc. and they in turn had local banks they used to facilitate payments to and from.
A large number of these banks did not have a reliable internet connection, or if they did, they most assuredly didn't use it for payment instructions. Instead, I had to jerry rig a system that used TELEX -- yes, TELEX -- connected to IBM's Lotus Domino/Notes suite of mail transport software. That way we could "email" domino and it'd connect to some fantastically expensive TELEX hardware which then went over the wire on whatever the hell network they'd use for that in the 2010s.
We had carefully crafted email addresses with the TELEX numbers embedded (ever wonder why email address specs are so complicated? So people like me can do dumb shit like this!)
We'd then send them very carefully formatted instructions in uppercase ascii, to conform with (I forget which, SWIFT perhaps?) payment instructions that were clearly invented in the typewriter era and then hoisted, kicking and screaming, into the digital age with nary a change.
Fun times. Worked really well and tied in with all the other stuff they'd hang off of Lotus Notes. If you ever wonder why a lot of businesses struggled to move away from it? There's your answer.
Based on experience, any time I see a static number of fields of a specific type on a digital record, I assume it's because that's how many blanks there were on the preceding paper form.
One day the phone starting ringing off the hook, the mail blew up and I had a large group of people outside my office (no open work space there!) being very upset all of the sudden. It seemed that almost all of them were relying on this quirky internal service for some input of sorts to what they were coding on/with, and all the computations and calculations and modelling broke without it. And apparently, it had broken. So ofc I start looking into it.
All I got was an IP address, and my system lists and IP registers showed nothing. I went on to look in an old patch panel registry, and found a reference that might be something to look into regarding where it physically might be located. But ofc the patch panel wasn't in use anymore, but I knew they sort of moved it 1:1 to a new panel in the far corner of a basement. Got a new lead on where the patch terminated, and went there only to find an empty room. A lone network cable ran from the connection on the wall, through a hole in the back wall to the next room. The other room had no marking, and my key pass didn't work. I called the maintenance guy who came running, and his keys didn't work either. So we took the decision to simply remove the lock by force.
Once inside, I come upon a very strange sight. Again an empty room, with only a very, VERY dusty desk and chair, with an ancient Unix machine and monitor. No one had touched that thing in many, MANY moons. It was disgusting. Someone had set it up to do its work, and then left the building, without notice or documentation, and it had been forgotten. It was a very Tron: Legacy kind of moment. I had a look at it and it said that the raid was downgraded, but still working but somehow halted the machine. I took a chance and rebooted it and after a while it came back online. All the researchers were happy again! I eventually took the liberty to move all the source code off the machine and got help from a co-worker to set it up in a new Linux environment. It worked almost out of the box, my co-worker made some minor fixes to make it compile. For all that I know, it's still running.
This is a old war story that I never will forget, very fun to talk about :)
This was a year-long several-hundred rack problem that culminated in a hellish weekend of running cables and powering things up. It was "all hands" in IT and didn't matter that I worked in a capacity that kept me far away from hardware most of the time -- I had past expertise in that area, I was called upon.
Everything went relatively smoothly until about three months later when I received a phone call from our department VP. Apparently a vendor that we billed for Cost of Access[0] had not paid us since we moved DCs; they hadn't received any bills and were happy not informing us of the problem. A long investigation resulted in the discovery that the bills were submitted electronically, by modem (this was 2008, not 1998). The modem phone line was moved and located at the new datacenter, hooked up to a USRobotics 56K modem, which faithfully dialed a number, connected at 1200 baud (?!) and submitted the bill. And we're talking a bill that's big enough to be noticed on quarterly reports.
The offending computer had been brought to my office building in the suite downstairs, and my VP said "You've got some experience with old hardware, can you just take a stab at it?" It wouldn't boot; the CMOS battery was bad. I noticed three numeric values printed on a label affixed to the case and realized, immediately, that these were IDE (ATA) drive geometry settings. So the CMOS battery failed a long time ago, and the engineer solved it by printing the numbers on the front of the case.
And what a PC it was ... an IBM NetVista circa somewhere near the year 2000. Running PC-DOS. It sat in a rack on a shelf surrounded by servers, completely ignored since it was hooked up to UPS, not accessible to the corporate network, and was never patched or rebooted[1]. It was an accidental somewhere-near-3/4-million-dollar-desktop-server.
[0] Cost of access for the kind of telecom that we were was, I think the largest non-staff expense the company had, but it also worked the other way -- we billed people CoA for our network.
[1] The device could not be accessed on our network except from one other host, via one port; it was as air-gapped as it could be and other than the few minutes spent "sending the bill" each month, it didn't carry any data of value.
Not everyone knows that old computers do not necessarily boot from the hard drive by default.
Heck, you can buy 2 CMOS batteries for a buck at the dollar tree. They'll last a year or more with the light usage that would be.
[1] https://www.classic-computers.org.nz/blog/2009-10-10-renovat...
The CMOS batteries, themselves, have a shelf life and for whatever reason, we probably had none of the specific size required on hand. Being that the device was on battery backup in a rack, it probably led to the engineer thinking "it'll never be rebooted, a label will do"
Yes, we've soldered airplane batteries to 486's to keep them running longer
I'm mildly amused you consider modems obsolete.
Here in the OT world and where systems need to be air gaped [1], modems are absolutely used to provide separated, secured links and non-IP links. They are not going away any time soon.
[1] Example, the dial-up time servers provided by the NPL for offline systems https://www.npl.co.uk/getattachment/products-and-services/Ti...
The carrier involved was one that everyone has heard of. All of our other carrier billing was handled using a variety of authenticated links/services to the carrier. And this particular carrier had other, better, ways of doing it, too. For whatever reason, we had never altered that process. It was permanently fixed a few months after we got that host working again.
I'm working on porting a foxpro database from 1988 that's running an active business which I won't talk about much before it's done, and have actually encountered in Costa Rica an auto parts shop in one of the sketchiest parts of the capital city of this country with a green on black phosphor screen running what looked like dBase III for what they were doing on old IBM PCs.
It's pretty crazy what's out there still. I think the one everyone here is familiar with but might not know is really ancient is the travel booking systems for your plane tickets and accommodations, dating back to the 1960s:
Karsten Nohl - Where in the World Is Carmen Sandiego? (33c3) [1]
This is amazing value for money. A simple system for a small business working reliably for 30-40 years. In our world of tool churn (often seemingly for its own sake), it's unfathomable. But this is often what the customer really wants from us, they're just afraid to ask out loud for fear of being laughed at.
Marketing: “With this app, you can now buy pizza on your phone!”
Snark: *slaps a yellow pages on the desk along with a rotary dial landline*
I'm not saying their aren't horror-shows out there, but technologists drink far too much of their own kool aid, as class.
Docker: rebuilds virtualized operating system
When we modernized all desktops in the office, I set up Win2k in Qemu on each of them, which loaded the FoxPro thing from a shared network mount. I'm just realizing 19-year-old me never checked if FoxPro supported simultaneous access. It surely did, at least I hope so :-)
edit: However, 19-year-old me was smart enough NOT to touch that Solaris or whatever-it-was server hosting the FoxPro thing.
I asked what happens if the PSU/HDD/etc of the machine running it dies? I was told that everyone retires. It was an actual conversation that had been given serious thought. At that time, the company was 30+ years old, privately owned and no employee had been there less than 15 years.
No need to hang your whole company on a single box's longevity.
Amusingly the vendor had a mandate to add "2FA" to the application last year. They added TOTP to the "login". All the data is stored in DBF files that all users have read/write access to anyway (because the database engine runs in the user's context on the client PC-- the server is just a dumb disk drive).
What’s impressive is how many attempts, both successful and less successful have been made over the years to improve it. Refactoring this file isn’t easy because any change could potentially lead to millions being lost. But people keep at it.
It actually looks pretty decent nowadays compared to a few years ago. I believe it has type annotations now but I haven’t seen it in a long time.
At a Fortune 100 company I had to spend a day debugging a print job sent from an IBM mainframe in New York City to a Unix print server, out to a printer in Mumbai.
At one VC funded startup, the first server the company ever bought had no backup system and could not be turned off. We had to rearrange the server room once and someone had to hold the server in the air due to the way it was plugged in as the room was rearranged. It took years to get the budget for the server to upgrade it to, the day the new server came in it was hijacked by the analytics group.
And for better or for worse this is why teams love using the cloud. It goes a long way toward bypassing “old school” IT departments :-)
So I went with the CIO to the HR office to check the "thing". The setup was as follows: between the two office windows, there was a small table with on it, a Sun SS20 workstation of 1993 vintage, connected to a bunch of 1 or 2 GB SCSI drives, all covered with a 5 cm, hairy blanket of dust. A tangled nest of serial cables (yep, the RS232 style) were going from a serial expansion MBUS card to all of the HR people's PCs in the room (through USB adapters). They were connecting to the thing using good old HyperTerminal...
The machine also had a modem that was used, eons ago, when it was under some form of support from the supplier of the solution, to monitor the setup. Of course nobody had done any update nor any system maintenance since 1998, so it was still running Solaris 2.x.
Of course I didn't have the root password. The thing was running a database (Informix or Oracle, not sure) that I planned to backup to a Linux server through NFS (keep it simple). So I basically had to write a shell script using a syntax compatible with this antique kit to run through cron... Fortunately they had a spare SS20 that I used for this purpose!
The pay of several hundred people (maybe a thousand) was relying upon this system... several million € of pay checks every month!
I don't think that means what you think it means.
(a fake machine, operated by human)
And there aren’t better replacements. I could type in the old equation editor blindfolded. Every keystroke has predictable behaviour. Ctrl-F for fractions, Ctrl-R for square roots. No other equation editors offered that. The new equation editor is not the same, I need to press so many unnecessary arrow keys just to get what I could have done before in half of the time.
[1] https://blog.0patch.com/2017/11/did-microsoft-just-manually-...
The servers were IBM eServers servers old and out of date when they were purchased the warranty was extended multiple times. A Debain cluster for slot machine control, and a database server was also the domain controller using Win 2000 cluster.
The clusters always failed and auto-failover failed. So me not officially IT would have to manually failover the cluster or the casino couldn't operate. There was also another Java app called process initialization which also failed and I had to restart that too manually.
I was also the only person the building/province/400km region who knew the admin passwords for the systems I still recall them.
Add to that the debit machines would lose connection and the debit machines at lunchtime for a 200 person buffet were offline. Often a reboot of the DSL mocdem or most often it was a trip to the third floor ventilation room/cross connect. The five port switch had six cables and people would pull one and put in their cable for their system. That's territorial part my department is more important than yours so cabled yanked out no warning.
As a system it was terrible and a multi million dollar business relied on it and relied on me as a non-IT person to maintain it. It wasn't anywhere near my job description and I got nothing extra for it but management demanded I fix it. They ended up laying me off suddenly one day tow hours into my shift after 13 years no explanation.
It was a no-win situation if I refused to not do what was really not my job I'm sure they would have found a way to fire me. I was being paid an OK wage it was double minimum wage. I did enjoy the technical work I saw it as experience in IT not just playing with simulators, or reading books but actual running systems.
It's hard to say what should have done differently but certainly I should have taken night classes or part time classes in IT. After being laid off I ended up doing that at a technical college which was only 500 yards away. I got $13K severance, and government paid for one year of my classes and unemployment. I pretty much had a two-year vacation to study computers. After I was gone I heard the place emptied of many long-term staff I'd like to think I was the spark that did that.
This is really the key here we all need to remember... its good times right now, but it may not always be good times, so important to remember that regardless of how important our jobs might be in the moment, when the corporate winds change they won't even blink to can us. First time I got laid off I was in the middle of a production fix that was affecting the homepage of one of the busiest sites on the internet. Didn't matter for shit because my number along with that of thousands others got called.
It would take about 8 hours every day for the program to run. So for 8 hours of every day, the company would be returning stale listings. I rewrote it in PHP and brought the time down to ~20 minutes, which could have still been significantly improved. But I didn't stick around for too long after that.
Then there were the awful scripts he wrote. I didn't know Linux at the time, but I remember there was a bash script for removing accounts from a server. You'd run /bin/removeaccount.sh $username. But woe was you if you forgot to give it an argument. The script was simply
#!/bin/sh
userdel $1
rm -rf /home/$1
Right. So if you forgot the username, it runs rm -rf /home/. That was fun.I really, really, really wanted to close it to see what happened but I didn't want to spend the holidays in jail so I just chuckled and moved on.
In our defense, it was because the server we wanted to move the code to was under control of another of the client's vendors and they were dragging their heels about giving us access. But still!
Convoluted Excel sheets without documentation doing things the ERP system that is in place is supposed to do. Especially ones that are not feeding data back to said ERP.
Fast forward 18 months and I found myself working as a systems engineer for a Pharmacy Benefits provider. I was not part of the networking team, but the networking lead approached me to help troubleshoot some pernicious network stability issues for their POS systems. They were also an Extreme Networks shop, so they they figured I might have some insight. The networking lead tried to set me up with access to the switches and was confused when I appeared to already have an account provisioned. Once I connected and began looking at the switch logs, I had simultaneous deja vu and "are you kidding me???" reactions. These were the very same switches I had personally configured and later scrapped during my previous gig. Apparently my new employer had bought the switches during a fire sale and put them into production with little to no configuration and they were just insanely lucky that their ip ranges and vlans overlapped what I had previously used.
I didn't stay very long at this company. Thankfully the haunted switches didn't follow me to my next job.
Except that the catalogs were in a warehouse a few miles away from the company office. Inside the warehouse were ten label printers, each hooked up to a different computer.
My script had to organize the mailing label data into ten groups, based on USPS bulk mailing criteria, then dial each computer in the warehouse and send the right labels to the right computer, as each computer was assigned a different bulk mailing region, again based on USPS rules.
The people in the warehouse would pull each label off of the printer, slap it on a catalog, and drop the catalog into one of the bins below the corresponding printer so they could be taken to the regional bulk mailing facility all pre-sorted.
The warehouse computers couldn't be hooked up to the internet because the cable company wouldn't wire that side of the street. It did the other side because it was on a block with homes, but didn't see the cost benefit of doing the side with a single warehouse. A one-off line from the cableco was cost-prohibitive. I was told that before I joined the company, they tried DSL, but it was unreliable.
It's surprising how a technology we considered so fragile back in the 70's and 80's is sometimes the only thing that works today.
I love quirky old tech-debt that people still work around. It means there's either a sysadmin that is super into it and knows everything from inside-out, or they're a sysadmin that's pulled all their hair out but damned if they don't keep it running!
(Though for the specific use-case of statistical analysis, perhaps excel is actually the lesser evil...)
DB/C (or Databus) is a COBOL-esque language (https://en.wikipedia.org/wiki/Programming_Language_for_Busin...).
Over time, TCP/IP, sockets support had been bolted on, with varying degrees of rigidity to spec (and a whole ton of unimplemented "we don't need THAT" stuff).
But the prize for eyebleeding was the co-owner who had a megalomaniac (he could be heard, and I quote word for word, saying things like "People are idiots, I don't know why they would write [software X] that way. I can do it in a weekend" (and he would do "it", too, in 60 hour long benders. But not well. And with a whole bunch of arbitrary bullshit that you'd expect), masochistic, NIH obsession.
He wrote a fully functional XSL parser and interpreter. In a COBOL-esque language.
And while functional, oh boy, you probably saw few things uglier in your life.
That's how I indent my code. Not just because I think it looks best, but as a small rebellion against the whole tech industry's over-fixation on powers of two.
The bad bit was, the one person in the company who knew how to compile the extension had left years ago, so it only was available by copying a magic binary .so. It only ran on SPARC Solaris. While it had grown an embedded Python interpreter for more modern (for the time) development, the latest Python version it could run was 2.1, meaning a lot of Python 2.x features I was used to were missing.
This isn't really a janky dependency but... I also did consulting development with a friend for a large lab equipment company. It was impressed to me what a really super important client this was as they were one of a few companies licensed in the US to handle cocaine. So you'd think their security would be through the roof. When I got to their offices, I found that every staff member's desktop PC had Bonzi Buddy and several other pieces of malware cruft on it.
But, this software was notoriously unreliable. There were two of us trying to keep this system moving, and we couldn't go to lunch together because we couldn't step away from the system for more than half an hour without getting paged.
We had one person at the data center where these systems lived that would walk the aisles of machines, looking at the screens, and trying to decide if the PC was hung and needed rebooting. I wrote some code that would watch logfiles these machines generated and would alert if the log for a specific system hadn't updated in ~30 minutes, and we could then ask the person on the floor to check on it. But, some orders could take an hour to process, and weren't really hung. So the person would have to go eyeball the screen and see if it looked like it was working or not.
This was developed by the same team that spent a year developing a tool called "the blue GUI", and I went with them out to the service center that was going to be using it so they could show it off. If memory serves me, it was a giant window with a shitton of input fields laid out in columns and rows. How this was different from a spreadsheet, I really never understood, but a team of 10 had been working on this for a year.
The lead developer I went with was sour on the 4 hour drive back, because the management of the service center declared that it was totally useless.
Their controls were written in C. The development process was you checked a computer out of the warehouse, installed Windows, then some janky realtime OS addon, visual studio, and MySQL. You wrote the control software on the only computer it would ever run on. To keep it on the up and up, they literally bought a copy of VS for every system they sold. They even paid for MySQL licenses (long before Sun or Oracle was involved).
The version control was a home brew system that you would upload zip files to. It would timestamp them and put them on the only hard drive in the company that was backed up. The backups where a couple of cheap portable hard drives. Once a week the IT guy would swap which one was plugged in and take the other one home for offsite backups.
Custom IT system, planned out so that any scriptmonkey with enough bananas could figure it out, with robust and redundant backups? That's a dream. any MSP worth their salt would salivate over a contract with that setup.
Which places them light-years ahead of many operations.
Their dedication to licensing is admirable, but I wonder if this was because they didn't know which DLL's were redistributable and which weren't?
Also, why does the database have 5 GB of dependencies ? Postgres and MariaDB both have < 100 MB (maybe 10 MB) downloads from the repos.
I virtualized it all in DOSbox, and set the printer output to spool to a real file, which then got printed if it wasn't blank, once the DOSBOX exited.
Fairly janky, but future proof for the most part.
When I was in college, I ended up working for college IT. Fun job. A requirement came from somewhere that we needed to allow students to edit web pages (personal home pages) using the Windows lab PCs, with Microsoft Frontpage. Students had a home drive on H and a web drive on W (I think, it’s over 2 decades ago). Thing is, those weren’t on NT or a box running SAMBA, they were on a Netware server.
I cobbled together the combination of a Linux “server” (read spare PC, probably Pentium 60/90 era) running Apache, with the Frontpage extensions for Apache. So far so good.
Then I got an account set up in NDS for access to the data volume, and made IPX/SPX work on the Linux box. Turns out the perms were a bit wrong, and I could write files to SYSVOL, but that was easily fixed.
A bit of config magic in Apache, and student web pages could be edited in Frontpage, saved to Netware, read from Linux, and all the Frontpage bits we cared about actually worked. Faculty teaching web page design/building were very happy.
Also the era of Netscape Enterprise Server with roaming profiles on a RS/6000 box, but that was easy.
If your BAT file has a conditional, you are using the wrong tool. BAT files should be completely top to bottom with no branching. Anything else is madness.
First the data dump provided by the customer is run through a VB6 conversion program that imports the data to an Access97 database. Then the Access db gets opened using a legacy VB6 version of our product from roughly the year 2000 where they verify that everything was converted and imported correctly. Then they run the Access database through a second VB6 conversion program to migrate it into SQL Server so it could be used with the current SaaS product.
The source for the legacy product was at least in source control, but only one engineer still working for the company had ever touched that application at all. From what I was told the source for both of the conversion programs was lost years before I joined. The company's ability to import data for new customers was 100% dependent on this rickety pipeline.
In one of my early businesses we manufactured these small boards with about 50 through-hole components. Think mid-80's range.
I didn't have the money to buy any real manufacturing equipment at all. This was all self-funded, which, at that time in my life, meant thousands of dollars rather than hundreds of thousands or more.
I bought a really old Bridgeport CNC machine for $1800. I worked. The transmission sounded like it had rocks in it, but it worked. I used this machine to make a lot of our fixtures and tools. The prior owner had replaced the control system with one that took DXF files and cut one depth layer at a time. I had to design the toolpaths using AutoCAD rather than any tool that would output G-code.
I remember at least three things we made.
The first was a fixture that consisted of two rails with a groove cut into them so you could place about 25 board into the fixture and stuff the components. No budget for metal, so it was made out of pine and CNC machined. This allowed for the component leads to go through and not touch the table.
The second was a set of component benders, also made out of wood, so you could bend the various component leads as required with reasonable repeatability. The jig to bend MOSFET leads to 90 degrees was this contraption with a hinge, a bunch of springs from Home Depot and a pocket for the transistor to fit into. You'd push down on this lever and it would bend the leads to 90 degrees. I wish I had pictures. We bent thousands of MOSFETs that way.
Soldering. Boy, was this a horrific thing. Again, no money for a real soldering setup. What we did instead is build a preheating box with some stuff I got from a surplus store. We would then dip the boards (just the bottom) into flux. After that we'd dip them (again, just the bottom) into a molten solder bath. The pot was about 4 x 4 inches, just enough to have enough solder and maintain temperature. From there they went back onto the wooden frames for slow cooling. Talk about janky!
Finally, the through-hole leads had to be cut. This was not something you wanted to do by hand. We did, for a batch or two, and then decided that was enough.
We made a jig (again, wood, this time I believe it was oak) to hold about 50 boards upside-down on the CNC mill. We then got a small circular thin blade (not an end-mill, that does not work at all as we discovered) and programmed a slow lead cutoff cycle. Think of it like a cutoff wheel from a Dremel tool but without the screw sticking out of the bottom. We could cut the leads to within one or two mm from the board with reasonable consistency.
There's more. Everything in that garage was janky as can be. We eventually made enough money to move out of the garage, buy some SMT equipment, redo the designs in SMT and hire a few more engineering students to help. Crazy as can be. Had as can be. Fun too.
Hitachi is a name that I think of for power tools and heavy equipment, but not for software.
IIRC, they have reorganized a lot but are still around and have followed IBM's path into consulting and selling other people's hardware.
SEGA built a lot of hardware around Hitachi's SH CPUs. First time I visited SEGA I was surprised to see that they also had...Hitachi elevators in the building. I noted that I was giving my talk using a Hitachi OHP and Hitachi whiteboards and furniture. I looked up to see how much time I had and observed I was using Hitachi time.
As it happens SEGA was never our customer though we did so much work for them; Hitachi paid our bills.
The tech had died several years ago and they were fully aware that when they had a problem with thsese machines that they couldn't fix, the business was done. They made parts for the fuses of artillery shells; so the actual business of their business was trivial compared to the connections and compliance paperwork, anyway.
Would be fun gear to get surplus now. I'm pretty sure there's easy cheap hardware to make your Pi either side of a SCSI bus now and then one could poke at the hardware capabilities.
See also: https://en.wikipedia.org/wiki/Jugaad
It was running on a VM I set up and I was pretty much the only person who knew it existed and what it was doing. Pretty janky lol
ps: the setup was twisted but this was the app I mention often in nostalgic threads. Nicest applicative I've used.
https://www.theregister.com/2001/04/12/missing_novell_server...
https://www.techrepublic.com/forums/discussions/passthrough-...
Not sure, maybe my comment is a case of "grass used to be greener" ;-)