Widgets creation made magic….

Beginning of this year, Webwag introduced the “Wod”,or Widget On Demand, that allows you to create a Widget on any web site. The process was quite easy, but it’s now even easiest, thanks to Webwag FireFox extension: a click and you’re done…How? Install the toolbar, find a site you love but don’t have widget? Press “Create a Wod button”, select the area you want and click “Done”…That’s all….You now have a new widget! There are of course limitation, but in most of the site, it works perfectly. Demonstration:

A wod in two steps

Go to your favorite website (example: http://boursorama.fr)
Press “Create a Wod” in the Webwag button and select the area you are interested in:

Then press ok, and….miracle, the widget is on Webwag:

And this works for many different site, including live site: the update is done real time. Try it yourself!

The extension contains also other features, like the ability to add directly an RSS stream from a page.

Final reminder: the tool bar is here

Identificateurs Technorati : , ,

Facebook and privacy

Just discovered a VERY interesting post about Facebook and privacy:
Facebook Isn’t Private, and 7 Other Things You Should Know.

The most interesting part, is this one, the number four topic:

By posting User Content to any part of the Site, you automatically grant, and you represent and warrant that you have the right to grant, to the Company an irrevocable, perpetual, non-exclusive, transferable, fully paid, worldwide license (with the right to sublicense) to use, copy, publicly perform, publicly display, reformat, translate, excerpt (in whole or in part) and distribute such User Content for any purpose on or in connection with the Site or the promotion thereof, to prepare derivative works of, or incorporate into other works, such User Content, and to grant and authorize sublicenses of the foregoing.

So Facebook can do what they want with content posted on Facebook! Including picture, your profile (your CV?), etc…. A perpetual, non-exclusive, transferable license….

Think of this before creating your own private group to discuss the next big thing, or before posting your perfect pictures… Seems to be the reason why a group named “the Grasshoppers” moved from Facebook to Ning

Through Widgify

Identificateurs Technorati : , ,

Lua, Java and a little bit of history

Browsing the web I’ve discovered that LUA reached a popularity of 15 in tiobe rank. This is incredible, but also very interesting. Lua is a very simple but smart language that was designed to extend existing applications. Typically, to add scripting capacities in existing programs. This is a not a new idea, and a lot of technologies where available at that time, but most of them where not easy to implement.

The key differentiator of LUA was the integration simplicity. LUA is now very popular, but when I’ve first discovered it, it was not the case. I’ll do an “historical post” of what happened in the early days of In-Fusio regarding LUA, mobile, and Java.

In 1999, when we started In-Fusio, I’ve created the first connected game embedded in Mitsubishi device. At that time, the most advanced mobile game was snake (V1!) and we were delivering console quality game on mobile, but even more, we introduced connectivity with SMS. User was able to download new game levels each week through SMS….These games (BrainDrain, Push, Crazy Pet) also contained some hidden part, but obviously very hidden as not so many found them: there was the first 3D real time demo on a mobile phone, done using Vector Ball, a reminder of my early Amiga days

Some snapshots of Push, a Sokoban clone, embedded in Mitsubishi phones

But the issue was that the game where embedded, and not downloaded. User was not able to change his game. We started then to think to a way to download games.
Technically, it seems that it was possible, even with limited resources of the phone. We could expect around 16 to 32kb of available writeable flash memory for game. But due to security reasons and cross platform issues we needed to find either a scripting language, or a VM based engine.

So I started to evaluate the various technical solutions for this: from Python, Tcl/Tk, Java, JavaScript and of course Lua. Even Perl! I also looked at some alternative solution, mainly used in SetTopBox.

Rapidly , it appears that Python, Tcl/TK, JavaScript where really too heavy in terms of code size to fit into a mobile. Perl…no, definitvely not Perl for game!

So the remaining two where Java, and Lua. Remember, it was in 99 and MIDP was not yet even discussed. I’ve evaluated a couple of the “light java “implementation, like Waba, and another one that has been used in some lego engine.
But Lua looked great also, and was compliant with our requirement:

  • small footprint
  • easy integration
  • simple to understand and to use

I made a prototype of an integration with a “kind of” R-Type game on a Mitshubishi phone that worked well.But my godfeeling was that Java will be here for long time, and strategically speaking, it was better to follow the Java path. The KVM on Palm was also presented in JavaOne’99, the first JavaOne I’ve attended!
So we look deeper on the Java side, and found a nice JavaCard implementation by Schlumberger. It was really an amazing implementation, tailored for highly constrained JavaCard, so it could feet easily in mobile.
At that time we also discussed with Sun about Java licensing, but fee were really beyond expectations (Sun started by talking of a 10$ per handset license!). We decided to choose the VM implementation, a clean room implementation so no fee for Sun as long as we did not put any Java logo on the mobile. So we decided to use Java instead of LUA.

The first implementation took some time, but when we had the first real handsets, we had a big surprise: it was ssoooooo slow, and unusable for games! Was hard to go beyond a simple minesweeper game. So we decided two things:

  • improve the speed of the VM, by working with Schlumberger
  • create high level game API

So we created Sprite, Layer component, animation, etc…to speed up things, a complete game api. We also added a raycast engine that could be used to create 3D effects with processing power of mobile of that time. In fact, all the rendering and the animation was done natively, while Java was used more as a scripting engine. And that’s where the MIDP2 game API came. Here are a few snapshot of the first black and white created for the platform:

Some of the early Exen games….

The first prototype was demonstrated in September 2000. Even internally, the game developer team was not convinced with the ability to create arcade quality game on mobile. But the first game produced externally on this platform, by Kalisto, “Tinies Farter” (yes!) was a great and really playable arcade games, and gave us confidence in the ability to create more cool games.

With a launch early 2001 with D2 in Germany, closely followed by Orange in France, and more operators later on.
Since day one, the system has been conceived with an ecosystem for game developer, operators, and us, so we started to make revenue from day1, while it took years for J2me to reach maturity. We thought that we had a 6 to 12 month windows of opportunity with Exen, but it appears that the window was more 24 to 36 months, with a total deployment of more than 50 millions of handsets….Not bad for a small window of opportunity.

The story is not yet ended, but we will write this another time….
Identificateurs Technorati : , , ,