Sometimes images are required to ask questions. Currently images need to be stored on external servers. If the image gets deleted, or the server goes down the question could become far less useful to other people encountering it. I would expect that uploading images would cost reputation, or have a required minimum level to keep spam away. Being able to inline display said uploaded image would be a plus as well.
Uploading an image to support an answer or question should NOT cost the poster any reputation. That is crazy!
But, and this is a big BUT... The concept of the SO family allowing uploaded images to support posts would be amazing. Definitely one of my top 3 of 4 request items.
OMG IT'S HERE! IT'S REALLY HERE!!!! THANKS GUYS!
In addition; in my office some of the more popular image hosting sites are blocked by policy; so often I simply can't see posts with an image as a key part of the question.
The downside is the additional hosting/bandwidth costs... not sure how big that would be.
There may also be some legals to deal with... so I'm not 100% convinced it will happen, but interesting idea. It would be a good thing, I expect.
The problem with "External Hosting" is as follows.
Other services are often an extra slowdown to usability. Its hard to find a good service that allows all the following:
- Reasonably large images ( many have stupid filters that downscale uploaded images )
- Reasonably quality images ( many do arbitrary conversion to ~85% compression JPEG, which ruins vector graphics based PNGS )
- Permitting External linking with respectable bandwidth.
- Don't require the hurdle of having to log in to yet another web service.
- Have permanent session persistence ( For those that require you to log in, many compulsively log you out all the time )
- Have simple upload services that work and are user-friendly.
- Exist for more than 3 months and not die out and result in all your images being lost.
The above factors have lead me towards avoiding any of those "have an account" based system, due to complexity of extra action bloat, and towards those "PasteBin" mentality "JustUploadIt" web services. However, I've had problems with the latter of late, as they tend to burn out and die, leaving all the images gone.
Many of my most favoured questions and answers, the ones that incurred me spending the most amount of effort producing a good answer, involve explanatory images, because textual representations of the same data are massively useless.
Image hosting has on many of them, gone down, as services age and die, and I find myself not having backups of the images anywhere, because I have a bit of a hectic time managing so much junk. ( I don't have backups of these images for the same reasons I have not downloaded all the text of all my answers on stackoverflow and have them stored somewhere on my disk, you know, "just in case" )
For me, this posts a very real problem.
Essentially, when you don't host stackoverflow images on stackoverflow, you relinquish any control you might have had on a large part of your content. Its a gaping doorway to having content that is part of your site, that might be lost at any time, and unlike the text, which when a user deletes it could still really exist forever in the database, the images are gone forever.
At least, if stackoverflow does image hosting for stackoverflow, then the images can be preserved with the content, and you only have to worry about permanent disappearance from the internet if stackoverflow itself departs this world. Unlike all the hosting providers, which may decide one day in the not to distant future to incur a policy change, and making external linking without a hosted, advertisement impregnated iframe, a payer-only feature.
Also, on legal terms*, people can publish their images on their own servers, and put whatever license they want on the content. Because its not on stackoverflow, its not actually under the cc-wiki/attribution required license, and is thus compromising the whole openness of stackoverflow.
List of broken posts of mine due to image absense. ( Note: some of them will appear to be very pointless )
Answer on: Are people with certain Myers Briggs personality types drawn to careers in programming/development? # Spent a good couple of hours or so making the diagram here.
Question: Backing Out a backwards merge on Mercurial # Complex merge/commit history with 4 or more branch lines. Gone.
Answer on: Backing Out a backwards merge on Mercurial # Diagram of a temporary solution to the problem. Answer is now useless.
Answer on: Algorithm for detecting “clusters” of dots # Complex dotfield showing a distribution of points in a given pattern that I anticipated would be difficult to discover with code
Others Images that have gone missing:
- Answer on: Algorithm for detecting “clusters” of dots # Response to my above contribution processing the dotfield into a detected region/cluster of dots using a heatmap algorithm. ( The absence of these diagrams together makes it much worse )
Posting images can be extremely useful in certain circumstances, e.g.:
- Screenshots of user interfaces
- UML diagrams
but SO makes this very painful to do, so it's no wonder so few people post them.
For example, last week I wanted to show some screenshots of how another community site automatically adds notification when you first post to a thread, (another thing that SO doesn't do very well). I soon gave up in disgust - it was just too clumsy to be worth the trouble.
(To see the site I'm talking about, which has a fairly good image upload feature, and - as a result - benefits tremendously in the quality of the info that is posted, go to RC Groups. There're a lot of things SO could learn from here!)
I don't agree that there should be a rep cost or a minimum rep before you could post images. Why should an SO newbie be penalized if his/her first question happens to benefit from an image? A simple upper limit on image size (50-100K?) should prevent severe bandwidth consumption.
I DO agree that there should be a disincentive to post screen shots of code - as Sinan says, it's not searchable. But the existing downvote mechanism will probably take care of that.
Let's err on the side of making it easy, and fix any problems if they come up!
This is an awesome feature, getting imgur support from within Stack Overflow. However there is one problem with this approach:
IMGUR is blocked by many corporate firewalls because of NSFW pics hosted on their servers.
Is there some way you could figure out an aliased DNS name or something to accommodate those of us that use SO from a corporate workplace?
Image hosting is a job in itself, and I don't think a few broken images is reason enough to undertake such a task - very few SO posts rely on images..
It would quite dramatically increase the sites bandwidth usage also - the site is currently just gzip'd text (more or less):
Spolsky: What does our site call anyway?
Atwood: It's Stack Overflow. But what I'm trying to get to is that most of our site is text, so in a way it is a text overflow. If you look at our site, what images are we serving up? The logo, the vote buttons... I mean these are tiny, tiny images, really. We hardly... we don't do any image hosting locally. So any images you see on the site is from a third party site almost by definition. So the fact that we're going through almost 750KB/s peak of pure text, and compressed text at that, because for a long time we had the gzip religion, which is that everything that you serve should be compressed because it's just an utter no-brainer to compress 'cos you just have ridulous amount of CPU time and, like, tiny trickle of bandwidth. Plus it's just a better experience, right? You get the page faster, it's just better anyway you slice it. The only time not to do it is for some reason every CPU you have is pegged at 100%, then you don't want to be doing compression, but that's such a rare case. So we revisited it: there were a few edge cases we weren't compressing. I found out that in IIS, I think 6 and 7, it will not compress anything that's sent to a proxy, like if it sees "PROXY"...
Really, I think imageshack.us does a good job of this task already - there's images I've put on it years ago that are still around.. even StackOverflow itself uses imageshack for the images shown during maintenance (or it did until recently?)
One situation where this would absolutely make sense - Stack Exchange, specifically the "On Site" plan - you do not want to rely on external servers to host content for your internal sites!
I think this is an excellent feature request. Today I posted a question that was answered immediately because I had an image that clearly showed what I was doing wrong (Show blank UITableViewCells in custom UITableView). If image uploads were fully integrated, it'd be much easier to post them. Some auto-formatting and resizing (perhaps thumbs with a lightbox view?) would be key as well.
Requiring a rep threshold is a good idea. In addition, I think posting an image should cost 10 points of reputation so as to limit images to cases where there really is some benefit.
It is not just the bandwidth and the storage space and site responsiveness I worry about: Images provide far less value for search and retrieval of information later on. If people just post a screen capture of their editor rather than posting the code in text, the whole value of the site as a means of people with similar questions being able to locate answers via search engines goes down the tubes.
So, rep threshold + rep cost are both necessary if this idea is going to be adopted.
I put this up on MSE but Perhaps is is more fitting here since it pertains to an Area51 site. Sorry for the duplication, I'll remove from MSE if people think it is what I should do.
Over at Tex.SE (a beta from Area51) I recently posted a meta question regarding this issue. As Tex and Latex pertain to typesetting, visual is important, and often an image is instrumental for the answer.
One idea that came up during the private beta is to have TeX.SE cache images and change the link to an internal (or standardly hosted) image after a while if the surrounding answer/question doesn't get voted down/flagged as abusive (or if the question/answer gets "enough" up votes). This can function without SE having to provide a complicated way of uploading files and can also process the old posts retroactively (to avoid having externally hosted images disappear). So people who can place files online can do so and not worry about the permanence of that domain, and people who only want to include some figure from Wikipedia or similar can do so as well without having to worry about that article changing/getting deleted etc.