I Simply Can’t Wait Any Longer

Cross-posted from the Particls blog.

I am supposed to be in my box coding but I can’t wait anymore. I have to show something off to you patient folks.

I think it’s a fair assumption to say that everyone involved in Touchstone (Chris, Mike, Me and our dedicated testers) is simply splitting at the seams anxious to release the next build.

Here is a little glimpse at what the I-AM keyword bias screen looks like so far (minus Chris’ polishing).

As you can see, we have made a conscious effort to blend the standard windows look with something that Mac users might even be happy with. It’s always a fine line between beauty and delivering what people expect from a standard windows app (beast).

While it’s been a little while since our last published build, we have taken great pains (just ask Chris) to adopt user feedback and advance the underlining technology. We have also revised parts of the framework to take advantage of .NET 2.0.Now, we just have to get it to compile ;)… Just Kidding.

This new approach has simplified the entire user experience (yes Chris, “You told me so”) and it has made for a more solid Touchstone.

Chris just MSN’ed me: “Chris: dude stop posting and code!” So I guess its back in the box I go. ‘Till next time.

Its Been a While Since I Blogged

Cross-posted from the Particls blog.

This is partly because Chris has had Mike and I are chained to our computers like leather bound gimps, and partly because the times that I AM allowed to “go outside” I’ve been watching Battlestar Galactica season 2 (OMG by the way!).But’s been worth it.It’s currently 8:50pm and we are making the necessary preparations for a huge development session, involving the last puzzle piece making TouchStone a true attention management platform.Mike has already worked on the dynamic “plug-in” manager loading external assemblies and having that external assembly “pushing” a message to the manager – the very crust of what TouchStone is all about. I have been completly overhawling the inner-mechanics and migrating the project to .NET 2.0 (OMG by the way!).

Now the core feels stronger, more solid.Oh, buggar, Chris has got the BIG stick out. Gotta go. More Later…

iAM on my way!

Cross-posted from the Particls blog.

Up until now Chris and I have been in the nuts-and-bolts part of the project. As a consequence the app “seems” stable (/me touches wood) and we are now free to do more interesting things. So far we have been doing LOADS (and I mean LOADS!) of planning and design behind what I consider to be at the very heart TouchStone – The Attention Engine.

Now we can begin focusing on the ‘Visible Innovation’ part. Breaking down the things you care about into a single and intrinsic number. The iAM Rating.

But ranking items based on stuff I like isn’t enough! Because, for most people, just subscribing to a feed is an indication of interest. So, we have to consider other factors.

To be honest, programmatically, I have been a little frightened of the iAM binary. It’s so important to nail it! So far our plans are pretty ambitious and the basic core of iAM (processing items as they are injected into the Attention Engine based on source and keywords defined within an XML file) is functioning already – what’s been lacking has been the interface and the more advanced bias calculations. This lack of any interface has worked extremely well for me, because while there is no way to configure the XML file, I don’t have to code it!

Chris recently upset this delicate balance by actually developing the iAM interface mockups for the release of the Limited Alpha!

‘iAM’ is so exciting though, because it isn’t JUST a keyword scanner and ranking system. It’s a whole system to scrutinize the items based on:

Content (keywords and source)
Source (where it came from)
Author (who generated the item)
History of past items that got your attention (by scanning items for similarities to items marked as read in the cache file)
Buzz value (how popular is the item on the internet and to other people)
The publishers recommended importance (so publishers and bloggers could distinguish the variable importance of items they generate)
..and more.
All this is very exciting, but it’s STILL not enough. TouchStone is also about allowing the user to configure the DELIVERY of items based on the iAM determined value. So we will work on those “visualization widgets” as well.

It’s great to see all these things finally start to come together. While we are quite proud of our ticker, it’s time to move forward and finally uncomment the code that fires off the other alerts. Soon guys and gals – soon we shall be firing off SysTray, Cursor, Centre Screen Modal, and (my personal favorite) Compact SysTray alerts based on things you deem important.

Enjoy the Limited Alpha (those that have it) and those that don’t – email chris@touchstonegadget.com already!

A Whopping 33Mb!

Cross-posted from the Particls blog.

It looks as though Lex’s Comment, might be right! It turns out that Touchstone might soon completely evaporate. Thanks to Google and a few Windows API websites I have discovered a nifty little way to address the memory consumption concerns that many of our alpha tester’s have raised.

As the above screenshot shows, I cut the memory footprint by a little over 90%. That’s right 90%!

