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 - "image editing"
-
I'm editing the sidebar on one of our websites, and shuffling some entries. It involves moving some entries in/out of a dropdown and contextual sidebars, in/out of submenus, etc. It sounds a little tedious but overall pretty trivial, right?
This is day three.
I learned React+Redux from scratch (and rebuilt the latter for fun) in twice that long.
In my defense, I've been working on other tasks (see: Alerts), but mostly because I'd rather gouge my freaking eyes out than continue on this one.
Everything that could be wrong about this is. Everything that could be over-engineered is. Everything that could be written worse... can't, actually; it's awful.
Major grievances:
1) The sidebars (yes, there are several) are spread across a ridiculous number of folders. I stopped counting at 20.
2) Instead of icon fonts, this uses multiple images for entry states.
3) The image filenames don't match the menu entry names. at all. ("sb_gifts.png" -> orders); active filenames are e.g. "sb_giftsactive.png"
4) The actions don't match the menu entry names.
5) Menu state is handled within the root application controller, and doesn't use bools, but strings. (and these state flags never seem to get reset anywhere...)
6) These strings are used to construct the image filenames within the sidebar views/partials.
7) Sometimes access restrictions (employee, manager, etc.) are around the individual menu entries, sometimes they're around a partial include, meaning it's extremely difficult to determine which menu entries/sections/subsections are permission-locked without digging through everything.
8) Within different conditionals there are duplicate blocks markup, with duplicate includes, that end up render different partials/markup due to different state.
9) There are parent tags outside of includes, such as `<ul>#{render 'horrific-eye-stabbing'}</ul>`
10) The markup differs per location: sometimes it's a huge blob of non-semantic filthiness, sometimes it's a simple div+span. Example filth: section->p->a->(img,span) ... per menu entry.
11) In some places, the markup is broken, e.g. `<li><u>...</li></u>`
12) In other places, markup is used for layout adjustments, such as an single nested within several divs adorned with lots of styles/classes.
13) Per-device layouts are handled, not within separate views, but by conditionally enabling/disabling swaths of markup, e.g. (if is_cordova_session?).
14) `is_cordova_session` in particular is stored within a cookie that does not expire, and within your user session. disabling it is annoying and very non-obvious. It can get set whether or not you're using cordova.
15) There are virtually no stylesheets; almost everything is inline (but of course not actually everything), which makes for fun layout debugging.
16) Some of the markup (with inline styling, no less) is generated within a goddamn controller.
17) The markup does use css classes, but it's predominately not for actual styling: they're used to pick out elements within unit tests. An example class name: "hide-for-medium-down"; and no, I can't figure out what it means, even when looking at the tests that use it. There are no styles attached to that particular class.
18) The tests have not been updated for three years, and that last update was an rspec version bump.
19) Mixed tabs and spaces, with mixed indentation level (given spaces, it's sometimes 2, 4, 4, 5, or 6, and sometimes one of those levels consistently, plus an extra space thereafter.)
20) Intentional assignment within conditionals (`if var=possibly_nil_return_value()`)
21) hardcoded (and occasionally incorrect) values/urls.
... and last but not least:
22) Adding a new "menu sections unit" (I still haven't determined what the crap that means) requires changing two constants and writing a goddamn database migration.
I'm not even including minor annoyances like non-enclosed ternaries, poor naming conventions, commented out code, highly inefficient code, a 512-character regex (at least it's even, right?), etc.
just.
what the _fuck_
Who knew a sidebar could be so utterly convoluted?6 -
So I had to use office and image editing tools on Linux today.
Holy mother fucking god are these things awful. Gimp, pinta, gnome paint, libre office, open office... they seem like a project some guy threw together a weekend in his bedroom. The UX is shite and makes 0 sense. They crash and lag all over the place. For fuck sake!
Also... Gimp, libre office and open office. If you want to make an alternative to a well known product (Photoshop and MS Office in this example) then just fucking copy the god damn UI as much as you can. No-one is going to go learn your fucking half ass product, people only use this shit because it's free and available on Linux.
I swear, I seriously considered sending the images to my phone and just fucking edit them there because it would have been so much easier than using this pile of shit.
Fuck!!!28 -
Uggg..... I'm trying to encode a binary file in Python which may be an image or may be an executable, and then decode it back into a file (I plan on editing it in the middle, but baby steps for now..) but nothing is working!!
My plan is to:
Open binary file.
Decode as base64, or something else that could easily handle binary.
Convert byte data to string (for editory perpousos - I won't be editing bytes, I'll be doing custom encoding but that's irrelevant for this test)
Convert back to a byte string/array (with .encode(), probably)
Write to file.
I do this, yet the output has been altered... Though I haven't touched anything..
It's so enfuriating.. x.x18 -
I created a windows 10 wallpaper for the fun of it, insult my editing skills as you wish :)
It's 4K, the full res image is here: https://imgur.com/a/LqLuKbo3 -
Yes, I have to admit, sometimes Linux is a F*KING B*TCH.
I was supposed to fucking format a pc for a close friend of mine, cause he produces music and win 10 fucked his machine up with its broken updates.
Knowing the guy is a talent I promised that by 7PM the pc would be fixed.
Not really, I'm feeling the stupidest guy in this fucking earth, cause I've been here for 2 hours, fucking trying to extract an ISO image, and nothing on this fucking planet seems to work.
Tried the graphical archives, none open de ISO, tried 7z, it gives me an error, tried fuseiso, which is recommended in Arch Linux' documentations. Doesn't work. Tried mount - o my file.iso /mnt and it says /mnt isn't in the fstab file which makes me even angrier cause I always mount everything there without editing shit. So I installed 7-zip for windows in wine, it extracts until 90% and freezes. Now I'm trying hsuebrirbwkwpxjhw9shrbejejwke and my mouth is foaming and my ear is bleeding my brains out and I don't need you shit.
Fuck you, Fuck your goddamn ISO and Fuck this faggot ass spell checker, that changes Fuck to duck and assign to asset.
Fuck it, I ain't gonna format anyones pm anymore.18 -
I’ve got to build an app in 3 weeks that handles basic image editing and async requests. It’s gotta support both iOS and Android.
It’s also gotta scan barcodes.
What should I use?
Cordova?
Cordova+ionic?
Titanium?
Xamarin?
Dart/flutter?
Try and cram it through in native java/Kotlin and swift?
Something I’m missing?7 -
My God is map development insane. I had no idea.
For starters did you know there are a hundred different satellite map providers?
Just kidding, it's more than that.
Second there appears to be tens of thousands of people whos *entire* job is either analyzing map data, or making maps.
Hell this must be some people's whole *existence*. I am humbled.
I just got done grabbing basic land cover data for a neoscav style game spanning the u.s., when I came across the MRLC land cover data set.
One file was 17GB in size.
Worked out to 1px = 30 meters in their data set. I just need it at a one mile resolution, so I need it in 54px chunks, which I'll have to average, or find medians on, or do some sort of reduction.
Ecoregions.appspot.com actually has a pretty good data set but that's still manual. I ran it through gale and theres actually imperceptible thin line borders that share a separate *shade* of their region colors with the region itself, so I ran it through a mosaic effect, to remove the vast bulk of extraneous border colors, but I'll still have to hand remove the oceans if I go with image sources.
It's not that I havent done things involved like that before, naturally I'm insane. It's just involved.
The reason for editing out the oceans is because the oceans contain a metric boatload of shades of blue.
If I'm converting pixels to tiles, I have to break it down to one color per tile.
With the oceans, the boundary between the ocean and shore (not to mention depth information on the continental shelf) ends up sharing colors when I do a palette reduction, so that's a no-go. Of course I could build the palette bu hand, from sampling the map, and then just measure the distance of each sampled rgb color to that of every color in the palette, to see what color it primarily belongs to, but as it stands ecoregions coloring of the regions has some of them *really close* in rgb value as it is.
Now what I also could do is write a script to parse the shape files, construct polygons in sdl or love2d, and save it to a surface with simplified colors, and output that to bmp.
It's perfectly doable, but technically I'm on savings and supposed to be calling companies right now to see if I can get hired instead of being a bum :P19 -
How often do we come across IT managers who don't plan their work properly?
I teach software development and programming at a vocational school. Our IT manager said that we got a certain budget influx and that he can procure new computers for our teaching facilities. I happily agreed and hinted that i would really like some new hardware with proper graphics cards so i could do a few small projects with Unreal engine, Unity3d or use adobe products without hardware lag. The new computers arrived about a week ago and then the "fun" started.
He had ordered some PCs with proper graphics cards and processing power and talked about putting them to up in my classroom, so wheres the "fun" i meantioned? He only ordered half a classroom worth of them - i guess the budget didn't allow for more. A week later i was supposed to move to a new room and was waiting for my new computers to be installed and yet the IT manager said that my computers would be moved along with me. I was appalled - what had happened to the new PCs he promised?
Turns out he had put em up in another building without notice, a teacher there wanted to do an extracurricular movie making activity (that included a bit of video editing at some point). That classroom is always in use so me getting more than 1-2 hours a week in there is nigh impossible.
In the end i got no new computers, hardware or software.... he didnt even bother to switch out the 2 "temporary" laptops i had in my classroom since 2 years ago due to a small shortage back then and even these have an old image that didnt include a third of the software i normally use.
PS. He had about another 2-3 classrooms worth of new PCs but those were promised to the other IT teachers back then....2 -
In a recent venture, I had to use an office suite and a photo editing software regularly. As a Linux user, I tried using Libreoffice and gimp. But that was just a mess. My other project partners were using MS office. Format, image alignments, fonts.. everything was messed up. Same happened wih the gimp. I know Photoshop, learnt while studying. Gimp was just no match to that. I was forced to go back to Windows. And I was surprised that the latest MS office and Adobe Creative Cloud were excellent. MS office was smoother and faster than Libreoffice.
I love linux. I have tried all the major distros and I love all of them. But I would still say that Linux is not the best option for day to day non-dev tasks. Whatever Richard Stallman and the Open Source Community say, Linux lack good softwares, at least some good document, photo, audio and video editing softwares.8 -
I've been editing sound effects, animations, image assets, creating things from scratch if I don't have what I need, all while I am hired as a software engineer.
We are supposedly an interactive contents company, while we have only two designers (none of which specializes in software design) for half a dozen projects, no sound engineer, and no animator.
I've been using Krita and Audacity as much as VS Code these days - my hobby skills I never thought would use in a professional environment. I wonder how did my predecessors work, surely not every software engineer also happens to be a hobbyist artist.4 -
Looks like vector drawing applications stopped at bezier curves and don’t want to progress much.
I made a inkscape vector image and I used svg patterns to draw some background, then inkscape stopped responding when I’m trying to open that file on mac.
I tried bunch of other vector drawing apps hoping that at least one know what svg vector patterns are, looks like vector drawing applications use bitmaps for patterns and own formats instead of following svg specification.
I even wanted to pay for illustrator 30$ per month but it can’t do it. It opened my svg file claiming there’s no background there just empty space.
When I open svg image from browser it renders correctly but editing with gui is impossible cause all of those great softwares like illustrator, vectronator, sketch, affinity designer can’t handle vector patterns.
I ended up installing inkscape on old laptop that’s running ubuntu desktop.
Inkscape can do everything I want but I still need to delete not used pattens by editing xml.
At least it handles svg better than others.
Seriously vector image drawing apps suck.10 -
tl;dr: why is it so hard to build a pc?😒
why is it so damn hard to find the right pc components for developing/image editing/gaming/...?😟
i've been googling around and watched many youtube videos on what components to buy/what to watch out for/tips/problems/etc...
i want to build a decent pc for web, mail, office, developing, running linux as VM (for experiments), edit images, doing most in multitasking (and maybe also play some games) ... basically everything, but i can't wrap my head around what to choose😟
every time when i think (for example) "ok, ryzen 5 2400G, that must be it!' there's always smth negative about it, come on!!🙄😤
i wanted to make an AMD setup for 1000€ max
i feel like as a developer/"kinda it guy" i know what i need, then again i feel dumb as fuck, not knowing what to choose and i'm almost certain i will pick smth wrong😪
do u guys have any suggestions for me/any help?21 -
I don't know what the devs at ProShow are smoking but I want some. Their product, specifically ProShow Production, is garbo. Don't get me wrong, the stuff is great for making slideshow with effects and stuff but good GOD.
+ If your image's name or the full path to the image contains anything that is not (I think) ASCII, the program will refuse to work with it.
+ If you're using non-English characters for eg. caption ("ẫ" for example) even on a Unicode font that supports that char, it will render a box. You know which box it is. You have to specifically use a font family to have it rendered correctly at the exchange of ugly-ass fonts that has been overused.
+ A majority of keyboard shortcuts are not supported while editing a slide (Ctrl + A, Ctrl + Z being my two favorite).
The best part? I'm forced to use this thing because of time constraints. I'd rather fry my puny 4GB RAM stick and crappy Intel HD Graphics 550 working with Premiere/After Effects than using ProShow. But nooope. ProShow. Fuck you. -
I finally got to code something yesterday (I've been slacking OTL everytime I open the Java IDE I use my motivation flies out the window) and I've written down some things to help me do what I need because I forget it if I keep it all in my head. Not that this is a big thing, but it's just to help me to not forget what I've learnt, because I know that'll happen if I don't code.
So I'm coding and checking my notes and all, headphones on, heavy metal blasting, I guess I could say I was in the zone.
Suddenly I get a message from my dad asking me to come to the living room. Turns out my mom had been calling me but I couldn't hear it because I had the headphones on... again 😅 (Sorry mom 😇)
So I left my things and walked to the living room. My mom wanted me to put 2 images I've made for her together. I sat on the couch and waited. And waited. I waited more than I've coded before they called me. I was getting impatient because I was trying to code and I'd been called to wait ;u; I thought I could do it in her computer because it was a simple paint thing so I didn't need the editing program I use.
When she finally showed me what she wanted me to do and I noticed that I hadn't edited one the image she provided me correctly (it didn't look good either way, I butchered the logo she'd given me because stray pixels are a thing that exist 😒 reducing the image also kinda killed it 😅). So I come back to my room and edited it again and made it look a bit better, did what she wanted me to do in the first place and emailed it to her. I went back to the living room and checked it it was good and went back.
I lost too much time and the motivation to code. Played for a bit and then forced myself to go back to coding because I didn't feel motivated (not that I don't like coding, I just lack the motivation most of the time). When I realized it it was 2h30 am and I was getting tired 😴2 -
literally the last fucking thing i need to work for my mvp is ffmpeg to fucking work. i literally need to add audio at various start times in the video, sounds so easy right? too bad its a complex, cryptic, and horrible peice of shit.
no wonder stackoverflow is full of ffmpeg garbage
imaging writing a novel to run some audio / image editing commands, jesus christ
🤡🤡🤡🤡🤡
still at it 3 hours later, this should NOT be that hard ITS ALMOST FUCKING MIDNIGHT NOW YOU DUMB FUCKS FUYCK YOU FOR BUILDING THE MOST CONVOLUTED FUCKING SHIT EVER GOD I. AM. SO. SICK. OF. SHIT. LIBRARIES. WITH. SHIT. DOCS. SHIT. USERS. AND BULLSHIT. NO. FUCKING. SENSE. APIS.2 -
I was tasked with reviving this mobile app purchased off the shelf. Initially, I was impressed with what I was seeing while perusing the codebase. I'm used to editing laravel projects written by handpicked amateurs. So this felt like a breath of fresh air. Coupled with the fact that I'd recently enquired on this very platform whether anyone has chanced upon an impressive code. All is going well, until
I start finding the multi layers of abstraction and indirection cryptic and obfuscatory; and that is coming from an idealist like me who advocates for "clean" patterns such as event emission. I wonder whether it would have helped if the emission or events were typed for easy listener tracking, instead of a black hole like vm.notifyListeners() (DOESN'T EVEN HAVE AN EVENT NAME!)
With time, I become disgusted by the tons of custom elements with so many parents
My take on production level user of the view model pattern: amazing in theory
One of the architectural decisions made on this project that had me foaming in the mouth, pulling my hair and cursing out the author's generations, past, present and future: can you believe these guys are APPENDING IMAGE DOMAINS TO THE RESOURCE? Ie the domain names are tightly coupled to the images and dictated by the api, instead of the client
If this isn't bad enough, the field names of returned entities/models don't exist on the database, of course because the stupid laravel framework abets this sort of madness by combining eloquent "scopes, attributes, and appends". A trifecta of horrors.
I eventual scaled through the horrors, but not without losing my admiration for the team behind it. App has returned to the shelves, because my company lost patience with my resuscitating it. They have the regular api authentication in place, but that's not good enough. They just had to integrate firebase as well, just because. Meanwhile, this isn't documented anywhere. I stumbled into it during my scuffle with app setup, gradle ish. Eventually got banned by firebase for "sending unusual requests". My company's last straw -
Why on earth would you create an entire new HTMLImageElement in the javascript file just to get the width and height of an image and never render it to the DOM. FFS use MS Paint, 3D Paint or ANY OTHER IMAGE EDITING SOFTWARE to get the size.
Seriously you over engineered the shit out of the easiest const you'll ever write in JavaScript.
And for the record, the width and height of the image used are only used in formulas which produce the actual width and height of the mock buttons that get drawn onto the canvas element. And don't worry, the click event handler for these mock buttons is actually the click event handler for the canvas...which checks the coordinates of where the click was made on the canvas. And if the click is over where the button is drawn in, congrats you clicked the button. -
I open Photoshop, I open an image, I start editing colors. I think to myself "I need to change units to pixels instead of inches". I open the "Preferences - Units" menu. I approach the mouse and click on the selection box for units.... My screens go crazy suddenly and I get a BSOD...
The computer reboots, refuses to repair, complains it can't write on the disk. I launch UBCD, start TestDisk, it tells me my MFT and the mirror MFT are both completely messed up and the partition contents as well... Wow wow... What the...?!
Complete reinstall.
Thank you Intel GFX system driver. -
been working on this docker thing for 2 weeks. 3 containers each running a different aervice (mariadb, nginx, wordpress) using debian as the base image (not the app image itself). Got all the configs down, all the dockerfiles down, the docker-compose yml down. Run docker-compose up, everything goes up all nice without errors.
Try to access the wordpress website. Only reachable from localhost, no atyling is served, all redirections fail… because it can’t find the local domain it is supposed to bind to. Tried editing the hosts file, didn’t worked. 3 days of googling, havent been able to find a fix. I don’t know what am I supposed to hate anymore. Is it nginx ? is it wordpress ? is it just the host machine’s dns/hosts config ? is it docker ? myself ?
I swear theres nobody in this world who wakes up one morning and happily cracks their knuckles to go write some dockerfiles.1 -
Chrome is cool but have you ever assembled a 96 megapixel png with magick?
That shit uses 3GB ram why
At least now that I reserved a third of my memory to the linux VM my hard drive isn't abused for its page file anymore2