Thursday, August 31, 2006

agilewiki.org is back up

Yesterday was not a good day. I was out sick, the database at agilewiki.org was corrupted and the recovery was running out of ram.

Today everything is gold. I'm feeling much better, I cut the cache size in half--the recovery now runs to completion and agilewiki.org is back up. With no data loss.

Bill

Tuesday, August 29, 2006

The all new look of AgileWiki3--looking very fine

Finally started using some of the great capabilities in AgileWiki. I've redone the main page, the Ark topic and 4 topics under it. Nice formating and even pictures added.

You can really do some nice things with this wiki. But do see for yourself!

http://agilewiki.org

Monday, August 28, 2006

changing focus (as usual)

I'm going to put off working on applications for a bit. Now that the core agility features are in place, it is time and past time to reorganize the current content. To date, I've just tossed things anywhere and that needs to be changed. The documentation itself serves as an example of how to use AW, and right now it is a pretty bad example.

And, as always it seems, the GUI needs more work. It is much better now, but with every major improvement, the smaller issues become more significant. And this really is an area which needs substantial improvement.

My thought is that developers, which are my real target audience, are not going to be attracted to a product that no one wants to use. Gotta change that.

Hopefully I can get some of these things out of the way soon and then really focus on applications. The biggest piece, functunality, is at least taken care of. Now we just need to address the rest.

Bill

Saturday, August 26, 2006

a new home page for agilewiki.org

http://agilewiki.org/

I think the new home page will be helpful, as it addresses the various facilities that are available and gives you something of a feel for what you can do with the AgileWiki.

Bill

missing archives, future intentions

The compstrm/agilewiki project at Sourceforge has now been restored and renamed again as agilewiki. Everything is working including the mailing list and I've done the 3.3.1.0 release now in the usual way. But...

The mailing list archive is missing. And of course SourceForge support will not be available again until Monday, their time.

With the release of 3.3.1.0 we've now got the core features of AW2 reimplemented, all be it faster and with support for applications this time 'round. Still missing some big things, like email, but that will need to wait.

Right now the emphasis is on applications, documentation and GUI.

In the area of applications, I've some ideas on how to make the Simple Accounting program more useful, building on what I've learned while working on orderChildren, move and copy.

The key piece of documentation needed right now is on the view command. But this needs to be highly visible and from a perspective of various types of users.

As for the GUI, the servlet needs to support a back button like the SwingClient--as the browser back button simply does not work with frames.

Bill

Friday, August 25, 2006

release 3.3.1.0!

The compstrm/agilewiki project at sourceforge is going to be restored. So I've no download page, no mailing list and no forum for anouncing releases. Anyway, here goes:

https://agilewiki.dev.java.net/servlets/ProjectDocumentList?folderID=5848

You will find the release at the above URL. This release includes an enhanced orderChildren command, the move command now has a built-in browser, and then there's the new copy command.

Enjoy!

Bill

copy this!

The copy command, complete with a nice built-in browser, is ready for release. Turned out that last part was much easier than anticipated and did not need to be descriptor driven after all. It is interesting to note that,except for structural links, the only hard links being used were in the Include CSec. And that made things easy.

Also, except for the commands driving the GUI, the amount of code is quite small, thanks to a powerful API. And that helped a lot in the debugging.

So it looks like release 3.3.1 will be coming out soon. :-)

I'll note that this pretty much wraps up the Agile Wiki's core capabilities. If you don't count email and cabinet sharing across arks. And copy adds a LOT to the agility of AW--it is the only way to move structures across cabinets--including entire drawers.

Bill

slow copy

Got up at 5AM this morning. Hey, its the end of the week so I got up late, OK? Managed to get some work done anyway.

Copy is now in the home streatch. The code is now done for copying structures of topics, lsecs and csecs. All that's left is to transcribe the content, including internal and external links. Of course, that's the interesting part as it needs to be largely metadata (descriptor) driven.

Again, I'm still targeting this weekend for the completion (and release) of the copy command.

