this post was submitted on 06 Jul 2024
944 points (99.4% liked)

Programmer Humor

19503 readers
518 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 

via: @memes@wetdry.world

https://wetdry.world/@memes/112717700557038278

the sqlite codebase is a gem.

tldr; mcaffee made a shit ton of sqlite files in the temp folder causing people to call the sqlite devs phone angrily. now they name all files etilqs to prevent this.

Text from the screenshot:

2006-10-31: The default prefix used to be "sqlite_". But then Mcafee started using SQLite in their anti-virus product and it started putting files with the "sqlite" name in the c:/temp folder. This annoyed many windows users. Those users would then do a Google search for "sqlite", find the telephone numbers of the developers and call to wake them up at night and complain. For this reason, the default name prefix is changed to be "sqlite" spelled backwards. So the temp files are still identified, but anybody smart enough to figure out the code is also likely smart enough to know that calling the developer will not help get rid of the file.

Code found at: https://github.com/sqlite/sqlite/blob/master/src/os.h#L65 (The line numbers in the screenshot and the code don't match up)

top 50 comments
sorted by: hot top controversial new old
[–] MostlyBlindGamer@rblind.com 160 points 4 months ago (1 children)

Wasn’t there a story about people calling curl devs because of car issues?

For what it’s worth, I’m sure the SQLite devs could help somebody clean up their temp files. They just really shouldn’t have to.

[–] ABasilPlant@lemmy.world 138 points 4 months ago (1 children)
[–] MostlyBlindGamer@rblind.com 48 points 4 months ago (2 children)

Yes! Hahaha, it’s so good.

Number 2 needs to flick the little switch on the SD card.

[–] where_am_i@sh.itjust.works 18 points 4 months ago

and so the internet wisdom has solved the person's problem. Alas they will never find out

[–] DogWater@lemmy.world 4 points 4 months ago (2 children)

Their issue is that the card has the physical lock switched on on the SD card?

load more comments (2 replies)
[–] yetAnotherUser@discuss.tchncs.de 78 points 4 months ago
[–] bleistift2@sopuli.xyz 50 points 4 months ago* (last edited 4 months ago) (5 children)

Forgive my ignorance. SQLite is a database software. Why would McAffee create lots of database files?

[Edit:] I’m not asking why a program needs to store data. I’m asking why that necessitates many files. One database file (or one per table) should be enough, right?

[–] qaz@lemmy.world 66 points 4 months ago (1 children)

Many programs use SQLite internally and McAfee decided to store the database files in C:/Temp

load more comments (1 replies)
[–] towerful@programming.dev 53 points 4 months ago (1 children)

Sqlite is a great embedded database.
If you are storing lots and lots of information in a JSON file, CSV file, or coming up with your own serialisation... Chances are, sqlite is going to do it better.
I know loads of android apps use sqlite for storage. I've also managed to open quite a few programmes "proprietary" file format in sqlite.

[–] anton@lemmy.blahaj.zone 64 points 4 months ago* (last edited 4 months ago) (8 children)

A yes, the two genders of binary file formats: renamed sqlite file and renamed zip folder.

[–] shotgun_crab@lemmy.world 10 points 4 months ago

Don't forget renamed and compressed xml + zip

load more comments (7 replies)
[–] Michal@programming.dev 20 points 4 months ago

The program needs to store multiple temporary files (one per virus definition update, or scan results or whatever purpose).

It looks like they simply picked sqlite as a format because the data has a structured format and that way they leverage databases robustness, easiness to read and query the data.

The comment appears to be from 2006. Sqlite mightve had some limitations then that necessitated creating a new (temporary) database file as a subset of larger database for performance reasons or to allow multiple processes to read/write them and then consolidate data back into the single database.

[–] Zorsith@lemmy.blahaj.zone 9 points 4 months ago (3 children)
load more comments (3 replies)
[–] GBU_28@lemm.ee 5 points 4 months ago

Al sorts of applications would enjoy a database to log all sorts of stuff, store results, capture events, etc.

SQLite is great because it doesn't necessitate another infra dependency as it is stored to file

[–] Clbull@lemmy.world 35 points 4 months ago (1 children)

John McAfee would be spinning like a rotisserie chicken in his grave. Or at least he would be if McAfee Software hadn't already turned to shit long before his death.

So the temp files are still identified, but anybody smart enough to figure out the code is also likely smart enough to know that calling the developer will not help get rid of the file.

Don't underestimate the stupidity of your average person.

[–] ruk_n_rul@monyet.cc 8 points 4 months ago

Was gonna say, this wouldn't happen on John's watch. /S

[–] livingcoder@programming.dev 27 points 4 months ago (3 children)

I love how the solution didn't involve changing the prefix to "mcaffee_". Now users don't know who to blame. Great. That's so nice of them.

