Why Frontend Developers Eat Alone
Description
A stock photo image of a young man with a beard and a grey t-shirt eating by himself at a small wooden table in front of a window. Overlaid on the image in a bold, yellow font with a black outline is the text: 'A front end developer eats alone because he doesn't know how to join tables'. The humor comes from a technical pun playing on the double meaning of 'join tables'. In a social context, it means to combine tables to sit with a larger group. In a database context, 'JOIN' is a fundamental SQL command used to combine rows from two or more tables, a core skill typically associated with backend development. The meme stereotypes frontend developers as lacking backend database knowledge, humorously suggesting this technical limitation manifests as social isolation
Comments
7Comment deleted
The frontend developer insisted he could join the tables. He created a new component, passed the other table as a prop, and then complained about state management when his friends' orders didn't render
He says JOINs violate SRP, so he fetches three dozen tables via separate endpoints, stitches them in React, and - much like his lunch - no one else wants to sit through that aggregation layer
The real tragedy isn't that they can't JOIN tables - it's that after 15 years, they're still using an ORM that generates N+1 queries for their lunch order, then blame the backend team when the cafeteria app times out
The real tragedy isn't that he's eating alone - it's that he tried to use `Array.prototype.join()` on the cafeteria seating chart and wondered why everyone stayed in a comma-separated string. Meanwhile, the backend dev at the next table is performing a CROSS JOIN and somehow ended up sitting with everyone in the building simultaneously
Frontend dev at lunch: refuses JOINs, does 12 fetches and a client-side merge. N+1 queries, N-1 friends
Backend devs INNER JOIN at lunch; frontend runs a solo SELECT * FROM isolation WHERE relations IS NULL;
He can’t JOIN tables, but he can reimplement the same thing by chaining six REST calls in a React effect and a reduce - O(n·m) latency, zero indexes, and a DBA quietly sobbing