So the new year has rolled around and version 2.4.2 of QW has been released, it’s just a bug fix release though, nothing to get excited about. The real main change is allowing Editors Service invites to be resent to pending contacts.
I’ve been quiet lately. There are two reasons for this, the first is that it’s bloody hot in Australia and everything closes down over Xmas while we all sweat and wait for cooler weather. The second is that I’ve been finishing my first book. For most of last year I put finishing it on hold to get the Editors Service completed and with that done I put QW development on hold to get the book finished.
With both done I can look ahead to what’s needed for QW and with that in mind I now have reasonable confidence in what big things will be making the cut for version 2.5.
- First up is a “text tidy”. After sending my book/project to the missus we discovered there are a number of quotation marks that won’t display in the text. But only in the first three or so chapters. It turns out these characters are from MS Word, added when I began writing the story and before QW existed, bear in mind QW is at least 7 years old! Now the characters should show up and it’s something I’m going to (try) and fix but the bigger issue is the mix-n-match of quotation characters. Hence the need for a text tidy which will unify and format the text. This would be similar to the auto-correct that Word offers but since I am completely against auto correction for creative writing (nothing pulls you out of writing more than magical changes occurring in the text that you didn’t intend) it would be a tool that works like the Problem Finder. It would be designed to be run at the end of editing and it would ensure that the correct number of spaces are before the start of a new sentence, that a full stop is either inside or outside of a quotation mark (your choice), that quotation marks are the same and so on. There a number of minor rules you can apply for tidying things up and making them consistent.
- Improvements to the Statistics panel and charts. This is an area I’ve neglected for a while and now needs some love. More charts are needed for those who like getting information about their text and progress, for example I want a chart that tells me the chpater length so I can ensure I don’t have a monster chapter. You can do this now via the Word Counts sidebar but it is tedious. I’d also like a similar chart for Readability so I don’t have a single chapter that is easy for a 5th grader to read and another that requires tenure at MIT. Again, doable but tedious to achieve.
- Targets. A few people have asked for this and it’s something I could use as well but it is difficult to implement in a nice way. Targets could be for writing, such as 2000 words daily or weekly, or they could be for chapter length. The two are different but both are useful.
- A Project description page. This is something I should have added at the start and didn’t for some reason. For me at least, and I’m sure the same is true for other people, I will have an idea for a book/story but I don’t have it fleshed out yet. I create a new project, give it a nominal name but then have to put the description in a chapter. What is needed is a way to provide a description for a project.
These are the big things that will definitely be in 2.5. There are other ideas that may well make it in and there are a few minor features that users have asked for that I’ll implement (such as putting a margin around the text in full screen mode).
I’ve no idea about a release date for 2.5 yet. The text tidy tool could take a while due to needing to get the UI right and being able to undo changes. So watch this space, I’ll keep you updated. Soon I begin the great adventure of trying to get published, I hope my sanity will hold out, also who knew that knowing when to leave a sentence alone is a skill that needs to be learned.
And a pox on the WordPress visual editor that won’t allow me to format things in the way I would like.
I have to admit, I’m tired of this release. Getting 2.2 out of the door has been a labor of love. At this point I need to be free of it, and I need to be realistic.
So, with reference to this minor irritation I’ve decided to remove the ability to drag chapter items around from the popup. I don’t like removing features but I have a number of reasons why I’ve taken this path:
- I’m not convinced many people use chapter items and thus ever hit the niche case that the drag was designed to solve.
- I could fix it but to do so will be a lot of work and fiddliness that I can do without, given item 1 it means delaying features I know people will use.
- It’s difficult to create a consistent drag metaphor that users will intuitively understand and it is difficult to ensure that they are able to drop the item in the place that they desire. It’s a solvable problem and I have a couple of ideas of how it could work but the implementation is going to take time and experimentation. An idea that sounds great in your head can be a stinker in practice.
- From item 1, no one has complained that the feature doesn’t work. This doesn’t mean no one has struck the problem but it does mean that not many have if any.
- Awesome features are useless if no one uses them.
- You can still drag chapter items around in the left hand column to move them and if there are multiple items on the same line you can move them one at a time, not ideal but better than nothing. Also moving items in the left hand column is by far the most common use case. You generally move items to be in line with a paragraph and dragging in the left hand column makes this easy.
- I still have my first book to finish and this release is holding up the editing process.
As if my habit for this type of thing I’ve just commented out the offending code and added the item to my future to do list so I’ll revisit the issue in a future release.
The changes that no one will ever notice and no one will ever care about are now almost complete.
All the popups (I think) are now the same width and mostly show up in consistent places. A number of “system” popups have been changed to be internal ones.
Button placements have also been changed/made more consistent.
Ultimately I’d like to get rid of system popups but that’s another exercise entirely and can wait for now.
One of the things I always try and do for a new release is make QW more consistent and hopefully, where possible, more intuitive and easy to use.
This is far more difficult than I wish it was since I often have to make tough decisions about what to implement and what to leave alone. Also I have to decide how X, Y and Z should be modified to be have a consistent look, feel and behaviour. To that end I’m making a number of changes to the popups used within QW. There are about 3-5 different styles in use and it’s bugging me. I’m going to bring a few of them into line and I’ve also noticed a couple of popups aren’t consistent with the rest so they will be changed.
These are not big changes and end users are unlikely to notice directly but it’s always been a goal of mine to make QW simple and as consistent as possible so the delay is worth it.
I’ve also added a “first project” window that is displayed for new users that should hopefully ease them into using QW. This should have been done years ago but, well you know.
As I feared the changes to the Problem Finder are turning into a “big thing”. Which equals time which equals delay.
Things will be better once it is done and the changes will fix a couple of subtle problems that may manifest themselves in strange ways, for example some of the rules make assumptions about how many spaces there are between words. The new method deals with that since the text is now modelled down to the word level. I’m hoping I can also use the new structures for other things as well.
I’ll close with a whine about the Java typing system, specifically generics. God damn it’s like a needy girlfriend with OCD. “I want a type label here and another one there and make sure they match but they have to match in this place but not that place, and don’t forget that one over there.” For the love of the flying spaghetti monster couldn’t you work some of this out for yourself?
tl;dr there will be delay of the release by another week but it will have 22.333% more awesome.
I love QW’s Problem Finder, I really do. I have a future post planned that will detail how awesome it can be when you start diving into it. But damn it is difficult to implement. With the introduction of paragraph rules it has made iterating over the chapter text much harder and trying to get that right for all situations is proving difficult. If you just run it from the top of your text it will be fine, but start in the middle or the end or go backwards and things can look a little strange.
There is also the problem of flexibility. At the moment each of the rules is limited to a fixed context, for example a word rule only knows about the current sentence it is in, paragraph rules for the current paragraph and so on. This is fine but it is lacking the ability to add other useful rules such as looking for common starts to sentences that are close to each other.
So I’m currently in the process of redefining the problem. My new method should tackle a number of issues such as repeated work (currently a sentence can be chopped up into words N times, once should be enough), iteration problems and accurately determining whether a particular word is in dialogue and, finally, it will give each rule the ability to discover the surrounding text.
For once things are going well during testing. Nearly two thirds of the way through now and, barring the drag-n-drop issue for chapter items, I’ve only found a couple of minor things that need tweaking. There are a handful of bits and bobs that could do with being changed but they are more usability improvements than bugs. They are things I’ve noticed along the way and I’ve already added a couple of things such as being able to use return or ctrl+return in text boxes to save records. I’ve also added a two keyboard shortcuts to make editing assets easier.
But overall, It’s always nice to know you haven’t completely screwed things up.