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
Search - "ugly"
-
I’m surrounded by idiots.
I’m continually reminded of that fact, but today I found something that really drives that point home.
Gather ‘round, everybody, it’s story time!
While working on a slow query ticket, I perused the code, finding several causes, and decided to run git blame on the files to see what dummy authored the mental diarrhea currently befouling my screen. As it turns out, the entire feature was written by mister legendary Apple golden boy “Finder’s Keeper” dev himself.
To give you the full scope of this mess, let me start at the frontend and work my way backward.
He wrote a javascript method that tracks whatever row was/is under the mouse in a table and dynamically removes/adds a “.row_selected” class on it. At least the js uses events (jQuery…) instead of a `setTimeout()` so it could be worse. But still, has he never heard of :hover? The function literally does nothing else, and the `selectedRow` var he stores the element reference in isn’t used elsewhere.
This function allows the user to better see the rows in the API Calls table, for which there is a also search feature — the very thing I’m tasked with fixing.
It’s worth noting that above the search feature are two inputs for a date range, with some helpful links like “last week” and “last month” … and “All”. It’s also worth noting that this table is for displaying search results of all the API requests and their responses for a given merchant… this table is enormous.
This search field for this table queries the backend on every character the user types. There’s no debouncing, no submit event, etc., so it triggers on every keystroke. The actual request runs through a layer of abstraction to parse out and log the user-entered date range, figure out where the request came from, and to map out some column names or add additional ones. It also does some hard to follow (and amazingly not injectable) orm condition building. It’s a mess of functional ugly.
The important columns in the table this query ultimately searches are not indexed, despite it only looking for “create_order” records — the largest of twenty-some types in the table. It also uses partial text matching (again: on. every. single. keystroke.) across two varchar(255)s that only ever hold <16 chars — and of which users only ever care about one at a time. After all of this, it filters the results based on some uncommented regexes, and worst of all: instead of fetching only one page’s worth of results like you’d expect, it fetches all of them at once and then discards what isn’t included by the paginator. So not only is this a guaranteed full table scan with partial text matching for every query (over millions to hundreds of millions of records), it’s that same full table scan for every single keystroke while the user types, and all but 25 records (user-selectable) get discarded — and then requeried when the user looks at the next page of results.
What the bloody fucking hell? I’d swear this idiot is an intern, but his code does (amazingly) actually work.
No wonder this search field nearly crashed one of the servers when someone actually tried using it.
Asdfajsdfk.rant fucking moron even when taking down the server hey bob pass me all the paperclips mysql murder terrible code slow query idiot can do no wrong but he’s the golden boy idiots repeatedly murdered mysql in the face21 -
My son has started learning javascript at school, but he is complaining that all the $ signs are ugly! Yep, they're teaching the kids with jquery.
I don't know whether to laugh or cry 😱😱😱7 -
Weirdest co-worker... We'll not to be judgy, but I think our industry is sort of home of the weirdos, but.. there's a few over-the-top weirdees we've had at work.
First one that comes to mind was a guy that walked liked Mr. Burns, hands behind the back & chest out. He microwaved the same thing every single day for breakfast - crackers, sausage and cheese. 😖This guy would get to his tasks very slowly, wouldn't talk to anyone on our team, and would go missing from his desk a lot, sometimes for extended periods (2+ hours). He really struggled to catch on to easy tasks. He quit after a few months, thank god.
Another weirdo we had was a girl who just couldn't dress to save her soul. She would wear these ugly ass sneakers that had neon colors reminiscent of bowling shoes (neon orange and green) and would wear turtlenecks and floor length skirts that all the colors just clashed. Her outfits were uglier than your great grandma's. Myself, her and 2 other girls dressed up as the Dr. Seuss things for Halloween, but did h1, h2, etc. tags instead and she put like rope from curtains in her hair with like 10 little pony tails. Just like wtf. She would play her gameboy at lunch and not talk to anyone much. She was really bad at our job, a lot of clients complained. She would literally read a book, braid her bangs or nap at her desk. Needless to say, she was fired.6 -
start teaching people how and why to delete code instead of teaching them only how to write code
compare functional and object oriented languages as well as high level and low level languages and explain what are advantages of using certain language without going into the syntax
let people do mistakes and don’t punish people for making them but let them explain what happened, if they know what was the cause of mistake it is worth ten times than doing things correctly
mix teams per period of time instead of per project
make showcases how to modify ugly code to pretty one and what are the steps and what patterns people should look after
teach by not showing old stuff but showing where old stuff exists in modern things and why it’s important there and what’s the purpose of doing things certain way instead of flat theory based on ancient examples1 -
I'm working with some too smart junior. He rarely listens, does his own magic.
In his last MR, he did an ugly fix, 100 lines big. I told him exactly, what to check first, but nope, he's likes being a magician.
Now, I took 5 min and fixed it with single line of code.3 -
Regarding my last rant:
I have all my 3 Raspberrys set up for seti@home now, reporting to twitter and my own "surveillance" system for them.
The system is still ugly, the code is ugly but that's getting improved next!4 -
Problem: ugly-ass php spaghetti code that has a technical debt of 16(!!!) years. I mean, it's so spaghetti that has two legacy frameworks that talk to each other inside the same monolith.
Observation: after two months my colleagues, trying to refactoring stuff, they were able to touch so little stuff that it almost made no difference.
How much is worth a rewrite? Because i don't think i can make a difference on a codebase so messy.
I know that rewrite is not the answer 99.9999% of the time, but i have tons of doubts here.16 -
I was so annoyed by my acne over the past few years that today I went and got the entire area of my facial skin blasted with laser. Now, a several microns thin veneer, containing all that ugly pore openings, is removed.
Isotretinoin, benzoylperoxid, all failed. But I'm not afraid of trying newer methods. Now, serums will be used to grow new skin differently than it might have grown back on its own.
When it grows back, another laser will be used to destroy sebaceous glands. Blackheads and bumps will be physically impossible. A new skin. Even. Glowing. Artificial. Absolutely flawless, absolutely perfect. What a nice reflection of my vision on every thing I make.
When god was sitting in its room, chewing on a donut and designing the world we live in, he never thought much of humans. He got bored and went for a smoke with other gods of other worlds. Little did he know, there was a knock on his door, and a consequential rush of anxiety in realization that it was no fellow god friend, but a human. A human of the generation that figured out Theory of Everything, CRISPR and immortality. Desperate, dirty apes dared to trick silicon sand into thinking, and now they're there, not to talk, but to kill him, a privileged astral plane kid who fell short of those apes who figured everything out on their own.
Disease is natural. Death is natural.
Eternal things are artificial.6 -
Everyone and their dog is making a game, so why can't I?
1. open world (check)
2. taking inspiration from metro and fallout (check)
3. on a map roughly the size of the u.s. (check)
So I thought what I'd do is pretend to be one of those deaf mutes. While also pretending to be a programmer. Sometimes you make believe
so hard that it comes true apparently.
For the main map I thought I'd automate laying down the base map before hand tweaking it. It's been a bit of a slog. Roughly 1 pixel per mile. (okay, 1973 by 1067). The u.s. is 3.1 million miles, this would work out to 2.1 million miles instead. Eh.
Wrote the script to filter out all the ocean pixels, based on the elevation map, and output the difference. Still had to edit around the shoreline but it sped things up a lot. Just attached the elevation map, because the actual one is an ugly cluster of death magenta to represent the ocean.
Consequence of filtering is, the shoreline is messy and not entirely representative of the u.s.
The preprocessing step also added a lot of in-land 'lakes' that don't exist in some areas, like death valley. Already expected that.
But the plus side is I now have map layers for both elevation and ecology biomes. Aligning them close enough so that the heightmap wasn't displaced, and didn't cut off the shoreline in the ecology layer (at export), was a royal pain, and as super finicky. But thankfully thats done.
Next step is to go through the ecology map, copy each key color, and write down the biome id, courtesy of the 2017 ecoregions project.
From there, I write down the primary landscape features (water, plants, trees, terrain roughness, etc), anything easy to convey.
Main thing I'm interested in is tree types, because those, as tiles, convey a lot more information about the hex terrain than anything else.
Once the biomes are marked, and the tree types are written, the next step is to assign a tile to each tree type, and each density level of mountains (flat, hills, mountains, snowcapped peaks, etc).
The reference ids, colors, and numbers on the map will simplify the process.
After that, I'll write an exporter with python, and dump to csv or another format.
Next steps are laying out the instances in the level editor, that'll act as the tiles in question.
Theres a few naive approaches:
Spawn all the relevant instances at startup, and load the corresponding tiles.
Or setup chunks of instances, enough to cover the camera, and a buffer surrounding the camera. As the camera moves, reconfigure the instances to match the streamed in tile data.
Instances here make sense, because if theres any simulation going on (and I'd like there to be), they can detect in event code, when they are in the invisible buffer around the camera but not yet visible, and be activated by the camera, or deactive themselves after leaving the camera and buffer's area.
The alternative is to let a global controller stream the data in, as a series of tile IDs, corresponding to the various tile sprites, and code global interaction like tile picking into a single event, which seems unwieldy and not at all manageable. I can see it turning into a giant switch case already.
So instances it is.
Actually, if I do 16^2 pixel chunks, it only works out to 124x68 chunks in all. A few thousand, mostly inactive chunks is pretty trivial, and simplifies spawning and serializing/deserializing.
All of this doesn't account for
* putting lakes back in that aren't present
* lots of islands and parts of shores that would typically have bays and parts that jut out, need reworked.
* great lakes need refinement and corrections
* elevation key map too blocky. Need a higher resolution one while reducing color count
This can be solved by introducing some noise into the elevations, varying say, within one standard div.
* mountains will still require refinement to individual state geography. Thats for later on
* shoreline is too smooth, and needs to be less straight-line and less blocky. less corners.
* rivers need added, not just large ones but smaller ones too
* available tree assets need to be matched, as best and fully as possible, to types of trees represented in biome data, so that even if I don't have an exact match, I can still place *something* thats native or looks close enough to what you would expect in a given biome.
Ponderosa pines vs white pines for example.
This also doesn't account for 1. major and minor roads, 2. artificial and natural attractions, 3. other major features people in any given state are familiar with. 4. named places, 5. infrastructure, 6. cities and buildings and towns.
Also I'm pretty sure I cut off part of florida.
Woops, sorry everglades.
Guess I'll just make it a death-zone from nuclear fallout.
Take that gators!5 -
The good: use the hardware watchdog in your application control flow.
The bad: don't use a watchdog.
The ugly: trigger the watchdog from a fucking timer interrupt.4 -
Fucking Android 12 everybody hate it, it's ugly, and what has changed from 11 besides everything you already know. 90% of time pressing volume down + power to take a screen shot will result with volume bar popup first then screenshot, so your screenshot is dirty with volume bar.
They must have adjusted time threshold between how fast/precise press of both buttons is, and now you kind of must be faster and alwas this "I need to press 2 buttons but power must be pressed first"
So fuck you google engineers for ruining Android in every sense. I want revert path, I'm going back to 11!!
It's a first major upgrade that is worse than previous, and those ugly tiles and notifications, cool they are big for what exactly? I still can't operate the phone with hand gloves on the motorcycle with tiny keyboard buttons.
It's like everything is tiny and then grandpa style huge top drawer icons for who knows what with so fucking annoying scrolling text, for fuck sake 11 had is just perfect!6 -
Okay today I wrote a very ugly api.. No f***king json mapper will handle that response in java. The values are dynamic... Good luck to anyone who will integrate into it... And good luck to anyone who will look at my code
Project manager please always give realistic deadlines2 -
Chrome dark mode in a nutshell. After a certain update a couple of months ago, it apprently turns some pictures with darker colors in them, white. And other darker colors like dark red to a very light red.
Exapmle of chrome dark mode ruining the profile pictures of devRant.
In theory i could see its smart to also have dark mode and reverse on images, so images isnt getting fucked up.
But in practices it just seems dumb, mostly so many images like logos etc are ending up looking so weird / ugly and it only seems to do it on smaller images anyway.
Not really a rant, just something i found stupid.3 -
I know a lot of people disagree with modern art, but fuck me, at least we got away from this ugly shit.7
-
!nondev
I've been in this hostel for three weeks. Near the surfspot, close to the beach, everybody here is nice and loving, there are people from everywhere, we all speak some sort of creole between english, portugese, french, spanish, german, and so on. We exchanged recipe and song, made connection in half a dozens country, and overall had a great time.
But then there's this creep who's a violent alcoholic fuck, made creepy comment about a girl half his age, called women bitches behind their back, constantly using excuses like his mummy, his job, the booze to be a shitty person, hiding himself behind humour to annoy people around but threatened to slit my throat when we did the same to him. I swear to god if he doesn't shut the fuck up this is gonna get ugly.
Fucking psycho creep.2 -
I hate servers that only support EFI boot with a passion. Yes, legacy / BIOS boot is old, but it was so simple. I've been spending hours trying to get EFI boot working on servers with swraid-ed disks and *nothing* works without ugly hackish patches all over!
Anyone successfully got an EFI partition (/boot/efi) on an MDRaid device? D':4 -
Data wrangling is messy
I'm doing the vegetation maps for the game today, maybe rivers if it all goes smoothly.
I could probably do it by hand, but theres something like 60-70 ecoregions to chart,
each with their own species, both fauna and flora. And each has an elevation range its
found at in real life, so I want to use the heightmap to dictate that. Who has time for that? It's a lot of manual work.
And the night prior I'm thinking "oh this will be easy."
yeah, no.
(Also why does Devrant have to mangle my line breaks? -_-)
Laid out the requirements, how I could go about it, and the more I look the more involved
it gets.
So what I think I'll do is automate it. I already automated some of the map extraction, so
I don't see why I shouldn't just go the distance.
Also it means, later on, when I have access to better, higher resolution geographic data, updating it will be a smoother process. And even though I'm only interested in flora at the moment, theres no reason I can't reuse the same system to extract fauna information.
Of course in-game design there are some things you'll want to fudge. When the players are exploring outside the rockies in a mountainous area, maybe I still want to spawn the occasional mountain lion as a mid-tier enemy, even though our survivor might be outside the cats natural habitat. This could even be the prelude to a task you have to do, go take care of a dangerous
creature outside its normal hunting range. And who knows why it is there? Wild fire? Hunted by something *more* dangerous? Poaching? Maybe a nuke plant exploded and drove all the wildlife from an adjoining region?
who knows.
Having the extraction mostly automated goes a long way to updating those lists down the road.
But for now, flora.
For deciding plants and other features of the terrain what I can do is:
* rewrite pixeltile to take file names as input,
* along with a series of colors as a key (which are put into a SET to check each pixel against)
* input each region, one at a time, as the key, and the heightmap as the source image
* output only the region in the heightmap that corresponds to the ecoregion in the key.
* write a function to extract the palette from the outputted heightmap. (is this really needed?)
* arrange colors on the bottom or side of the image by hand, along with (in text) the elevation in feet for reference.
For automating this entire process I can go one step further:
* Do this entire process with the key colors I already snagged by hand, outputting region IDs as the file names.
* setup selenium
* selenium opens a link related to each elevation-map of a specific biome, and saves the text links
(so I dont have to hand-open them)
* I'll save the species and text by hand (assuming elevation data isn't listed)
* once I have a list of species and other details, to save them to csv, or json, or another format
* I save the list of species as csv or json or another format.
* then selenium opens this list, opens wikipedia for each, one at a time, and searches the text for elevation
* selenium saves out the species name (or an "unknown") for the species, and elevation, to a text file, along with the biome ID, and maybe the elevation code (from the heightmap) as a number or a color (probably a number, simplifies changing the heightmap later on)
Having done all this, I can start to assign species types, specific world tiles. The outputs for each region act as reference.
The only problem with the existing biome map (you can see it below, its ugly) is that it has a lot of "inbetween" colors. Theres a few things I can do here. I can treat those as a "mixing" between regions, dictating the chance of one biome's plants or the other's spawning. This seems a little complicated and dependent on a scraped together standard rather than actual data. So I'm thinking instead what I'll do is I'll implement biome transitions in code, which makes more sense, and decouples it from relying on the underlaying data. also prevents species and terrain from generating in say, towns on the borders of region, where certain plants or terrain features would be unnatural. Part of what makes an ecoregion unique is that geography has lead to relative isolation and evolutionary development of each region (usually thanks to mountains, rivers, and large impassible expanses like deserts).
Maybe I'll stuff it all into a giant bson file or maybe sqlite. Don't know yet.
As an entry level programmer I may not know what I'm doing, and I may be supposed to be looking for a job, but that won't stop me from procrastinating.
Data wrangling is fun.2 -
I hate CRUD operations so much.
I'm so tired of programming CRUD demo applications and then filling it with some logic only in services. It's so ugly. No domain model. Just entity, repository, service, controller.
I hope I'll be able to work on something better soon, but cmon, why are we forced to work like this.
I've recently started reading book about DDD and it's at least a bit more interesting than just writing some fancy API for database8 -
some call
- yo bro do you have some time ?
- quick cause I'm taking a dump
- I think I have been hacked, got black screen kernel panick, linux freeze seldomly I have to reboot, no internet connexion
- save your stuff and reinstall linux
- I don't have enough stockage to backup
- Then buy one and save, probably either OS is fcked up or you have some hdd problems
Time that it will take: ~30min to reinstall whole shit
Peace duration: ~2years
Later on the same day
aunt
- I can't log into windows
- Did you change the password ?
- Yes but it does not work anymore
* looking at shit
* logs successfully. Reason: interface changed after automatic update.
* wait.
* wait some more so fucking windows fucking starts
* Desktop is ugly as fck.
* Some stupid settings messed up (like high contrast set, black theme or so)
aunt (the same)
- I can't log into my (other) laptop either
* logs
* wait more more more
Guess what: automatic updaaaates. Freezes 100%cpu
* Being a very experienced user: wait before reboot because this suckass os will probably fail to boot otherwise
* Blackscreen with a percentage: Installing updates...
* reboots
* Blackscreen with a percentage: Installing updates continuing...
* finally boot (feels like a miracle windows succeeds lol)
* still slow
aunt now sleeps
* look at running process and install programs
* sees shits like camera recognition (vendor installed), candycrush
* occasionnaly get adds
time lost: 2h
peace duration: ~3month
FFS I am a dev, not a fucking trash lover
It is already pain to fix someone os, but windows is the cream of cream
It brings no ease of use for novice user
It is so insanely slow
It has stupid settings set up by default!!!!!!!! Who FFS wants candycrush and ads
The maj are so fcking hazardous. It is 2022 pretty much the same as 15y back then. Updates take fucking eternity. And needs reboot. and are not even finished!!!
I swear I am gonna stretch my ass and install linux and any fckin other toolsuite needed so they can use Micro$$ word, which is the only fucking usecase they need windows for in the first case anyway
I SO wish this OS would die
I mean, even more than safari8 -
What to do as junior, if multiple seniors (4) aren't in sync with each other. Following different convention on same client's project. Even after 3 years they didn't able come up with seemless infrastrure. The code is getting ugly day by day. No review happens. Is that normal? As they are not in sync, we, juniors are frequently getting confused what to do. What could be done? I'm planning to leave the project somehow. Don't know what to do. 😑6
-
I feel like being expected to handcode a user interface by supposed progressives is the most ass backwards idiotic tech decision with long and wide ranging consequences anyone ever farted out of the asshole god bored into their ugly faces!
Why the hell would I want to use web when I could use windows forms ?
Why is there no equivalent to the visual designer that's usuable ?
I mean I get it for more customized things
But why would I want to fuck with css when instead I could do about the same thing and store them in a settings file and point and click on a series of dropdowns and see the results as I create them ?
Why would I want to fuck around with an interface a resize destroys ?
Why would I want to mess with html tagging or tk or tcl containers when I could just drag an item into a window and update it's properties and add some fucking event handlers the stubs of which are automatically generated by a single DoubleClick??!!??
I hate it
It's slow
I want my fucking ui to be done quickly !
Am I just missing some vital tool that costs 5 grand ?16 -
Windows updated and that ugly news and interests thing on the task bar got turned back on again. Its happening too often to be mad about it. Its just annoying to check which settings microsoft decided to change because fuck what you want. We have to build a user base weather you want it or not. I dread updating to windows 11..5
-
WinUI looks nice and performs really well, I'm not a Windows fan but that's definitely a hidden Microsoft gem. It's a same which Microsoft was really late to the desktop development game and kept providing ugly frameworks until few years ago otherwise we could had a nice ecosystem on desktop apps on Windows as we have on macOS instead of tons of ugly and slow Electron based apps.3
-
i am so fucking angry, i hate all goats!!
one time when i was 7, i was at a zoo on a school field trip and we went to the farm section, and y'know what happened? one of them bit me, one of those ugly stupid goat bitches bit me. from that point on, i had a huge hatred for all goats and farm animals, if i had a choice i would wipe goats off the earth!!
if you agree make sure to join my cult!!4 -
I just got the new ARM-based macbook. I was shocked that the menu bar is sooo fucking high now, and that there is a gap between the menubar and the maximized app.
How can this be? Are they totally nuts over there at Apple? I bet Steve would fire the responsible person immediately.
Is it really that hard to be somewhat pixel-perfect?
This looks so out of place and disgusting. It literally hurts my eyes.10