I'm a big fan of my keyboard
Programmer Humor
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
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
The Universal Serial Bus is pretty good shit. Plug n Play is a great feature.
microsoft: THERE STILL IS SOMETHING THAT JUST WORKS! WE NEED TO ADD AI SO YOUR KEYSTROKES WILL BE WRONGLY INTERPRETED!
Not only wrongly, but really slow as well. That'll be $5.99 a month, please.
and with an internet connection required(good luck entering your wifi password without a keyboard)
Although not really useful, I simply love RGB lighting in the keyboard.
Same, i don't like south-facing RGB though; at the right angle they peak out behind keycaps and just drill me right in the damn eye (photosensitivity sucks...). That and the lack of dedicated indicator LEDs for caps/num lock are the only things i don't like about my current keychron keyboard.
I was gonna say gcc, but you do you, bro...
I am the tool ๐ wait
Also stack overflow
Or even better, libraries of functions you've built up over time from visiting stack overflow
A really good way to evaluate an ecosystem is looking if people look into documentation or stack overflow first.
When it's stack overflow, the ecosystem always suck.
Agreed, I 100% prefer to parse through documentation than stack overflow
I prefer good documentation over stack overflow, but I prefer stack overflow over bad documentation. If other programmers are mostly using stack overflow, it means the documentation sucks
May I suggest avoiding recursive functions where possible? They are usually the ones overflowing your stack, duh.
The trick to avoiding recursive functions is to avoid recursive functions.
I'm going to count vim, or any other IDE as a tool. You don't just will your thoughts into the computer (at least most people don't, that I know).
You could count the fucking chair as a tool. This post is dumb, lol.
I really enjoy the air that I'm breading.
Couldn't code without it.
I astrally project my thoughts into the PC.
Global variables
Leatherman.
Goto is evil.
Unless you're programming in assembly
I mean, in C too.
I used it when I wrote some throwaway C++ code working with SQLite. Since it had no RAII (and I had no intention of writing my own wrapper), I had to manually cleanup multiple resources somehow. If at least one resource failed to initialize, I had to deinitialize the ones that didn't fail. It was either goto
or a bunch of flags to track what is initialized. goto
looked more elegant.
I misremembered the whole thing. It was still related to cleaning up after a failure, but there was only one resource I had to deal with. That's how it looks like:
sqlite3 *db;
int r;
r = sqlite3_open("./data.db", &db);
if (r) {
std::cerr << "Can't open the database: " << sqlite3_errmsg(db) << std::endl;
return r;
}
r = sqlite3_exec(db, "CREATE TABLE IF NOT EXISTS foo(...);", nullptr, nullptr, nullptr);
if (r != SQLITE_OK) {
std::cerr << "Can't create a table called foo: " << sqlite3_errmsg(db) << std::endl;
goto out;
}
// a few more sqlite3_exec calls;
// some sqlite3_prepare_v2 calls combined with sqlite3_bind_* and sqlite3_step calls
// for repeated queries.
out:
sqlite3_close(db);
return r;
goto in assembly? nah, might as well JMP
Yeah, it's not called goto, but it's functionally the same.
but very useful!
Guess they truely are a tool.
Brand new sentence