Bill

Thursday, August 24, 2006

past copy

Well, I got up before 5AM today and put a bit of time in on the copy command. Added provisions for making copies of eariler states, not just present ones.

Overall it is going well. I'm done with the GUI and now focused on the API. But I am finding AW3 ever so much richer than AW2. Rolons can NOT now be copied without a valid DU. And things like Tables may require special logic, as the description of the rows is in the Table's DU.

One of the new complications here is that things like the Include CSec have embeded rids. That's all got to be handled by either specialized logic, metadata in the DU, or a combination of both. (Of course, the intent is to make the metadata rich enough that application-specific Rolons will not require specialized logic for container-level activity like copy.)

I'm guessing at this point that I'll be done some time this weekend.

Bill

Wednesday, August 23, 2006

fresh copy

We had a post command in AW2, but the copy command in AW3 needs must deal with an added complication--read only (private) data.

So I'm thinking that there are two situations:
  • a copy within the same Cabinet and
  • a copy across Cabinets.

My thoughts are that you can copy private data (yours and others) within a Cabinet, but not from one Cabinet to another--i.e. into a different trust domain.

Meanwhile, I've done the GUI for copy, only. So there is still a ways to go.

Bill

a new move

The move command has now been reworked as a browser, rather than having to give a pathname for the destination.

So it looks like the post command is next. And it looks like 3.3.1 is going to be a great release.

Meanwhile, the mailing list is still dead. Hopefully in another 24 hrs...

Bill

Tuesday, August 22, 2006

enhancing orderChildren

I used orderChildren to sort the 55 pages of AW commands. It was quite a pain in the neck. So I promised myself that I would rework that command to make it much easier, 'cause no one else would put up with it.

The orderChildren command has now been enhanced, and its pretty slick. Next I want to add a browse capability to the move command. Once that is done, then it is on to a very easy to use post command.

Bill

agilewiki is back

SourceForge now has repaired most of the damage caused by changing the unix project name from compstrm to agilewiki. The new URL is http://sourceforge.net/projects/agilewiki

Interestingly, the download page and forum URLs remain unchanged. However the mailing list is still dead.

Anyway, it looks like I can now release all those bug fixes I did over the weekend.

Bill

Monday, August 21, 2006

Post command?

Well it was an exciting weekend. No download page, no forum and no mailing list, all because I elected a feature on SourceForge to change the project name.

So I spent the weekend working on documentation of AW commands and elements. I also played a bit with infosets, creating an infoset which included only the command names and elements and then including it in the namespace of the UserGuide Cabinet. And found/fixed/committed/deployed (but not released) several bugs in the process. So I'm as happy as a one-armed camper with a two-handed axe.

So I'm sitting here thinking about what is next. The post command (copy of current values) is still missing, and it is a very handy command. And now that CSecs are done, it is time.

Bill

Sunday, August 20, 2006

An overview of the elements comprising AW

http://agilewiki.org/aw3/AwServlet?cmd=rid%204978a9cf372a95b42368450be55f897f

The above is a nice overview of the elements comprising AgileWiki.

Enjoy!

Bill

Saturday, August 19, 2006

progress with documentation

http://agilewiki.org/aw3/AwServlet?cmd=rid%2078bdd0279a346fc775de083467326ca7

At the above link you will find the documentation for the AgileWiki command set. I've now finished 45 out of 55.

Bill

some excitment

I asked SourceForge to change the Unix project name from compstrm to agilewiki.

Woops! The project is now gone, along with the mailing list and the download page.

I've put in a service request, but I'll note that SourceForge is not a 24x7 operation,
so this may not be addressed until Monday.

Bill

Friday, August 18, 2006

3.3 is out

http://blogs.sun.com/roller/page/laforge49?entry=release_3_3_of_the

The above link takes you to the release announcement on my Sun blog.

I'm really quite excited about this release, as it addresses AW's biggest problem: too much for a new user to learn all at once.

Bill

Tuesday, August 15, 2006