I know this seems like an otherwise pointless blog entry, but my ulterior motive is to demonstrate our dedication to active response to feedback given to us by our testers. In case your not already aware, emailing chris@touchstonegadget.com is what you need to do if you want to play with the alpha, now 90% fat free! Well…next update anyway.

Show Me Yours & I'll Show You Mine

Cross-posted from the Particls blog.

In the past few days we have had a number of VIP’s get their hands on the Limited Alpha. One of these people reported that importing his OPML file failed!

We were a little agasp at this because we have imported basicaly every OPML file we could get our hands on – and they all worked fine (well, except for the one Chris broke – but he breaks everything).

I decided the only way I was going to be able to determine what caused the bug is by checking out the contents of the offending OPML file. Which means, asking for it!

At this point, I was a desperate man. And to be honest we (both) were pretty uncomfortable asking someone for their OPML file/s. In my eyes, it’s kind of like asking someone how much money they earn. It’s just not cricket!

But knowing there was no alternative we had to bite the bullet… and ask. Lucky for us, the person in question kindly obliged. And as yet, hasn’t ram raided our houses – which is a good sign. 😉

The whole experience has got me thinking about the Syndication Security Concerns. After all, if OPML becomes what we all feel it should then a person’s OPML file/s are sacred. It’s important for developers, publishers and especially marketing people to respect the sanctity of a user’s OPML. People found a way to bastardise email (spam anyone?) and it’s important to keep this in the focus while the “Syndication Revolution” gathers speed.

I’m not trying to sully the innocence of RSS before it becomes a mainstream communication technology, nor do I even offer any constructive suggestions. I only offer the thought that I think it’s a perfect opportunity for us (as ‘sort-of-early’ adopters) try to keep our eyes on security for the user – to come up with measures to safe-guard people and their ‘lord –of-the-rings-precious’ Attention data.

Automatic Update – Yeah!

Cross-posted from the Particls blog.

I got the auto update library and executable working tonight for the (currently somewhat unstable) “experimental” build of Touchstone. It’s well overdue because our little application is getting quite complex now and laying in new features can be a tricky process. Now we have a mechanism to automatically and non-invasively update users with new versions – making adoption and user updates quick, seamless and easy.

Now perhaps Chris won’t kick my ass so hard when a Private Alpha release starts throwing those ugly “object not set to reference of an object” exceptions.

Now all I need to write is a program which automatically updates the blog for me, and I’ll be right!

A Review of Touchstone

Cross-posted from the Particls blog.

Over the past couple of months we have really been working hard to polish the “TouchStone User Experience”. We have received many bug reports (oh my! the duplicates!). But one, deserved special mention. It reads more like a review – and we love reviews:

So I grab a copy of the alpha.

And I have to tell you, this looks good.

First, a disclaimer: I’m not a heavy rss user. I don’t use blogs (often), I do use rss feeds but not an unmanageable amount. My Google homepage can quite happily manage all the data I need to see. The downside of this is that I have to click to home to view my feeds. Obviously, I could use a third party solution, but none of them ever really ‘worked’ for me (too intrusive, too limiting, too much). Of course, using tabbed browsing means a self-refreshing google homepage can be left in the background at any rate (everyone uses Firefox or Opera, right? RIGHT?).

So let’s say I’m a ‘casual’ rss user, and not one of these people who has millions of blogs to manage. I’m probably not the best person to stress-test something like this.

Nonetheless, I have plenty to say about this gadget.

The Touchstone ticker looks ‘right’. It looks like a slick bit of software; it loads quickly and is immediately functional. You know someone’s spent a bit of time working on the look – and it slips into a docking position at the top of my second monitor like it was meant to be there. I have all my ‘internet’ stuff on one monitor, which means that clicking a touchstone link invariably just means looking below the bar to see what I wanted to see. If anything else, this is probably an advertisement for having two monitors, but I digress. The mouseover effect to view extended information is excellent, if a little slow at times: obviously grabbing header data for a whole bunch of feeds can be a little time consuming – I wondered here if there was any caching facility for these feeds, so that information once grabbed doesn’t need to be grabbed again. Not being a developer, I am most likely barking up the wrong tree 🙂

The second major bit of cool is the setup dialog. It’s mostly icons; and I’m in two minds about this. The icons themselves are extremely pretty and once understood, very obvious. Once you’ve got the ‘lingo’ (does Touchstone use common feed/blog parlance? I wouldn’t know, to be honest) you can see exactly how this thing works. However: I am a huge fan of threaded lists, and while the icon-based system is entirely worthy, I can’t help wondering how much easier it could be for the casual user if you had all your options in front of you, ready to be selected from a thread. Again, I’m no usability expert, but it’s something I noticed.

