https://blog.jgc.org/2024/10/rabbit-hole-stumbling-across-two.html John Graham-Cumming's blog 2024-10-08 Rabbit hole: stumbling across two Portuguese punched cards Look, here's the thing, I don't like mysteries that involve technology. I think I hate them because I know that some other human created the thing I'm staring at and, dammit, I should be able to understand it. And, then one day I was browsing in one of those places where people leave books for others to take. I flipped through an old Portuguese book about computers published in the 1970s and two punched cards fell out. [punch-1] Nerd. Sniped. By. Gravity. One punched card contains the data M000015 JOAO A. FERNANDES 150000190 and the other 1000015 100170476. OK, so 000015 is probably some sort of identifier (employee ID?) but the other numbers are a mystery. Could they be Portuguese tax identification numbers (NIFs)? Those start with 1, 2 or 3 (for individuals) and are nine digits. Nope. I wrote some code to verify the NIF's check digit and both aren't NIFs. use strict; use warnings; sub nif_check { my ($nif) = @_; my $check = 0; foreach my $i (reverse 0..7) { $check += substr($nif, $i, 1) * (9-$i); } $check %= 11; if ($check < 2) { $check = 0; } else { $check = 11 - $check; } print "$nif $check\n"; } nif_check($ARGV[0]); $ perl nif.pl 100170476 100170476 1 $ perl nif.pl 150000190 150000190 7 So what's encoded on these cards? And does 000015 mean they are related? I found the answer starting with the fact that these punched cards are custom printed with the letters In Es Me on them. What's In Es Me? It took a while to answer that, but it turns out that In Es Me was a business called "Instituto de Estudos Mecanograficos" based in Lisbon in the late 1960s and early 1970s. It appears to have been a school that taught people the exciting new world of computing, which, they claim in their advertisements was "Uma profissao actual e rentavel" (A modern and profitable profession) and also "Uma das profissoes de melhor futuro" (One of the professions with a great future). [punch-4] [punch-3] [punch-2] Great, but apparently no closer to knowing about Joao A. Fernandes and those numbers. But then I discovered someone selling a book called "Introducao aos Ordenadores" (Introduction to Computers) which was apparently distributed by In Es Me exclusively in Portugal: [punch-6] [punch-5] So, I bought it. And, inside that book on page 1-31, are the very two cards that had fallen from that other book. So, it looks like the cards were examples (perhaps from the training course) drawn from the book. [punch-7] The cards in the book are life size: [punch-8] (Can you spot the printing error in the book?) The good news is that the previous pages describe the numbers on those cards via the columns. [punch-9] Card code: column 1 (1) Employee number: columns 2 to 7 Payment period: columns 33 to 38 Total hours worked: columns: 39 to 41 [punch-10] For the other card... Card code: column 1 (M) Employee number: columns 2 to 7 Name: columns: 8 to 32 Hourly salary: 42 to 46 Fixed discounts for the week: columns 47 to 50 So, 000015 is the employee number. 150000190 indicates that Joao A. Fernandes is paid 15$000 (15 Portuguese escudos) per hour and there's a weekly discount (deductions from the salary) of 0$190. Note that for historical reasons sometimes the escudo is written with a three digit decimal, and because earlier on the book we're introduced to Joao and his colleagues I know that's the format being used. [punch15] The other card is a record of his hours worked for a specific week: 100170476. 10-01-70 is January 10, 1970 and indicates the week for which the record is generated. 476 is 47.6 hours of work. Mystery solved. Well, almost, In Es Me didn't write this book. If you look at the title page it was apparently created by "ENIASA" and I've found very little information about who they were. Oh well. PS Here's a little taste of what the book contains: [punch-14] [punch-13] [punch-12] [punch-11] at October 08, 2024 Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest Labels: pseudo-randomness 1 comment: [bla] [DSC] Pedro Aniceto said... Those were the days... 7:43 PM [icon_delet] Post a Comment Older Post Home Subscribe to: Post Comments (Atom) Search This Blog [ ] [Search] Labels * pseudo-randomness * hardware * babbage * anti-spam * gnu make * retro * security * codes and ciphers * the geek atlas * mathematics * minitel * behind the screens * popfile * privacy * radio Popular Posts * [Del3rp-WsA] I made a rubbish clock With separate plastic, metal, paper, and glass recycling, composting, and pick up of all the rest, knowing which days to put out which bins ... * [171421935] Cracking an old ZIP file to help open source the ANC's "Operation Vula" secret crypto code It's not often that you find yourself staring at code that few people have ever seen, code that was an important part in bringing down t... * [AEn0k_se5e] Steve Ballmer's incorrect binary search interview question In this short video Steve Ballmer talks about a puzzle question he would ask candidates interviewing at Microsoft. Solving it is based on b... * [punch-1] Rabbit hole: stumbling across two Portuguese punched cards Look, here's the thing, I don't like mysteries that involve technology. I think I hate them because I know that some other human cre... * [AEn0k_sa-n] Controlling the Taylor Swift Eras Tour wristbands with Flipper Zero Many large concerts feature wristbands that light up on command. They are used to produce varied visual effects across a stadium. One compan... * [proposal-1] The original WWW proposal is a Word for Macintosh 4.0 file from 1990, can we open it? The W3C has a page with the original WWW proposal from Tim Berners-Lee. One of the downloads says The original document file (I think - I ... * [casio1] Pimping my Casio with Oddly Specific Objects' alternate motherboard and firmware Some time ago I bought a replacement motherboard for my classic Casio F-91W from Crowd Supply. The project keeps the original Casio LCD but... * [mac-1] My daily driver is older than I thought; it's positively vintage! I was doing some clean up on my main laptop and realized it had been a while since bought a new computer. Turns out it was a lot older than ... * [Picture] Your last name contains invalid characters My last name is "Graham-Cumming". But here's a typical form response when I enter it: Does the web site have any idea how rud... * [light-sens] Two ways to use an LED as a light sensor with Arduino I needed to log when a light switched on and off during the night as part of debugging an oddly behaving movement sensor. To do that I built... Blog Archive * V 2024 (15) + V October (1) o Rabbit hole: stumbling across two Portuguese punch... + > September (3) + > June (3) + > May (1) + > April (1) + > March (3) + > February (2) + > January (1) * > 2023 (30) + > December (2) + > November (5) + > October (3) + > September (4) + > August (1) + > July (5) + > June (1) + > May (3) + > April (3) + > March (3) * > 2022 (24) + > December (2) + > November (3) + > October (8) + > September (1) + > July (2) + > June (2) + > April (2) + > March (4) * > 2021 (6) + > November (1) + > July (1) + > May (2) + > April (1) + > January (1) * > 2020 (2) + > June (2) * > 2018 (2) + > December (2) * > 2017 (4) + > May (1) + > April (3) * > 2016 (11) + > November (1) + > September (1) + > July (2) + > June (1) + > May (3) + > April (1) + > March (2) * > 2015 (11) + > November (1) + > July (2) + > May (1) + > April (5) + > March (1) + > January (1) * > 2014 (4) + > November (2) + > July (1) + > June (1) * > 2013 (39) + > September (4) + > August (1) + > July (4) + > June (2) + > May (5) + > April (12) + > March (3) + > February (2) + > January (6) * > 2012 (77) + > December (3) + > November (6) + > October (6) + > September (7) + > August (6) + > July (6) + > June (8) + > May (4) + > April (9) + > March (7) + > February (9) + > January (6) * > 2011 (79) + > December (5) + > November (7) + > October (2) + > September (5) + > August (2) + > July (8) + > June (10) + > May (6) + > April (9) + > March (6) + > February (12) + > January (7) * > 2010 (95) + > December (13) + > November (9) + > October (16) + > September (19) + > August (2) + > July (9) + > June (12) + > May (1) + > April (1) + > March (4) + > February (2) + > January (7) * > 2009 (31) + > December (1) + > November (8) + > October (3) + > September (6) + > August (9) + > June (1) + > May (1) + > January (2) * > 2008 (19) + > December (2) + > September (1) + > June (3) + > May (3) + > March (2) + > February (6) + > January (2) * > 2007 (34) + > December (2) + > November (3) + > October (5) + > August (2) + > July (2) + > June (4) + > May (3) + > April (1) + > March (6) + > February (4) + > January (2) * > 2006 (25) + > December (2) + > November (2) + > October (3) + > September (5) + > July (1) + > June (1) + > April (6) + > February (1) + > January (4) * > 2005 (3) + > December (1) + > November (2) Copyright (c) 1999-2024 John Graham-Cumming. Awesome Inc. theme. Powered by Blogger.