Empscripten compiles a low level bitcode into a high level language which ends up being parsed, compiled / interpretted inside the browser as a JS app. It's inherently wasteful.
Aside from the overheads of the above, JS is executed from inside a browser through events. You might have seen a message in a browser along the lines of "Javascript is taking too long to return should I kill it?" if a JS snippet does not exit quickly enough within some preset duration. The browser is essentially frozen while it's waiting for JS to return since with the exception of web workers everything is synchronous. So Emscripten would have to use a timer - set timer for 1 ms, wait for wakeup, do a slice of stuff, save state, set timer for 1 ms, save state, wait for wakeup. etc. It basically has to have a scheduler sitting at the bottom of itself so the browser doesn't lock up which drags down performance and it's inefficient. If it does anything to the screen it must also do it through the DOM which adds its own overheads even if everything is directed to a canvas.
Don't get me wrong I think Empscripten is a technological marvel and will find many uses. At the same time it's horribly inefficient compared to the way it should be done. Providing it was endorsed as an open standard PNaCl or something akin to it which allows the browser to compile it straight into native code (with the appropriate hooks and safeguards to prevent the code from smashing stacks or escaping its sandbox) is the right way.
No, it's a quite sensible argument. KDE presents a needlessly complex UI thanks in part to the rat's nest of menus, buttons and options, more options and even more options it flings in the face of users. Sometimes less is more and its never been a message that KDE or its users have seemed receptive to. This may explain why even on Linux KDE has always been in the shadow of GNOME which has paid far more attention to usability.
Browsers don't typically spamming around tight in timer loops making heavy use of array buffers. So while it might be an interesting test it is not reflective of what browsers are doing for most of their lives.
It's neat to see it working and there will be lots of ways it could be applied but really browsers need something like PNaCl - where LLVM bitcode can be compiled or interpreted by the browser with as little overhead as possible in a sandboxed environment.
Because it doesn't work very well. What happens if you ctrl+shift+cursor in some random app in Android? Pot luck. Keyboard accelerators? Pot luck. Proper focus in fields? Pot luck. What happens if you mouse over a link or a text field in Android? Nothing because the cursor shapes provide no contextual feedback to the user. The only mouse effects I've noticed are occasional sites where the a:hover and mouse events kick in. What happens if you drag a selection of text with the mouse in Android? Pot luck because Android's text selection is designed for fingers and doesn't necessarily work the way someone with a mouse expects it to work.
Mouse and keyboard in Android are extremely basic and wanting. Google could do a lot here to improve the situation and it needs an extreme going over to whip it into shape.
The GP said "you have Windows underneath". I just pointing out in a humorous way that he / she didn't.
Also before you think I think Android is all sweetness and light, I don't. I hate the mouse and keyboard support in Android and think its one area that Windows gets right and Android sucks balls at. But conversely just because I like it for that reason doesn't mean I can overlook RT's shortcomings of which there are many. It's half an OS and not the good half.
I expect that I'll own a proper Windows 8 tablet someday when the price reaches no-taking-the-piss levels. But RT IMO is a lame duck. It's not Windows, and as a tablet its few advantages are outweighed by its many disadvantages.
It's fully featured in the "doesn't run any software except MS products" sense. I strongly suspect the only reason there is a desktop at all is because the MS Office group came to the Windows 8 group with a big frowny face and said they couldn't port their horrifically complex app suite in time. I don't blame them. So RT included a desktop kludge to support MS Office and maybe a handful of other tools and no other reason. I don't expect it to survive when MS Office gets a proper port.
Okay a certain suspension of disbelief is necessary for a Bond movie. But it costs the movie makers next to nothing to make a movie which portrays computers software in a semi plausible way. But instead in Skyfall Q plugs the world's most dangerous hacker's computer straight into MI5's intranet, babbles through a jargon salad for a minute or so while watching moving nodes in a graph and a bunch of hex and then stares open mouthed as all the security doors open. This fuckup would fail the interview for any security position yet he's supposed to be MI5's smartest guy and James Bond doesn't seem pissed at all despite the fact that 2 security guards immediately die plus all those that do in the following sequences.
How much effort would it have been for Q to have said something to Bond such as "I'm running this in on a closed, secure network" to indicate good practice. Or for screen to show some semi plausible activity on it. Or for the computer to perhaps have exploited something Q might not have thought of such as scanning for wifi hotspots, e.g. through an agents phone or some router in the secretary pool and compromising the network through that.
Of course the film while pretty good for Bond has a pretty ridiculous plot. I think Javier Bardem's character got his plot ideas from watching The Dark Knight. They're so intricate and rely on an improbable sequence of events that you have to wonder why his character didn't just buy a plane ticket to London, get a taxi to M's house and blow her head off without all the intervening nonsense in this film. He must know where she lived given everything else he was supposed to have known.
You could equally ask why should Google be expected to help their biggest competitor? The answer to whichever party you ask it is because there is money and mutual benefit from doing so. Apple gets a premium map application (and presumably some kind of kickback from Google) and Google gets another channel to gather data from and monetize it. Another benefit only shown after the fact is Apple wouldn't be left with egg all over its face when it introduced its own half assed replacement.
Anyway it's Apple's right to walk away but in doing so they hurt their own brand far more than they hurt Google's.
Yeah, it's kind of funny that Nokia didn't want to be just another Android phone manufacturer, but now they've become just another Microsoft phone manufacturer.
I don't get that either. Nokia has always prided itself on delivering an experience of software AND hardware. By sucking Microsoft's cock, they lost total control of the software and were severely constrained with their hardware too. Look at Nokia's new Windows phones vs HTCs new Windows phones. Practically indistinguishable. Nokia still have a few value ads like offline maps but it's not much.
It wouldn't have been plain sailing with Android either but they could have skinned Android six ways to Sunday if they felt like it, thrown in their own apps, implemented their own Symbian / QT framework even. They would have retained a lot of the control for the experience that they had previously and without alienating their developers or existing customers.
But I guess Microsoft waved a lot of money under their nose and with an ex-Microsoft employee at their helm they were too weak to resist. And see where it's gotten them. Dismal sales not just of Windows phones but plunging sales of feature phones too because confidence has collapsed. MS will continue to stick the boot into their new best friend until they're so weak that doubtless someone (Microsoft) will make a cash offer and after the mass layoffs all that will be left is a withered husk and all that IP of course.
Nexus phones (and tablets) to me tend to resemble reference designs. They're good devices but they also have obvious shortcomings which I suspect are left intentionally for other device manufacturers to exploit.
I think it is fairly obvious that Obama would have accomplished far more if he hadn't faced outright hostility from a house determined to ensure he did not enjoy a second term. It was one standoff after another. Even under those circumstances he still still achieved substantial change.
It's easily hackable in a far simpler way - If 10 people triggers the behaviour then turn the camera so only 5 of them are ever visible. Problem solved. Humans are in the frame, Kinect only counts 5, Kinect is happy (but incredibly stupid). I can't think of any set up were this would not work - even an auditorium or bar has some direction where only a few people are discernable.
In fact it's such a stupid patent that I think MS are just grabbing it in case TVs ever appear with a camera in them which enforces this behaviour. Of course a TV's camera could be subverted just as easily with a small mirror and masking tape. About the only time I can think I'd want a camera on a TV is to allow 3D televisions to track pairs of eyes to deliver perfect L+R images to multiple people in the room. Since the tech doesn't exist, neither does my desire for a camera and if ever Kinect or PSEye enforced it, that would be the day they got unplugged.
Barack Obama's most redeeming quality is he doesn't sincerely believe in magic hats or underwear. There are clips of Romney speaking about Mormonism on Youtube and the guy is anything but rational. The needle on the beady-eyed-crazy-cult-meter goes right up to Tom Cruise levels.
Perhaps you should be asking why Linux has large corporate support of drivers. Because Linux was run as a meritocracy combined with a heavy streak of pragmatism.
If you look at open source operating systems which have stagnated or failed it's invariably because leadership or politics have stifled innovation.
Thanks but I ran Enlightenment for a while too around the RH5.x timeframe and I know how resource intensive and fiddly it was from experience. But sure thing AC pretend I didn't use if it helps you feel better.
Well I did a follow up search and first hit came up with this quote straight from Rasterman himself "They want a windows clone distribution and OS. I do not. They don't believe users really count - corporates and "partners" count and what they percieve as the "business world that wants an exact windows clone" count. "
So yes I think my summary was correct. I don't think he got who Red Hat's customers were. They were companies stepping into a brave new world of open source and they wanted stuff to be reliable, familiar and clean. They didn't want some unfamiliar, all singing, all dancing eye candy wn / wannabe desktop complete with sound effects and transparency that could easily drag a desktop to its knees even with a lightweight theme (and most were not lightweight). Perhaps interpersonal issues compounded this but at the end of the day Red Hat was there to make money, not to indulge the whims of individual programmers.
Compositing isn't just about a "pretty desktop". On modern hardware it results in a faster, more responsive desktop. Moving all the window content into graphical surfaces means that the GPU can render the desktop a lot faster. It also means the desktop doesn't have to send out a flurry of damage events when windows are moved around over each other which in turn saves a lot of performance degrading context switches and follow-up repaints. It also means desktops can contemplate using scenegraphs (e.g. clutter) to provide context sensitive functionality which might mean moving windows around or shrinking / thumbnailing / hiding them or whatever.
Now it may be that some desktops throw in eye candy on top, but that doesn't detract from what compositing desktops offer. Even desktops not traditionally known for their looks such as xfce will make use of it if its present.
I seem to recall that he worked for Red Hat and the relationship went sour. I expect Red Hat wanted a professional, functional and clean desktop and GNOME was going the direction they wanted and E wasn't.
GNOME has begun using llvmpipe to do software rasterisation. As the name suggests it's implemented using a low level virtual machine instruction language which is generated at runtime and compiled into optimal machine code for the hardware it's running on. It could in theory split rendering over multiple cores, or take advantage of any hardware acceleration around to make itself faster than other mesa software rasterizers. As far as the client side is concerned it's just an OpenGL driver which makes it very easy to program to while still making optimal use of what's available.
I doubt it's going to win prizes for performance against a proper GPU especially for playing games but it should be adequate for running GNOME or Unity on a semi modern setup.
Duck typing doesn't negate the need for refactoring. More accurately duck typing interferes with it, e.g. I might have some method call throw() that I wish to rename and unbeknownst to me some code elsewhere also has a throw() method with a different meaning and unless the code were to somehow interpret meaning, it would go renaming that by accident. Duck typing also interferes with content assist and syntax checking where perhaps I really do mean to send a bunch of crap to an object despite the fact it appears to be invalid code to the editor. Some languages use structural typing, mixins, traits or whatever to attempt to fix the issues with duck typing.
And if Python was so easy to read, and syntax hilighting didn't matter then why is it that every editor and IDE with Python support offers syntax hilighting? And why is there so many IDEs that support it through plugins or natively? e.g. PyDev (http://pydev.org/) is a very popular Eclipse plugin and lists a whole lot of stuff it brings to the table there on its website - including various forms of refactoring although I have no idea what it does with duck typing.
Even if Python really didn't need syntax hilighting or refactoring, it would obviously still benefit from incremental compliation / parsing, source code integration, mixed file projects / workspaces, code completion, lint and anything else that the IDE could provide.
Vim and / or emacs are rarely ever the right tool for the job for development any more. I can't think of many reasons I would suffer either of them unless I was stuck in a terminal and had to edit a file.
Aside from the overheads of the above, JS is executed from inside a browser through events. You might have seen a message in a browser along the lines of "Javascript is taking too long to return should I kill it?" if a JS snippet does not exit quickly enough within some preset duration. The browser is essentially frozen while it's waiting for JS to return since with the exception of web workers everything is synchronous. So Emscripten would have to use a timer - set timer for 1 ms, wait for wakeup, do a slice of stuff, save state, set timer for 1 ms, save state, wait for wakeup. etc. It basically has to have a scheduler sitting at the bottom of itself so the browser doesn't lock up which drags down performance and it's inefficient. If it does anything to the screen it must also do it through the DOM which adds its own overheads even if everything is directed to a canvas.
Don't get me wrong I think Empscripten is a technological marvel and will find many uses. At the same time it's horribly inefficient compared to the way it should be done. Providing it was endorsed as an open standard PNaCl or something akin to it which allows the browser to compile it straight into native code (with the appropriate hooks and safeguards to prevent the code from smashing stacks or escaping its sandbox) is the right way.
This is a nonsense argument.
No, it's a quite sensible argument. KDE presents a needlessly complex UI thanks in part to the rat's nest of menus, buttons and options, more options and even more options it flings in the face of users. Sometimes less is more and its never been a message that KDE or its users have seemed receptive to. This may explain why even on Linux KDE has always been in the shadow of GNOME which has paid far more attention to usability.
It's neat to see it working and there will be lots of ways it could be applied but really browsers need something like PNaCl - where LLVM bitcode can be compiled or interpreted by the browser with as little overhead as possible in a sandboxed environment.
Mouse and keyboard in Android are extremely basic and wanting. Google could do a lot here to improve the situation and it needs an extreme going over to whip it into shape.
Also before you think I think Android is all sweetness and light, I don't. I hate the mouse and keyboard support in Android and think its one area that Windows gets right and Android sucks balls at. But conversely just because I like it for that reason doesn't mean I can overlook RT's shortcomings of which there are many. It's half an OS and not the good half.
I expect that I'll own a proper Windows 8 tablet someday when the price reaches no-taking-the-piss levels. But RT IMO is a lame duck. It's not Windows, and as a tablet its few advantages are outweighed by its many disadvantages.
It's fully featured in the "doesn't run any software except MS products" sense. I strongly suspect the only reason there is a desktop at all is because the MS Office group came to the Windows 8 group with a big frowny face and said they couldn't port their horrifically complex app suite in time. I don't blame them. So RT included a desktop kludge to support MS Office and maybe a handful of other tools and no other reason. I don't expect it to survive when MS Office gets a proper port.
It just works, and you have Windows underneath.
If you have the RT version the only thing you have underneath is disappointment and tears.
How much effort would it have been for Q to have said something to Bond such as "I'm running this in on a closed, secure network" to indicate good practice. Or for screen to show some semi plausible activity on it. Or for the computer to perhaps have exploited something Q might not have thought of such as scanning for wifi hotspots, e.g. through an agents phone or some router in the secretary pool and compromising the network through that.
Of course the film while pretty good for Bond has a pretty ridiculous plot. I think Javier Bardem's character got his plot ideas from watching The Dark Knight. They're so intricate and rely on an improbable sequence of events that you have to wonder why his character didn't just buy a plane ticket to London, get a taxi to M's house and blow her head off without all the intervening nonsense in this film. He must know where she lived given everything else he was supposed to have known.
Anyway it's Apple's right to walk away but in doing so they hurt their own brand far more than they hurt Google's.
Yeah, it's kind of funny that Nokia didn't want to be just another Android phone manufacturer, but now they've become just another Microsoft phone manufacturer.
I don't get that either. Nokia has always prided itself on delivering an experience of software AND hardware. By sucking Microsoft's cock, they lost total control of the software and were severely constrained with their hardware too. Look at Nokia's new Windows phones vs HTCs new Windows phones. Practically indistinguishable. Nokia still have a few value ads like offline maps but it's not much.
It wouldn't have been plain sailing with Android either but they could have skinned Android six ways to Sunday if they felt like it, thrown in their own apps, implemented their own Symbian / QT framework even. They would have retained a lot of the control for the experience that they had previously and without alienating their developers or existing customers.
But I guess Microsoft waved a lot of money under their nose and with an ex-Microsoft employee at their helm they were too weak to resist. And see where it's gotten them. Dismal sales not just of Windows phones but plunging sales of feature phones too because confidence has collapsed. MS will continue to stick the boot into their new best friend until they're so weak that doubtless someone (Microsoft) will make a cash offer and after the mass layoffs all that will be left is a withered husk and all that IP of course.
Nexus phones (and tablets) to me tend to resemble reference designs. They're good devices but they also have obvious shortcomings which I suspect are left intentionally for other device manufacturers to exploit.
I think it is fairly obvious that Obama would have accomplished far more if he hadn't faced outright hostility from a house determined to ensure he did not enjoy a second term. It was one standoff after another. Even under those circumstances he still still achieved substantial change.
A sane president.
In fact it's such a stupid patent that I think MS are just grabbing it in case TVs ever appear with a camera in them which enforces this behaviour. Of course a TV's camera could be subverted just as easily with a small mirror and masking tape. About the only time I can think I'd want a camera on a TV is to allow 3D televisions to track pairs of eyes to deliver perfect L+R images to multiple people in the room. Since the tech doesn't exist, neither does my desire for a camera and if ever Kinect or PSEye enforced it, that would be the day they got unplugged.
Or a point the kinect at a picture, or a Barbie doll.
Barack Obama's most redeeming quality is he doesn't sincerely believe in magic hats or underwear. There are clips of Romney speaking about Mormonism on Youtube and the guy is anything but rational. The needle on the beady-eyed-crazy-cult-meter goes right up to Tom Cruise levels.
If you look at open source operating systems which have stagnated or failed it's invariably because leadership or politics have stifled innovation.
Thanks but I ran Enlightenment for a while too around the RH5.x timeframe and I know how resource intensive and fiddly it was from experience. But sure thing AC pretend I didn't use if it helps you feel better.
"I am the serenest!". Apologies for archive.org link but the page has disappeared from their website.
So yes I think my summary was correct. I don't think he got who Red Hat's customers were. They were companies stepping into a brave new world of open source and they wanted stuff to be reliable, familiar and clean. They didn't want some unfamiliar, all singing, all dancing eye candy wn / wannabe desktop complete with sound effects and transparency that could easily drag a desktop to its knees even with a lightweight theme (and most were not lightweight). Perhaps interpersonal issues compounded this but at the end of the day Red Hat was there to make money, not to indulge the whims of individual programmers.
Now it may be that some desktops throw in eye candy on top, but that doesn't detract from what compositing desktops offer. Even desktops not traditionally known for their looks such as xfce will make use of it if its present.
I seem to recall that he worked for Red Hat and the relationship went sour. I expect Red Hat wanted a professional, functional and clean desktop and GNOME was going the direction they wanted and E wasn't.
I doubt it's going to win prizes for performance against a proper GPU especially for playing games but it should be adequate for running GNOME or Unity on a semi modern setup.
And if Python was so easy to read, and syntax hilighting didn't matter then why is it that every editor and IDE with Python support offers syntax hilighting? And why is there so many IDEs that support it through plugins or natively? e.g. PyDev (http://pydev.org/) is a very popular Eclipse plugin and lists a whole lot of stuff it brings to the table there on its website - including various forms of refactoring although I have no idea what it does with duck typing.
Even if Python really didn't need syntax hilighting or refactoring, it would obviously still benefit from incremental compliation / parsing, source code integration, mixed file projects / workspaces, code completion, lint and anything else that the IDE could provide.
Vim and / or emacs are rarely ever the right tool for the job for development any more. I can't think of many reasons I would suffer either of them unless I was stuck in a terminal and had to edit a file.