]> git.sesse.net Git - pr0n/blob - files/faq.html
Some atomicity fix to QscaleProxy that I don't seem to remember if was
[pr0n] / files / faq.html
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE
3   html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
4   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
6   <head>
7     <title>pr0n FAQ</title>
8     <link rel="stylesheet" href="/pr0n.css" type="text/css" />
9   </head>
10   <body>
11     <h1>pr0n FAQ</h1>
12     <p>Last updated November 16th, 2008</p>
13
14     <h2>So, what is this pr0n thing anyway?</h2>
15     
16     <p>pr0n is my very own gallery system. It is used on a few different
17       host names, most notably at <a href="http://pr0n.sesse.net/">pr0n.sesse.net</a>
18       to show images I and others have taken at events I care about (some
19       more than others, of course).</p>
20
21     <h2>Why the name? Is this some kind of fetish site?</h2>
22
23     <p>The name "pr0n" (scriptkiddie-speak for "porn", of course) was just seen
24       as a very good fit for an image gallery. :-) There is no (and will not
25       be any) adult content on this site.</p>
26
27     <h2>Can I upload my own images here?</h2>
28
29     <p>Yes, you can, as long as they're related to one of the events already
30       here. Contact me (see the bottom of the page) for more information.</p>
31
32     <h2>Can I download all the pictures for viewing?</h2>
33    
34     <p>Sorry, no. First of all, please don't use any "web mirroring" program to
35       download all the images — of course, I can't stop you, but you're
36       putting a lot of unneccessary load on the system. There are two main
37       reasons for not downloading all the pictures: First, there is a
38       question of copyright; not all images here are taken by me, and I've
39       been given permission to display them here, not to pass them on. Second,
40       keep in mind that some of the events contain several gigabytes of images —
41       do you really need all that? I'd advise you to crank up the thumbnail
42       size to the maximum possible size instead; it's quite comfortable to
43       browse images on without having to click back and forth all the time.
44       (Either that, or use the fullscreen feature — the most obvious
45       keyboard shortcuts are in place, so it should be comfortable enough for
46       most uses.)</p>
47
48     <h2>I just changed thumbnail resolution, why is everything so slow?</h2>
49
50     <p>Probably the requested size was never generated before, so the server
51        has to scale all the images. As the scaling method used is geared
52        towards getting good-quality, sharp thumbnails, not speed, this can
53        take a while. It's all getting cached on disk for later re-use, though,
54        so the next time somebody views the same images in that resolution,
55        it will be snappy as usual.</p>
56
57     <h2>Why didn't you just throw up Gallery? (Or use Flickr, Picasaweb, etc.)</h2>
58
59     <p>Because it didn't fit my needs, and the same goes for all other systems
60       I've seen. I wanted something no-nonsense that would work for <em>my</em>
61       purposes — I don't want to click around endlessly just to watch some
62       pictures. Others are of course free to do as they wish, I can't impose
63       my will on anybody :-)</p>
64
65     <h2>What are the primary features of pr0n?</h2>
66
67     <p>Mostly that it's no-nonsense and just works, without being in your way.
68       Also, it has dynamical rescaling (of good quality — proper,
69       sharp thumbnails, no crappy nearest-neighbor scaling) of both thumbnails
70       and images (most client-side scaling sucks quality-wise, unfortunately),
71       an easy-to-use <a href="http://www.webdav.org/">WebDAV</a>-based upload
72       interface, cache awareness and in general good performance (being a set
73       of persistent, optimized Perl modules; I've seen it throw out over 300
74       hits a second even without the Squid in front, but I won't guarantee it
75       would withstand a Slashdot attack ;-) ). Also, it has quite OK skinning
76       capabilities, so it's able to adapt into different designs quite
77       easily.</p>
78
79     <h2>What hardware/software does it run on?</h2>
80       
81     <p>pr0n currently runs on an Intel Q9450 (quad-core 2.66GHz) with 8GB RAM and ordinary
82       SATA disks. (The server does a lot of other stuff besides running pr0n, of
83       course.) pr0n itself is a custom-made system by myself, tightly coupled
84       into <a href="http://www.apache.org/">Apache</a> 2.2,
85       <a href="http://perl.apache.org/">mod_perl</a> 2.0,
86       <a href="http://www.imagemagick.org/">ImageMagick</a> 6.x
87       (as well as various other Perl modules) and
88       <a href="http://bzr.sesse.net/qscale/">qscale</a>, using
89       <a href="http://www.postgresql.org/">PostgreSQL</a> 8.3 as the back-end
90       database for metadata et al. The base operating system is
91       <a href="http://www.debian.org/">Debian</a> lenny (ie. “testing”).</p>
92
93     <p>The Perl modules aren't really that big — we're talking about only
94       approx. 3300 lines of code (of which ~25% is the WebDAV part; I should
95       really make that a bit cleaner once). Most of the real work is done by
96       the software on which pr0n builds on.</p>
97
98     <h2>How much data is there in there, anyway?</h2>
99
100     <p>At the time of writing, approximately 160GB of image data (that is, over
101       69000 different images), plus cache, plus metadata in the SQL database.
102       (These numbers are growing rather rapidly, so they could be outdated at
103       any given time.)</p>
104
105     <h2>Can I get the source?</h2>
106
107     <p>Probably, but are you sure you can get it to work? It's
108       non-trivial to set up, as it depends on lots of odd modules and a lot of
109       custom configuring; this is not a pre-made, user friendly package for your
110       favourite Linux distribution. There is a bzr repository at
111       <a href="http://bzr.sesse.net/pr0n/">http://bzr.sesse.net/pr0n/</a>, but
112       I'm not going to hold your hand configuring it. :-) (Hint: If you do not
113       know what bzr is, and cannot find out on your own, pr0n is not for
114       you.)</p>
115
116     <h2>Will you implement feature X?</h2>
117
118     <p>Probably not; I have a lot of things to do besides programming new
119       features. Also, I'm not really sure if I want tons of stupid people
120       writing stupid comments under my images, or icky HTML pages with
121       "previous" and "next" buttons instead of just getting directly to
122       the images :-) If you really have a novel or cool feature, feel
123       free to contact me (see below).</p>
124
125     <h2>Is the upload WebDAV server RFC-compliant?</h2>
126
127     <p>Unfortunately, no. When and if somebody makes a sane framework for
128       making WebDAV servers I can use, it probably will, but ATM it's just
129       too much work for what I need it for. It would be a lot easier if
130       I only had to support WebDAV level 1, but due to silly restrictions
131       in Mac OS X' WebDAV client I have to support WebDAV level 2 as well,
132       and, well, most of that is faked. ;-) In addition, there are multiple
133       minor features in the system (like autorenaming files on name clashes)
134       that just aren't easy to adapt to WebDAV. The WebDAV service is
135       restricted, though, so I guess rather few people will get hurt just
136       because I'm not fully compliant ;-)</p>
137
138     <h2>How do I get in touch with you?</h2>
139
140     <p>Try <a href="mailto:sgunderson@bigfoot.com">e-mail</a>, or reach me
141       on IRC as Sesse on EFnet, IRCnet, Freenode or OFTC.</p>
142
143     <hr />
144     <p class="footer">pr0n v2.70,
145       &copy; 2004-2008 <a href="http://www.sesse.net/">Steinar H. Gunderson</a>.</p>
146   </body>
147 </html>