7 ms·
Image title: > Someday ImageMagick will finally break for good and we'll have a long period of scrambling as we try to reassemble civilization from the rubble.
by outworlder 6y ago
Image title:
> Someday ImageMagick will finally break for good and we'll have a long period of scrambling as we try to reassemble civilization from the rubble.
EDIT: don't forget to always hover over the image. Half of XKCD's fun comes from those tidbits.
- WrtCdEvrydy 6y agoHonestly, yes, imagemagick is such a ridiculous dependency for everything.
- Tade0 6y agoAnd at the same time its bus factor is 1.
- AceJohnny2 6y agoWhy is GraphicsMagick [1] not a more popular alternative? [1] http://www.graphicsmagick.org/ http://www.graphicsmagick.org/
- ashtonkem 6y agoSame reason any legacy dependency remains; the cost of replacement is higher than the cost of maintenance.
- AceJohnny2 6y agoIt's meant to be a drop-in replacement, the cost of replacement should be negligible.
- yareally 6y agoThere probably still exist some weird edge cases introduced by imagemagick that the developer(s) behind graphicsmagick haven't accounted for. That is, should graphicsmagick account for quirks introduced by imagemagick? If it's meant to truly be a drop-in replacement versus one with some strings attached, I would say the answer is yes. Otherwise, you can't easily just drop it into a system and let it run. Systems built with libraries around long enough as imagemagick likely have all sorts of workarounds built in over the years for that kind of behavior and any deviation from imagemagick might break things more than one expects. We've all been bitten by libraries that claim backwards compatibility with previous versions, only to find out there's breaking changes in some non-trivial use cases the library devs didn't consider. Add those complications on top of switching to a library that is supposed to be a drop in replacement and it can get pretty messy for what seemed like a trivial task.
- wtracy 6y agoBoth projects are moving fairly fast, and regularly adding new features that are not shared. The last time I made heavy use of ImageMagick/GraphicsMagick, I was suprised how often I would find a feature present in one and not the other (often things like drawing gradients). And it's not like one has a superset of the other's features: I once painted myself into a corner and created a project that depended on both ImageMagick and GraphicsMagick.
- LeoPanthera 6y agoFormat support lags. For example, it does not currently support HEIF.
- arthurcolle 6y agoalmost nothing supports HEIF. consider: most state-run web apps that need an image upload for personal ID images, or anything else. Ugh, this happens frequently for me and just frustrates me to no end. EDIT: I suppose this is why you're saying ImageMagick is king right now.
- LeoPanthera 6y agoWell, yes. It happened only recently, but ImageMagick does indeed support HEIF. :)
- shmerl 6y agoIs it a fork?
- runxel 6y agoNever heard of it either, but the homepage provides some info: > GraphicsMagick is originally derived from ImageMagick 5.5.2 as of November 2002 but has been completely independent of the ImageMagick project since then.
- js2 6y agoI would go with sqlite, curl, zlib, or libpng. https://www.sqlite.org/mostdeployed.html https://www.sqlite.org/mostdeployed.html https://ec.haxx.se/curl/curl-users https://ec.haxx.se/curl/curl-users
- lmm 6y agoThose all do well-defined, well-understood things; they could be replaced relatively easily, and subjectively they "feel" pretty solid. ImageMagick is a complex thing full of subjectively flaky perl and it's not at all clear which things are and aren't supported by it. I'm a lot more worried about ImageMagick breaking than any of the things you list.
- jacquesm 6y ago> they could be replaced relatively easily That's leaving a pretty big loophole there and in the case of SQLite you'll need that. To re-create something that solid will take a lot of effort.
- deleted 6y ago[deleted]
- WesolyKubeczek 6y agoI keep a nice bottle of red just to celebrate the day I rip ImageMagick from the guts of the project I’m working on.
- jjcm 6y agoAs someone who's just now building imagemagick into a system I'm working on as a major dependency, what issues have you had with it?
- WesolyKubeczek 6y agoI have that issue that it's an overkill for just resizing images (which is what we're using it for; previously it might have had more uses, but now is reduced to this). Also, it gets patched for security often. Like, really often. Maybe more often than it feels comfortable to update. Then, there are major incompatibilities between versions 6.9.x (which is what is even in the latest Fedora, likely other distros as well) and 7.x (which is probably what's sane to use in this day and age). Which means that to use 7.x, you're likely to have to roll your own and tuck it in its own LD_LIBRARY_PATH. That hurts. The cherry on top in my particular case is PerlMagick. It's not installable in any way other than with the ImageMagick itself. You cannot have just Perl modules, which you "perl Makefile.PL && make && make install". When you see separate packages for ImageMagick and PerlMagick in your distro, it means that the maintainer has compiled the whole ImageMagick, then torn it apart. A corollary to that is that PerlMagick is tied to binaries it came with real tight, and updating one means updating the other most of the time. Then again, it's very likely that you use some other bindings to ImageMagick and my pain is not like your pain.
- sanderjd 6y agoYep, a big bundle of hard to compile code written in an unsafe language.
- walrus01 6y agoI agree using imagemagick to resize images is ridiculous overkill, that's using something like 0.01% of what it's capable of... But then again we also use groupware/chat programs these days that occupy more RAM on the workstation OS than the entire amount of physical RAM in all of the BSD/Linux servers of a mid-sized ISP 18 years ago.
- PaulDavisThe1st 6y ago"Honey, can we upload some new photos to my website?" [ tech spouse takes a look at the image set ... rotated, various sizes, even different formats ... reaches for convert(1) and wonders why non-tech spouse can't do this easily ]
- gpvos 6y agoI still prefer netpbm, much leaner.
- shmerl 6y agoThanks for the hint, I never knew it had tooltips with hidden messages :)
- millisecond 6y agoThere’s also m.xkcd.com if you tire of hovers.
- gpvos 6y agoOoh, thanks; useful when I'm using my phone (as the m indicates, obvs), which truncates hover texts.
- saagarjha 6y agoEarly betas of iOS 13 actually used to do this and xkcd was explicitly brought up as a reason to not truncate ;)
- zzo38computer 6y agoThere is also explainxkcd, which displays the title text underneath the picture, and has categorization, searching, explanations (in case there is anything you forgot, or do not know, or just want to read other people's commentary), transcripts (helpful for search, and also to copy the text), and more. Additionally, if you have user CSS in your browser, you can force it to display the title text even in the official xkcd web pages (CSS has a command to display the text of HTML attributes).
- spanhandler 6y agoNot the only comic that puts a bonus in the img tag alt text—I think Wondermark does, and I wanna say that at one time SMBC did that and had the red-button extra panel, both, and it may still. I always check for it when I find a new webcomic, now.
- yjftsjthsd-h 6y agoSMBC still does both.
- ldd 6y agoI use imagemagick to split spritesheets into single images for games that I make[0]. More than 1 gamedev has saved countless of hours thanks to it, so I 100% hope it never breaks. [0]: https://gist.github.com/ldd/9b576bb6f0ac99a0a7895eaf1aae7802 https://gist.github.com/ldd/9b576bb6f0ac99a0a7895eaf1aae7802
- zzo38computer 6y agoMy "ff-dice" program (together with "pngff" to decode PNG, and "ffpng" to encode PNG; these two also require LodePNG, which is included, and which itself has no other dependencies) also does that. Netpbm also does this; you can use the "pamdice" program (together with "pngtopnm" and "pnmtopng" to decode and encode PNG). However, pamdice requires creating intermediate files, while ff-dice doesn't require that. So, you have two more things to try if ImageMagick won't work.
- ldd 6y agoDo you have a link? Ironically, trying to good for `ff-dice` or `pngff` sends me back to this thread!
- zzo38computer 6y agoThere is a Fossil repository at: http://zzo38computer.org/fossil/farbfeld.ui http://zzo38computer.org/fossil/farbfeld.ui (Although there are a lot of files, you will only need to compile the files that you need, and you can delete the files that you don't need.)
- ldd 6y agoawesome!
- badrabbit 6y agoOr gpg
- dag11 6y agoThis is the funniest (to me) alt text I've ever read. Had me chuckling for a solid minute!
- tclancy 6y agoWhere’s the love for ffmpeg?
- DaiPlusPlus 6y agoffmpeg is great. I use it to transcode videos that our users upload directly from their phones from HEVC (H.265) to AVC1 (H.264) - it’s painless: just asynchronously shell-invoke it from Java, .NET, etc. I’m surprised it works well even in tightly locked-down sandboxed environments like Azure App Services (nee Azure Websites). It’s saved my org thousands of dollars we’d have otherwise spent on something like Azure Media Services. It “just works” and I’ve never had it fail to process any legitimate video file. Props to ffprobe too - that’s part of our file upload + identification + sanitation process.
- hjkhj7878 6y agoIsn't H.256 the successor to H.264? Wouldn't H.264 use more space?
- DaiPlusPlus 6y agoChrome doesn’t support H.265 by-design, even if it’s host OS supports it, because Google is trying hard to encourage people to use the (purportedly) patent unencumbered WebM format and codec instead. In summary: H.264 has the widest adoption of all modern video formats. H.265 is Microsoft + Apple. WebM is Google and Firefox. H.266 came out a few weeks ago.
- rigrassm 6y agoFor those on mobile, the https://m.xkcd.com https://m.xkcd.com url's provide a tappable alt-text link that shows these tidbits https://m.xkcd.com/2347/ https://m.xkcd.com/2347/
- saagarjha 6y agoIn iOS you can long press in the image.
- II2II 6y agoI was fumbling with a random piece of software one day, then realized that ImageMagick was installed as a dependency. "Oh," I thought, while recollections of years past flooded my mind. After a few minutes of reading ImageMagick documentation, I stopped fumbling around and completed the work with ImageMagick instead.
- Kiro 6y agoHow do you do it on mobile?
- cribwi 6y agoTry using https://m.xkcd.com/ https://m.xkcd.com/ and click the comic to toggle the alt text
- deleted 6y ago[deleted]
- johanbcn 6y agoDepends on your browser. On chrome, just long-press on the image until the context menu pops-up with the alt text on it.
- Kiro 6y agoThanks but it only shows the first part of it.
- saagarjha 6y agoOn iOS, long press on the image.