Friday, July 29, 2005

Camaelon's release

Ok, finally arrived home... quite a lot of things to do next week at the lab, so I'll try if I can to release a public version of Camaelon tomorrow (even if you can already grab it from the étoilé's cvs in Bundles/Camaelon, of course !)

Tuesday, July 26, 2005

Music

... One good thing beeing in holiday, you have more time for playing guitar :-)
So I recorded some songs with my cousin, available on boxson.net, a french site that provides hosting, etc., for copyleft music (licence art libre, creative commons...). I think it's great that such initiatives appears beyond the software world...
Anyway. Lots of fun. :-)

Friday, July 15, 2005

Camaelon 2 ?

I committed a few things on the cvs today and yesterday... here's a screenshot of the current results with the theme Nesedah:



Just grab Camaelon from etoile's cvs, get Nesedah.theme 0.3 and follow the readme :-)

What's missing before an official Camaelon 2.0 release ? well... there's always something missing... for example I'd like to refactorise GSDrawFunctions to use instance methods instead of class methods, so you could change themes on the fly very easily. But I think that can wait for a 2.1 :-)

Appart from that, well, there's a couple of problems apparently with NSMatrix, some wrong text color with cells in general (actually this one is a gnustep bug), and you shouldn't use gnustep to manage the windows with camaelon enabled for now. The menu aren't themed properly (the menu items are, but the menu itself isn't really themed), etc. Nothing very complex overall, so hopefully I'll fix that in the next few days before leaving to France.

Thursday, July 14, 2005

Newton...

Received the wifi card and memory card, so I was able to connect the newton to my local network :-)

After some tweaking, I have NTK (the newton dev environment) running under Classic and connected to the newton using the wifi card :-)



Just started to play with NTK and NewtonScript, but it's quite cool. By far not as cool as IB/Gorm ;-) but NewtonScript is a rather nice language, and NTK seems ok, though not fantastic... got a very basic app running here, where what you write on the newton is displayed on the above textfield when you click on the button (very dull, but it's just to test things ;-)

Not sure what I'll do on it... perhaps a simple calc application where you'd write the numbers / operations and have a "paper trail" ? or perhaps simply a battleship game (there are two already, but they don't use the whole screen, and anyway it's just to play a bit more with NTK/NewtonScript ...). I should also try the xmlrpc lib, it could be cool to use the newton to connect to my visualization system at uni ;-)

I tried VNC on the newton too, both as client and server, and it's extremely cool.. even if it's very slow :-)

Saturday, July 09, 2005

Newton & Étoilé

Well, I didn't do anything last week on gnustep, I just moved from my previous flat to a new one, and in addition to that I also got a newton 2100 from ebay ;-) -- so most of the remaining free time was passed playing with it...

The Newton is really an incredible beast. Ok, it's a bit bulky compared to my pocket pc or my palm Vx... (right, it pass the test of the pocket, but barely, and only because I tried on a huge winter coat with big pockets ;-) -- no chances with a summer coat, that's for sure !) but technically it's a marvel. The writing recognition engine is fantastic: it works! :D
And the UI is great, very well thought, you do everything with the stylus in a logical way (example, to erase a word, just scrible on it... to correct a letter (say, lower case to uppercase) you have a variety of approaches, but the simplest is just to rewrite the letter on the previous one ;-) etc.

The most interesting thing in the UI imho is the "assistant" idea. All datas on the Newton are stored on "soups", kind of databases. Any application can read databases from other apps. So it's easy to really have a synergy between applications. The assistant use that fact: basically, it interprets a sentence (one you just wrote and then pressed the assist icon, or one you wrote directly in the assist window). For example, "remember to buy bread" add the task "buy bread" to the todo list; "meet simon friday" add a new meeting in the calendar application with simon (if you have a simon in your addressbook) on the coming friday, etc. It's truely great. It understand some variations of the formulation (eg, the task "schedule" will be triggered when it encounteers the words "schedule, meet, meet me, talk to, breakfeast, lunch, dinner, holiday, birthday, b-day, bday, anniversary). This mechanism is in fact rather simple, but it works very well !

The writing recognition is excellent (by far the best I ever tried) as I already said; you can choose between 2 engines, one which works letter-by-letter (and works really well) and another that works by words (with attached letters) that works really well too ;-) (this one use neural networks, so it's said to improve -- but I think it already works well :-)

You can also choose to save the writing as "ink text", which let you defer the recognition to a later moment. You can also decide to not have recognition and draw instead; there's two drawing modes, one that "improve" the drawings and a raw drawing. The "improve" drawing means that if you draw something close to, say, a square, it will straighten the lines. Great.

It also can record sound, the use of sound in the UI is quite cool (well, after a while you remove the stylus noises though ;-).

The UI is simple, readable, it handles copy/paste, you got lots of connectivity (fax, email, printing...)...
Basically, they got everything right, or nearly right ! After playing with it, it's really difficult to understand why Apple decided to kill the Newton -- it's so much better than WindowsCE (well, duh..) and PalmOS ! and the best thing... the data is stored persistently, even without power -- no more fear of losing datas when the battery run off. And the batteries are simply 4 AA standard batteries..

The incredible thing is that there's still a lot of people using theses, as well as developers -- I'll try plugging a wifi pcmcia card monday on it, and in theory that should work (got the drivers on a memory card -- two pcmcia ports rulez!); it has web browsers, mail clients, even an mp3 player... not bad for a device made in 1997 ! you just have to wonder what it could have become if apple didn't kill it...

You can program it in Java (there's a waba port) or C/C++, although the normal way to write GUI apps is to use NewtonScript, an interesting dynamic language, object-oriented, based on prototypes.

An interesting page showing you some videos of the Newton: http://www.newtenlightment.de/downloads.html#movies
This one is great too, with a commercial video and its transcript: http://www.aresluna.org/guidebook/extras/videos/welcometonewton

In fact, in many ways, I think NewtonOS is a better OS (UI-wise) than current ones for most of the people, with its emphasis on communication, organisation of personal datas (PIM), and in short, with everything centered around the datas, not the apps.

We should have that kind of orientation in our current computers !! (Actually, Apple made the eMate, which was a NewtonOS device with a keyboard, with a shape a bit similar to the ibook palourde).

So obviously, it gives me a couple of ideas for Étoilé. I think we should deliver a small suite of PIM applications, with shared databases (well, we already wanted to do that to some extent, but what I mean is, we should try to have a way to easily create "open databases" that Étoilé applications would use to save their datas. Such "open" databases would be public (well, limited to the user's app) and easily "discoverable" -- probably a good idea to include their schema/docs in them for example... need to think a bit about that, and I should read in more detail the newton programming book. Yes, our talks about db-enabled fs and this remarks about "open" databases sounds like WinFS, I know ;-) -- but WinFS' goals are actually very interesting.

The other thing is, we should have an assistant-like technology (I sent a mail on the mailing list detailing that point).

A last thing... current PDA/TabletPC UI completeley sucks. Étoilé could perhaps be an excellent choice for a linux-based tabletpc or pda -- as everything already works with only one button (even if it handles more, of course), which is great for such devices, and if we manage to have a good synergy between apps, particularly PIM apps, as well as an assistant technology, that could interest people...