Surfulater Version 3.15.0.0 Released

The Surfulater evolution continues with the release of Version 3.15.0.0. This is another milestone release with major changes to the Surfulater code base to bring it in line with the latest Microsoft Development tools, in particular MS Visual Studio 2008 and the latest C++ Compiler. This makes Surfulater more robust and enables us to use the latest Microsoft technologies as we move forward.

I’ve also taken this opportunity to make substantial changes to the way the Surfulater code is packaged. In particular seven DLL’s have been completely removed and two more have been taken out of the Installation package. This code refactoring and repackaging removes problems caused by wrong versions of DLL’s and moves us closer to the possibility of a single .EXE file, potentially without any need for an Installer. Further it helps pave the way for a Portable USB Stick version of Surfulater. And finally it reduces the size of the Installer download file from 7.79MB to 5.67MB and the installed code footprint from 16.347MB down to 12.68MB. Substantial effort has gone into this, taking up much of our development time since the last release.

That is all below the surface, but there are good things happening above ground as well.

The most visual change in this release is how Tags are displayed in articles.

Tag Hyperlinks

They don’t just look a lot better, but they perform better as well, in that you can now click on Tag to jump to it, in the Tags Knowledge Tree and then see and work with all the articles with that tag.

The next enhancement is the ability to change the color of text using Set Text Color, which is in addition to setting its background color.

Set text Color Toolbar button  Set Text COlor Context Menu

Clicking on the button or choosing the right click context menu item changes the color of the selected text to the current color.

Set Text Color Context Menu

Clicking on the down arrow opens the color selection palette, which enables you to change the current color. Note that the current color is displayed below the A image. Restore to default is also new in this release and sets the current color back to its default value. This is also included on the Highlight Text color palette.

Another new feature is Set Title to selection which enables you to set the Title of the current article to the selected text. This is available on the right click context menu, when used on selected text.

Set Title to selection Context menu item

There are times when an Article Title is not what you want and this provides a quick convenient way to change it.

If you are observant you will have noticed Web Search on the menu screen shot above.

Web Search context menu item

This new feature enables you to perform a Google search using the currently selected text. Another handy time saver.

A subtle change we’ve begun in this release is the ability to make more changes to selected text without having to be in edit mode. For example the Add a Link and Remove this Link commands can now be used when not in content editing mode. As can the new Set Text Color.

Of course there is more; drag & drop can now be used during content editing to move text and images, and Copy and Paste as reciprocal ‘See also’ links can now be used in the Tags and Chronological Knowledge Tree views.

As always all of the new features and bug fixes are documented in the V3 Release Notes in the Help as well as in new and updated Help topics. Make sure you at least read the release notes.

The latest release of Surfulater is available from our Download Web page.

We’ve recently completed a major overhaul of the Surfulater home page and I hope it does a better job of conveying to people what Surfulater does and how useful it can be. Feedback welcome.

I’d like to dedicate this release to our friend and golfing buddy Neil Oram who sadly and unexpectedly passed away last Monday 20 Apr 2009. Neil was always a pleasure to be around and had many great games of golf left to play. He will be fondly remembered and greatly missed.

Too much of a good thing

A new Surfulater customer e-mailed over the weekend wanting to know how to get Surfulater to automatically save each and every Web page he visited in his Web Browser. He commented that disk space is cheap and a 1TB drive only costs $150, so there is no reason not to do this. Well Surfulater doesn’t have this capability and it isn’t even one I’d considered, nor do I think has ever been suggested. I have to wonder is this wanting “too much of a good thing”?

I see several issues. First up out of all the pages one visits how many are of any real valuenot many. Every time you do a Google search, do you really want the Search Results pages saved, and out of all the pages you visit from these Search Results, how many are of interest; when you are watching a Video on YouTube do you want that page saved, and on on it goes. Then there are issues of security! Do you want pages saved when you are doing your On-line Banking, or purchasing some goods with your credit card number shown – I don’t think so.

