Forum: [changelog]
Vote for this forum
It's crunch time at work so I've neglected to give a website update recently. Here are some things you may have missed if you haven't visited recently...
'Sharing' is now called 'Views'. It's hard to get the 'Share' concept across in thirty words or less. It's a personalized view of a website.
The entire comment interface was revamped to allow for comments on multiple object types. Instead of just weblog and forum articles, you may now also post comments on photos and profiles.
Profile viewing has improved, adding some more community features. It's also been linked with the buddylist stuff.
A lot of this stuff was here already in more obscure forms - I've just exposed it a bit more.
Improved the name generators. The basic name generator will also do a website lookup and see if the domain is available. I've also added some options so you can lookup names by length - in case you're trying to find a catchy domain name that's less than 8 characters. Good luck... but the tool will show some interesting candidates. I've also added the same suite of options to the stage name generator, which additionally can use a predefined first or last name.
The name generators by default will not show adult terms. You can change your profile tolerance to add these to the mix. The profile tolerance may also be adjusted to include racier random quotes on the page footer.
Profiles have started to take on a bit of a 'myspace' appearance, though it's questionable how far down this path I'm willing to take it. They will use your view/(share) theme and avatars so you can tailor the look a bit. I've also added article and comment counts in a few places so you can see at a glance who is a contributor (all three or four of them) and who ain't.
Oh, and I'll mention the music player also. I've got a bit more work before you can upload your own playlist, but that will be coming shortly. I've populated a few cool web radio channels for your listening pleasure.
I will now return you to your regularly scheduled program.
Since I'm working full time again, I've had to come up with ways of reducing the daily maintenance load of this and all my other websites. It turns out that dealing with wave after wave of comment spam is the most time-consuming chore. Since this is a moderated website, none of it ever gets through. But somebody (like me) has to look at each message that gets past the kiddie script filters and then the floodgate analyzer (the first lines of defense) and click to discard it. I'm sick of it.
This is all so the site can allow anonymous comments, but that isn't what the site is all about - and it's a very disproportionate maintenance task for such a low priority feature that gets used maybe three times a year legitimately and about sixty thousand times a year by spammers. So effective immediately, anonymous comments are gone. Site members can still comment on articles. It is only those that come from nowhere and belong to nobody (and are addressed to nobody and say nothing) that are being restricted.
The avatar selector library was brought into the modern age last week. This is all part of the re-organization of image collections, since this is nothing more than a special case image collection. Once the special cases are dealt with, I'll start to migrate the rest of the photo albums. Anybody creating an album today will be dealing completely with the new interface - the old one is only there to serve up old pages. Your photo albums can now have guest comments. Well, if you read the last paragraph, more appropriately would be 'member comments'. Eventually you'll be able to do anything with a picture that you can do with an article.
The ability to create newfeeds is now rate limited because of some unpleasant experiences I had working with a sister site to this one. Anybody can have a couple of personal feeds. If you want more, you need to get more points (by being a useful and contributing member of the community).
I think it's interesting to observe how much 'software development' is actual technical engineering vs. how much of it is 'social engineering', implementing rules and policies, weeding out anti-social elements, rewarding 'good behaviour', etc. As time goes on I'm doing a lot less of the former and a lot more of the latter.
I'm dramatically changing the way that photos are stored and accessed on this site. You shouldn't see/notice much difference, but this is a heads up just in case you do. Until I get all the old photos migrated, both systems will live side-by-side - and you might see that some photos have different URL structures than others.
A side effect of these changes is that profile photos (i.e. avatars) are no longer restricted to 100x100 pixels or less. They can now be up to 150 pixels, but it doesn't matter because that just happens to be the size that we scale all of the photo thumbnail images to. So you can upload any picture (within reason) and we'll just use the thumbnail for your profile.
How much space you can use for photos is dependant on how many points you've got. All members start off with enough space to upload a few pictures. If you want more - you have to earn it.
The 'Matchmaker' friend finder has now been installed. This allows members to find other compatible members for anything from drinking buddies or band members to marriage. The basic premise is a cooperating search, where you match your profile against what other members are searching for.
An important piece of this application is the addition of several new profile fields. If you want to be found by somebody, it will be a whole lot easier if they can figure out what you are looking for.
The default is 'Not Looking' for anybody of any age for any reason. If you want to be found, you should probably change this. (My Profile from the 'Tools' menu). Until a few people do this, the result set will likely be limited. You might also consider providing your sex and age, as these might be important to somebody trying to find you.
You don't have to be looking for romance. You can choose to be found by people of either sex for any level of interaction you desire.
Oh yeah, to make things sweeter, there's now a 'point system' for folks that contribute to the site in various ways. Contribute, get more points. I'm still figuring out the reward part of the equation, but there are very likely to be desirable rewards for top contributors. One important point reward that's in place today is that contributors get top billing in the Matchmaker.
Applicable contributions include writing articles and comments, voting on things, and inviting new folks. To make the Matchmaker thing work, it would help to have some more members. If you use the Invite link from the Tools menu, you can help us get a critical mass of matchmaker members, earn points - and you don't even have to write anything.
Hint, hint.
It's been a while since I updated the changelog. Here goes...
Added several general purpose reference tools to the 'tools' menu. Besides the world's most comprehensive chord chart and the conversion tables, you've now got a calculator and dictionary/thesaurus, etc. The dictionary is coming to you from dict.org. I tried to put a good dictionary online here, but the space requirements turned out to be phenomenal.
Added uploaded avatars to the list of things which could be censored. This hopefully will keep me out of legal trouble if somebody tries to upload a kiddie porn avatar. Registration forms now require an age. This is yet another legal compliance issue. Not sure that the law has taken effect yet, but if it does, I will need to know members' ages retroactively. You can still register invisible if you don't want anybody knowing your age (or anything else about you).
Added a few pages to send links and registration stuff to friends. Added email notification that you've got mail here; because otherwise you might not know to check it.
I changed a few hundred other little things as well, but they're escaping me at the moment.
The theme for the latest batch of changes is 'online presence'.
Online presence added - this is a little AJAX app to let you see who is online at any given time. I don't currently have a method to implement "I'm away", but it does remove you from being actively online after about half an hour of inactivity (I'll be tweaking this in the future to more accurately reflect what's going on). You will fall off the list if you leave the website or logout.
I'm also adding 'guests' to the online presence instead of just registered members. I solved a lingering problem about how to identify guests individually instead of having 27 people showing up under the name 'guest'. The reason this is important is because solving it allows guests to enter the chat room (which is yet another AJAX app).
Oh yeah - the chat rooms... Now that I've been digging into some of the more esoteric ways of querying the database, I also solved another nagging issue, which is how to tell how many people there are in a given chatroom at any given time.
So now perhaps the chat rooms will get some use, perhaps not. We'll see...
--
Next on the todo list for upcoming feature enhancements is going to be a way to share and possibly merge your subscription lists. This way you can easily configure your view of the website to contain (for example) all of the music related stuff, plus your own weblog, and everything that your best friend has subscribed to. This is light-years beyond anything you'll find at social sites like 'myspace' and might be more accurately described as 'ourspace'. That's the plan anyway. The devil is in the details. And as you may know already from watching this site evolve (at least for those of you who have watched the site evolve), you're likely to discover some even more interesting ways of using this ability which haven't even been thought of yet.
The 'categories' menu had to be split in two. One section for forums, and another for news. This follows the general site philosophy that categories are individualized and personal namespaces. OK, it also fixes a little bug which wouldn't display mixed category results precisely because of this general site philosophy.
The menu likewise multiplied and now contains a 'Tools' section for some of the stuff that was starting to clutter the main menu.
Seems like I'm always googling 'unit convertor' to find something to convert quanities of one thing into another. Problem is that I never bookmark the good ones and so half the time I end up on a mortgage convertor or some other weird thing which doesn't have the units I'm looking for.
So I solved that problem.
I also felt that a guitar chord dictionary would be a useful web tool. Mine isn't as pretty as some of the others out there, but it is reasonably complete. You want a hundred different ways to play an E chord? Go here. What's this got to do with social software? Absolutely nothing... unless of course you're a guitar player who sometimes needs to figure out where there's an E7b13b11 somewhere around the eighth fret when you're using an open tuning.
All those changes I didn't do last week? Now I did them. If you go to the news, forums or weblogs pages you can subscribe to stuff. Once you've subscribed to stuff, go to 'My Profile' and you can turn on your subscriptions.
Once you do this, you can create your own world within this website. You will only see those information sources which you have chosen to see.
Oh, yeah... as a side effect there are now private forums - which you can restrict to anybody you choose, providing that it's your forum.
If you wish to access an information channel you aren't subscribed to, you can still do it through the forum, weblog, or news menu items. Just click on the name. If it's private you won't be able to click on it.
You have no idea how much work went into this. I've convinced MySQL to do some very unnatural things that shouldn't be possible, and in fact weren't possible a year ago. I've spent a lot of time testing and debugging but it's entirely possible I may have missed or overlooked something. Please let me know via the 'bugs' forum if you run across some really weird badness or really bad weirdness - whatever.
If you don't use your own private subscriptions, you will be using the website default subscription list. This has some unique characteristics.
- It is refreshed only once a day
- On refresh, it will pick up any new weblogs and forums which are world-readable
- It will also pick up any news sources which the site admin has tagged as interesting.
There are a few side effects to these rules.
- If you create a new weblog or forum, it won't be picked up as a site subscription until tomorrow.
- If you create a private forum, it won't ever be picked up as a website subscription.
- There are a gazillion news sources, and the site admin (me) is not going to tag all of them as interesting. You'll have to subscribe to your favorite feeds on your own.
There's also a way around all the side effects. If you enable 'Auto subscribe' on the 'My Profile' page, your personal subscription list will be updated whenever you login - with any new weblogs and forums which you are able to access. You can also manually subscribe to any news feed with imported content. If you have a hard time with 'imported content' and what that means, don't worry about it right now. If it's somebody else's feed and the subscribe checkbox isn't grey, you can subscribe to it. If the box is grey, you can't.
If you can't subscribe to it, you can create your own copy of the feed and import some articles, and then you can subscribe to it.
Oh - and I finally fixed the bug that sometimes left your name lingering in a chat room after you left it.
Nope, nothing changed this week.
In particular, I didn't re-architect the entire backend to eliminate a bunch of table types that were remarkably similiar. And this change of course had nothing to do with implementing a wide range of new functionality that won't be showing up on this site in the future.
Oh yeah, and I certainly didn't change the entire article interface to deal with persistent UUID's instead of article numbers. And even if I had, this of course would have nothing to do with any of that new functionality which I already mentioned won't be showing up.
Another of the things which I didn't do was provide an option to skip all of the imported news so you could see the site just as it used to look. And I also didn't give you the option on the members page to see everything ever written by any particular member.
Nope.
However, I would caution you to enjoy for now, but not get too attached to some of these new features which of course didn't get added. The reason has to do with some of that new functionality I mentioned back towards the beginning. It's entirely possible that you may discover better ways of doing the same kinds of things in the future, and so some things might vanish as a result.
I've now got newsfeed imports turned on. This differs from the normal way of viewing external news feeds in that you can import some or all of the articles into your personal view of this site.
With this, you can build up a page of daily updates from anything that interests you.
Currently you can't read comments from or make comments on external articles unless you go back to the original site. This is where feed technology is still in chaos, but it's starting to settle down now that atom-thread is going to RFC.
The other thing missing from news articles right now is categories. This is likely to show up in a few days.
The immediate effect is that I've preloaded a few interesting feeds. This should spice up the front page a little.
Oh yeah - I also whipped up a preview mode for comments.
And a hundred other little tweaks that you'll probably never know about because if all goes well they should just work and you won't have any reason to care.
Feeds: Cleaned up the atom feeds and added support for feed-thread, which is now Proposed Standard.
News aggregator: Added voting and censorship to public feeds. 'My Sources' is now truly private, so you can get a daily feed from Hustler magazine if you want and not worry about somebody censoring it. It's your feed - nobody else can see it.
Rate My Photo: I got bored looking at the same top two or three pictures flip back and forth on the front page over the last couple of weeks. Now everybody has a chance at the front page. You can also vote on the picture you see on the front page by clicking on it.
Security: More XSS madness. Third party attacks, image execution, high-bit filtering in ASCII mode, that kind of thing.
Account: Cleaned up the account page a bit, and let you specify a weblog photo just like an avatar.
Weblogs: Weblogs now have a theme selector, so you can pretty much personalize them without any HTML/CSS. Maybe it's time for a theme contest...
Apologies to our regular visitors - I've been tweaking the menus a bit. There's now an 'action' menu for each article which will collect all the various things you can do when presented with an article. This list was growing a bit and getting out of hand - so I put it into a dynamic menu instead of littering the article with even more links and meta information.
This is a bit of an experiment, so let me know what you think. If it turns out to be an unwise choice I'll flip it back.
I'm now storing the original article URL with the article. This could get a bit confusing, so for now I'll call it another experimental feature as well. You see, some folks are viewing this page from 'macgirvin.com', some from 'baddcafe.com', and some from 'sonicamusica.com' - and a whole bunch of others. Shortly I'll be adding an article action which will allow you to view an article in its original context. That is, if somebody writes a guitar article on sonicamusica.com - but you're viewing the page from floozee.com, you'll be able to link to and view the page on the original site and see the environment in which the article was created. You would probably call this an advanced feature, and I don't expect it to get a lot of use. It could turn out useful someday if any individual website starts getting an abnormal increase in usage. This way I can spin it off on its own without disrupting any other emerging communities.
It will also be possible to link to and share with entirely different communities. I'll leave that for another day.
I already mentioned the censor and tolerance features in the comments to the last changelog.
Photo albums now have dates on them. The photo page is now sorted a) by number of votes, and then b) by reverse creation date. This puts new and/or popular stuff on page 1 instead of the oldest stuff first.
Since the avatar collections are shared amongst 'regular' and 'adult' websites, I've moved the adult oriented avatars to a separate collection with a tag to indicate that they are adult oriented. The site you are viewing this message on isn't configured as an adult site, which is a long way of saying that the inappropriate images have vanished from here.
All the teeny little cartoon avatars have been removed. I'm trying to standardize on 100x100 avatars. If you had an avatar in one of these other collections, I mapped it to the closest match I could find in the 'large' collection. If my choice isn't right for you, feel free to change it - or you can always upload your own avatar.
Added the top rated photo to the front page. Also removed some of the forum/weblog stuff (Top Articles, Recent Comments, Recent articles, Categories, etc.) from the menubar when you're not looking at articles. This is a performance issue - so that we're not wasting time looking up articles (which you obviously aren't looking at) every time you vote on a photorater page.
Check to see if new comments have been added since your last login - and 'open' the 'Recent Comments' menu if that's the case.
If a certain number of people rates an image as offensive it won't be shown, but the site admin(s) can reset the counter and also block images completely - this is to reduce mischief. The exception is the top rated photo on the front page - since this has higher visibility, offensive ratings have a more immediate impact.
Image uploads - now preserves the last used server folder name so you can upload to the same folder repeatedly instead of being required to change the folder name each time.
Weblog URL's now have 'weblog' added to the path (i.e. sitename/weblog/mike instead of just sitename/mike). I mentioned this change was necessary several months ago but finally got around to doing it. This was to prevent a naming conflict if somebody chose something like 'forums' or 'tags' as a username; since these are already used as system paths and could have made their weblog inaccessible. The old paths will still work - provided they don't conflict with system paths. If that's the case the system path will win.
There will likely be a few more bug fixes and useability enhancements, but this concludes the development phase of version 3.0.
Photorater has been added to the menu. You might recognize this as a 'hot or not' clone - but it isn't exactly a clone.
First of all you can rate things besides guys and girls. Also you can provide more than one photo to rate. But the biggest difference is that we don't restrict you to 1-10 votes. Here you can rate something a '0' or an '11'.
To quote Spinal Tap (remarking about a famous guitar amplifier), 'This one goes to 11 - it's one louder'.
Voting and ranking implemented
This is a rather large body of work. You may now vote on articles and authors and forums and photo albums (in fact it goes way beyond this, but these are implemented today).
You may vote for as many items as you wish in any or all of the voting categories. The only gotcha' is that you can only vote once for any particular item. Otherwise, it would be called ballot stuffing, which we frown upon.
Oh, did I mention that you can vote for yourself?
The purpose of this isn't to have a popularity contest, although that is certainly possible. The purpose is to shape the site by virtue of what the membership finds interesting and/or entertaining and/or useful. This is democracy at work. Those items with the highest number of votes will find their way to the top of the lists which contain them. In this way future visitors will find the most interesting content more easily. Anybody providing content can also get an idea of what kinds of content are most likely to be well received.
So all you have to do is click on stuff you like and it automatically makes you a managing editor.
URL field added to comments.
Some more large avatars.
Added previous and next image viewing in photo albums to save going back and forth to the index.
Behaviour modification on the side menu. Previously menu blocks would be made visible if you clicked on them, and made invisible if you clicked them again. (The default state of some of the items is invisible to avoid cluttering the page.)
- Now the menu block will unconditionally open if you mouse over it, and only toggle state if you click on it. This is all because auto-discovery of the dynamic menus was pretty low. Visitors just thought there weren't any recent comments, forum categories, whatever.
Investigations into Atom-thread support. It's not too difficult, probably about an hour of work. But I'll wait for it to be blessed by the internet council of elders. I'm a bit critical of the implementation, but I've been around this game long enough to know that you don't always get a clean spec. The most you can ask for is something that's technically capable of doing the things you need it to do, and that you don't have to re-arrange your entire data structure in order to implement.
Added a very basic private messaging capability. I mean besides the anonymous email gateway, which I had already - and the adult version of private messaging; which I don't have enabled on this particular site. I think I'll turn off the anonymous email gateway since I was mostly using that as a fill-in until I created a private messaging capability.
But be warned - this is not yet a feature-rich messaging system. Right now it just consists of the pure basics. Send a message, view messages. I've got a lot more work to do on it.
A couple more avatars - including a default avatar to be shown when either a) a comment is written by a non-member or b) any member who doesn't have an avatar chosen.
Most of the work this week has been under the covers optimizing and organizing the article tables. The major change is conceptual at this point - to remove the need for a collection identifier (weblog owner, forum name, whatever) from the article itself. A collection doesn't belong to an article, an article belongs to a collection. While seemingly a minor logic nit, it makes a large difference in site organization. In fact doing it this way makes the displaying of articles more difficult, which is the reason why storing collection info with the article made sense originally. Going forward, to display an article, it will be necessary to track down which collection or collections it belongs to in order to evaluate their properties as they relate to the article.
In fact, this has to be done anyway. But that's where it gets interesting. An article may belong to more than one collection. Collections may have permission restrictions. In an ideal world, articles would also have permissions. They will eventually, but that would cause some performance issues at the moment. So I'll start with the collection.
Site change: Macgirvin.COM has returned as a site host for this application. This is slightly amusing because that's where it all began. I know, the theme is looking a bit tired - I'll make it better in time.
Latest modifications:
Atom 1.0 feeds added.
Forum level 'Recent comments' added (previously this was only available on weblogs)
Photo albums released.
Photo collections will be automatically unpacked if uploaded in either 'tar' or 'zip' formats. This is ignored if any member files contain relocated or absolute path components.
New theme - 'darklord'
Added action icons on user/member page - detail view and adult interaction (if configured with $ALLOW_SEX)
Feeds now contain the entire message payload within the respective body element. This includes comments, comment avatars, comment links, and attachments. I was dissapointed how many external aggregators fail to handle attachments consistently (or at all), and very few use the 'comment' RSS element (at all). This allows an accurate content mirror using standard feeds.
Forum table implemented. (Previously forums were article attributes.) This allows forums to have descriptions and permission structures, although more work needs to be done before forum permissions are turned on.
Help page for compose is back after a lengthy absence.
Security: Uploaded PHP files are converted to .txt
Fixed a couple of typos (main page and 'members') that slipped in which rendered correctly but gave the w3c validator some grief.
that he was entering a horse in a race the following week and the three
assembled guys had the job of assuring that the gangster's horse would win.
They were to reconvene the day before the race to tell the gangster how they
each propose to ensure a win. When they reconvened the gangster started with
the engineer:
Gangster: OK, Mr. engineer, what have you got?
Engineer: Well, I've invented a way to weave metallic threads into the saddle
blanket so that they will act as the plates of a battery and provide
electrical shock to the horse.
G: That's very good! But let's hear from the chemist.
Chemist: I've synthesized a powerful stimulant that disolves
into simple blood sugars after ten minutes and therefore
cannot be detected in post-race tests.
G: Excellent, excellent! But I want to hear from the physicist before
I decide what to do. Physicist?
Physicist: Well, first consider a spherical horse in simple harmonic motion...

Digg
Delicious
Netscape
Technorati
Oh yeah - if you happen to be viewing this website via 'macgirvin.com', it will look a bit different now. No external news feeds, just articles originating here; like the old days. I've been tweaking the site subscription lists and making them more configurable. If you find all the extra news articles interesting, please visit one of the affiliate sites where they are intact - such as 'meandeu.com' or 'floozee.com'.
Or... subscribe to any or all the sources you desire from any of these sites or create your own. The cool thing is that you're in control of what you see, and it can be anything you want. For one person this could be a race car site. For another a pet rescue site. You can turn off this forum and create a 'cello' forum, and only subscribe to newsfeeds about aliens and 50's TV shows. Now are you starting to understand why this website is so cool?