order, view

Well, it is Independence Day today here in India and everyone is waving the tri-color [flag].

I've been having fun. The view command, which gives you the ability to turn GUI features on and off has been redone--now there are only seven features and it is quite nice. And the default for new users now is even simpler than what is already running at agilewiki.org.

I've also got 3 order commands for ordering child topics, ledger sections and classifier sections. This is especially important in the case of csecs, as the order of the csecs dictates the order in which their infosets are added to the namespace and thus impacts how names are resolved when there are duplicate names.

So it looks like 3.3 is going to be an important release.

Bill

Monday, August 14, 2006

3.2.3 released

The release includes the restrictNamespace command, the crInclude command and the view command.

The default now is a very limited command set and minimal set of features, but this is configurable with the view command. Now there is much less difference between the rolonic (command based) and wiki views.

But view needs work--there are too many options. We need to organize these options into groups and then only allow configuration by groups. Once that is done, I need to work on the command documentation. The 3.3 release then is likely a week away.

Bill

Saturday, August 12, 2006

3.3 is coming soon

We now have two classifier sections implemented, as well as the ability to restrict namespace. Now I'm working on being able to enable/disable various commands--disabled by default for new users. Easily implemented using DEnts on the User's cabinet and a simple view command.

I expect then, to release 3.3 in the next 24 hrs, likely sooner.

Now there are still holes in the implementation of AgileWiki, but they are getting smaller. Hopefully with configurable features on the interface, things will be easier for users to get started.

Once 3.3 is released, I want to work on several sample applications.

Bill

Thursday, August 10, 2006

The Value of an Infobase

http://blogs.sun.com/roller/page/laforge49?entry=the_value_of_an_infobase

I'm cross blogging again. But you might find the above blog on the Sun site worth your time.

Bill

Descriptor Sections?

A descriptor section (DSec) is used to describe the behavior of an application. AW does not yet support them, but I finally realized that /Users is a really a DSec that controls the behavior of access control and it has been excluded from the Ark's infoset consequently.

I expect there will be other DSecs, once we start having interesting applications. So we will need to support them better.

Bill

Monday, August 07, 2006

The TagMatch Classifier Section is working

I am very happy to report that we now have our first working Classifier Section (CSec). It can be used to augment the results of the infoset, names and topics commands. And, as a consequense of augmenting names, the extended nameset can be used to resolve otherwise unresolvable references in the document content.

Now it may still be a day or two before it gets released. First, I need a break. This was an exciting feature and I know I pushed too hard. Second, I noticed a discrepency between what is now allowed as a topic name and what brace notation supports.

Bill

Introducing Infosets

In AgileWiki, an infoset is simply a collection of Rolons. Infosets are key to developing applications, as most applications make use of one or more collections. The power of AgileWiki as an application platform then is strongly coupled to its ability to easily define appropriate and interesting infosets.

Now we've introduced one Classifier Section, TagMatch, which defines an infoset the same way the tagSearch command works--the TagMatch has a tag name and a value pattern and constructs an infoset of all rolons in the same cabinet which have a tag with a matching value.

The infoset of each new kind of classifier section will have a different definition.

Other rolons have an associated infoset as well, which consists of the union of the following:
  • The child topics under the rolon,
  • The Ledger Sections under the rolon,
  • All rolons referenced within the content of the rolon and
  • The infosets of all the Classifier Sections under the rolon.

Note that the infoset of a Rolon need not include the Rolon itself. Also, the DescriptorUnits of Cabinets are excluded from the list of child topics and /Users is excluded from the list of the Ark's ledger sections.

Infosets have now been implemented and will be included in the next release. We also plan to use a rolon's classifier sections to extend its namespace for resolving references.

Hopefully soon we can turn our attention to implementing numerous sample applications. Should prove exciting.

Bill

Sunday, August 06, 2006

odds and ends, but a big day

Well, I've layed the groundwork for CSecs. Had to update a lot of code so it would know what to do when it encountered one.