Also, a minimize button for the main dialog would probably not go astray. People get used to windows functioning in certain ways (I, for instance, like that many programs now offer the option to minimize direct to system tray – as with as touchstone – rather than the taskbar,), and getting rid of the minimize button, while making the dialog a whole lot ‘prettier’, does limit usability.

Here be my creative criticism. The software looks fantastic; highly scalable and thouroughly well programmed. I wish you guys the best of luck with it: keep sending me the alphas! I’m looking forward to system tray and mouse alerts – and the content ranking system should be awesome, if the work done so far is any indication.

Good luck again!

Anthony.

Docking is not just for Ships

Cross-posted from the Particls blog.

Another serious development session was held yesterday (once again Mike joined us to help control the ticker docking behavior in all its C# craziness.) and I have to say the outcome was amazing. Certainly far more productive then we initially believed – this new version actually compiles now – always a good sign.

This all brings us another step closer to Limited Alpha.

Trac informs us that we only have a handful of tickets left before we can release a sneak peek of TouchStone to special people.

Most of the work being done now is focused on usability polishing. Since the beginning we have always been highly focused on the idea that the way Touchstone behaves (and makes the user ‘feel’) is as important – if not more – than what it can actually do. Chris tells me, this is more important then buying a 360.

In addition, the memory footprint has been reduced even further!

I Think Therefore "I-AM"

Cross-posted from the Particls blog.

“I-AM” who I know.
“I-AM” what I read.
“I-AM” where I am.
“I-AM” how I work.
“I-AM” me.

During a huge Australian Summer Storm on the 8th (and the subsequent black-out), Chris and I took the down-time to fine tune and clarify some of the details about the TouchStone Attention Engine. It wasn’t like we were going to code anything.During this conversation, Chris mentioned that TouchStone embodied Intuitive Attention Management or “I-AM”. This initially was just a rather fancy nickname for the “How-Important-Is-It-Parser”, but the trouble is (despite my previous directives about what he was and wasn’t allowed to call the parsers) – I loved the name.After arguing/talking about ways of defining and encapsulating the essence of what a user does and doesn’t want to be notified about, we settled on the idea that each and every item generated by a source (be it RSS or other), has a given relevance to the user at any given time. This relevance is based on a number of internal and external factors.

By defining, naming and weighting these sources it’s possible to give each item an ‘importance value’ and then allow the user to define alert types based on value thresholds.Further, we decided, we could encapsulate this functionality its own library so that other developers and their software can tap into its power. The result is we take a source item, it’s content, it’s source, the author/publisher, key concepts/tags and apply pre-defined global and user defined “rules”. By biasing (positively or negatively) the final importance value, we can begin tuning the user experience based on relevancy.After we fleshed out the specific details on how we would accomplish this, I-AM was born. An external class library with the methods by which we should be able to determine, intuitively, the value of a piece of content to a given user. The result of this calculation should be an ‘importance’ value that is attached to an item moving through the Touchstone system. This value is then used to determine the way in which an alert is presented (i.e. level of user interruption).

I love diagrams!All values involved (we decided) should be from -5 to 5. A negative value being a vote against the relevancy of that item for the user. 1 being the least import, and 5 being the most. With a growing number of Meme Engines out there, it is clear that there is an ongoing effort to try and reduce the RSS Overload and help content rise to the top.

In essence, I-AM might be a personalized Meme engine that any feed reader could use to place a value of importance on content coming in from a user’s OPML file (for example). It is then up to the news reader to determine how to act on that value for a great user experience.I-AM is not intended to replace the existing attention ranking and suggesting methodologies, but merely to enhance the user’s ability to sort and control the flow of syndicated content on the client side.

Plus it has an awesome name – don’t you agree?

Time for a Moment of Honesty

Cross-posted from the Particls blog.

Chris doesn’t much like it when I get all DNM because I tend to force brute honesty from every orifice of my body, but release 3 of the private alpha, is … well, highly experimental.

Yes, the transit system is flash and fast, but the BagItAndTagItParser seems think that a dropped item due to cache is a failed ‘item injection’ – Bah! I am getting the bugs out slowly, but we are making significant progress. Momentum is growing and (so far) it’s having a positive effect on the project.

Michael has sort of become our unofficial C# and XML consultant; building a few little classes to extend our libraries. He is also extremely adept at spotting the objects I have created, but not initialised, catching those god forsaken object exceptions .NET keeps throwing in my face.

Private Alpha Release 3 (and the impending Limited Alpha) is getting there slowly!