Previous Entry Share Next Entry
And *that* is why I'm building Querki
Really, today's XKCD summarizes my elevator pitch remarkably well:

  • 1
So that, some day, someone can reinvent version control in a Querki site?

Well, among other things it's why Querki is going to have universal version control built in fairly soon. (Really, as soon as possible, but we need to get up and running in the cluster first before I can start that project.)

But seriously: Querki's elevator pitch is coming to focus on the fact that small communities have basically no proper tools to manage their information, and the result is that they wind up doing *insane* things with spreadsheets because it's the only hammer they have. So I'm building a tool that has most of those building blocks built in instead.

(And I'm fascinated by the choice of example, since it's been on my mind so much. I'm beginning to think that scheduling may be one of Querki's killer apps, and I'm chewing on what features are necessary in order to do that well...)

Having thought about it for a while, I'm almost convinced scheduling is AI-Hard. At least, automatic scheduling. Largely this is because scheduling when you get down to it is about expressing private and/or implicit information (e.g., whose calendar should blink first when there's a conflict).

It'd be interesting to look at a real calendaring system that accreted to solve or gloss over this problem, to see where a system could add more value over a very fancy whiteboard. (Which is, of course, what many people do use Excel for.)

But a side note: people use Excel for odd things because it's insanely powerful while breaking programming down into bite-sized chunks. And these chunks are spatialized in a way a programming language doesn't really do. Some people will *never* understand "sum(average(x))", but if you have a row of averages and then you sum them into a cell at the bottom, it all makes sense to them. (I'm hoping to extemporize into this in that affordances essay...eventually...)

If you can leverage that, you can occupy the same market-space...

Having thought about it for a while, I'm almost convinced scheduling is AI-Hard. At least, automatic scheduling.

Oh, totally agreed, but that's not my goal -- rather, I'm spending some serious thought on how to *help* people deal with this sort of constraint-solving problem. Not solve it automatically, just make it easier to play with the options and tradeoffs. It's a fascinating problem; I'd love to chat about it with you sometime.

Interesting point on the spatialization. I keep tossing around the idea of a "spreadsheet view" in Querki, and have almost implemented it several times. On the one hand, it's too limited to represent the more complex possibilities, and sucks if the data gets at all wide; OTOH, it's a visual metaphor folks are used to, and which works well for simpler problems, which are likely to be the most common case. Ponder, ponder...

But would people want completely automatic scheduling? If you allow for that you then you also need to block out for yourself every single time that you're not available for things to be scheduled even if you don't actually have *plans*-- on a level of "sleeping here" and "home for a few hours here" and "I need this time to be *free* even though it's technically not because I should probably leave the house at X". To say nothing of whether you even want to take the engagements people are trying to put on your schedule in the first place. Even if the AI *could* handle it, why would anyone *want* it to?

I don't know -- it would actually be interesting to see how well that worked. I'm sure that Google will eventually try it, given their general "we know better than you" approach to things. I agree that I would probably hate it personally, but it wouldn't surprise me if some people would like it.

But as mentioned elsethread, what I'm more interested in is *helping* people schedule -- Doodle on steroids, basically. I think there would be a lot of value in an assistant that helps you explore the options and tradeoffs. Not quite sure what that looks like yet, but I've had this problem in the back of my head for the past year, and I'm at least starting to understand what it wants to be able to do...

For some folks, scheduling really is a hassle of their daily lives that would be better handled by an office admin or personal secretary--and that's where a clever program can step in. If I have to schedule four meetings a day (which sometimes happens to me) and it takes four context switches at 5-10 minutes each, that's worth offloading.

Within a bounded context (e.g., work hours) automatic scheduling can be quite helpful. Outlook already does a version of this, finding you free times and rooms, since it is also aware of the schedules of the other people and the rooms. But without an intelligence behind it, it does things like schedule brain-intensive meetings for 4pm on a Friday before a holiday, when no one will be up for them.

A system can make intelligent guesses about things like sleeping hours; if you give it access to your location info, it also knows when you're typically home on a Wednesday, etc.Google Now uses this right now to suggest travel plans, and they just rolled out a feature in Calendar which automatically schedules things like "go running 3x / week" and shifts them around as your day changes.

So it's not as ridiculous as you might think!

And there's, which is aiming to solve this more completely. It's quite hit-or-miss right now, with some people swearing by it and others bailing.

The more-complete case is where we get into unexpressed information like whose meeting gets priority...and that's not available yet, as far as I know.

  • 1

Log in

No account? Create an account