I also did a bunch of refactoring, moving LSec-related code from Rolon to NamedRolon.

NamedRolon and CSecRolon are now abstract classes.

The check for unique names now checks children, LSecs and CSecs when creating anything.

And the Type DEnt is now displayed in titles and all the various lists.

Oh, and tags now support multiple values.

And I'm wiped. Good night!

Bill

Saturday, August 05, 2006

Starting Classifier Sections

Well, 3.2.1.0 is out with the bug fixes. I've since noticed that the Swing client is unusable in wiki mode, as the comands are to small to all be clickable--a Swing defect?

Meanwhile I've started work on Classifier Sections, specifically TagMatches. (I've also changed tags so that they now handle multiple values.)

This is going to take a while. I'm introducing a new usage, CSec, which is going to break some code. Destroy needs to know about CSecs, etc. At the same time, it is interesting going.

In AgileWiki2, there were no Classifier Sections. There were classifiers, but they were proto-rolons. With the introduction of CSecs into AgileWiki3, classifiers can be handled far more uniformly.

There is also a major impact here for applications, as many applications work with lists. Now by discarding the contextual namespace, what remains (I call it the intentional namespace) effectively defines a list. And having lists will make a big difference in being able to write interesting applications.

Bill

bug fix release coming soon

The server at agilewiki.org crashed today. I ended up fixing a bug in AwServer (missing some sync locks) and AwSwingClient.

So I'll be doing release 3.2.1 with these fixes. Note that if you have an account at www.sourceforge.org, you can "monitor" the forum at http://sourceforge.net/forum/forum.php?forum_id=367038 and get release notifications emailed to you.

Bill

Friday, August 04, 2006

AgileWiki's markup language

https://agilewiki.dev.java.net/servlets/ProjectDocumentList?folderID=5729

There are now three pdf files (slide presentations) to be found at the above link. The latest addition is on curly brace notation, which works with HTML fragments as AW's markup language.

Bill

Thursday, August 03, 2006

Cabinet Administration--a second set of slides

https://agilewiki.dev.java.net/servlets/ProjectDocumentList?folderID=5729

If you go to the above folder and view the VirtualWiki.pdf file, you will get a set of slides covering cabinet adminstration, including access controls, user groups and application deployment.

Hopefully tomorrow I can complete the last set, on brace notation, and then get back to the code.

Bill

Shadow of the Giant

Rupali went home night before last, arrived in Raipur this morning. It is a holiday for brothers and sisters, and she'll be gone for about 12 days.

I've been working hard without much of a break for some time now and lately I've faced some programming challenges at the office (rewriting some old swing code). So I went out last night and got a book by Orson Scott Card. A fun read.

Ruplai is a great woman and a good and supportive wife. I can't do half of what I ususally produce when she is gone. The risk is in doing too much and then burining out, and I'm in it for the long haul.

This is my life's work.

Bill

Wednesday, August 02, 2006

AgileWiki3Navigation.pdf

https://agilewiki.dev.java.net/servlets/ProjectDocumentList?folderID=5729&expandFolder=5729&folderID=0

The above URL points to a folder of slides. Currently, there is only one file there which covers navigation. (pdf) Hopefully this is only a start.

Bill

Tuesday, August 01, 2006

thinking about slides

There are times when I am very narrowly focused on writing code, as there are still AW2 important capabilities which have not yet been added to AW3--like post and snap dump. My priority for this next series of releases will be on classifier sections, which should be a considerable improvement over AW2 classifiers, as they were very ad hoc.

But before I dive in again, I'm thinking that I should do some slides. These are always popular, and I haven't done any yet for AW3. I would like to cover brace notation, access control/delegation and application installation/deployment, as these are areas which are largely completed.

Bill

A description of AgileWiki3.2

Again, I'm cross blogging. The following is a description I posted on my Sun blog about AW3.2:

http://blogs.sun.com/roller/page/laforge49?entry=agilewiki3_2_a_virtual_wiki

Hope you find it helpful.

Bill