Yes disk space is cheap, no doubt about it. But if all these pages are so important, then backups must be just as important. We all know disk drives die, usually the day before you go and put a backup system in place! So you need a 1TB External Backup drive; no big deal and reasonably cheap as well. But this alone isn’t enough, well not for me, and would have to be complemented with a secure, reliable off-site backup. Ok now we are set with backups. But how long will it take to back up all these web pages, and how often will you perform the backups? And what about disk clutter, are these pages splattered all over the place as lots of individual files, or stored in a database. And what overhead is there in actually capturing them all in the first place.

This leads on to findability. There is little point storing large amounts information if you can’t quickly and easily find the specific gems of interest again and again. The more information you store the more difficult it becomes finding those needles in the haystack. If say 60% of the saved information was never of interest in the first place, then you’ve just made findability all that much harder. Computer people have a saying “garbage in – garbage out” and that is what we have here.

Organizational capabilities, such as Tagging, placement into Folders and adding Cross-Reference links along with the ability to add Notes and edit Captured content all aid greatly in findability, but I find it difficult to believe anyone would undertake such tasks for each and every web page that popped up in their Web Browser. And everyone that uses Surfulater knows just how important organizing content is, in aiding findability.

Now I doubt any of this will make any difference to the aforementioned customer and others like him and that’s fine as we can and should be able to use our computers in whatever way we feel works best for us. This simply seems like a bad idea to me, or for me. I want to be in control, saving the information I consider to be of real value and not cluttering my world with lots of useless crap I need to weed through.

Let me finish on something which is a good thing and that is the next release of Surfulater should be out this week.

Sometimes it’s the little things… Surfulater V3.00.10.0 released

Articles displayed in the Search Results folder have always been a little troublesome because you had no idea what folder(s) they actually lived in, and there are times when that meta-information is important. We’ve tossed around various possible solutions to this, but have never been happy with any until just recently. During yet another brain-storming session the penny dropped that yes Search Results articles are the main problem here, but wouldn’t it be nice to know all the folders any article is in, besides the current one of course.

For those new to Surfulater you may not be aware that an article can be in as many different folders as you like, with there only ever being one real instance of any given article. This solves the age old problem of picking just “one best” folder for an article.

So after this thought sunk in, some more lateral thinking bore fruit with the end result being to add a new “In Folders” breadcrumb row to each of the article templates, as shown here.

Article in one folder

This shows that this article is located in the Knowledge Base | Alternative Energy | Solar Power folder. Each of these three sub-folders is a clickable link which take you directly to the respective folder.

When an article is in more than one folder, each one of the locations is displayed:

Article in two folders

In addition a link named Article is included for each folder, other than the current one. Clicking on this takes you to the article in its associated folder. This new feature lets you not only see each of the folders an article is in, but also to jump to each copy of it.

Furthermore these new “In Folders” breadcrumbs are displayed for all of Knowledge Tree views. This means that when you are viewing articles in the Tags or Chronological trees, you can now see what folders they are located in, and instantly jump to them in the Normal Folder tree view. This builds on the right click context menu item “Go to Article in Normal View” in the Tags and Chronological tree views and “Go to Article” in the Search Results folder. Each of these goes to the first article found in the Normal Tree view, whereas the new “In Folders” breadcrumbs enable you to go to any article, when it is located in multiple folders.

The final enhancement here is the update to the display of collapsed folders in the content window to match  the Articles new “In Folders” row as shown here:

Collapsed Folder breadcrumbs

Like all Article rows, the “In Folders” row can be moved up and down using Edit | Enable Template Editing. See the Help Topic: Power Features | Editing Article Templates for further information on this.
I am sure you will find these enhancements let you move around and locate specific copies of articles quicker and easier than ever before.

For details on the other updates in this release see the “V3 Release Notes” topic in the Surfulater Help. The Download is in the usual place.

Better Web Page Capture coming in Surfulater Version 3