[–] camr_on@lemmy.world 72 points 4 months ago* (last edited 4 months ago) (1 children)

Then mcaffee_ would be appearing in unrelated sqlite-using applications

[–] livingcoder@programming.dev 5 points 4 months ago

Oh, I thought that the temp files were named by the user. If that's not the case, that these are not databases created specifically by McAfee in the temp directory, then I'm not sure what the appropriate solution should be. Obscuring the file type and how the file is used from users is still a bad practice.

[–] Daxtron2@startrek.website 38 points 4 months ago (5 children)

Why would sqlite put references to an unrelated product in their codebase?

load more comments (5 replies)
load more comments (1 replies)
[–] FlyingSquid@lemmy.world 25 points 4 months ago (1 children)

I used to tell people that John McAfee always exited a room by jumping through a window while yelling, "MCAFEE RULES!" Which he didn't, but maybe he did? Anyway, I miss that crazy motherfucker. Sometimes nuts make the world more fun.

[–] Buddahriffic@lemmy.world 3 points 4 months ago

He was an interesting one but not a good one.

[–] dohpaz42@lemmy.world 18 points 4 months ago (3 children)

Hm. The first hit on DuckDuckGo is a single entry for a guy and all it says is Contact the Business Inquiries.

You would think a better solution to this problem would be to put a message on that page stating that if you’re a McAfee user looking for information about SQLite files in your temp folder, to call the McAfee support line.

But hey what do I know, right?

[–] Killing_Spark@feddit.de 87 points 4 months ago* (last edited 4 months ago) (1 children)

Did you just expect people that call random devs at random times to actually read any information on a website?

[–] dohpaz42@lemmy.world 4 points 4 months ago (1 children)

If that information said something like “McAfee users concerned about temp files, call (800) 123-4567”, then yes. Did I suggest anything more than that? No. 🙄

[–] cm0002@lemmy.world 52 points 4 months ago (4 children)

Lol you never worked customer service or hell desk have you?

The kinds of people who need this message, you would have lost the second you said "temp files"

[–] tyler@programming.dev 9 points 4 months ago (2 children)

Well these people making these calls are finding the temp folder

[–] cm0002@lemmy.world 23 points 4 months ago (1 children)

Irrelevant, these people will find their way into folders they have no business in and no idea what it's doing and break shit

It's a big reason MS started hiding the windows folder after Win 98 (maybe 95)

load more comments (1 replies)
[–] T156@lemmy.world 6 points 4 months ago* (last edited 4 months ago) (2 children)

Assuming that they went out to look for it, and didn't just poke google with ("sqlite hacked my computer") until they found a phone number.

If they had gotten the phone number for a company called Super Queasy Lite and Easy/SQLitE instead of the developers, the company might well have received the calls instead.

load more comments (2 replies)
[–] randint@lemmy.frozeninferno.xyz 4 points 4 months ago

hell desk

Brilliant.

load more comments (2 replies)
[–] ricecake@sh.itjust.works 12 points 4 months ago (1 children)

Yup, you found the developer. That's his phone number.

It's not exactly a new change either. In 2006 people weren't going to the specific page from duckduckgo, they were probably finding the sqlite homepage, and then tracking down the contact info.

20 years later it's probably better to maintain consistency with the prefix than to change it even if it's weird.

[–] poke@sh.itjust.works 3 points 4 months ago (1 children)

Update the site with mcafees phone number and only have the real one behind a click through you have to read

[–] ricecake@sh.itjust.works 4 points 4 months ago (1 children)

So, sure that might work. More likely they forgot this bit is even here on account of it being 20 years old.

Also, never doubt the persistence of a sufficiently motivated and impatient user. I don't think needing to read something has ever stopped one.
You can literally put animated flaming text and people will click right past.

[–] mr_satan@monyet.cc 2 points 4 months ago* (last edited 4 months ago) (1 children)

During my time in a call center people would often call for invoices or messages they received. Most of my work there was reading the thing together with them. Nothing more was necessary, I just read alound their itemized invoice that they had received and it would solve their problem.

Click through pop-ups are even worse in this regard. I myself usually just automatically click No before I understand what just happened.

load more comments (1 replies)
[–] vcmj@programming.dev 9 points 4 months ago (1 children)

The way I understand the users didn't necessarily realize McAfee is responsible, just that a bunch of sqlite files appeared in temp so they might not connect the dots here anyway. Or even know McAfee is installed considering their shady practices.

load more comments (1 replies)
[–] Thcdenton@lemmy.world 16 points 4 months ago
[–] starman@programming.dev 8 points 4 months ago* (last edited 4 months ago)

There's a solution for this McAfee problem:

https://m.youtube.com/watch?v=bKgf5PaBzyg

load more comments
view more: next ›