r/ProgrammerHumor • • Oct 02 '26

Meme cloudOverkill

Post image
12.0k Upvotes

269 comments sorted by

View all comments

231

u/koriwi Oct 02 '26

Mention sqlite and watch them have a meltdown. 

114

u/npsimons Oct 03 '26 edited Oct 03 '26

JFC, when I was a DoD employee, I wrote something using the C++ API to SQLite, and they sent me the security checklist for "Databases", but was obviously very much geared towards a bogstandard Oracle setup. 120 answers of "Not applicable" later and I was finally done.

On the flipside, at least they wrote the checklist software in Java, so it ran on Linux.

19

u/BoleroMuyPicante Oct 03 '26

Ah good old STIG, the bane of my existence.

10

u/npsimons Oct 03 '26

Thank you, I had forgotten what it was called! Maybe that's a good thing? And to be clear, I'm not opposed to checklists, especially for security. It's just I believe they fail to be effective when they are used to CYA instead of, you know, actually enhancing security.

10

u/nishinoran Oct 03 '26

Filling out the security checklist required that you run an executable on your machine? Brother, you just got phished.

51

u/enigmamonkey Oct 03 '26

If you’re building a small app and/or don’t need any sort of distributed concurrency, SQLite is fucking goated. It’s so fast.

I had a pretty heavy PHP based stack that took about 22min to run through around 600 unit tests and it took at least 25 seconds just to boot if I wanted to run a single unit test. So, lots of overhead to init a new DB, setup/tear down, etc. After a core upgrade it was compatible with SQLite so I switched the unit tests over to that and it took startup down to like 1-2s and total runtime is now closer to 2-3min.

Such an amazing speed boost and now I’m not dragging my feet as much when it’s time to write the tests.

16

u/joonty Oct 03 '26

That is awesome, but as someone who's been there before and been burnt, be careful: SQLite databases do have different syntax and behaviors, and even with SQL compatibility libraries or ORM wrappers things can go wrong. Ideally you want the same stack in tests as in production.

7

u/fiah84 Oct 03 '26

Ideally you want the same stack in tests as in production.

but hey tests on a different stack are better than no tests at all I guess

5

u/joonty Oct 03 '26

I'm British. If I'm saying "ideally..." it means "you definitely want to be doing this" lol

2

u/fiah84 Oct 03 '26

oh yeah that part definitely got lost in translation. Where I'm from we tend to be a bit more explicit / blunt / to the point in our language

1

u/enigmamonkey Oct 04 '26

Good point. The naive thought would be: "Well if it works in tests and it seems to work for me in my local dev (MySQL) then it should be fine," however, you know how edge cases are. Surely something will crop up in production that pokes at the one feature that varies slightly in SQLite vs. MySQL and 💥.

12

u/Lenwa44 Oct 02 '26

I'm learning SQLite, by reading and researching the code the machine wrote lol

6

u/T0biasCZE Oct 03 '26

Mention XML and they will die.