DavidWarman pointed out, in
TWikiEnhancementRequests, the tendency for TWiki (and smalltalk, etc) to fragment. Of course, this is perfectly in keeping with the Bazaar model of software development described by Eric S Raymond in his Cathedral and the Bazaar speech at
http://tuxedo.org/~esr/writings/cathedral-paper.html
It seems reasonable that, without someone providing a vision, or a goal, for open source software development, it will drift around following several individuals' good ideas.
So, while I'm not planning to try to coordinate any massive development project like Linus Torvalds, I do have something that feels like the germ of an idea for a powerful tool based on Wiki.
See, where I work we have this incredibly expensive, and incredibly confusing, but powerful software development environment. I should probably avoid naming it, huh? Anyhow, it includes problem tracking, and version control, and all that stuff, but I, for one, had an incredibly difficult time getting oriented in the database, because there was NO documentation.
But Wiki webs can provide that documentation. Yah! What a long digression!
Here's a rough sketch of a product that could be commercially useful as a collaborative software development environment.
- CVS and RCS for the database.
- Wiki-style web with strict versioning - i.e. no one makes a change without creating a new version of the page.
- An indexing system - you can create pages that reference specific versions of other pages, so you don't lose things. So then you can create introductions, and tutorials, and stuff, that points ever deeper and deeper into the arcana of the system.
- arcana. That's a cool word. Think I'll use it more often.
- A problem tracking system. Conventions for tracking changes in the state of a problem. Avoid getting too anal-retentive about it.
- File attachment capability. Must support 'versioning' of file attachments.
- 'Snapshot' capability. Let's you do software releases. Creates an index automatically.
- need a good version comparison utility. Perhaps even automatic in some cases. Like suppose you got to an old version of a page by following the index. the left side could show the index, the right sid the current version, with changes highlighted somehow.
- you'd want to force people to associate code changes with documentation changes. But do it gently.
- and on and on... Beware of creeping featurism.
I get the feeling I'm not smart enough to figure this out all by myself... But it sure looks like, between CVS, RCS, TWiki, and email, there's a good start!
Well, eventually I must work.
--
AldenWilner - 08 Jun 1999
Sounds good - I came across TWiki yesterday, installed it and played
around a bit & like what I see
Regarding problem
tracking there's a neat little system at
http://www.gashalot.com/software/webtts/index.php3
that does alot of
the things you regularly need. There's a few glaring ommisions - such
as email submission of problems and public trouble submission forms,
but otherwise it's great. (I'm working on local extensions to allow
these for my convenience though)
We also maintain a website containing info for users, and it'd would
be great to be able to export a snapshot of a Twiki-web since that
would make maintaining the website much simpler. (I'd been thinking
of implementing something like TWiki before coming across it, mainly
based on ideas from Tripod/Geocities, but not had a chance.)
Now back to work...
--
MichaelSparks - 08 Jul 1999
4 years later, it seems vaguely appropriate to revisit this topic... Odd how some of the concepts listed above are still on the wishlist and how some have been there, done that, got the tshirt. Even more scarily though...
I was doing a spring clean of old directories, specifically this time cleaning up left over TWiki installations. On my way I came across my very first TWiki install - TWiki19990701.zip.
Browsing round it, it's interesting to note that some of the things TWiki had then a number of other wikis still don't have, and in some of the docs, some of the aspirations remain the same. The feel of the system is the same as ever, but boy, has the functionality changed. (And the irony is that I was pretty impressed at the feature set 4 years ago!)
What was there?
- RCS
- Namespaces
- templates (just the one set affecting the whole site)
- Includes (But syntax was %INCLUDE:"file":%, and was whole file)
- Basic TWiki markup (inc basic ordered, unordered, definition lists - not much else)
- Email Notification
- Login to WikiName translation
- Attachments (not under version control)
- attach, changes, delete, edit, mailnotify, oops, preview, rdiff, search, upload, viewfile, wiki.pm, save, view, wikicfg.pm
- TWikiCategories
- repRev, delRev
What wasn't there ? This is probably a non-exhaustive list, and certainly
doesn't cover functionality from plugins!
- About 16,000 lines of code
- The ability for plugins, let alone the plethora available now. (You could hack the wikicfg file if you liked though, sortof)
- TWiki markup for tables. (Any kind let alone all the newer whizzy stuff)
- Table of Contents markup
- Hmm, that's been extended since I last looked!
- TWikiVariables (there were a handful of hardcoded defaults, but otherwise none)
- No ability to pull values from URL into page
- No ability to pull meta data values into page (no metadata!)
- No customiseable topiclist generation, no topiclist generation in the core code. Weblists? Ha!
- Automatic headings
- Modularisation. (Wiki.pm had just had config taken out, but was otherwise 1 large script)
- Tainting
- Includes from URLs, from against parts of URL contents, partial inclusion of files, let alone named include sections Includes were limited to 2 levels of include.
- The SEARCH directive, let alone its plethora of options or formatted searches
- Bookview mode
- Metadata, let alone the METASEARCH directive
- WikiForms replaced TWikiCategories.
- Revision control for attachments
- Access control of any kind.
- No tools for managing webs.
- data & templates were in the bin directory, let alone any thought of data and code separation !
- No templates per web, let alone multiple skins per web.
- No WebRss feed
- No Registration - users had to manually create their own homepage and add themselves to TWikiUsers
- Support Web.
- Codev Web. (IIRC, also given one of the default topics was to be used for this!)
- verbatim (!)
- Spaced/forced/specialised links ie doubled bracketed ones:
[[these ones]]
- midpage anchors, let alone fine grained addressing
- And as noted above, all the plugins, etc.
- No twiki.org. No sourceforge! (Just sitting having fun on the starship python...)
As noted this is just a minimal list of things, but I think it's fun to note
how far things have come! (And especially considering some of the best things
with big impact to be added have been relatively small additions)
Probably enough nostalgia for now
--
MichaelSparks - 07 Jul 2003