There are some Web pages that don’t capture all that well in Surfulater. All of the page content is captured ok, but the layout can be a mess. I’ve been building a list of such pages (and web sites) as people report them and as I come across them. For example the BBC News web site should look something like this:

BBC News Home Page

But in Surfulater Version 2.52.0.10 it looks like this:

Attached Web page in Surfulater V2.52

This was one of the more important issues for us to address in the forthcoming Surfulater Version 3 release. It actually turned out to be more complex and difficult to resolve than I’d expected, but the good news is Web page capture is much better now. As proof here is the same page captured in what will be Surfulater Version 3.0.

BBC News Home Page in Surfulater V3

An observant person may notice one small difference to the first image, but that aside the result is very good indeed. Note that these are all full Web page captures using Surfulater: Add Article plus Page or Surfulater: Attach Page to Article and we are viewing the attached web pages.

A related content capture issue is that some Web sites prevent images from being downloaded. This shows up when capturing selected content for Surfulater articles and when capturing full web pages. This screen shot shows the problem in Version 2.52.0.10

And this screen shot shows the same capture in Surfulater Version 3.0.

This proved to be another difficult issue that I am very pleased has now been resolved.

We continue to make good progress with Surfulater Version 3, with a release planned for September. I am heading up north to the Pacific for a much needed short break and to ever so briefly escape our cold winter. I look forward to wrapping up V3 upon my return, as I’m sure you all do to.

Tag Management – Live Example Page

In response to the great feedback we have received, we felt it was worthwhile to put up a live sample page of Tag Management. It can be accessed here:

http://www.surfulater.com/tagsamples/TagMgmt.html

When you get to the page, you have options on the left as to how the Tag Management form will behave on the right. Here are the options and behaviours.

  • Whitespace Handling: Separator means whitespace acts as a separator, so “cat dog” will become two separate tags. Allowed means whitespace is just another character and part of a tag, so “cat dog” will become just one tag. Auto-Convert means whitespace is not allowed at all, and will automatically convert to an underbar ‘_’.
  • Remove/Keep Column: Keep means that the checkbox determines which tags to keep, with unchecked ones being removed. Remove means that the checkbox determines which tags to removed, with unchecked ones left as they are. 3-way means that the checkbox for each tags has three states: checked (keep on or apply to all selected articles); unchecked (remove from all selected articles); dash-checked or semi-checked (currently applies to some of but not all the articles).
  • New Tag Add: Text Only means that new tags in the “New tags” textfield are not shown as new tags in the rows below, but stay in the textfield until you click “Save.” Add to Rows means that as soon as you hit enter from within the “New tags” textfield, the new tags are immediately added to the rows below.

Set your options on the left, click the “Update” button, and try out the features in the Tag Management form on the right.

We look forward to more of your great feedback.

Avi

Tag Management Part III – adding new tags

Following up on the last two discussions, question #3 is as follows.

You add new tags in to the text field up top. Do those new tags get added to the rows at bottom, with the “Remove” checkbox empty? Or do they get added only when you click “OK”? Put in other terms, does the “New tags” textfield up top impact the rows at bottom even before you click OK (although not affecting the actual articles themselves until OK), or are the two activities separate?

