There is a guy named Arthur David Olson who maintains a small database of all the time zones in the world, including things like leap seconds and such. It's used by everybody and it is updated several times a year. See here:
Programming
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
I bet he's paid nothing to do it. Then one day, when a timing attack happens that can be traced to the DB, some knobhead CTOs and tech influencers will start talking about "securing the supply chain". They'll want other such bullshit and responsibilities to be shoved unto volunteers.
Two quotes come to mind "Fuck you, pay me" and "Open source maintainers owe you nothing".
If we could all just stop making changes to time zones, that would make my job very slightly easier.
Perhaps we'll move to UTC+10¼, and then move forward 45 minutes in the summer.
If the day number is a prime, then we'll go back π hours.
Hope that will help!
Sqlite isn’t quite one person, but it is a very small team and is extremely widely used. https://www.sqlite.org/mostdeployed.html
Paul Eggart is the primary maintainer for tzdb, and has been for the past 20 years.
Tzdb is the database that maintains all of the information about timezones, timezone changes, leap whatever's and everything else. It's present on just about every computer on the planet and plays an important role in making sure all of the things do time correctly.
If he gets hit by a bus, ICANN is responsible for finding someone else to maintain the list.
Sqlite is the most widely used database engine, and is primarily developed by a small handful of people.
ImageMagick is probably the most iconic example. Primarily developed by John Cristy since 1987, it's used in a hilarious number of places for basic image operations. When a security bug was found in it a bit ago, basically every server needed to be patched because they all do something with images.
I mean, it was either Richard Stallman or Dennis Ritchie that created grep in an evening so that a buddy of his could do research on volumes of text that wouldn't fit in the RAM of a PDP-11 (or similar machine. I'm telling this story from memory). It's designed to do what you would do with the ancient text editor ed using the commands Global, Regular Expression, and Print. g re p. grep. Probably the most important piece of software ever written in a couple hours.
The core-js
story always makes me sad. Sure, he's developing an open source project and no one HAS to pay him. But the meager amount of donations and the tons of hate he receives isn't justifiable.
It's especially sadder when a substantial amount of the donations vanished when Open Collective and others stopped operating to Russians.
Furthermore, "RUNK" was originally made in the 1980s to take over from a program written on punch cards in the 1960s. Finally, it's missing some important functions that the original 60s program had because "RUNK"s developer doesn't see the purpose of those functions and refuses to add them; and no one has publically released a fork of "RUNK" that adds those functions back in, so you have to do it yourself. Thank God it's open source.
Edit: oh yeah, and back in 2005 there was an effort to make a GUI for it, but "RUNK's" sole developer got mad because "back in the 80s we didn't need GUIs; command line is infinitely faster" and kept intentionally breaking support for the GUI with each bug fix, leading to the project eventually being abandoned.
Based on my cheatsheet, GNU Coreutils, sed, awk, ImageMagick, exiftool, jdupes, rsync, jq, par2, parallel, tar and xz utils are examples of commands that I frequently use but whose developers I don't believe receive any significant cashflow despite the huge benefit they provide to software developers. The last one was basically taken over in by a nation-state hacking team until the subtle backdoor for OpenSSH was found in 2024-03 by some Microsoft guy not doing his assigned job.
Idk who needs to know this, but in Norwegian "runke" means to jerk off. "runk" is the word you add a prefix to in conjugation to get the different inflections
- runke - jerk off
- runker - jerking off
- runket - jerked off
Etc...
left-pad was the first thing that came to mind for me
Yeah that debacle still pisses me off. Especially the fact that someone could possibly trademark and enforce a trademark a name that’s already in use. It’s made even worse that the package that now uses the stolen name is defunct.
I hope all of the bad actors burn in Hell.
I believe the quintessential example is curl Also here's the relevant xkcd: https://xkcd.com/2347/
The curl author writes a lot about his struggles, but he's also employed to maintain curl, so not really a good example
NTP is the one that comes to mind for me.
Basically every device uses it and until fairly recently was maintained by a single person
I'm surprised that no one seems to have brought up curl, which is maintained by Daniel Stenberg who is Just Some Guy™
Until very recently the whole Resident Evil modding community relied solely on a Maya 3DS script that a Chinese dude named Maliwei777 created in 2012. The community cherished that script but it got harder and harder to get the correct 3DS version to run it.
Curl comes to mind. Libcurl is at the foundation of almost all networking.
And they still get emails from randos when some program that uses curl doesn't work (the Readme is top notch).
I cannot for the life of me find what you’re referencing. I only remember the sqlite
/ etilqs
fiasco with McAfee.
https://github.com/mackyle/sqlite/blob/a009acaca1fe25d909d8b5180c0120af1abc2b82/src/os.h#L56-L79
curl is most definitely not developed solely by one person though, it has thousands of contributors. in fact, there is so much red tape around curl that you can't even discuss making a change to it without first writing an RFC and having it approved by a committee.
Git, by Linus? Maybe even linux itself? Ok actually Linus might just be Steve Wozniak without an annoying Steve Jobs guy next to him, while actually being a lot bigger than Apple maybe?
Pretty much every basic terminal command for linux. Grep is the one that comes to mind.
Imagemagick.
Every website that supports avatar images and has multiple sizes of the avatars uses imagemagick.
Another one is OpenSSL.
Steve Jobs and Steve Wozniak are the classic example. Jobs has some technical skill, but not a lot. He's the "ideas guy" that all other "ideas guy" try to be. I don't have a lot of respect for the "idea guy"; Jobs was a manipulative narcissist, and he should not be emulated.
Woz, OTOH, is an absolute genius, and one of the most genuinely nice people you'll ever meet. Apple made him enough money that he can do whatever he wanted with his life, and what he wanted was to do cool things with computers and pull harmless pranks.
Bill Gates had Steve Ballmer and Paul Allen. That was more of a collaboration. They all had some level of technical and business skill mixed together. It wasn't quite the complementary skillset we see with Jobs and Woz. A lot of Microsoft's success was being in the right place at the right time to make the right deal.
A lot of Microsoft's success was being in the right place at the right time to make the right deal.
It was also having friends on the IBM board that signed a contract that didn't make any commercial sense....
I nominate Paul Eggert and Arthur Olson before him, for the tz database, which we all depend upon whenever the time at which something happens (or did or will happen) matters.
Edit: Tom Scott touches on the subject here.
I saw a post earlier about Empress returning to game cracking. For modern video games that use Denuvo DRM, she's the only person who can really crack it, as far as I know. Singlehandedly holding up the AAA game piracy scene.
Mark Russanovich was just some guy who had trouble fixing Windows computers so he wrote systernals from scratch including widely used psexec and other required tools if you are forced to be a windows admin. He has since grown up into a very hansom man who runs Azure which sucks.
Is-even and is-odd on npm.
For a while, openssl was maintained by 1 or 2 people.
I think this probably applies...
So Thief: The Dark Project (1999) and Thief 2: The Metal Age (2000), are a couple of classic stealth FPS games, proto-immersive-sims, and still some of my all time favorite games. They both use the Dark Engine, an in-house engine from the now defunt Looking Glass Studios, which also powered System Shock 2.
In 2010, the source code to a System Shock 2 port (for the dreamcast or ps2 iirc...) leaked online, and on 2012 someone used that code to create NewDark and TFix, patches to make these old games work on modern computers (and some bugfixes, support for HD, etc).
There are still updates regularly released for it too!
I must emphasize that these games are still sold on Steam, GOG, etc and this patch is essentially required for them to work. And these are hardly the only games like this, just the ones most personal to me. Retrogaming is built on the backs of unsung individual heroes who backwards-engineer, hack, patch, and mod their favorite games to keep them running for everyone long after the publishers have died or abandoned their work.