Details
-
AboutAAAAAAAAAAAAAAAAAAA
-
SkillsRust and other things
-
Locationhere
-
Website
Joined devRant on 12/8/2018
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Offset pagination is one of the biggest collective failures in software engineering.
Who wakes up one morning yearning to visit page 7218 of 100000 in the dataset? No one, right? Because that’s not how it’s supposed to work. That’s what the search feature is for. Not that developers don’t fuck it up too, but that’s the not the point of this rant.
The truth is, most developers are lazy and don’t want to properly handle stuff. It’s even made worse by ORMs, where some dumb ass will use Django to make a shitty API without a care in the world about the underlying database.
Then after a few months of ever increasing data, they start experiencing very slow queries and response times.
Gee, I wonder what it could be! Could it be that the DB is having to go through hundreds of rows just to return the 100001st row?
Designers also defaulting to Page 1 of 2322222 UI like the NPCs they are, is a big problem.
Pagination UI, if not done right, is a performance nightmare masquerading as a feature, solving a user problem that doesn't exist.
Fuck whoever came up with this bullshit.
I’ve had 3 side gigs where my task was to speed up the system and it always ended up being an issue with pagination. Once worked on a project where the dashboard toook 8 minutes. Yes, you read that right. 8 minutes to load. The company had accepted it as normal until a new manager joined and said, fuck that. Brough me onboard to unfuck the mess. No issue with Django devs, but bro, learn how to deal with databases properly for fuck's sake.
Before you came at me with, “well, what if I want to give users the ability to jump between pages”. Bro, that’s what search is for! If search is not allowing users to access the exact data they want, then it’s broken.
Pages are not deterministic anyway, because page 4 today won’t have the same data tomorrow.
I just fucking hate badly implementation pagination. Fucks up my day.6 -
As already somewhere else mentioned, even a 200,-/month paying user means loss for chatgpt. So theur business is not a little bit non-sustainable.
How will this play out? Bevause if that's true, they could never ask the price it needs and still have users.
Anthropic will be profitable by end of 2028, but that's not weird if I see so many people saying the have cloud max. But still, it has a way to go.10 -
that feel when you bought something years ago and today you realized it's more modular than you thought
awww hell yeah
like little christmas1 -
Hi y'all! I got question, for my engine map format (the map editor will be blender/blockbench) should I just use a GLTF that contains every node and extras for light and custom properties or code a blender plugin that exports a TOML like:
# === MAP ===
name = "E1M1"
description = "At Doom's gate"
# --- Objets ---
[[objects]]
path = "assets/models/tree01.obj"
position = [10.5, 0.0, -3.2]
rotation = [0.0, 90.0, 0.0] # pitch, yaw, roll in degrees
scale = [1.0, 1.0, 1.0]
[[objects]]
path = "assets/models/coin_gold.obj"
position = [5.0, 1.0, 2.5]
rotation = [0.0, 0.0, 0.0]
scale = [1.0, 1.0, 1.0]
[[objects]]
path = "assets/models/rock_large.obj"
position = [-2.3, 0.0, 4.8]
rotation = [0.0, 0.0, 0.0]
scale = [1.0, 1.0, 1.0]
# --- Static lights ---
[[lights]]
type = "point" # "point", "directional", "spot"
position = [0.0, 5.0, 0.0] # spot or point
direction = [0.0, -1.0, 0.0] # spot or directional
color = [1.0, 0.9, 0.7] # RGB, 0.0 to 1.0
intensity = 1.0
radius = 10.0 # influence radius
angle = 45.0 # angle for spot
[[lights]]
type = "directional"
direction = [1.0, -1.0, 0.0]
color = [0.8, 0.8, 1.0]
intensity = 0.6
# --- Spawn points (user-added triggers) ---
[[spawn_points]]
name = "PlayerStart"
position = [0.0, 0.0, 5.0]
rotation = [0.0, 0.0, 0.0]
[[spawn_points]]
name = "EnemySpawn01"
position = [15.0, 0.0, -3.0]
rotation = [0.0, 180.0, 0.0]10 -
Gooood morning, wood chuck chuckers! It's cooooding tiiime!
It's coooold out there! It's cold out there every day! What is this, Miami beach?
Nice job boys, you're playing yesterday's tape.3 -
https://static.molodetz.nl/dr.menti... and https://static.molodetz.nl/dr.menti... are updated.
- Sorted DATE DESC.
- Removed duplicates.
- Added multiple mentions in one comment.
As requested by @SoldierOfCode and @Lensflare.
Around every 5-7 minutes the files will be updated with new data. Could speed this up actually.
You can find source code at: https://retoor.molodetz.nl/retoor/...
No async stuff, let's not kill the server. Python native.6 -
OK, so Chatgpt is ditching the EM dashes. Sad, because that's how we easily could recognize the idiots. Also it's not new at all to let Chatgpt drop the EM dashes as been stated in article. I have a very detailed analysis about my writing and it copies it perfectly. So, they're selling us a placebo. Idiots. Also, for high quality information they relied on 1900's books? All the shit that came after that is a bullshit indeed. Not surprised...
https://perplexity.ai/page/...5 -
Companies these days have this weird fetish where they take all the best nerds with the best grades from colleges and then only accept those.
It's now the opposite of what it used to be. No humility, no 'average Joe'. That stuff belongs to the 90's, it seems. Now we have a bunch of pink unicorn overachievers and the rest of the people just can't catch a break. lol15 -
There are exactly three variations of the % symbol:
% percent, 100
‰ per mille, 1000
‱ permyriad, 10000
and per cent mille, 100000, doesn’t have a symbol anymore, just an abbreviation: pcm
We can’t even go into the other direction and reduce the number.
per deca, 10, could be % without the second circle, like °/ but it doesn’t exist as one character.2 -
Got hands-on with algebraic data types for the first time ever while studying F# today. I can see the draw, but I don't really give a shit. Why? Cus 99% of the classes I'm going to work with on a daily basis are still gonna be
DatabaseReadWriteBaseImplementation2 {
sequentialIntegerID: string
}6 -
FUCK U FUCK U MY DAY WENT FINE UNTIL I ATE MY FLAN AND IT RURNED OUT FREEZED SO ITS NOT GOOD ANYMORE AAAAAA FUCK U3
-
Everything goes behind payment walls regarding AI. Claude pro sucks, codex got limits, perplexity limited file uploads, I can hit daily limits with gemini that I didn't have before.. It started already with the limited deep search everywhere. The problem is, I'm still paying the same but got less. Wtf.11
-
yay, the deadline has been pushed back to an undefined time next year. Senior dev admitted that his approach is wrong and we will work on documentation & set clear expectations with the shareholders & define what endpoints the project needs... Literally those things I did warn him about and he ignored previously.
The stress is now a lot lower, sadly still a lot of stress from my private life :[6 -
I've achieved a new definition of "one shotting code".
There's this JS framework named tsoa or something?
I just take a look at existing API code, make subtle copies of it to create new APIs, don't even test in my local, and straight deploy to production.
And it works just fine, and no AI involved.
I feel like a god.2 -
The iPhone Pocket (£220) was inspired by "a piece of cloth", apparently.
Bullshit.
The longer version resembles a type of knot referred to in nautical parlance as a "cunt splice".
There's your inspiration.
The iPhone Cunt Splice™ was lovingly crafted in Japan by some pretentious arse. "When stretched, the open textile subtly reveals its contents."
Perverts.7 -
Who the fuck thinks that giving the user the possibility to delete/create any DB column is a good idea on a table that should have 100k+ records.
Why does this senior guy not realize how bad this is.11 -
zip > rar (personal)
Until... I had to compress files with UTF-8 in the name. zip couldn't... ?
Ugh... rar it will be this time then...
I bet there's an option in Windows to allow this, right? I guess I'll have to adopt some file compression software... ideas? I just know a couple, and have no real favourite.5 -
My senior dev pushed the backend on lab finally. It's even worse than expected.
- No documentation
- 1 query that retrieves data
- the one query is not even usable in our application without changes
- the total of 1 record that is able to fetched
- somehow misses queries he demo'ed in a meeting more than a month ago2 -
I've always been a frontend guy but this time I'm ready for the backend
And no I'm not talking about code8 -
Shamefully, after years of c++ hobbyism, I've only now discovered the ABSOLUTE BEAUTY of constexpr
I thought it was just the "new way of defining constants", so I always skipped over it as more of a basic utility than a hugely powerful part of c++
I didn't realize it could do comptime code! I can pre-compile huge arrays into my binary just like I could with comptime in zig.
Fuck me, I feel stupid as hell. More c++ rants to come, surely.6 -
I just had a recruiter reach out to me on LinkedIn for a senior front end developer job. Hybrid, 70% more than what I currently get as a Laravel developer. And I really like working with Laravel.
Fuck... I've been in this new job since September and I might just pursue this. It's SO MUCH MONEY, HOLY FUCK.
Problem is, I won't have a lot of holiday time when my lover wants to come visit me next year.8 -
I just noticed that mentions are not the only broken notifications.
The "someone commented in a rant that you commented in" notifications are also gone.
:/8 -
Today I learned the difference between Hashmap and LinkedHashMap in Java.
After 20 years of PHP development I could not undestand the difference until I hit my nose on an error.
It'hard to change yous development stack whene you are 50 year old.3 -
JoyRant build 48 adds mentions!
@whimsical/@retoor has made a mentions crawler (I guess you can call it that?).
joydev://rant/19381730
I‘m using it as a source for mentions now (because devRant's mentions are broken, in case that you didn’t know it)
It can be disabled in the settings, if devRant's mentions will come back one day.
https://devrant.molodetz.nl/preview...
The implementation was a bit tricky but fun:
Molodetz mentions don’t have avatar info, so I‘m pulling avatars from the "encountered users" store, a feature that I implemented a while ago and it comes very handy now.
The "mark as read" is done locally now, for obvious reasons.
A funny side effect is that in theory, now it should be possible to mention users directly in rants too, not just in comments. That wasn’t possible in devRant :)
Thanks to retoor and have fun!9 -
We maintain an internal java framework, and one of its components requires a configuration file with a simple field: "Timestamp = 09112025000001".
Because this timestamp is persisted in a central database for state management, the developer is forced to manually increment the value after every single test run to avoid collisions. (I know... legacy systems...)
Anyway, a developer called us because they were running into a strange issue with the framework. We jumped on a debugging session, and I asked them to pull up their configuration file.
I fully expected to see a slightly incremented number, maybe 09112025000002, or at worst, a random number to ensure uniqueness. You know, anything numeric.
Instead, the timestamp they had been using was:
Timestamp = 091120250000K
A letter. A single, non-numeric character sitting right there in a field clearly named "Timestamp." I had to blink a few times. I mean, what is the thought process here? Did they hit the wrong key and just decide to commit to it?
The worst part: That wasn't even the root cause of the bug they called us about. But after seeing that config, I had to step away for a mental health break.
We desperately need better input validation, because our "robust" framework apparently accepts a letter as a valid time marker...5 -
CMake is ugly as HELL and verbose, doesnt show you where is the error (at least for the CMakeLists) and gen a lot of files.
Autotools is for ... idek but not humans, thats for sure.
SCons is slow (Python!), but can be quite OK cuz its uses a real language, not a custom DSL.
Meson, cool but --native-file ???
And Make is the holy leader, on every Unix AND mingw.
Oh and Cons by GNU is very cool too, but hey, perl10
