This acupuncture treatment was on the order of a week, maybe two, with visible improvement after one treatment. It would have gone away on its own, but not fast enough -- it fixed itself just before my trip to peru was scheduled...
Skeptics will claim that's placebo effect, i.e. you paid good money for your treatments, so you convinced yourself they'd work.
And so would I, if we were talking about a mental thing in the first place.
Half my face was numb. My eyelid wouldn't close completely. My mouth drooped. It was pretty embarrassing, and potentially dangerous -- I had to wear an eye patch at night, and use eye drops, to keep from permanently damaging my vision.
I didn't personally pay for the treatment. But over the course of each treatment, it actually did improve drastically -- much moreso than I'd expect from a placebo.
Sure, the plural of anecdote isn't data, but it takes a pretty thick internal ideology to reject observed correlations simply because the subject matter is known to defy direct scientific analysis.
I don't see how this does -- I can see how the needles could work, done properly, and it has nothing to do with Qi flows. (Mine was a neurological condition, so it stimulated some nerves.) And I don't see why it couldn't be subject to the scientific method, or why data couldn't be collected.
I certainly don't think it deserves to be lumped in with, say, homeopathy.
Actually, there's a lot of stuff coming out of Microsoft Research that ends up in production software.
Certainly -- after all, if they had simply repackaged XP in shiny graphics, it might not have sucked as much as Vista. So they are obviously developing new things, for better or worse, which is by definition R&D.
I'm talking about the more interesting stuff, like Singularity.
For some examples that I know - the design and implementation of generics in.NET was done in Cambridge division of Microsoft Research;
R&D? Yes. Innovation? Java had Generics first, and C++ had Templates before that.
Maybe.NET generics are "better" somehow, but it's just not exciting to me. It doesn't have the same appeal as something like Surface, or Singularity... And while.NET itself was a cool idea (more generic than Java), it got completely castrated and bound to the Windows platform before it saw the light of day as a product.
Even the products which mostly come out the same, somehow always seem to have cooler-sounding codenames than actual product names. Monad becomes PowerShell, for instance.
Watch it again. There was at least one screen on which it is obviously, unmistakably Vista -- same curve of the taskbar and huge start button, same greenish background theme, everything.
Considering that this movie was released after Vista, it seems much more likely that the screen was Vista, than that Microsoft somehow saw a prerelease of the movie and decided to build Vista that way.
Just as with Surface -- yes, Surface is an idea right out of the movies. However, this particular display was quite obviously Surface.
I would say, it's every bit as much a church as anything else, and every bit as much a religion as anything else. It's just that most churches in most religions aren't quite as directly evil.
Anyone who says otherwise is either stupid, or lying... and, if you disagree with this then you must be, by definition, complicit in their crimes.
Now that's a high-class troll! That sounds like something right out of Scientology's Fair Game doctrine!
Look, I'm glad you're fighting the good fight and all, but that's just embarrassing.
Worth mentioning, 60 seconds in court is still a ton of lawyer-time, which both DiskKeeper and the CoS can afford, but the individual employees probably can't.
Just as the printing press brought about a whole new set of problems with regards to unauthorized duplication, the Internet has similarly required specific measures designed to address the new possibilities for piracy it opens up.
Not necessarily. Anyone remember the videocassette?
Every new invention, including the printing press, has been fought by exactly the industries which stand to gain the most from it, if only they are willing to change. And when that change inevitably comes, they find themselves even richer than before.
The important difference between digital piracy and the types of copyright infringement that came before it - such as taping songs off the radio - is that digital piracy allows perfect reproduction with no quality loss.
Burning CDs allow perfect reproduction with no quality loss. The music industry fought burning CDs. They ended up making money by selling media and burners -- at least, Sony did -- and they continued to make money selling CDs and concert tickets.
And so it is with the Internet. Their costs of reproduction are pretty much nil, even costs of a live broadcast are much smaller, and it's that much easier for the fans to connect, as well. It is their greatest opportunity yet. But they are fighting it, and that is why they're failing.
The aim is to provide intellectual property a similar type of protection as that afforded to physical property.
*head asplodes*
Physical property, when taken, must be replaced. It is real, and can be possessed. It operates under fundamentally different rules.
And when you factor in DRM, you find that they are not trying to protect intellectual property. They're trying to take away what you assumed to be your physical property -- your CDs, DVDs, etc -- and ensure that you are, in fact, only renting.
For example, whether you spend your life building houses or writing books, you should be equally entitled to reap the rewards of your labors
Indeed -- so find a system that actually parallels them.
If I build a house, I can't then replicate it into thousands of identical houses for a fraction of a cent each, and then sell them for a profit. And I'm sorry, but that model is ending for other media, as well.
The successful artists are getting paid like the housebuilders -- for actual work. That is, if you're a musician, sure, print a CD, but it is a promotional material -- let people pirate it. Your product is your tour.
Without copyright laws the GPL couldn't operate, because it's through the rights that are enforceable under copyright law that the Linux movement can place terms and conditions on their licensing arrangement in the first place. Without copyright, the default and only possible distribution method for anything everywhere would be via the public domain
I'm sure that many GPL advocates would be perfectly happy with that situation. After all, the primary evil of proprietary software is that it discourages sharing.
Disclaimer: I don't actually think it's evil, and I do develop proprietary software.
The argument is straightforward and both intuitively and logically sound: for every pirated copy of a product, there is some potential loss of income to the producer of that product.
The arguments put forth here universally center around the loss piracy causes.
What they completely ignore is the potential gain. Piracy demonstrates a much more effective method of distribution -- I'm at a loss as to why I can't legally obtain TV shows or movies via BitTorrent. It is also free advertising -- a pirate may eventually buy the game, and if the pirated version is at all good, they may in fact convince others that it's worth playing.
It also increases awareness of the game and the brand, something which might otherwise be done with expen
Zero-day and Day-one warez cannibalize PC game sales, and as long as DRM prevents that, they're golden.
That raises two questions:
1: Who are these drooling idiots who didn't preorder, yet still must buy the game exactly one day after release? Are you saying that as soon as these mouth-breathers realize that they can wait a month and it'll be up on the Pirate Bay, PC gaming is dead?
2: Does DRM actually prevent that? It actually doesn't do anything close for movies. Most of those are online while in the theaters, if not before.
Steam is really no better, it's just that it hasn't had the same sort of character assassination that SecuROM and Starforce have gone through
I'll grant that it hasn't done that, but it is really quite a lot better. Consider:
- Steam is quite clear about what DRM exists: Activation and continued contact with their activation server. That's it. Starforce and SecuROM do not come with a warning label that says "If you upgrade your computer, this game may stop working."
- Steam doesn't install crap into your kernel. The others do, and this has forced people to reinstall Windows to use their CD burners.
- The others tend to contain blacklists of programs you cannot run while playing the game. Steam doesn't -- it will happily run while I have a Daemontools image mounted.
- Steam works on Wine. The disc-based systems require some commercial version of Wine, like Cedega, and then don't always work.
- Steam actually provides some added value, as well as DRM. I can use it to IM friends from in game, and invite them to join a server I'm playing on, even if they don't have that game open at the moment. It autoupdates all my games, from one place. I can download the game, even saturate my 100 mbit fiber -- and I can download it as many times as I want, on as many computers as I want. And there's achievements. Most DRM-free systems don't have half these features.
Steam ties each legit license of the game to an account, meaning that it's easier to ban known cheaters, trolls, etc. No need to ban by IP address, just ban by Steam ID, and they're gone until they buy the game again.
because they happen to have made HL2.
And EA happens to have made Spore. So what?
I think the main reason is that Steam actually works. There are far fewer ways it's intrusive, and all of them are well-known.
And yes, it's possible to build a system like Steam without DRM. But at that point, I really don't care much. Steam is making me stay updated, stay online while playing, and use Windows and their software. The first two, I really don't care about. Last one, most games don't have Linux versions anyway, and I have to run the game anyway.
In the year 2020, I likely won't still be playing Spore.
Of course, I'm unlikely to play Spore at all -- I'm much more interested in Mirror's Edge, but I doubt I'll still be playing that in 2020.
Consider that without quite a lot of help, it can get incredibly difficult to play old games anyway. Can you still play Doom? Sure you can, because they opened the source, and there are now Doom ports to everything. Are you sure the DOS version still works on anything modern, without a rather large amount of emulation?
Regardless, I'm probably going to buy a few of these, if all they have is Steam's own DRM. Steam, I am willing to tolerate, because while it is more restricted, there is also quite a lot of added value -- the Friend system, Achievements, and all the other toys of an Xbox-Live-ish system, plus the ability to re-download any game I own, as many times as I want, on as many computers as I want, at speeds which can saturate my 100 mbit fiber-to-the-home Internet.
I have a relatively highend desktop. I built it myself, for ~$800 (not counting monitor and peripherals, of course).
Well, there's at least two huge differences:
I was counting a monitor and peripherals. Specifically, I got an external hard drive and a 24" 1080p monitor with it, as well as some extra power cords and such.
And, notice it's a laptop. It's got better specs than my old desktop.
But hey, if I wanted to spend less money, a refurbished iMac isn't much more than you spent.
I certainly see a lot of interesting things demo'd at Microsoft R&D.
And then get promptly ignored by the rest of the company, and never actually show up for market.
Contrast this to, say, Apple, who never gives demos like that unless they're actually launching the product in the next few months -- or right away.
Microsoft is too large a company to hate entirely. Bungie was part of them for awhile, after all -- I wanted to hate Halo for that, but it ended up actually being a good game. And they do seem to let their R&D department do some interesting things.
Then they let business concerns drive everything else, and we end up with crap like Vista.
Anyone want to guess how much better Microsoft would be with, say, Ballmer gone?
Well, hey, you may also have noticed how every computer screen in the movie was running Vista. Surely the government, particularly top-secret facilities like that, would show more taste?
Heh, and that's what shows you're just a newbie. I see. File a bug in bugzilla.mozilla.org
Now, did I say it had to be in a web browser?
And I thought I was the newbie... You do realize that Javascript can be -- is -- a general-purpose programming language, not only a browser scripting language?
If it had an API to load 3D scenes, API to a physics engine, API to UDP sockets, it would work just fine.
Which is my point -- though I would dispute that most games need UDP. In most cases, games seem to be re-implementing the wheel on top of UDP -- and that wheel ends up being at least SCTP, if not TCP itself. And in many cases, TCP honestly is not enough overhead to matter -- even HTTP might not be, which is why we're having this discussion anyway.
For lack of APIs, everything must be done by hand, pixel by pixel, polygon by polygon, and Javascript just doesn't have the speed to do it.
Sadly, even there, I'm not sure there is an API for the pixels -- though polygon by polygon would still be fast enough for some very interesting demos.
Javascript would be a great in-game scripting engine (though a hell to implement).
What would make it hell to implement? There are at least three open source Javascript engines that I can think of, off the top of my head, and more in the works. Are you saying none of them would be easy to embed?
Experience says otherwise -- for example, CouchDB embeds Javascript in an Erlang program.
BTW, [link]
That's three minor versions behind the current release of jquery -- how old are those benchmarks? I don't see Chrome in there, and Chrome is really what started the whole "My Javascript engine is faster than yours" game.
No "raw JS" in the graphs, but I assure you it would be the fastest of them all.
I would guess so, but I'm also not entirely sold -- after all, "raw javascript" is still essentially building your own library, which happens to be a thinner layer, for now. I would also guess that a sufficiently advanced VM might be able to make some guesses about code that might give the frameworked way an edge over the hand-rolled way.
I would also guess that this won't last forever -- eventually, either it won't matter (the speed difference will be worth the added flexibility, for the vast majority of cases), or browsers will start targeting specific frameworks.
Not gonna happen until OS X is the same price as Fedora/Ubuntu/Gentoo.
Read that again: high-end geek desktop. I spent $2700 on a laptop -- were it a Mac, OS X would be included in the price. But what's an extra $100 or $200 on top of that?
And if you were talking about "freedom", there isn't currently a viable, fully open source OS. I'm running Linux right now... probably half my X and a third of my kernel is nvidia, so WTF is the point? Most of the advantages of the Linux kernel, for me, as a desktop, are little pockets of flexibility that other people have built (like FUSE), and the slim possibility of fixing my own drivers, when my hardware isn't directly supported (but OS X has commercially-supported ones).
I can still see plenty of uses for Linux. I use it on the server, I use it on older hardware, I assemble spare parts into working fileservers and routers, and I play with virtual machines, VPNs, and other cool stuff. And these are indeed places where price matters -- I don't particularly want to pay an extra 10% for an EC2 instance just to run Windows, for example, and there's no way to turn them into XServes.
But if I'm going to be spending thousands of dollars on a new computer, I'm certainly willing to spend a premium on the OS, if it's better. The hardware looks and feels slicker, too.
Right now, the balance is against Apple. They were dicks about my warranty on that Powerbook, I still remember enough things to hate about the OS X user interface, and Linux support for their hardware (Macbooks especially) is poor, so I know if I bought one, it'd be running Windows or OS X as a host OS, whether I want it or not.
But more and more often, I'm becoming envious of things like being able to plug my laptop into a projector and have it Just Work, instead of having to go edit xorg.conf and ctrl+alt+backspace.
Macbooks are a lot like other pc laptops in that regard, physical security is a bit higher.
A bit, but honestly, not a lot. Trivial example: It is roughly four screws on the bottom of my laptop case, and then the hard drive slides right out. Bonus: It is small-ish and SATA, which means you could easily pop it into the nearest modern desktop.
I think you can set the password and prevent booting to an external disk or the CD drive, which would prevent booting the installer.
Can you also prevent booting in Firewire target mode? How about single-user mode?
The password reset thing isn't on the install disk btw.
Can the installer mount the existing filesystem? Can you get root on the install disk? If so, you can use a standard Unix utility: passwd.
If not, it hardly matters -- there are Linux livecds which will speak HFS+...
Look, the only way I know of to make physical security significantly higher to where a high school student couldn't figure it out, given sufficient time and motivation, involves thermite and some highly sensitive trigger mechanisms, and quite a lot of risk to the continued existence of your lap if you do it wrong.
if you have a Mac there is NO software you CANNOT run -- period.
It's true that there is more software you can run, but that shows a bit of a lack of imagination. For example: Can you run mobile apps on a Mac? How about a Windows driver for some archaic piece of hardware?
Of course anyone who want to write programs for the hot selling iPhone or iTouch MUST run OSX, because these use a pared down version of that OS.
That wouldn't prevent Apple from releasing the developer tools for another OS, so I can develop and test (with emulation) on Linux or Windows, and deploy on an iPhone. I don't know if they've done so.
Of course, that's sheer fanboyism -- there's still Android and Symbian. I'd much rather develop for Android, even if it means a smaller audience.
XP runs fine with 512M and VISTA gets 2GB all to itself.
Thanks. I've got 4 gigs of RAM on this laptop, running Ubuntu as a host OS (it's not an acronym, by the way, you don't have to spell it UBUNTU) -- looks like those will fit comfortably, if I ever need them.
And I do have an XP license, so the only OS I can't run on this is OS X. I can't be bothered -- I'll borrow a friends' Mac if there's something I desperately need to test, and pretty much all Mac software I care about exists for XP.
My iBook has been used as a paperweight for the last two years.
Why didn't you put Linux on it, then?
You do realize you can get KDE right now on any generic piece of kit ?
I am typing this from Konqueror on a Dell laptop. I'm well aware of the hardware advantages of Linux. I don't much care, though -- it is worth spending a bit extra to know that all the hardware works, and is supported -- which is why I bought a Dell with Ubuntu preinstalled. (And, predictably, Windows XP was harder to install on this than a fresh Kubuntu.)
And it's not bad hardware. I love the Macbook form-factor, and I love the Apple aluminum keyboard I'm using right now. (I also hate the Mighty Mouse with a passion, but that's a bit offtopic...)
On top of which:
if KDE or filesystem support is the kind of thing you're looking for, I really don't have the faintest idea why you should bother locking yourself in that platform.
No, KDE and filesystem support are a couple of the reasons I refuse to use OS X now. There are a number of reasons I would love to have a Mac.
For example: I cannot run Photoshop on KDE on any generic piece of kit. I would have to install Windows to do that, and that's quite a bit worse than OS X, even if I can find a way of pulling the same trick and using KDE as the shell instead of Explorer.
And speaking of this keyboard: Believe it or not, it has firmware. That firmware can be updated via Software Update on OS X. I know of no way to update it on Linux -- so I occasionally borrow a Mac for that purpose alone.
If it's not native code, it's not run by native CPU
And what do you think happens to your C source? It's not native code, it's a bunch of ASCII.
It then produces native code -- just like a VM does. The only difference is when this happens.
Guess why people don't write quality games in Python and Java.
Because they don't know better?
Most games do, in fact, implement some sort of scripting language to implement AI, game logic, etc. The smarter ones use an existing language, rather than rolling their own. WoW uses Lua. Civ4 uses Python.
As for virtualization, try virtualizing a different architecture than your native, say running a virtual MIPS machine under an x86 system.
I'll have to find you a citation later, but from what I understand, there was once a RISC CPU for which a virtual machine was written. By your logic, it was an interpreter. It also outperformed running the exact same code on the bare metal by a significant margin -- IIRC, it was twice as fast.
I'm sure I've seen browser without SVG. Actually, I'm sure most of users use it. Are you going to put "Firefox 3.0.4 required" on the product you're selling?
Better than putting "Random EXE required."
Good luck accessing VBLANK interrupts in Javascript.
That's not a flaw of Javascript, it is a lack of an API. I see no reason why a vblank couldn't trigger a Javascript event.
Also, good luck getting 50FPS from anything more than a handful of pixels.
Again, an API issue -- there is currently no OpenGL implementation in the browser. Still, I'll bet SVG can go reasonably fast, though perhaps not for 3D.
As soon as you start writing more advanced code, you start finding bugs in the libraries.
Which I can fix, given that they are open source.
Also, have you maybe noticed what is the performance impact of using, say, JQuery vs writing the code in JS by hand?
Given that I haven't yet had to optimize my Javascript -- it's fast enough -- no, I haven't noticed. But I would be curious to find out what the actual performance hit is, especially on the better Javascript VMs.
The five-minute solution would be "Send me the data pre-sorted, you have more CPU power on your side", of complexity of O(0).
In other words, I'm surprised it took you five minutes to figure out how to push the real work onto someone else. How does that still count as a "five-minute solution"?
A five-minute solution would be to remove the whole part which does it, and use precalculated data,
Again a non-solution in many cases. For years, games had pre-calculated shadows and lighting. Now, the lighting is mostly done in realtime, allowing it to change in response to moving light sources, as well as moving objects casting shadows.
In order to make that fast, certain parts of it are done in assembly, or even on the video card. Far more programmer time spent. Better results, for the same amount of CPU time.
or hiring a bunch of interns to do it by hand, a hundred times faster than the computer would.
How much do those interns cost? How much would it cost to instead hire one programmer and rent some power from, say, Amazon EC2?
Besides which, exactly what are you doing which is a hundred times faster for a human to do than a computer?
Not once I spent a week trying to optimize a part of the program until someone suggested "why not overhaul the database structure instead, and kill the monster you're struggling with, replacing it with one simple SQL query?"
Certainly, things like that happen. However, you've extrapolated it to claim that in all cases, more work equals more resources spent on the problem. I'm providing examples where, if the same solution is to be reached, more work may equal less resources spent.
Advanced programmers know a faster CPU costs less than the salary the younger programmers would get for the time they spend finding the two extra cycles.
I suppose that makes me an "advanced" programmer -- I use Ruby on Rails. If I can solve a problem in hours instead of days, it's worth the extra CPU and RAM I have to throw on it.
But that doesn't apply in all cases -- see, again, video games.
And it doesn't help your argument at all -- your examples say, "Work smarter, not harder." That is not the same thing as "If you work harder, your programs will run slower."
Or replacing Javascript, even very, very well optimized with hundreds of people working years on making it faster, with C++.
...thus spending at least as much time sandboxing the C++, possibly more.
Well, yes, exactly -- the excuses are getting lamer and lamer, even to me.
Hardware is expensive! But you get what you pay for. Meanwhile, I spent $2700 on a fully-loaded Dell -- I'm not convinced that a Mac would've been more expensive, especially if I don't buy RAM from Apple.
No virtual desktops! In Tiger, there were a few third-party ways to make that work. In Leopard, there's Spaces.
No package management! Macports and Software Update covers most things I would care about. The rest have built-in updaters of their own. Not ideal, but not horrible, either.
Commandline is BSD and weird! Not worse than Windows, and Macports makes it a lot more bearable. Besides which, Terminal.app has some features I wish I could find in an xterm clone. And with Leopard, it's bash by default, there's Ruby on Rails there out of the box (complete with Rubygems), and so on.
Wine! Crossover. Filesystems! MacFUSE. Kopete! Adium. And so on...
The only one I've really got now are low-level performance metrics that really don't matter much, the fact that it's proprietary (but so is half my X server, with nVidia), and the fact that there's a lot of the GUI that I really don't like (strange but true!) -- and the fact that it's not Linux, so I'd have to learn something other than iptables.
So, if someone ported KDE4 to OS X, and I could use it as a shell replacement, complete with sloppy focus, wobbly windows, hotkeys and all, and without breaking compatibility with existing OS X apps, I'd seriously consider a Mac for my next box.
As it is, I'm not entirely sure that's possible with the way the OS X video system is written, and there wouldn't be a lot of point if I somehow brought up X.org instead of Aqua.
I was semi-involved in this -- basically, Reiser4 wanted to make the filesystem pluggable, but in kernel-mode. The idea was that features would be implemented in the filesystem itself -- crypto, compression, files-of-files (for example, instead of suid utilities like passwd, just let me edit/etc/passwd/sanity), metadata-as-files (Unix permissions are a file, or things like foo.mp3/id3/genre)....
Lots of cool ideas bouncing around, and most of them might work better as FUSE filesystems -- for example, there's no reason id3lib needs to be in the kernel.
Some of them, it makes sense -- certainly for spinning disks, even moreso for external media, the media is so much slower than the CPU that compression makes sense, but you want to compress on flush, and not before. The part that was cool about that was, from the benchmarks they were getting, performance was actually better with compression turned on, because of how fast the algorithm is, how fast CPUs are, and how slow spinning disks are.
But if you break down the "plug-in" concept, it was really horribly mis-named and mis-marketed -- it was just an API, like the pluggable IO schedulers were. It's really something that would probably go in the VFS layer -- something Hans had a really difficult time selling; according to his story, the first time he brought up his ideas, they told him to go put it inside his filesystem, not in the VFS, to try it out without making such drastic changes that would affect other filesystems. When he did that, and came back with the so-called "plugin" architecture, they told him that it should have been in the VFS, so that other filesystems could use it, and they refused to merge it.
Looking at it now, it looks like most of these ideas, and some filesystems currently in the kernel, are better as FUSE filesystems. Better to keep the kernel smaller and more reliable, especially when the performance advantage is minimal -- FUSE will never be the bottleneck for sshfs, for example. Crypto works well enough at the block level (for full-disk crypto). And 20 years from now, we'll have computers so absurdly fast that no one will care about the performance hit of FUSE -- arguably, we're there already.
But I do still wish that the compression, at least, would be tried, if those benchmarks have any truth to them.
Anyway -- more directly, you would never have been able to write file-system customizations in Perl, unless Perl was put in the kernel, which would be an atrocity. However, you can write whole filesystems in Perl, Python, Ruby, or pretty much anything you want -- just use FUSE -- and nothing is stopping you from letting a real filesystem handle 90% of that.
How long did it take to go away?
This acupuncture treatment was on the order of a week, maybe two, with visible improvement after one treatment. It would have gone away on its own, but not fast enough -- it fixed itself just before my trip to peru was scheduled...
Skeptics will claim that's placebo effect, i.e. you paid good money for your treatments, so you convinced yourself they'd work.
And so would I, if we were talking about a mental thing in the first place.
Half my face was numb. My eyelid wouldn't close completely. My mouth drooped. It was pretty embarrassing, and potentially dangerous -- I had to wear an eye patch at night, and use eye drops, to keep from permanently damaging my vision.
I didn't personally pay for the treatment. But over the course of each treatment, it actually did improve drastically -- much moreso than I'd expect from a placebo.
Sure, the plural of anecdote isn't data, but it takes a pretty thick internal ideology to reject observed correlations simply because the subject matter is known to defy direct scientific analysis.
I don't see how this does -- I can see how the needles could work, done properly, and it has nothing to do with Qi flows. (Mine was a neurological condition, so it stimulated some nerves.) And I don't see why it couldn't be subject to the scientific method, or why data couldn't be collected.
I certainly don't think it deserves to be lumped in with, say, homeopathy.
Actually, there's a lot of stuff coming out of Microsoft Research that ends up in production software.
Certainly -- after all, if they had simply repackaged XP in shiny graphics, it might not have sucked as much as Vista. So they are obviously developing new things, for better or worse, which is by definition R&D.
I'm talking about the more interesting stuff, like Singularity.
For some examples that I know - the design and implementation of generics in .NET was done in Cambridge division of Microsoft Research;
R&D? Yes. Innovation? Java had Generics first, and C++ had Templates before that.
Maybe .NET generics are "better" somehow, but it's just not exciting to me. It doesn't have the same appeal as something like Surface, or Singularity... And while .NET itself was a cool idea (more generic than Java), it got completely castrated and bound to the Windows platform before it saw the light of day as a product.
Even the products which mostly come out the same, somehow always seem to have cooler-sounding codenames than actual product names. Monad becomes PowerShell, for instance.
Watch it again. There was at least one screen on which it is obviously, unmistakably Vista -- same curve of the taskbar and huge start button, same greenish background theme, everything.
Considering that this movie was released after Vista, it seems much more likely that the screen was Vista, than that Microsoft somehow saw a prerelease of the movie and decided to build Vista that way.
Just as with Surface -- yes, Surface is an idea right out of the movies. However, this particular display was quite obviously Surface.
I would say, it's every bit as much a church as anything else, and every bit as much a religion as anything else. It's just that most churches in most religions aren't quite as directly evil.
Anyone who says otherwise is either stupid, or lying... and, if you disagree with this then you must be, by definition, complicit in their crimes.
Now that's a high-class troll! That sounds like something right out of Scientology's Fair Game doctrine!
Look, I'm glad you're fighting the good fight and all, but that's just embarrassing.
Trust me, both you and Apple are happier this way. She was cheating on you with Office-for-Mac anyway.
Worth mentioning, 60 seconds in court is still a ton of lawyer-time, which both DiskKeeper and the CoS can afford, but the individual employees probably can't.
Here's a few gems as I struggle through:
Just as the printing press brought about a whole new set of problems with regards to unauthorized duplication, the Internet has similarly required specific measures designed to address the new possibilities for piracy it opens up.
Not necessarily. Anyone remember the videocassette?
Every new invention, including the printing press, has been fought by exactly the industries which stand to gain the most from it, if only they are willing to change. And when that change inevitably comes, they find themselves even richer than before.
The important difference between digital piracy and the types of copyright infringement that came before it - such as taping songs off the radio - is that digital piracy allows perfect reproduction with no quality loss.
Burning CDs allow perfect reproduction with no quality loss. The music industry fought burning CDs. They ended up making money by selling media and burners -- at least, Sony did -- and they continued to make money selling CDs and concert tickets.
And so it is with the Internet. Their costs of reproduction are pretty much nil, even costs of a live broadcast are much smaller, and it's that much easier for the fans to connect, as well. It is their greatest opportunity yet. But they are fighting it, and that is why they're failing.
The aim is to provide intellectual property a similar type of protection as that afforded to physical property.
*head asplodes*
Physical property, when taken, must be replaced. It is real, and can be possessed. It operates under fundamentally different rules.
And when you factor in DRM, you find that they are not trying to protect intellectual property. They're trying to take away what you assumed to be your physical property -- your CDs, DVDs, etc -- and ensure that you are, in fact, only renting.
For example, whether you spend your life building houses or writing books, you should be equally entitled to reap the rewards of your labors
Indeed -- so find a system that actually parallels them.
If I build a house, I can't then replicate it into thousands of identical houses for a fraction of a cent each, and then sell them for a profit. And I'm sorry, but that model is ending for other media, as well.
The successful artists are getting paid like the housebuilders -- for actual work. That is, if you're a musician, sure, print a CD, but it is a promotional material -- let people pirate it. Your product is your tour.
Without copyright laws the GPL couldn't operate, because it's through the rights that are enforceable under copyright law that the Linux movement can place terms and conditions on their licensing arrangement in the first place. Without copyright, the default and only possible distribution method for anything everywhere would be via the public domain
I'm sure that many GPL advocates would be perfectly happy with that situation. After all, the primary evil of proprietary software is that it discourages sharing.
Disclaimer: I don't actually think it's evil, and I do develop proprietary software.
The argument is straightforward and both intuitively and logically sound: for every pirated copy of a product, there is some potential loss of income to the producer of that product.
The arguments put forth here universally center around the loss piracy causes.
What they completely ignore is the potential gain. Piracy demonstrates a much more effective method of distribution -- I'm at a loss as to why I can't legally obtain TV shows or movies via BitTorrent. It is also free advertising -- a pirate may eventually buy the game, and if the pirated version is at all good, they may in fact convince others that it's worth playing.
It also increases awareness of the game and the brand, something which might otherwise be done with expen
Zero-day and Day-one warez cannibalize PC game sales, and as long as DRM prevents that, they're golden.
That raises two questions:
1: Who are these drooling idiots who didn't preorder, yet still must buy the game exactly one day after release? Are you saying that as soon as these mouth-breathers realize that they can wait a month and it'll be up on the Pirate Bay, PC gaming is dead?
2: Does DRM actually prevent that? It actually doesn't do anything close for movies. Most of those are online while in the theaters, if not before.
Steam is really no better, it's just that it hasn't had the same sort of character assassination that SecuROM and Starforce have gone through
I'll grant that it hasn't done that, but it is really quite a lot better. Consider:
- Steam is quite clear about what DRM exists: Activation and continued contact with their activation server. That's it. Starforce and SecuROM do not come with a warning label that says "If you upgrade your computer, this game may stop working."
- Steam doesn't install crap into your kernel. The others do, and this has forced people to reinstall Windows to use their CD burners.
- The others tend to contain blacklists of programs you cannot run while playing the game. Steam doesn't -- it will happily run while I have a Daemontools image mounted.
- Steam works on Wine. The disc-based systems require some commercial version of Wine, like Cedega, and then don't always work.
- Steam actually provides some added value, as well as DRM. I can use it to IM friends from in game, and invite them to join a server I'm playing on, even if they don't have that game open at the moment. It autoupdates all my games, from one place. I can download the game, even saturate my 100 mbit fiber -- and I can download it as many times as I want, on as many computers as I want. And there's achievements. Most DRM-free systems don't have half these features.
Steam ties each legit license of the game to an account, meaning that it's easier to ban known cheaters, trolls, etc. No need to ban by IP address, just ban by Steam ID, and they're gone until they buy the game again.
because they happen to have made HL2.
And EA happens to have made Spore. So what?
I think the main reason is that Steam actually works. There are far fewer ways it's intrusive, and all of them are well-known.
And yes, it's possible to build a system like Steam without DRM. But at that point, I really don't care much. Steam is making me stay updated, stay online while playing, and use Windows and their software. The first two, I really don't care about. Last one, most games don't have Linux versions anyway, and I have to run the game anyway.
In the year 2020, I likely won't still be playing Spore.
Of course, I'm unlikely to play Spore at all -- I'm much more interested in Mirror's Edge, but I doubt I'll still be playing that in 2020.
Consider that without quite a lot of help, it can get incredibly difficult to play old games anyway. Can you still play Doom? Sure you can, because they opened the source, and there are now Doom ports to everything. Are you sure the DOS version still works on anything modern, without a rather large amount of emulation?
Regardless, I'm probably going to buy a few of these, if all they have is Steam's own DRM. Steam, I am willing to tolerate, because while it is more restricted, there is also quite a lot of added value -- the Friend system, Achievements, and all the other toys of an Xbox-Live-ish system, plus the ability to re-download any game I own, as many times as I want, on as many computers as I want, at speeds which can saturate my 100 mbit fiber-to-the-home Internet.
Probably some confusion about MAC addresses. And it is irritating...
I have a relatively highend desktop. I built it myself, for ~$800 (not counting monitor and peripherals, of course).
Well, there's at least two huge differences:
I was counting a monitor and peripherals. Specifically, I got an external hard drive and a 24" 1080p monitor with it, as well as some extra power cords and such.
And, notice it's a laptop. It's got better specs than my old desktop.
But hey, if I wanted to spend less money, a refurbished iMac isn't much more than you spent.
I certainly see a lot of interesting things demo'd at Microsoft R&D.
And then get promptly ignored by the rest of the company, and never actually show up for market.
Contrast this to, say, Apple, who never gives demos like that unless they're actually launching the product in the next few months -- or right away.
Microsoft is too large a company to hate entirely. Bungie was part of them for awhile, after all -- I wanted to hate Halo for that, but it ended up actually being a good game. And they do seem to let their R&D department do some interesting things.
Then they let business concerns drive everything else, and we end up with crap like Vista.
Anyone want to guess how much better Microsoft would be with, say, Ballmer gone?
Well, hey, you may also have noticed how every computer screen in the movie was running Vista. Surely the government, particularly top-secret facilities like that, would show more taste?
I'd be curious to know which conditions for which it was effective...
I had a Bell's Palsy. Went to several acupuncturists and a chiropractor, and it was gone very quickly.
Heh, and that's what shows you're just a newbie.
I see. File a bug in bugzilla.mozilla.org
Now, did I say it had to be in a web browser?
And I thought I was the newbie... You do realize that Javascript can be -- is -- a general-purpose programming language, not only a browser scripting language?
If it had an API to load 3D scenes, API to a physics engine, API to UDP sockets, it would work just fine.
Which is my point -- though I would dispute that most games need UDP. In most cases, games seem to be re-implementing the wheel on top of UDP -- and that wheel ends up being at least SCTP, if not TCP itself. And in many cases, TCP honestly is not enough overhead to matter -- even HTTP might not be, which is why we're having this discussion anyway.
For lack of APIs, everything must be done by hand, pixel by pixel, polygon by polygon, and Javascript just doesn't have the speed to do it.
Sadly, even there, I'm not sure there is an API for the pixels -- though polygon by polygon would still be fast enough for some very interesting demos.
Javascript would be a great in-game scripting engine (though a hell to implement).
What would make it hell to implement? There are at least three open source Javascript engines that I can think of, off the top of my head, and more in the works. Are you saying none of them would be easy to embed?
Experience says otherwise -- for example, CouchDB embeds Javascript in an Erlang program.
BTW, [link]
That's three minor versions behind the current release of jquery -- how old are those benchmarks? I don't see Chrome in there, and Chrome is really what started the whole "My Javascript engine is faster than yours" game.
No "raw JS" in the graphs, but I assure you it would be the fastest of them all.
I would guess so, but I'm also not entirely sold -- after all, "raw javascript" is still essentially building your own library, which happens to be a thinner layer, for now. I would also guess that a sufficiently advanced VM might be able to make some guesses about code that might give the frameworked way an edge over the hand-rolled way.
I would also guess that this won't last forever -- eventually, either it won't matter (the speed difference will be worth the added flexibility, for the vast majority of cases), or browsers will start targeting specific frameworks.
Not gonna happen until OS X is the same price as Fedora/Ubuntu/Gentoo.
Read that again: high-end geek desktop. I spent $2700 on a laptop -- were it a Mac, OS X would be included in the price. But what's an extra $100 or $200 on top of that?
And if you were talking about "freedom", there isn't currently a viable, fully open source OS. I'm running Linux right now... probably half my X and a third of my kernel is nvidia, so WTF is the point? Most of the advantages of the Linux kernel, for me, as a desktop, are little pockets of flexibility that other people have built (like FUSE), and the slim possibility of fixing my own drivers, when my hardware isn't directly supported (but OS X has commercially-supported ones).
I can still see plenty of uses for Linux. I use it on the server, I use it on older hardware, I assemble spare parts into working fileservers and routers, and I play with virtual machines, VPNs, and other cool stuff. And these are indeed places where price matters -- I don't particularly want to pay an extra 10% for an EC2 instance just to run Windows, for example, and there's no way to turn them into XServes.
But if I'm going to be spending thousands of dollars on a new computer, I'm certainly willing to spend a premium on the OS, if it's better. The hardware looks and feels slicker, too.
Right now, the balance is against Apple. They were dicks about my warranty on that Powerbook, I still remember enough things to hate about the OS X user interface, and Linux support for their hardware (Macbooks especially) is poor, so I know if I bought one, it'd be running Windows or OS X as a host OS, whether I want it or not.
But more and more often, I'm becoming envious of things like being able to plug my laptop into a projector and have it Just Work, instead of having to go edit xorg.conf and ctrl+alt+backspace.
Macbooks are a lot like other pc laptops in that regard, physical security is a bit higher.
A bit, but honestly, not a lot. Trivial example: It is roughly four screws on the bottom of my laptop case, and then the hard drive slides right out. Bonus: It is small-ish and SATA, which means you could easily pop it into the nearest modern desktop.
I think you can set the password and prevent booting to an external disk or the CD drive, which would prevent booting the installer.
Can you also prevent booting in Firewire target mode? How about single-user mode?
The password reset thing isn't on the install disk btw.
Can the installer mount the existing filesystem? Can you get root on the install disk? If so, you can use a standard Unix utility: passwd.
If not, it hardly matters -- there are Linux livecds which will speak HFS+...
Look, the only way I know of to make physical security significantly higher to where a high school student couldn't figure it out, given sufficient time and motivation, involves thermite and some highly sensitive trigger mechanisms, and quite a lot of risk to the continued existence of your lap if you do it wrong.
Those were the AWS key and secret key, as amazon calls them. You might just call them random passphrases. They're like 20 or 40 characters long.
I assume those are sufficient -- and I believe there's some actual x509 certificates you can use, if not.
No, I'm talking about encrypting your data so Amazon can't see it. Those keys are just authenticating you to Amazon, they don't encrypt your data.
Well usually i just pick up my hardware on my way to or from work... so it'd cost like 10 minutes to replace a hd I guess.
I live in a small town -- nowhere I can go and just buy a hard drive, certainly not one I expect any reliability from.
if you have a Mac there is NO software you CANNOT run -- period.
It's true that there is more software you can run, but that shows a bit of a lack of imagination. For example: Can you run mobile apps on a Mac? How about a Windows driver for some archaic piece of hardware?
Of course anyone who want to write programs for the hot selling iPhone or iTouch MUST run OSX, because these use a pared down version of that OS.
That wouldn't prevent Apple from releasing the developer tools for another OS, so I can develop and test (with emulation) on Linux or Windows, and deploy on an iPhone. I don't know if they've done so.
Of course, that's sheer fanboyism -- there's still Android and Symbian. I'd much rather develop for Android, even if it means a smaller audience.
XP runs fine with 512M and VISTA gets 2GB all to itself.
Thanks. I've got 4 gigs of RAM on this laptop, running Ubuntu as a host OS (it's not an acronym, by the way, you don't have to spell it UBUNTU) -- looks like those will fit comfortably, if I ever need them.
And I do have an XP license, so the only OS I can't run on this is OS X. I can't be bothered -- I'll borrow a friends' Mac if there's something I desperately need to test, and pretty much all Mac software I care about exists for XP.
My iBook has been used as a paperweight for the last two years.
Why didn't you put Linux on it, then?
You do realize you can get KDE right now on any generic piece of kit ?
I am typing this from Konqueror on a Dell laptop. I'm well aware of the hardware advantages of Linux. I don't much care, though -- it is worth spending a bit extra to know that all the hardware works, and is supported -- which is why I bought a Dell with Ubuntu preinstalled. (And, predictably, Windows XP was harder to install on this than a fresh Kubuntu.)
And it's not bad hardware. I love the Macbook form-factor, and I love the Apple aluminum keyboard I'm using right now. (I also hate the Mighty Mouse with a passion, but that's a bit offtopic...)
On top of which:
if KDE or filesystem support is the kind of thing you're looking for, I really don't have the faintest idea why you should bother locking yourself in that platform.
No, KDE and filesystem support are a couple of the reasons I refuse to use OS X now. There are a number of reasons I would love to have a Mac.
For example: I cannot run Photoshop on KDE on any generic piece of kit. I would have to install Windows to do that, and that's quite a bit worse than OS X, even if I can find a way of pulling the same trick and using KDE as the shell instead of Explorer.
And speaking of this keyboard: Believe it or not, it has firmware. That firmware can be updated via Software Update on OS X. I know of no way to update it on Linux -- so I occasionally borrow a Mac for that purpose alone.
VM = interpreter. No matter how much marketing people may want to convince you otherwise.
Sigh...
If it's not native code, it's not run by native CPU
And what do you think happens to your C source? It's not native code, it's a bunch of ASCII.
It then produces native code -- just like a VM does. The only difference is when this happens.
Guess why people don't write quality games in Python and Java.
Because they don't know better?
Most games do, in fact, implement some sort of scripting language to implement AI, game logic, etc. The smarter ones use an existing language, rather than rolling their own. WoW uses Lua. Civ4 uses Python.
As for virtualization, try virtualizing a different architecture than your native, say running a virtual MIPS machine under an x86 system.
I'll have to find you a citation later, but from what I understand, there was once a RISC CPU for which a virtual machine was written. By your logic, it was an interpreter. It also outperformed running the exact same code on the bare metal by a significant margin -- IIRC, it was twice as fast.
I'm sure I've seen browser without SVG. Actually, I'm sure most of users use it. Are you going to put "Firefox 3.0.4 required" on the product you're selling?
Better than putting "Random EXE required."
Good luck accessing VBLANK interrupts in Javascript.
That's not a flaw of Javascript, it is a lack of an API. I see no reason why a vblank couldn't trigger a Javascript event.
Also, good luck getting 50FPS from anything more than a handful of pixels.
Again, an API issue -- there is currently no OpenGL implementation in the browser. Still, I'll bet SVG can go reasonably fast, though perhaps not for 3D.
As soon as you start writing more advanced code, you start finding bugs in the libraries.
Which I can fix, given that they are open source.
Also, have you maybe noticed what is the performance impact of using, say, JQuery vs writing the code in JS by hand?
Given that I haven't yet had to optimize my Javascript -- it's fast enough -- no, I haven't noticed. But I would be curious to find out what the actual performance hit is, especially on the better Javascript VMs.
The five-minute solution would be "Send me the data pre-sorted, you have more CPU power on your side", of complexity of O(0).
In other words, I'm surprised it took you five minutes to figure out how to push the real work onto someone else. How does that still count as a "five-minute solution"?
A five-minute solution would be to remove the whole part which does it, and use precalculated data,
Again a non-solution in many cases. For years, games had pre-calculated shadows and lighting. Now, the lighting is mostly done in realtime, allowing it to change in response to moving light sources, as well as moving objects casting shadows.
In order to make that fast, certain parts of it are done in assembly, or even on the video card. Far more programmer time spent. Better results, for the same amount of CPU time.
or hiring a bunch of interns to do it by hand, a hundred times faster than the computer would.
How much do those interns cost? How much would it cost to instead hire one programmer and rent some power from, say, Amazon EC2?
Besides which, exactly what are you doing which is a hundred times faster for a human to do than a computer?
Not once I spent a week trying to optimize a part of the program until someone suggested "why not overhaul the database structure instead, and kill the monster you're struggling with, replacing it with one simple SQL query?"
Certainly, things like that happen. However, you've extrapolated it to claim that in all cases, more work equals more resources spent on the problem. I'm providing examples where, if the same solution is to be reached, more work may equal less resources spent.
Advanced programmers know a faster CPU costs less than the salary the younger programmers would get for the time they spend finding the two extra cycles.
I suppose that makes me an "advanced" programmer -- I use Ruby on Rails. If I can solve a problem in hours instead of days, it's worth the extra CPU and RAM I have to throw on it.
But that doesn't apply in all cases -- see, again, video games.
And it doesn't help your argument at all -- your examples say, "Work smarter, not harder." That is not the same thing as "If you work harder, your programs will run slower."
Or replacing Javascript, even very, very well optimized with hundreds of people working years on making it faster, with C++.
...thus spending at least as much time sandboxing the C++, possibly more.
Well, yes, exactly -- the excuses are getting lamer and lamer, even to me.
Hardware is expensive! But you get what you pay for. Meanwhile, I spent $2700 on a fully-loaded Dell -- I'm not convinced that a Mac would've been more expensive, especially if I don't buy RAM from Apple.
No virtual desktops! In Tiger, there were a few third-party ways to make that work. In Leopard, there's Spaces.
No package management! Macports and Software Update covers most things I would care about. The rest have built-in updaters of their own. Not ideal, but not horrible, either.
Commandline is BSD and weird! Not worse than Windows, and Macports makes it a lot more bearable. Besides which, Terminal.app has some features I wish I could find in an xterm clone. And with Leopard, it's bash by default, there's Ruby on Rails there out of the box (complete with Rubygems), and so on.
Wine! Crossover. Filesystems! MacFUSE. Kopete! Adium. And so on...
The only one I've really got now are low-level performance metrics that really don't matter much, the fact that it's proprietary (but so is half my X server, with nVidia), and the fact that there's a lot of the GUI that I really don't like (strange but true!) -- and the fact that it's not Linux, so I'd have to learn something other than iptables.
So, if someone ported KDE4 to OS X, and I could use it as a shell replacement, complete with sloppy focus, wobbly windows, hotkeys and all, and without breaking compatibility with existing OS X apps, I'd seriously consider a Mac for my next box.
As it is, I'm not entirely sure that's possible with the way the OS X video system is written, and there wouldn't be a lot of point if I somehow brought up X.org instead of Aqua.
I was semi-involved in this -- basically, Reiser4 wanted to make the filesystem pluggable, but in kernel-mode. The idea was that features would be implemented in the filesystem itself -- crypto, compression, files-of-files (for example, instead of suid utilities like passwd, just let me edit /etc/passwd/sanity), metadata-as-files (Unix permissions are a file, or things like foo.mp3/id3/genre)....
Lots of cool ideas bouncing around, and most of them might work better as FUSE filesystems -- for example, there's no reason id3lib needs to be in the kernel.
Some of them, it makes sense -- certainly for spinning disks, even moreso for external media, the media is so much slower than the CPU that compression makes sense, but you want to compress on flush, and not before. The part that was cool about that was, from the benchmarks they were getting, performance was actually better with compression turned on, because of how fast the algorithm is, how fast CPUs are, and how slow spinning disks are.
But if you break down the "plug-in" concept, it was really horribly mis-named and mis-marketed -- it was just an API, like the pluggable IO schedulers were. It's really something that would probably go in the VFS layer -- something Hans had a really difficult time selling; according to his story, the first time he brought up his ideas, they told him to go put it inside his filesystem, not in the VFS, to try it out without making such drastic changes that would affect other filesystems. When he did that, and came back with the so-called "plugin" architecture, they told him that it should have been in the VFS, so that other filesystems could use it, and they refused to merge it.
Looking at it now, it looks like most of these ideas, and some filesystems currently in the kernel, are better as FUSE filesystems. Better to keep the kernel smaller and more reliable, especially when the performance advantage is minimal -- FUSE will never be the bottleneck for sshfs, for example. Crypto works well enough at the block level (for full-disk crypto). And 20 years from now, we'll have computers so absurdly fast that no one will care about the performance hit of FUSE -- arguably, we're there already.
But I do still wish that the compression, at least, would be tried, if those benchmarks have any truth to them.
Anyway -- more directly, you would never have been able to write file-system customizations in Perl, unless Perl was put in the kernel, which would be an atrocity. However, you can write whole filesystems in Perl, Python, Ruby, or pretty much anything you want -- just use FUSE -- and nothing is stopping you from letting a real filesystem handle 90% of that.