As many of you know, I run a site for Cocoa developers called CocoaDev.
I feel like the site is in need of a refresh, for several reasons. But it's easier said than done. Here are some of the challenges:
When CocoaDev was started, it did not have the "forums" section that it now has, which means people were making Q&A style pages (WhyDoesntMyTableViewWork) starting with a question and followed by a series of answers. Useful info, but poor wiki form.
My preferred form for the wiki pages would be to have only top level topics as pages (say "NSTableView"), which would contain an overview of the class and notes on how it works, its methods, etc. More along the lines of editable documentation pages than ongoing discussions.
Since Q&A discussions are now being mostly routed to the forums, there isn't much churn on new wiki content. This is fine -- wikis should be mainly "encyclopedic". But now it seems backwards to have this active, engaged forum as a "hidden" subsection of a relatively static main site.
Even though the "mailing list mode" wiki pages are bad form, they still contain useful info, so I don't want to completely "reboot" the site and start over with no content.
Pruning or migrating the existing wiki content into any new format is going to be next to impossible. I don't want to do it. You don't want to do it. Everything is so denormalized, I don't know if it CAN be done.
What's more, the wiki engine I chose to use is showing its age. Searches and dynamically generated pages are getting slower and slower. Features like categories and versioning were hacked in as afterthoughts. There are much better engines available for the wiki.
I feel like CocoaDev users would not be happy if they showed up one day and everything was different on the site, but if the change is a completely democratic process, I worry that it will never get done (death by committee). So I'd like to propose a plan, with the intention of following through on it, but listening to your feedback first.
Here is the plan:
What is now the "forums" section becomes the main content at the root of the site. Live, threaded Q&A type discussion seems to be a big draw of the site, and I think it makes sense to put it up front.
The existing wiki becomes a read-only "CocoaDev Classic" section. It retains all of its current information, and Google hits can still redirect to it, but will be clearly marked as legacy.
A new, empty wiki will start under a "Wiki" tab from the main (forums) page. This will adhere to the desired new format and editorial guidelines.
With WWDC coming up, it seems timely to start this process, but before I proceed, I want to at least get some confirmation that you don't think this is the worst idea I've ever had.
If you have comments about this plan, either positive or negative, please email me: stevenf@panic.com
Rather than having two wikis (read-only "classic" & read/write "new") I think a better idea is to just start up the new one, and import the current content into a "classic" namespace, leaving the main namespace available for the new content. I like this because it consolidates everything a bit more, and makes for easier migration of old content if it becomes necessary. It doesn't solve the problem of the old content looking terrible after the migration, but at least it keeps all the wiki content in one place, but with the old world still segmented from the new.
Feedback has been almost entirely positive, so I'll probably go ahead with this plan once I have a dull moment -- maybe over the weekend.
W2 is a lightweight PHP wiki engine I wrote for my own usage. My design goals were:
I made the source available for anyone else who wants to tinker with it, but it's mainly for me.
I just checked a bunch of changes into the project that I've been sitting on for a while.
message: URLs, so you can just drag in an email from Apple Mail to link to itAlso, Abhi Beckert has checked in a variety of improvements, such as hashed passwords for better security. Thanks, Abhi!
"Laguna" is the name of the custom blogging engine I use for this web site.
I've gotten email from several people who were interested to see the code, and there's no real reason not to post it, so here is Laguna 2.
A few notes:
I don't make any claims that this is pretty, elegant, magical, or even useful code. It works for me, but doesn't come with tech support. :) I threw it together in a couple hours, so don't get too excited.
It's written in PHP 5, but I think the only thing I use that's not in PHP 4 is the file_put_contents() function, which is easily simulated.
The pages are templatized, but the RSS feed is not currently. It's got a bunch of stevenf stuff hardcoded into it, which you'd need to edit.
To use, just stick a bunch of Markdown formatted .txt files in the "pages" directory, and run the publish script. It will generate a main page with the last few entries, an equivalent RSS feed, an archive index of all pages, and individual archive pages for each entry.
All the configuration variables are at the top of publish.php, and are fairly self-explanatory. It's just a set of filesystem paths and URLs.
With a little work, you can hack W2 to work as an editor/admin tool for Laguna. This is left as an exercise for the reader.
There shouldn't be anything exploitable in the code, since it just generates static HTML pages. But if you do find something, please don't hack my gibson.
Email me if you do something cool with it!
Dang holmes I seen thumbnail avatars with harder action than that Ludovico Technique
-- Achewood, the untouchable emperor of web comics.
This remains one of my favorite sites.
Transmit 3.6.6 has been posted to our web site.
Shortly after releasing 3.6.5 last week, we discovered that TransmitSync (a helper application for syncing Transmit favorites over .Mac) was crashing under certain configurations and circumstances. (You would receive a "TransmitSync has unexpectedly quit" dialog if affected.) This is fixed in 3.6.6
The only other change in 3.6.6 is the restriction on usage of dot characters in a new Amazon bucket name that was added in 3.6.5 has been removed. You are still subject to Amazon S3's bucket naming rules, but we now leave most of the validation of dot characters up to Amazon.
Transmit 3.6.6 is a free download for all Transmit 3 owners.