image provider

Pornography Viewer


This essay does not describe an existing computer program, just one that should exist. This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have prepared to help you is right here.

This project outline is not like the artificial, tidy little problems you are spoon-fed in school, when all the facts you need are included, nothing extraneous is mentioned, the answer is fully specified, along with hints to nudge you toward a single expected canonical solution. This project is much more like the real world of messy problems where it is up to you to fully the define the end point, or a series of ever more difficult versions of this project and research the information yourself to solve them.

Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; or give you any additional materials. I have too many other projects of my own.

Though I am a programmer by profession, I don’t do people’s homework for them. That just robs them of an education.

You have my full permission to implement this project in any way you please and to keep all the profits from your endeavour.

Please do not email me about this project without reading the disclaimer above.

The main problem with pornography as that no one has yet invented a decent pornograph.

Pornography companies on the Internet have all but declared war on their customers. They:

  1. Make it difficult to leave the site by filling the screen with hundreds of windows. If you close each one, five others replace it. To slay the Hydra you must shut down your viewer or disable subwindows entirely.
  2. Show you nothing without some phony age verification service. These are not age verification services since many sites show quite explicit teaser material. They are pre-pay services. You can’t trust a vendor who has already lied to you. Such sites should use an explicit pre-paid gas tank where you don’t pay for thumbnails but do pay for downloads. You don’t want a rip off site to get a penny.
  3. Show you pictures of people of an age or sex you don’t want to see.
  4. Show you slow-to-download logos and artwork.
  5. Show you boring or poor quality images, with all the interesting bits airbrushed out.
  6. Show you pictures you have seen a thousand times before.
  7. Have hundreds of dead links, especially link sites such as
This project is a pornograph — a mini web viewer especially for viewing pornography. It just shows you images. It filters out the logos and text. Each picture is classified in many ways: Users of the program share their ratings. If they don’t rate, they don’t get any ratings in return. The goal of the matching program is to use other people’s ratings, who tend to rate in a similar way to the way that you do, to add new image references to your collection and rank them. These reference may be into for-pay collections. They are just references, not the images themselves, so this is legal.

The problem comes with cheating. Porn vendors will try to suck people into joining their sites to view crummy material by creating fake high ratings of poor images in the for-pay areas. You must detect these crooks and turf them out and block them from promoting other bad images on their site. Therefore the exchange process has to be centralised so you can filter out all references to crooked companies. This could bring on yet another style of cheating, one porn vendor trying to get a rival banned by cheating on his behalf However, that probably won’t happen until the viewer becomes widespread. By then, a co-operative solution acceptable to all could evolve.

Another cheating problem is simple vandalism. People will simply lie in the ratings. You have to compare ratings with the mean ratings before accepting them. You may have to randomly sample new ratings especially any clustered on one site for plausibility.

Another problem is normalising images ratings. Some people give everyone a 10 and few a 1. Others may hand out mostly 5s. To normalise, convert rating to rank, then rank back to rating so that there are roughly an equal number of 1’s, 2’s etc. The entire collection must be looked at, not just the recent entries, which might contain a disproportional number of dogs or hotties.

The program also caches all highly rated images for later ah, review.

This program is more difficult than it first appears. You can’t simply carve a jpg into squares because jpeg is not a precise compression mechanism. Each square would have slightly different colour renderings. Further, the compression, like fractals, based on examining the entire image. It is not neatly precarved into rectangles the way png images are.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number