13 ms·
What I suspect Google is up to with Native Client
- avree 15y agoIs this site designed to be read from across the room?
- forgotusername 15y agoImplemented a partial compromise, but IMHO all sites should be designed to be read from across the room. Comments on the article text welcome.
- getsat 15y agoI think this is the first site I've never had to zoom in on to actually read. (2560x1440)
- CyruzDraxs 15y agoThe sky is falling! Oh noes!
- rsanchez1 15y agoCareful, people might accuse you of being a right-wing conspiracy theorist, even if you do present evidence that Google is becoming the new Microsoft.
- jff 15y agohttp://standupforamerica.files.wordpress.com/2010/01/conspiracy-tin-foil-hat.jpg http://standupforamerica.files.wordpress.com/2010/01/conspir...
- deleted 15y ago[deleted]
- ariwilson 15y agoNever attribute to malice that which is adequately explained by stupidity
- dhconnelly 15y ago"it is designed and explicitly documented to run on an as-yet nonexistent virtual machine" http://code.google.com/p/dart/wiki/Building#Building_the_standalone_VM http://code.google.com/p/dart/wiki/Building#Building_the_sta...
- forgotusername 15y agoMy mistake; omit the paragraph and continue reading.
- dhconnelly 15y agoI guess I don't get the $30 :) Just kidding.
- drivebyacct2 15y agoI'm excited about the potential for NaCl and don't understand a lot of the conclusions that the OP article outlines... but I don't understand what this sentence means or why it would be a bad thing. Isn't LLVM the nonexistent VM? I'm confused as to the context maybe.
- dhconnelly 15y agoSee his comment on my comment. He was referring to the Dart VM, which he thought didn't yet exist. And LLVM certainly exists already.
- iFire 15y agoIf Google is evil, just fork Chrome. It's called Chromium. Chrome is not 100% proprietary. Nacl is open source.
- drivebyacct2 15y agoWait, wait, wait. Because a platform is near-native performance, is cross platform and may run in a virtual machine, they are becoming Microsoft and locking people in? WHAT? (Beyond the absurdity of leaping to that conclusion, it's an open spec and the main implementation is open source. I understand that alternative implementations are needed for "open spec" to have significant meaning, but still). That and the last set of bullet points are all true. Just like Google... except without the near native performance of NaCl. Which is why it was created. To be just like the rest of the HTML/JS stack. They're trying to get to actual "Web 2.0" (bleck), where Dart and NaCl are viable additions to the traditional stack. I see no reason why this is nefarious. RE this whole conspiracy (not mocking it by calling it that...) and the Android connection especially... that's what I've been assuming and hoping for from day one. Portable LLVM bytecode is another step in that direction as well. I'm excited.
- iFire 15y agoThe pc as a webapp!
- forgotusername 15y agoFor the purposes of this discussion, please consider "open spec" to mean "committee and community controlled by interests ultimately subsisting of more than one share pool.", if you follow this definition the majority of Google's "open" efforts fall apart. For the PNacl bit, I think the tech sounds great, I just think the reason this "arrow" survived Page's recent cull is because they have significant interests in it, and that's what the article is about.
- drivebyacct2 15y agoYes, Google is the only one championing NaCl right now. I don't see how they get from their current position to some sort of lock in ala Microsoft though.
- forgotusername 15y agoViews of your personal data come via their APIs, and never the raw data itself; Microsoft only ever owned the code.
- barrybe 15y agoI don't get how NaCl can be a tool for controlling content, when it's easy to convert an NaCl app into a native app that can be downloaded and run at will. You can't really have Microsoft-style dominance over a platform when users can leave you as soon as they are slightly annoyed. Not to mention that NaCl is open source BSD-license, so, yeah.
- forgotusername 15y agoDepending on your definition of control, they have both the page views and ability to create a single-click installer to create an ideal situation wherein most developers are compelled to target their environment, and most users will eventually click their download link. At such a point, both groups will begin to advocate its further use by yet more parties. I'm not familiar with a better word.
- est 15y ago> when it's easy to convert an NaCl app into a native app that can be downloaded and run at will. In theory .NET JIT can emit native image code. But have you ever seen any framework-free .NET apps? The dependences, libraries, ecosystem will lock you in.
- twoodfin 15y agoI think Microsoft really missed a good bet by not embracing NaCl years ago. They have a huge preexisting native codebase. Probably a plurality of their development teams are native code-focused. Their customers employ hundreds of thousands of native developers and probably billions of lines of native code. C/C++ is such an inescapable part of their ecosystem that after almost a decade of selling C#/.NET as the future, they're increasingly proselytizing for the benefits of native code and C++11 in particular. They could have leveraged all of this by buying in to NaCl and putting it into IE. Hard to see how Google says no, and once Microsoft has that level of commitment to the technology, they'd get a strong say in its evolution. As a multi-vendor standard with an open source implementation, NaCl could have gotten real traction, and suddenly every C++ developer inside Microsoft and working for their customers has a path to the web for existing code that's slightly more plausible than rewriting everything in JavaScript and hoping the VMs get faster without also killing your laptop's battery (unlikely, I think).
- petegrif 15y agoAgreed. And I still don't understand Mozilla's problem with NaCl. They argue that js is now nearly as fast as native. Well...even if that were true it ignores the fact that as you point out there is huge investment in legacy code that NaCl unlocks AND it ignores the fact that js makes it easy to copy what may be valuable IP.
- dpe82 15y agoAnd for some things, "nearly as fast" isn't nearly fast enough, and in some cases (eg. media processing) you still need the very tight control over the CPU that C gives you.
- bzbarsky 15y agoMozilla's problem with NaCl is that Mozilla believes in open access to the web for everyone, while NaCl at the moment is tied to particular hardware architectures. The two seem to be fundamentally incompatible. If PNaCl ever happens, that might change the situation, maybe. As far as legacy code, emscripten unlocks it as well. Not with the performance of NaCl (and unlikely to get there), but it has the benefit of running cross-browser right now and not forcing people onto particular hardware platforms. And copying "valuable IP" out of an emscripten-compiled program is just as easy as copying it out of a binary, of course.
- Mediocrity 15y agoWait wait wait. Google is going to lock the world into it's "stewardship" with a couple open source projects and the cell phone market? I can't help but feel that I've just been trolled. Unless someone can better explain this to me.
- losethos 15y agoI do my part and leave it in God's hands. I was pretty lucky, all things considered. I can think of nothing I would rather have done. I've run out of ideas. In the past 12 months I've just made cosmetic clean-up stuff. That's it. My reality is insane. That's it. God says... C:\LoseThos\www.losethos.com\text\BIBLE.TXT their groaning, and am come down to deliver them. And now come, I will send thee into Egypt. 7:35 This Moses whom they refused, saying, Who made thee a ruler and a judge? the same did God send to be a ruler and a deliverer by the hand of the angel which appeared to him in the bush. 7:36 He brought them out, after that he had shewed wonders and signs in the land of Egypt, and in the Red sea, and in the wilderness forty years. 7:37 This is that Moses, which said unto the children of Israel, A
- smosher 15y agoThe main hack done to the compiler is that generated code avoids certain constructs that inhibit perfect static analysis, allowing the NaCL host (i.e. Google Chrome at present) to verify the behaviour of some untrusted binary before ever executing it (just like Java does). I am having a hard time with this. At first I thought this amounted to a claim that the halting problem had been solved, or else that Java and NaCl are not Turing complete. I'm guessing the problem is with the term "perfect." So something interesting must be going on or it wouldn't be worth mentioning. What's being verified? That the code can't execute data and won't call certain interrupts, or is something more interesting happening?
- DarkShikari 15y agoAt first I thought this amounted to a claim that the halting problem had been solved, That's not what the halting problem means! There is no rule that says you cannot prove a program is safe: the rule is only that you cannot prove any arbitrary program is safe. NaCl gets around that by adding checks to the code (bounds checks, etc) to anywhere that it can't prove is safe.
- smosher 15y agoPerfect static analysis is certainly halting-equivalent. What you're describing falls short of perfection, which is what I've suggested.
- jmesserly 15y agoI don't know exactly what NaCL does, but the JVM/CLR verification is all about making sure you don't write over someone else's memory, jump to some arbitrary address, etc. Essentially the problem is: how do you run untrusted code in the same address space, without it getting all of your process's permissions. More info here: http://en.wikipedia.org/wiki/Java_Virtual_Machine#Bytecode_verifier http://en.wikipedia.org/wiki/Java_Virtual_Machine#Bytecode_v...
- smosher 15y agoAh, thanks. I think I have a handle on the size and shape of it.
- tree_of_item 15y agoNaCl may have a large role to play in the future, but I don't think this is a bad thing, or "dystopian". NaCl, Android, Dart, and Chromium are all open source and can be forked by the free software and open source communities and retooled for whatever ends should Google begin to play nasty. The big issue here is control of user data, which is orthogonal to the choice of software anyway. You can use all of the software above to connect to friendly data stores, perhaps ones you control.
- zobzu 15y agoYeah, for example, Android Google devs do not take patches from other devs, and do not open Android til "its ready". Other devs, mainly CM do not submit patches (its useless) and it takes a long time to support devices because you need a lot of proprietary code that needs to be available, or specs,that also needs to be available. So yeah, but no, you definitely can lock stuff in with "open source", no problem with that.
- rryan 15y agoNo -- you can't. You can lock people out of your project, but FLOSS doesn't mean everyone gets to play inside your project. The license guarantees anybody who doesn't like the way Google is doing things can take the code and start their own project around it. The forks may not be easy to keep in sync -- this shouldn't matter if you don't agree with the way Google is doing things because you'll probably stop using their work after you fork anyway. What you want is to have Google's engineers run their project the way you want, which is NOT what open source is about at all. Aside: You're wrong about proprietary code -- awesome people like jbq and folks from the AOSP have consistently worked with hardware vendors to open up their binary blobs. They are actively fighting for this, not using it to keep people locked into the official Android project.
- rst 15y agoThere's some real confusion about Android here. Android already has its own bytecode format (Dalvik), and it's unlikely that NaCL would replace it, if only because NaCL is tightly tied to the underlying processor instruction set, while Android has already shipped on at least two (ARM, MIPS), and been ported to at least one more (x86). It's also already the case that a third-party app which requests appropriate permissions can replace the standard contacts app --- in fact, there are several alternate contact managers already in the Android Market. Of course, the user must confirm that they want to allow the app to manipulate contacts, and apps that don't request that permission can't ordinarily do that. (Malicious apps can manipulate contacts without asking permission on the customized versions of Android shipped with several recent handsets, per news from the last few days, because the vendors doing the customization screwed up, but that's another rant altogether...)
- nextparadigms 15y agoMaybe they want to start Android from scratch? It might be worth it if this means Google will handle all updates from now on. But it better mean that, because otherwise I don't like the idea of making it impossible to create custom ROM's, while still not getting updates like it happens now.
- forgotusername 15y agoI think you're focusing too much on the underlying technology, Dalvik is ultimately little more than a layer of indirection, that could easily disappear deeply beneath the covers of a 22nd century OS, hidden by a simple click of a 'Build' button in an IDE, much like Win32 did. Similarly, Contacts was only used as an example, as it is prominent and simple to understand. The main reference made there was to the data the Contacts UI represents, which ultimately backs on to some class library that ultimately is controlled by the platform (as I understand it).
- nooneelse 15y ago> "...that could easily disappear deeply beneath the covers of a 22nd century OS..." So we have a bit of time to form a reaction strategy then. ;-) Are we even sure Android will run on the quantum-singularity computronium that we will have by then, or that the Google meme-avatar will still be on, or near, Earth?
- petegrif 15y agotldr(all) this is a paranoid rambling piece that may just have some sense in it somewhere but it's so incoherently written it's tough to find it.
- petegrif 15y agoMay I suggest a rather more innocent possibility wrt Google's intentions? They want us to be able to run high performance apps in the browser. And guess what - most of us would like that.
- peterwwillis 15y agoI didn't even read past the third paragraph. It's not even the creepy, conspiratorial way he talks... who the hell puts up a single domain, with a single plain-text page of content, with a font big enough for my grandmother to read it, just to complain about Google? It's weird.
- prawn 15y agoUntil I read the comments on here, I was reasonably confident from a skim of the article that it was a parody of Hacker News discussions. Oops.
- hardboiled 15y agoSteve Ballmer.
- forgotusername 15y agoThe site is not tailored to readers who search for social proof in a WordPress theme; for multiple reasons this was an intentional choice. I'd suggest starting with the two years of my HN comment history.
- joshu 15y agowhat's the unicode symbol for bong hits?
- Matt_Cutts 15y agoI laughed hard enough at this comment that I woke my wife up.
- forgotusername 15y agoThanks, Matt "lol bongs" Cutts, your mockery proved a meaningful critique. Often people laugh and act juvenile when otherwise they might cry.
- nl 15y agoI think people who claim "Google is planning xxxx" miss the fact that Google isn't exactly some monolithic entity. There are plenty of people within Google who'd love NaCI to take over the world. But equally there are lots who think it is a downright bad idea.
- EmilENewton 15y agoNew Rule: Whoever mentions Microsoft first, loses the debate and the thread is closed.[1] [1] Obvious References: [1.1] Reductio ad Hitlerum ( http://en.wikipedia.org/wiki/Reductio_ad_Hitlerum http://en.wikipedia.org/wiki/Reductio_ad_Hitlerum ) [1.2] Godwin's law ( http://en.wikipedia.org/wiki/Godwin%27s_law http://en.wikipedia.org/wiki/Godwin%27s_law )
- est 15y agoWhat's more interesting is the Chrome Remoting technology. It allows you to render webpage/webapp in a desktop chrome process but display it on another remote device, even mobile device. It's like Microsoft 3389 RDP without fullscreen but each individual window.
- fuzzix 15y ago"It's like Microsoft 3389 RDP without fullscreen but each individual window" Sounds more like plain old X forwarding.
- wickedchicken 15y ago"guys, let's replace javascript with the most advanced modular program distribution and compilation toolkit known to mankind. hell, we could even implement javascript on top of this toolkit to let people have their cake and eat it too. oh wait, nevermind, some person on the internet told us this is evil. my bad"
- nextparadigms 15y agoWhy is the performance impact of the sandbox with Intel code only 1% while the AMD and ARM code 7%? Is it just because they haven't focused much on optimizing for those or any other reason? I would expect them to at least focus more on ARM, especially if they are porting it to Android.
- Dylan16807 15y agoAs quoted on the article, the segmentation technique it uses is only available on x86.
- scriptproof 15y agoI am not really favorable to the all-in-the-cloud trend at Google. NaCl seems to be the exact opposite to that and I am as other users (as expressed in a comment above) happy with that. Another point is that it is not a replacement to DirectX. WebGl is this replacement, and WebGL is a common initiative, not a Google's invention.
- winthrowe 15y agoWebGL is not a replacement for DirectX, it's just a replacement for Direct3D. What's the rest of the stack?
- scriptproof 15y agoIt is a frontend for browser apps to OpenGL that is an alternative to DirectX (or a part).
- icebraining 15y agoIt's funny, because what came to mind as the platform for apps that would be streamed from HTTP wasn't Chrome, but Mozilla! After all, that was the promise of remote XUL+JS, which provided the user gave it the permissions, could access the XPCOM components to access the filesystem, run external applications and more. Nevertheless it didn't caught on.
- dextorious 15y ago"""Nevertheless it didn't caught on.""" Well, I was kinda hoping it would, but for one thing, the Mozilla guys: 1) never documented it properly 2) never made any usable developer tools, IDEs, etc 3) never delivered on their initial XUL/XULRunner promises 4) never tried to build a community around them
- brown9-2 15y ago"in particular, it lacks the elegance necessary to lend credence that this was ever a research project" How does one judge this subjectively?
- rprospero 15y agoAs a researcher, I was surprised that the author assumed that any of my work was ever elegant. Research projects are ugly and messy because you know that they'll never need to scale. If you can actually make it work, that's when you start on elegance.
- brown9-2 15y agoThis is exactly what I had always assumed, but felt like I couldn't rely on much of conventional wisdom in an argument like this.
- dgreensp 15y agoGives Google too much credit, on the one hand, by saying they will create an elegant OS that unifies desktop, web, and mobile (a sort of "holy grail" actually)... then says this is a bad thing.