Try doing a book picture like http://secretweaponlabs.com/words/wp-content/uploads/taft.jpg with JS to turn pages.
The redesign
There is a new redesign page!
Homepage
kryogenix.org
Ordinary weblog posts
- k.o/days/2004/11/15/slug
- k.o/days/2004/11/15
- k.o/days/2004/11
- k.o/days/2004
JSTextile previews, using someone else's updated version of the script, since mine's broken. Clicking "submit" disables the form with JS, so no-one submits twice. Automatically remember someone's name/url details with a cookie. Work like Rob deAlmeida's stuff; that's basically great, the way it hides away the input fields if you're "registered" and gives you the "forget my details". It should, if you're registered, show your gravatar as well as your name.
Can't do gravatars because they work on email address and we don't capture email address.
Handle code in comments. How? Perhaps: parse comment for tags and convert them all to escaped lt; and gt; stuff *before* the Textile parsing: this does mean that you can't post real HTML A tags and whatnot, though. Also, code should be marked up as such, and multiple lines of code should be wrapped in PRE tags as well as CODE tags. How do we do this? Is any line with an angle bracket in it code?
Photo gallery
* k.o/pictures
* k.o/pictures/2004/12/24
A picture gallery of pictures matching that date
* k.o/pictures/tags/tag1/tag2/tag3
Show all pictures with all of tag1, tag2, tag3
* k.o/pictures/cat1/cat2
Show all pictures in cat2, which is inside cat1
* k.o/pictures/2004/12/24/picturename
Links to an HTML page showing that one picture and associated metadata.
* k.o/pictures/2004/12/24/picturename/image
The actual image displayed on the above page
What about combinations? How do you show "all pictures in cat1 with tag tag1"? What about "all pictures in cat1 with tag tag1 on 2004-11-21"?
Categories are an album name, pretty much. So, a picture taken of me and Andy on holiday in 2004 would have category holidays/men-with-big/thrones and be tagged "me" and "Andy Spencer" and "Boscastle", say; a picture taken of Niamh at the fair might be in category family/events/spooktactular and be tagged "Niamh".
Are annotations tags? If I annotate the me-and-Andy picture with a box around Andy, do I have to tag the photo "Andy" as well? No. That'd be crap.
So maybe make everything just a search term; all categories are tags, all dates are tags. So the me-and-Andy picture would be tagged "2004", "08", "03", "men-with-big", "thrones", "me", "Boscastle", "holidays", and would have an annotation for "Andy Spencer", meaning that it would also be implicitly tagged "Andy Spencer". Problems with this are that you can't have hierarchical categories, and dates are awkward; k.o/photos/2004/10/12 and k.o/photos/2004/12/10 will resolve to the same set of photos. So maybe the URL should be k.o/photos/tag1/tag2/YYYY/MM/DD? Dates get special handling, and you can know that they're dates because they're at the end of the URL (for multiple-post pages) or at the beginning (for permalinks). Permalinks will still be as shown above, and you can't add tags AND a date AND a slug and get a valid URL. So all URLs are either tag1/tag2/tag3/YYYY/MM/DD (with all items optional) or YYYY/MM/DD/slug for a permalink? Still no hierarchical categories, which is a pain: want to put "thrones" inside "men-with-big", since otherwise you can't have two tags named the same in different sections. Unpleasant lack of symmetry, too; then again, should a "gallery" page which only resolves to one photo be shown as a gallery page or as a single-image page? I think gallery page.
No hierarchical categories is bad: can't go to "family" and get a list of all photos in family and all subcategories. A Master Taxonomy List Of Categories would help here, but then you have to update it all the time for different tags. Don't want to have to post a photo with tag "holidays/men-with-big/thrones", that's a pain.
It's not too much of a pain if that tag already exists, though. Then all we have to do is pick it from the list, and you only have to create it once. The http://www.kryogenix.org/photos/family link has to also contain links to photos containing family/* as a tag too. }
Drag-and-drop tags onto photos to set a tag. Again, an online DHTML iPhoto, basically. A pain; you need to have security so not everyone can edit my photos.
Dates *must* be "date taken", not "date uploaded". Sort this out in the metadata, but pyblosxom has to read the metadata date, not the file date. File dates are a pain in the arse in pyblosxom anyway. Doing this in subversion would be even harder, because you can't lie to subversion about the date that something was added to the repository.
Images should have a nice dropshadow thing applied with CSS (see Dunstan's page on how to do it).
Images also have annotations as per my script.
If we're doing it in pyblosxom or similar, then each image is actually three files: foo.{png,gif,jpg}, foo.metadata, foo.thumb.{png,gif,jpg}. Can't embed image info in image itself, because not all images are jpgs (screenshots and so on will also go in the gallery). Image uploader or local gallery or whatever should parse EXIF data out of jpgs and add to metadata file, though.
Uploading images
Still don't know how best to do this. Need to mark up images for annotations somewhere, add metadata, etc. If this is done on my machine then the gallery exists in two places; if done on k.o then I have to have editing online, which is a bit iffy. Plus, how do you do it? JS blogger API client, perhaps, which edits the metadata file. So, plugging in the camera just uploads the pictures immediately into a "uncategorised" location with the only metadata being that populated from the EXIF data? Need a really easy way of uploading images, so I can upload an arbitrary image like a screenshot. A bookmarklet, perhaps? Can't really do that because you can't do file uploads from bookmarklets, and the server can't see local images and so can't fetch them itself. Draggable-to Gnome app? Then I can't post images from places other than my computer, like work. Subversion backend would solve this because the post directory would be available as webdav, so could be mounted by Nautilus and by Windows Explorer as a web folder, but then there would be no metadata file at all (rather than one that's present but empty). Subversion post-commit hook could create it?
Projects weblog
Might not need this in a world with this wiki in it!
SitePoint blog
Syndicate SP blog posts directly into the stream (in a category, perhaps)? Must be indicated differently; a pretty icon like Dunstan's comments, maybe? But there should be a link to the corresponding SP blog too, which you can't do with a CSS background-image.
Linklog
A proper archive for the linklog; at the moment there isn't one! NOW USES DELICIOUS
Random extra stuff
Implement {http://www.gravatar.com/ gravatars}Also implement auto-fetched photos from someone's FOAF file, if we can find one- Add a "post and subscribe to this comment thread with bloglines" button, if it's possible. More investigation needed; it is possible to do it but it won't add the subscription into a folder, tragically
- Fix URLs from commenters so that "www.kryogenix.org" gets rewritten to "http://www.kryogenix.org/" instead of being treated as a relative link
- Icons for post categories so you can see at a glance what category a post is in. Might look a bit too much like Slashdot.
- design: like the one on my phone
- markdown parser for posts? There's one for Pyblosxom already, yay.
- A word inside three curly brackets (or something) in a post should be a link to this wiki
- Discordian dates (using the parser). Hail Eris!
- Use updated versions of the scripts: new nicetitles, new sorttable, etc.
- on-the-fly spellchecking in the comments box with the web service, or some other web service, or one hosted on k.o?
- Authentication for comments. Difficult. See Simon's thoughts and additional prototype for more.
- Proper blockquotes with cite: see Phil Wilson
Favatars: show the favicon at the URL- OpenID