I’ve been using Jooq to build my queries (and run them). Beats the hell out of writing prepared statements in strings.
Not sure what power I’m missing though, I’ve been able to do everything via Jooq that I want to do.
I’ve been using Jooq to build my queries (and run them). Beats the hell out of writing prepared statements in strings.
Not sure what power I’m missing though, I’ve been able to do everything via Jooq that I want to do.
We can please not bring the “we did it Reddit!” culture to Lemmy?
Reddit is a privately held company. Their valuation is falling because someone at Fidelity arbitrarily said so. Right now, given the current economic trends, almost every consumer tech company is taking a beating (Discord, Substack, etc), so in the larger context Reedit’s drop in valuation is expected and smart money is expecting it to rise once the economy becomes hot and more investors have money to risk on consumer companies.
The biggest value of a social media is the influence it has on culture and society as a whole, which is why advertisers want to get in on the action (think of Facebook influencing elections). Engaging on the platform and even constantly talking about the platform is a great sign of it’s lasting influence.
So no, spending an hour putting pixels on r/place is not a great way to stick it to Reddit. Constantly talking about Reddit and basically giving it free ad-space and mind share on Lemmy also does not stick it to Reddit. The original poster is correct: best thing is a blank canvas.
And ignore all the click-bait articles about how Reddit is going to fall any day now. They all basically play on your wishful thinking for clicks, they aren’t based on reality.
The point about a binary protocol is interesting, because it would inherently solve the injection issue.
However, constructing an ad-hoc query becomes tedious, as you’re now dealing with bytes and text together. Doing so in a terminal can be pretty tedious, and most people would require a tool to do so. Compare this against SQL, where you can easily build a query in your terminal. I think the tradeoff is similar to protobuf vs json.
You could do a text representation (like textproto), but guess what? Now injection is an issue again.
Another thing would be the complexity of client libraries. With SQL client libraries, the library doesn’t need to parse or know SQL - it can send off the prepared statement as-is. With a binary protocol, the client libraries will likely need to include a query builder that builds the byte representation since no developers are going to be concatenating bytes by hand, which makes the bar higher for open-source libraries. This also means that if you add a new query feature to your DB, all client libraries will likely need to be updated to use the feature.
And you’re still going to need to tune and optimize queries for this new DB. That’s just the nature of the beast: scaling is hard especially when you can’t throw money at the problem.
Quite frankly, it’s a lot of hard tradeoffs to not need to use prepared statements or query builders. Injection is still is an issue for SQL today, but it’s been “solved” as much as it possibly can.