Pornography Viewer  Pornography Viewer

go to home page Student Projects full screen, hide local find menu Google search web for more information on this topic jump to foot of page translate this page with Babelfish by Roedy Green ©1996-2008 Canadian Mind Products
This essay is about a suggested student project in Java programming. This essay gives a rough overview of how it might work. It does not describe an actual complete program. I have no source, object, specifications, file layouts or anything else useful to implementing this project. Everything I have to say to help you with this project is written below. I am not prepared to help you implement it; I have too many other projects of my own.

I do contract work for a living, which could include writing a program such as this. However, 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 any way you please.

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 menonthenet.com
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.


CMP homejump to top
CMP logo
feedback Please email your feedback for publication, errors, omissions, broken/redirected link reports
and suggestions to improve this page to Roedy Green : feedback email
made with CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[65.110.21.43]
Your face IP:[38.103.63.61] Greenpeace
You are visitor number 9,919.
You can get a fresh copy of this page from: or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror)
http://mindprod.com/project/pornviewer.html J:\mindprod\project\pornviewer.html