Friday, 14 August 2009

Wot no DTD parser ???

I cannot find a Java-based DTD parser and I cannot believe it! Of course there are parsers out there but none that seem to be able to deal with my usecase or the example DTDs that I need to process! I have tried a bunch:
But none of those worked for me on these DTD's. So off to write one I guess. Oh well I must be going and I might be a while ;) ....

Thursday, 13 August 2009

OpenSolaris Guest on Windows Vista Host

I was getting re-acquainted with OpenSolaris in VirtualBox while hosting under Windows Vista. My aim is to use this as a neat multi-platform test framework on my single notebook. During this relearning phase, I found it strange that it took a while to find out how to get OpenSolaris and Windows to share folders. I would have thought this a common use-case. So to help others that go through this I thought I would write this quick note.

First and most basic concept is to really understand what you are trying to do. It seems, through experiement, that you can get almost any configuration to work, once you approach it in the right way. Questions to ask yourself are:
- Which OS is the host? (Windows Vista in my case)
- The guest OS is ...? Open Solaris in my case.
- Which system needs to mount which filesystem (you usually have some choices here, going from the guest to host or vice-versa).

For my configuration, the successful approach was to first understand that I wanted the Solaris guest OS to mount a windows share from the Vista host. To do this I had to use the built-in Samba filesystem in Open Solaris to use Windows (CIFS) protocol to the Vista host through the network drive.

From there the steps where straightforward:

On the Vista Host
1. First identify the folder on the Vista host you want to share :)

2. Second identify the user (or users) that you want to grant access to. (these are Windows user accounts)

3. Share the folder on Vista: easy to do by right-clicking on target folder, properties, advanced sharing, enter the share name, setup permissions, click apply) Use this approach rather than the first "Share ..." option as this seemed not to work or rather work very slowly until I gave up...

On the OpenSolaris guest OS:

4. In a shell: create a mount-point folder for the Windows share. Mine was /work

5. As root, mount the share using the following command:

# mount -F smbfs //[user]@[host]/[share] [mount-point]

In my case this was something like:

# mount -F smbfs //bill@vistahost/adjoovo /work

host can be the name or IP address.
user is the name that you allowed access to the share during steps 2 and 3.

You will find other posts that talk about using other approaches but they may not quite match your use-case. Doing this with different combinations of OS would use different approaches, e.g. with a UNIX/Mac hosting a UNIX/Mac guest you can use VirtualBox shared folders (mount -F vboxfs) but that will not work between UNIX and Windows combos.

Wednesday, 5 August 2009

More on Adjoovo

Adjoovo has been inspired by experience gained over the last few years heading up Sun's ESB product line and working for early SOA pioneers SeeBeyond (who were acquired by Sun and are now sadly lost in the mists of time).

The basic concept behind Adjoovo is simple and relates to knowledge sharing and collaboration. It's hard to be efficient in software development when team size grows beyond N. You get to choose N based on a number of factors, mainly your experience and how good your team is at staying in close touch and communicating. For most enterprises N is very small and it makes very little difference how much money you have as the value of N doesn't respond well to throwing bodies at it. By that I mean N is not a function of headcount but how well those heads work together.

Our first product (Adjoovo Spaces) allows organizations to grow the size of N thereby increasing the value of output they get from a set number of folks. We do this by providing an integrated knowledge warehouse, registry and collaboration framework that collects information about a project and allows folks to better discover, enrich the knowledge base and work together.

We have chosen service-oriented initiatives as our target segment. Not because we feel this is the only segment that will benefit but because experience has demonstrated just how much of a benefit improved knowledge sharing will have in this domain. One key reason for this pressing need is the sheer amount of technical artifacts that make up service-oriented projects, the often complex relationships and the difficulties associated with managing them effectively.

Adjoovo is derived from the Latin word adiuvo: to help, to aid, to assist. Our product assists teams that are embarking on service-initiatives. The proposition being helping you collate your service metadata (or mine it if you have "lost" it), link it together, providing greater visibility of it to your team, promoting re-use of services, and allowing them to enrich the value of the knowledge base. In turn, using this knowledge allows folks to be more productive, build simpler services and processes, and in the end delivers a more agile service layer in a shorter time. There are other benefits around the business risk reduction that a organization will gain as well, to some that is more important that building better solutions more quickly.

So that is what Adjoovo is about, the community version of the product that soon follows will be available for free and I am sure you will be able to get value from it. For now back to getting that release ready, building the website, etc, etc.

Starting out

Moving on from Sun and my old, seldom used blog, for a new challenge. Something I have wanted to do for a while, that is start my own software products venture. Adjoovo is the vehicle for this adventure and I will blog about a variety of topics here. Some about the venture, some about technology, some just about random things.