Tuesday, May 31, 2005
New QVCS releases now available
I posted the latest releases for QVCS/QVCS-Pro (3.8.18) and QVCS-Enterprise (1.1.10).
Both of these releases are pretty significant. Feedback is welcome.
Wednesday, May 25, 2005
Drag and drop for QVCS-Enterprise
One of the features I use most in QVCS-Pro is its drag and drop support. I mostly use the 'drag' support, where I'll drag a file from QWin and drop it into VS.Net or notepad, etc. It bugged me that I didn't have that kind of drag support in QVCS-Enterprise....
Well now I do. I had thought adding that kind of drag support would be a lot of work -- the documentation for Java drag-and-drop is a little daunting, and the behavior has been a bit of a moving target between Java 1.2 and Java 1.4. It turns out to be pretty easy to do, and required perhaps 50 lines of code, if that. I haven't tested it on Linux yet, but it works well enough on Windows that it's a keeper, and will appear in the upcoming 1.1.10 release next Tuesday.
The drag 'gesture' seems to be just a little different that the default behavior for Windows, but it's easy to get used to, and the feedback of the cursor where it changes to the '+'-arrow makes it easy to tell when you've successfully grabbed the file that you're going to drag. For this iteration, I'm only supporting the drag of a single file.
The drag support means Enterprise will have half of the drag-and-drop support that QVCS-Pro supports --- QVCS-Enterprise is not a drop target, whereas QVCS-Pro can be.
UPDATE: Drag support also works for Linux.
Edited on: Wednesday, May 25, 2005 3:04 PM
Categories: QVCS-Enterprise
|
Monday, May 23, 2005
Neal Stephenson's Baroque Cycle
I did finally finish Neal Stephenson's The Baroque Cycle several months ago. I had planned on writing a brief review, but won't bother, as it has been reviewed in many other places.
It's the kind of book that I really enjoyed, yet it's not the kind of book that I can recommend without reservation to anyone -- not because it's not worth reading, but because not everyone would enjoy the kind of book that it is. I read all three volumes over the span of probably close to a full year, maybe even longer, and each volume I read slowly, no more than maybe 20 pages a day, tops. This for me was a good pace. I'll be curious as the years roll by whether the reputation of this 2500 page trilogy endures, or fades. It certainly has the ambition to be literature, but history is the judge of that.
The greatest wonder to me in the books is that someone can write them. Truly wonderful.
Wrapping up a double header
I've wrapped up coding on both QVCS/QVCS-Pro 3.8 and QVCS-Enterprise 1.1. Current plans are to release them both on May 31.
The QVCS-Enterprise release will be a free upgrade for existing QVCS-Enterprise users. It includes some features I've mentioned before as well as some other usability improvements that I had time to squeeze in:
- Screen sizes and splitter bar positions are now preserved.
- You can enter a comment at checkout time, and that comment will be the default comment used at checkin.
- If you have defined a viewer application for .html files, the generation of a report will automatically launch your .html viewer (presumeably a browser) for the report.
I'm now in the process of updating the web site, doing some final testing, and waiting for any final bug reports from the QVCS/QVCS-Pro beta users.
Wednesday, May 18, 2005
QVCS/QVCS-Pro 3.8 beta now open
I've opened up the 3.8 beta for general use. You can download the latest beta here. 3.8 is code and feature complete. I'm only fixing bugs (what bugs?) between now and release.
Make sure to check out the beta forum for comments and to make comments or report bugs.
Organizational Maturity
I've been thinking about organizational maturity and the building of institutions, etc. In a way, the ideas are all along the lines of complexity theory (for lack of a better word). The basic observation also dovetails in with CMM maturity models.
In the same way that you can grade a development organization to have a specific CMM grade (e.g. level 2 or 3, etc.), all organizations can be graded to have a certain level of maturity.
So, for example, if you have a corporation, it too has a level of maturity. This level of maturity results from a number of factors, and also determines the ability of that organization to execute on plans that the organization's management adopts. For a management team to be most effective, it needs to understand the level of 'maturity' that its organization possesses. Just like in software development, if management tries to execute on a plan that the organization is not equipped to handle (i.e. is not 'mature' enough), then the execution of the plan is guaranteed to fail.
Note that I've begun putting 'maturity' in quotes. Just because an organization is not 'mature' does not mean that the organization cannot be effective. It just means that there are some kinds of things that the organization will not be able to do.
If a management team wants to task the organization with executing on a plan that is beyond the reach of the current organization's 'maturity', then the most durable way for the organization to become successful is for it to first improve the organization maturity.
This really is just a generalization of the CMM model to areas beyond software development.
What contributes to the maturity of an organization? Part of that is beyond the direct control of the organization. The organization exists within an environment. Perhaps more than anything, the stability of the niche within that environment affects that ability of the organization to become 'mature'. If the niche is not stable, then the organization that services that niche cannot become stable enough to become 'mature'.
To step back a moment, I'd like to define what 'mature' really means here. What's really going on with maturity is the ability of an organization to create and maintain processes and infrastruture in support of the niche that they serve. With a 'mature' organization, the processes and infrastructure can become quite complex because the bandwidth of the organization's participants does not need to be consumed with figuring out how to provide the services that the market demands. That problem was worked out long ago, and has been internalized into the processes and structure of the mature organization. In mature organizations, the processes within the organization are mature (meaning old), durable, and the relationships among the organization's participants are also mature so that the communication time spent within the organization can be devoted to executing the processes, instead of getting to know the other players, figuring out how to solve the problem, inventing processes, etc.
In a sense, this turns the CMM model and organizational maturity on its head because it concludes that you cannot succeed in adopting or creating a mature organization if the consumer of your work product is a moving target.
Oh, wait. Maybe that's just a round-about explanation of why requirements churn always leads to project failure.
Monday, May 09, 2005
QVCS/QVCS-Pro 3.8 beta is under way
I posted the first beta build (3.8.14) last Friday. We've already found and fixed a couple of bugs that I should have caught before... but that's one reason for the beta -- other folks have different ways they use the product that expose bugs that my testing just doesn't catch.
The goal is to create a release before the end of the month, but the actual release date will depend on the stability of the beta. Things look pretty good to me, but we'll have to wait and see what more bugs are exposed in the beta.
Wednesday, May 04, 2005
QVCS/QVCS-Pro 3.8 Beta
The QVCS/QVCS-Pro 3.8 beta starts next week. To begin, this will be a closed beta -- meaning that the number of participants will be limited. If you are interested in helping out, please let me know -- I can use a few more participants.
The areas that I'm most interested in having others look at are the use of the new qrecurse command line tool, and QVCS-Pro IDE integration. I've added some features to the IDE integration (you can now check-out or get a revision other than the tip revision, you can unlock that non-tip revision, and you can apply a label at checkin time). I've tested these features here on Visual Studio 6.0 and VS.Net 2003, and they work as expected. I don't have PowerBuilder, or any other IDEs so I can't confirm that the changes work well in those environments.
Tuesday, May 03, 2005
The colors are gone
In QVCS/QVCS-Pro 3.7 and earlier releases use colors of file icons to help show what differences might exist between the user's current workfile and the latest revision that's been checked in to the archive associated with that workfile. I'm happy to report that this confusing way of showing file status will be gone in the next (3.8) release. It will be replaced by a separate (sortable) column appropriately named the 'File status' column.
The new status column can have several values:
- Current - This means that your workfile matches the latest default revision for that file.
- Stale - This means that your workfile is out of date; there is a revision that is newer than the one that you currently have.
- Your copy changed - This means that you have made local edits to the workfile.
- Merge required - This means that you have made local edits to the workfile and there is a new revision. You may have to merge your edits with the latest changes.
- Different - This means your workfile is different than the latest revision, but QVCS can't figure out what the source of the difference is.
- Missing - This means that the workfile is missing.
- Not controlled - This means that the file is not version controlled.
The 'Merge required' value is still experimental, and may not survive the beta. If it is confusing, then I'll change it to show 'Different' instead.
In any case, these status values are huge improvement over the various colors that QVCS used in earlier releases, and the way that the status is calculated is actually very accurate, and does not rely much on file timestamps. As 3.8 gets closer to release, I'll post some screen shots so you can see how things have changed.