Optimus keyboard nears its prime, Upravlator surfaces

upravlator_front_photoshop.jpg

Having now released a three-button keyboard, Artemy Lebedev, the company behind the much talked-about Optimus keyboard, is announcing yet another partial keyboard before the real deal goes gold early next year.

Named the Optimus Upravlator, this next widget is apparently a “completely new kind of input device.”

From the information available, it appears to consist of nine large (~5cm square) buttons, each featuring a customisable, colour display. There will also be an optional stand on which it can be mounted.

Intriguingly, the Upravlator input device will receive its display information directly from your video card rather than via USB. It plugs directly into “your second monitor port,” apparently to reduce the display lag down to that of a standard LCD monitor.

Aimed at the media professional, the Upravlator will be the “single best friend of any music engineer or video editor,” says ‘tema’ on Artemy Lebedev’s new Optimus blog. “Graphic designers should be happy as well.”

If you’re unaware of the full-sized Optimus keyboard, it’s quite out of the ordinary. Each key’s face contains a miniature monitor that displays either what the key does or, in fact, whatever the user desires.

Not only can you assign certain actions to the keys in applications, as with an ordinary keyboard, but you can finally display a relevant image, or even an animation, on the key itself.

Much like an opposing number pad, the Optimus will also sport an additional ten programmable buttons on the left.

Concern still surrounds the price of the Optimus, however. It will apparently “cost less than a good mobile phone.” Hopefully not one of those diamond-encrusted ones.

The Optimus Mini Three — the keyboard with only three buttons — is selling for a pretty steep US$159.96. For that price you get to do things such as play pong at three frames per second on three 96 x 96 pixel OLED displays.

Interestingly, it has been announced that the Optimus keyboard’s replaceable keys will no longer feature OLEDs, opting instead to use something else for the myriad 32 x 32 pixel resolution displays. Cost-cutting, perhaps?

With the Optimus now said to be in production, pre-orders from the eager are slated to be taken sometime in December.

It just might transform your wallet into a black hole…

source: www.apcstart.com

Sony Rings In ‘Smell-o-Phone’. Oh Dear

smelly.jpg

Japanese telco giant, NTT DoCoMo is releasing a scented mobile phone in the shape of the SO703i from Sony Ericsson.

Why? I don’t know but apparently the phone takes scented sheets that smell when you open the phone. Something to do with relaxing odours and there’s 11 to choose from. NTT has already tested smells in the cinema so that the fragrance released matches what’s on the screen. A load of crap, I know.

The company has named its offering the D8000iDS, which boasts a double-screen: a normal TFT on one half and a touch-screen on the other. Do not expect to ever see this over here where phone makers think car exhaust fumes, rotting rubbish and under-arm sweat are all the odours we deserve.-Martin Lynch

PS3 Gets European Launch Date

ps3

That’s the day when the PS3 finally goes on sale in Europe. It’s also the day you won’t stand chance of getting one, unless you’ve been smart and pre-ordered one already or, start dusting off that sleeping bag now.

What’s more, only the 60GB version will be available at launch for £425 so, if you’ve been saving for the 20GB version, it’s time to double that paper route or mug more grannies. Interestingly, the rest of Europe will only be paying £395. The 20GB version will come later.

There will be one million PS3 units going on sale on March 23, with around 250,000-300,000 expected to come to the UK. Sony said there will also be an update of the system software to ‘enhance the entertainment potential’ of PS3 but no details on just what means. Will keep you updated.

Anyone upset by the lack of a 20GB version at launch?-Martin Lynch

SJAX: AJAX option for automated in-browser testing

Vitaliy Shevchuk has proposed SJAX: AJAX option for automated in-browser testing which makes testing of Ajax apps simpler with Selenium that having to waitForAjax and friends.

The Problem

However, things are getting more complicated with AJAX. No page is loaded, but the content has changed. And it hasn’t changed instantly; AJAX is asynchronous by its definition. Setting a bug interval is a bad solution: it makes build cycle very slow without really solving the problem.

Some guys suggest using a “waitForCondition” command. In other word, every time AJAX is in action you need to manually add a waiting condition. This is much better then nothing; at least it is a real working solution. However, test creating is much longer and less fun.

Another option would be to extend Selenium to make it aware the underlying AJAX framework, so that the test case would pause until XMLHttpRequest is satisfied. Well, it requires extending Selenium, which is not very simple task neither. And there is a multitude of AJAX frameworks available, it would be impossible to adapt Selenium to every of them. And there are other in-browser testing solutions, not only selenium: both open source and commercial ones.

Solutions?

And the ideal scenario would be the following:

  • Test, application itself or the in-browser testing framework raises a flag to mark the current session as the one of automated testing.
  • AJAX framework detects the flag and passes to synchronous mode.
  • In this case, a method of user action simulation (click/type) of Selenium will not return until the AJAX data is successful fetched and processed. So Selenium will not be able to continue before the page content is updated, and it’s exactly what the user expects from his macros.

source: ajaxian.com

The Hardware of Tomorrow Versus the Platform of Tomorrow

Joe Walker (DWR. I know you know) is talking about The Hardware of Tomorrow Versus the Platform of Tomorrow.