For a good example of this, try the live sample we have posted (see the following blog post). The option is “New Tag Add.” To try it, select “Text Only” or “Add to Rows” followed by update. Then, go into the “New tags” textfield in the form, add some tags, and hit enter. In the case of “Text Only,” enter will do, well, nothing, since the new tags are only in the textfield. In the case of “Add to Rows,” all the new tags will be split on comma (and possibly whitespace, depending on your selection in the option of “Whitespace Handling,” and then be added to the rows.

Looking forward to your great feedback once again.
Avi

Tags and Whitespace – more feedback requested

As a follow-up to the previous article on tag management, and the great feedback we have received, we would like to get your feedback on whitespace in tags.

Here is the question: is a space a legitimate character within a tag, or is it only a valid separator?

Why does it matter? Arguments for the jury, in favour of whitespace in tags or against it.

  • Pro: Tags represent concepts. A concept is sometimes a single word, but sometimes multiple words that cannot be separated. If the tag is “dog animal”, really you are saying it is both a dog and an animal, and thus the two words are two concepts. If, on the other hand, the tag is “Sierra Leone”, (country in West Africa), this is one concept. It is not both in Sierra and Leone. We can think of lots of other examples where the two words together make one concept.
  • Con: Most tagging systems do not allow whitespace, indeed, many treat it as a separator. In many tagging systems, if I type “cat dog” I will automatically get two tags, one cat and one dog, and the whitespace will be treated like an automatic separation. Wiki systems work similarly. For obvious reasons, maintaining maximum upwards compatibility with other tagging systems, or at least not locking us out, makes a lot of sense.

Here are our possibilities:

  • Separator: Whitespace is a separator. If you type in “dog cat” or “Sierra Leone”, that is two distinct tags in each case. If you want to keep “Sierra Leone”, you need to manually and explicitly type Sierra_Leone, SierraLeone, Sierra-Leone or some variant. This is the del.icio.us method.
  • Allow: Whitespace is allowed. If you type in “dog cat” or “Sierra Leone”, that is one tag in each case. For the “dog cat” case, if you want two tags, you will either need to type “dog” then hit an add button (or similar) then “cat” and add, or use a recognized separator, e.g. “dog, cat”. Obviously whitespace at the beginning or end of a tag name will always be ignored. This is the Gmail method.
  • Auto-Convert: Whitespace is not allowed, but isn’t a separator either. Rather, every time you type in whitespace, it is automatically converted to an underbar ‘_’. So, if you type “dog, cat” you will get two tags, one of “dog” and one of “cat”. On the other hand, if you type “Sierra Leone”, you will automatically get “Sierra_Leone”. This is the Wikipedia/MediaWiki method.

One thing we definitely do not want is for there to be multiple options. Too confusing, and support is a nightmare, creating the worst of all worlds. Thoughts and feedback are always appreciated. If a working example would help, let us know in the comments.

Avi.

Tags – we need your help. Part 1

We are currently working on the next part of the new Surfulater Tagging capability and would like some guidance from you, our users. We are working on two new and related features that revolve around letting you add and remove tags from a group of selected articles. For example you might select six articles and then want to add one or more tags to these articles. Or you might want to delete a tag or two from them. To do this now you would have to select each article in turn and edit its Tags field, to add or remove the tags, which is cumbersome to say the least. 

There are ways to make this task a lot quicker and easier, which is the focus of this post. How are we proposing to do this? Lets start with adding tags. First you select all of the articles in the Knowledge Tree that you want to add some tags to, then right click on one and select Add Tags… from the context menu, which opens this dialog.

Add Tags Dialog

You can type in one or more tags, and auto-suggest lets you choose from the list of existing tags. When you press Save, the Tags you entered are added to the selected articles. Any tags already present in an article will not be added again, so you don’t end up with duplicates. This process works just like the Tags field in your Surfulater Articles.

Some tagging systems let you add tags by displaying a list of all available tags and getting you to tick a checkbox for each tag you want to add. This is simple, intuitive and works very well when you have a smallish number of tags. However as the number of tags you add grows, this quickly gets unwieldy and you spend more and more time scrolling back and forth through the list to locate and choose the tags you want.

Our approach of quickly locating tags using auto-suggest, and of adding new tags to the tags database at the same time, delivers a much better user experience, especially as the number of tags you use grows, which it will.

Now lets talk about removing tags from articles. Assume we have three articles with the following tags:

  1. Cat, Pet
  2. Dog, Pet
  3. Cow, Herbivore

As before we’ll select all of the articles of interest, right click and choose Remove Tags… from the context menu which will open this dialog.

Tags Remove Dialog

This shows a list of all of the tags in the selected articles, with duplicates removed. In this example Pet is in two articles, but only appears once in the list. Beside each tag is a checkbox, with the heading Keep? and all checkboxs are checked. To remove the tag Pet from the selected articles it is in, you uncheck its checkbox and then press Save. If you wanted to remove other tags at the same time, you would uncheck those as well, before pressing Save.

So far so good, or at least I hope so.

Our next step in evolving these designs was to look at a further simplification which would enable you to both Add and Remove Tags within the one dialog, starting from a single context menu selection Tags…. Most of the time you want to either Add or Remove, but there are times when you want to do both. The new combined dialog looks like this.

Add and Remove Tags Dialog

When Save is pressed in this example animal and herbivore will be added to the selected articles and pet will be removed. If the New tags field had been empty, no new tags would have been added. Likewise of no tags were unchecked in the list, none would have been removed from the selected articles. All quite straightforward.

On closer examination one issue became evident and that is there can be some confusion when a tag you want to Add is shown in the Existing Tags list. In our example this is the tag herbivore. 

When you notice herbivore in the list you might decide not too include it as a New tag, which would be a mistake. Referring back to the articles and tags summary:

  1. Cat, Pet
  2. Dog, Pet
  3. Cow, Herbivore

you see that herbivore is only in one of the three selected articles, but there is no way to tell this from the Existing Tags list. Because you didn’t include herbivore in New tags, it won’t be added to articles one and two, which isn’t the desired outcome.

To help to resolve this we concluded that you need some indicator in the Existing Tags list which clearly shows which tags are in All of the selected articles and which are not. The outcome is this dialog.

Revised Tags... Dialog

Note the new In All… column, which in this example is completely empty, because there are no tags which are in all of the selected articles. After we press Save the story changes to.

Revised Tags.. Dialog

You now see animal and herbivore are clearly identified as being in all of the selected articles. You can group the tags that are in all articles together by clicking on the In All… column heading. Now when you see a tag that you want to add is already in the Existing Tags list and it is In All articles, you can skip it if you want, or you might find it easier just to add it and let Surfulater look after things.

The bottom line is that there really isn’t any point in scrolling through a long list of Existing Tags to see if a tag you want to add is there or not, just go ahead and add it.

Where do we need your help?

First does this all make sense? Can you think of better ways to add and removes tags from a group of articles? Should we have separate Add and Remove processes or does combining them into one dialog deliver a better user experience? If so, does the combined dialog we’ve presented above, work for you?

Do you find the user interface for removing tags intuitive? Could you work out how to use it just by looking at the dialog or is it confusing or difficult to grasp?

Please do give us your feedback and help us make some important decisions on this aspect of tagging and untagging multiple articles at once. All our lines are open. 😉

The Next Pre-Release

I am in the midst of wrapping up another new pre-release which will include the combined Add + Remove Tags dialog as described here. It should be available this week. Keep your eye on the Blog for details.

To be continued…

The Topic for this post says Part 1. We have an alternate combined Add/Remove dialog user interface on the drawing board, which we will present here as soon as it is ready, so stay tuned.

Surfulater Pre-Release Version 2.92.0.0. Tagging moves ahead

The next Surfulater Pre-Release, Version 2.92.0.0 is now available. If you haven’t already read about Version 2.91 and its Tagging goodness, I suggest you start there.

V2.92 addresses the pending issues noted in the Release Notes for the last release, namely Article Tags now copy when Articles are copied across KB’s, Search searches Article Tags and the Tags auto-suggest list vertical position is now correct when the Content window is scrolled.

We have also revamped the Tags Tree to remove the unnecessary root node, as well as the vertical lines that connect the top level tags. The image used for the nested sub-tags has also been changed, so they look different to the top level tags. This is what it looks like now.

Updated Tags Tree

These updates simplify and improve the look of the tree and make it easier to use.

We still have further work to do on Tagging, including the ability to Tag multiple articles at once, remove tags from multiple articles, show all UnTagged articles in the Tags Tree and more, so stay tuned.

If you held of installing the last pre-release I am pleased to report it has proven stable with no significant problems showing up.

Click this pre-release and do keep your comments and suggestions coming. Full Release Notes are in the Help as always.