Monday, May 22, 2006

Improving reality

Historically there has been a big gap between real world and computer interfaces. Things behave one way in real world and our desktop applications behave another. I'd like to see us moving to some extend away from that. I've been talking about physics simulations becoming more widespread on the desktop last summer and ever since I went through a lot of them. Over the weekend I started looking into moving to a real physics engine. Open Dynamics Engine is, as far as I know, the best one. Problem there is that for desktop apps cloth, rope and water simulations are way more useful and currently it, still, takes too much effort to mimic them.

I'd just like to have a model, where moving from reality to the computer interface doesn't involve much of a mental switch. Or at least it's very natural. I'm not saying that it should behave exactly like something out there but it needs to be a lot more dynamic than what we have right now. Which is really, what we refer to when we talk about "organic interfaces".

There are some things that are spot on, that improve on what you normally get in real life and make computers act as what they really are, tools. Yesterday I was writing something by hand, thinking "man, this would be so much easier with a spell checker". You know you got something right, if you really miss it while performing a similar activity outside the computer world.

Talking about spell checking I played a bit with Sonnet over the weekend. I've been handling KSpell, then KSpell2 for a while and then I just grew tired of it last summer (for various reasons not really related to the code itself). I've been toying with the idea of full linguistic framework for a while. Besides spell checking we're talking about grammar checker, dictionary, thesaurus and translator. Sonnet is just that - full linguistic framework. I'd like to have all those functions available to all KDE applications. Being able to take a step back, look at all the problems I've seen and complains I got over the years from both users and developers and just sit down and rework the whole framework to fix them is great. Linguistics is fascinating and for some reasons there's not a whole lot of people who'd want to deal with it, at least not as far as its desktop usage goes.


Anonymous said...

Do you have a weblink for "Sonnet"? I tried googling it up but I didn't find it.

Jakob Petsovits said...

Spell checking and linguistics is great, but won't be getting anywhere if it's not being _maintained_. Remembering KSpell2 and the Gecko Qt port, I'd suggest you try to find some steady worker who gets involved into Sonnet development, and is motivated enough to work on it even after you left for higher aims.

(Don't read this as an accusation, I really appreciate your work. Just make sure it survives for some time.)

Anonymous said...


No offense. But you are known for coming up with this grandiose ideas and often not delivering on them.

I remember that you were ready, anytime now, to release a kde version of mozilla's gecko engine.

I do appreciate your work on the EXA stuff, but that hasn't trickled out to distributions yet, so I am not sure about what the status of that stuff is.

All I am trying to say is that it is better to point to people to stuff that they can download and play with if you expect credibility and help in an open source project.

Zack said...

@jakob: me "I've been handling KSpell/KSpell2 for a while" almost 5 years to be exact, you "you don't maintain projects". One of them is not right :) To be honest I've been handling kspell for all that time virtually by myself so i gave up on finding people willing to work on it.

As to me not maintaining most of the stuff I've done - no one is. Welcome to Open Source where virtually none of the projects that's been started by someone is maintained by that person - unless they get a job doing just that. The difference with the stuff I've done is that it always requires some special knowledge and the level of difficulty is rather high so there's usually no one who could just work on it. And that's not going to change because I enjoy doing things that are challenging, and as I said once before I'm looking for a challenge when I sit down to do something in my spare time. I write a lot and I produce very quickly, the only difference now is that I'm not going to be releasing most of my code to any public respos exactly because people complain that the code is not maintained. The bottom line is that most of it was never meant to be. If there's something that is so important for someone then that person needs to either help me or start maintaining the software themselves.

Oh and Exa has a wonderful maintainer in Eric Anholt.

Anonymous said...

Hi Zack,

Thanks for your contributions to KSpell (1/2). KSpell2 was a great improvement over KSpell, and I hope this will build on that.


Anonymous said...

A lingistic framework huh. Well that sounds like something that could make a developer really wealthy in the proprietary world so, I hope you get the gusto to got through with an open and closed release.

Now to the good stuff. Where do things stand with the scalled down GL accelerated version of the Xserver for kde 4 you mentioned in a radio show i downloaded several months ago. Also, what are your thoughts on XEGL really happening, becuase that in my opponinion would really put Linux on par with it's counter parts when you start to think of what would be capable with the interfaces. If XEGL is still just a pipe dream, will XGL get the KDE blessing for kde 4 along with the compiz code being merged into the KDE window manager?

Anonymous said...

Zack, you rock!! ^_^ That's the only thing that bothers me :-)
No really, keep on innovating, as long as you're inspiring, people will follow!