The problem is that web-browsers are a step backwards as far as multi-threading goes. In Javascript there is no such thing as a new thread, and worse than that, the entire platform (i.e. a browser) runs a single JavaScript thread. If a script in one window goes into a tight loop, or runs some synchronous Ajax then the browser HTML display freezes.

So are the any solutions?

  • Adding thread primitives to Javascript might technically possible, but it seems to me to be impractical; the single-threaded assumption is built fairly deeply into many applications.
  • It might be possible for browser manufacturers to create a thread per domain. I don’t see how this could cause problems, but I’ll admit that I have a suspicion that I’m overlooking something. If it does work then it might be possible to allow developers to create new threads by dynamically creating iframes in other domains and having some safe way to communicate between them.
  • There is a Javascript pre-compiler called Narrative JavaScript that looks like it might be of some use: it contains a spawn() method to start a new thread of execution. It’s written in Javascript so you can deliver the pre-compiler to the browser or deliver the output. However until there is support for something like this at a language level that can exploit newer hardware, it doesn’t solve the problem.

The solution that I’d like to see is a language emerging that pushes the job of creating threads to the compiler, that runs on the JVM, and that is available in all browsers. I think I can safely predict that this is not going to happen any time soon though.

I agree that it will be interesting to see how Ajax fits in after we see great looking apps via WPF and the new Apple APIs (and Apollo….).

However, faster CPUs also mean faster running Ajax applications.

And, threading? The idea of having actual threading code in Ajax apps scares me. It is hard to get threading code right. We don’t want to repeat the problems of the past by making people mess up multi-threaded code. Instead we need to have better mechanisms for handling concurrency and threads. If we ever go there, we can learn from COmega and the world of chords.

What do you think?

LG Prada Touchscreen Phone

lg prada

If you can’t bother waiting for iPhone, you could always opt for LG’s Prada phone, being touted as the first fully-touchscreen phone. Expect some controversy with that claim from the fat, PDA/phone quarter.

The Prada KE850 weighs 85g, is 12mm thick [a weenie bit thicker than the iPhone] and boasts an extra wide LCD for all that touchy-feely goodness. The screen offers a decent resolution of 400 x 240 pixels widescreen and the in-built 2MP camera can record video at 30fps. There’s no doubt it’s pretty but it’s not 3G and has no Internet capabilities which is fine for those that don’t want the world crammed into a single device. Continue reading

Urwerk Hammerhead 201 Watch Just £25,000

Urwerk

Urwerk make expensive watches. In fact, expensive is almost too cheap a word to describe the kind of tags this company slaps on its luxury timepieces.

Thankfully, Urwerk tend to rely on engineering for its exclusive status, unlike others that think if you throw enough Swarovski crystals at something it will pass for style. Still, would you pay up to £25,000 for this watch?

Continue reading

Logahead Blogging Engine UNU Edition

logaheadunutrackcomm.gifunuplugins.gif

The UNU edition is based on the logahead beta 1.0 code published under GNU/GPL license. While the original version sticks to the basic functions of a blog (mainly publishing posts and receiving comments), the UNU edition is more enchanted and offers a number of additional features.

WYSIWYG Support, Additional Plugins, Nice URLS, Trackback, Comment Moderation and much more

Demo + Download Enhanced UNU Edition: http://typo.i24.cc/logahead/
Standart Edition: http://www.logahead.com/

Continue reading

4images – Image Gallery Management System

4images

4images is a powerful web-based image gallery management system. Features include comment system, user registration and mangagement, password protected administration area with browser-based upload and HTML templates for page layout and design.

More features are: RSS feeds, search engine, automatic thumbnail generation, extensive user administration, upload function for users, showing IPTC and EXIF data of images, rating of images, spam protection, protection against hotlinking, newsletter function, e-cards, integrated database backup function, etc. Continue reading

Compression, Caching, for faster load times

Jesse Kuhnert, Tapestry/Dojo team member, spent time on caching and compression mechanisms in the effort to give the best experience “for free” with Tapestry.

The result was:

  • Browser Caching: Previous versions of the framework weren’t aggressive enough in the way that all of the bundled assets (images/javascript/css/etc) were managed with http headers. Though the Expires and If-Modified-Since headers were being used it wasn’t really the complete solution. All of these resources now have realistic / appropriate headers set depending on the type of content and browser being delivered to. (Etag / Cache-Control / Expires / etc) Things will probably still be undergoing more and more change as this section is refined but anyone currently serving this content from the core Tapestry jars (or their own) – with no other configuration – should see a significant performance boost with the added caching support.
  • Gzip Compression: The biggest (and scariest) change has been the addition of intelligently gzip’ing content where appropriate. Now all javascript/css/html content that is typically managed by Tapestry gets a good once over with some gzip compression to help make those responses as snappy as possible.
  • Much Faster load time: The overall load time for pages should be much better now. The bundled version of dojo with tapestry is now served at a size of roughly 50k – down from the default size of 200k.

I would love to see some benchmarks on the gzip compression side. I used to read that for smallish file sizes, and certain machines, and certain networks, the overhead wasn’t worth it.

Have anyone in the community done good work on when to gzip versus when not too?