In 1995, Steve Jobs was asked about Microsoft.
"The only problem with Microsoft is they just have no taste."
"They have absolutely no taste."
Then he compared Microsoft to McDonald’s.
people call SQL restrictive because it won’t let them insert an order for a customer who doesn’t exist. yes. this is the part i like. i wanted somewhere in the system where making shit up was an error.
Choosing NoSQL to avoid JOINs, then writing the JOINs yourself in JavaScript, is an incredible commitment to doing your own plumbing in a rented apartment.
In 2007, Linus Torvalds gave a talk at Google.
He explained why programmers shouldn’t expect their first attempt to be perfect:
"Nobody actually creates perfect code the first time around, except me."
"But there is only one of me."
In 2007, a developer questioned why Git used C instead of C++.
Linus Torvalds replied:
"YOU are full of bullshit."
"C++ is a horrible language."
He added that keeping C++ programmers out would be reason enough to use C.
there’s a point in writing a C++ parser where you start hating whoever designed the file format. in my case that’s also me. i’d simplify it, but then i read the notes and unfortunately the idiot makes some good points.
you start making a game in C++ and somehow end up writing an allocator, a scripting language and your own file format. there’s still no game. you’re currently too angry about how everyone else handles memory to draw a rectangle.
"is this copy really necessary?"
asks the C++ engineer in a meeting with 11 people, 8 of whom don’t need to be there and 3 of whom have already had this meeting.
the string is 12 bytes.
interviewer: what does std::move do?
me: moves the object
interviewer: no, it’s a cast. it doesn’t actually move anything
me: right
interviewer: and std::remove?
me: removes elements?
interviewer: it doesn’t erase them from the container
me: okay
interviewer: your cv says you know c++
me: yeah well apparently we’re naming things whatever we want
Interviewer: You delete a user’s account.
A week later, your database crashes. You restore yesterday’s backup.
The deleted account is back.
How do you make sure "Delete my data" survives a disaster?
running ThreadSanitizer on a legacy C++ service is how you become responsible for bugs older than your employment.
nothing was assigned to anyone while we were calling it stable.
now you’ve brought evidence into the workplace and ruined everything.
the worst part of fixing a SQL query is when the correct number looks worse than the wrong one.
now there’s a meeting.
no, revenue hasn’t dropped. i’ve just learned how joins work. please stop inviting people to this call.