Yes, there are booting differences also. And yes, Apple's method of booting is probably superior. But that doesn't preclude actual DRM.
the iPod is indeed an integrated device, which for a while was Mac only, but Apple also writes iTunes to run under Windows.
Why do you think they did that?
If Apple knew then what they know now, they might never have joined the organization.
And yet, they are still in that organization. If they really believe it's irrelevant, and if they're really trying to eliminate it, why haven't they left?
Your argument might hold water, if iTunes were an expensive program you had to buy, but it is totally free.
It is, however, a proprietary program only available for a proprietary platform. It is thus exactly as "free" as Internet Explorer.
I assume you run a Mac. What do you think when you run into a website that requires Internet Explorer?
If there were a single Linux variety, rather than the sad mishmash of incompatible of versions,
"Incompatible of versions?"
But... uhm... Amazon MP3 has a Linux version. So does Skype, for that matter. It's clearly not that it's hard, it's that Apple doesn't care.
You also seem to be forgetting that Apple is not a charity or nonprofit but a profit-making American corporation
I haven't forgotten.
What everyone who uses this argument seems to forget is that just because you're a for-profit corporation doesn't mean everything you do is ethically justified just because it gains profit.
In particular, you're the one who was bragging about how Apple's anti-DRM. Plenty of for-profit companies are pro-DRM. Clearly, you're trying to make some moral superiority argument which falls flat on its face when you consider something like iTunes -- which, properly engineered, would work on the Web, and in iTunes, and easily allow AmaroK and Songbird to add support, as they have for Magnatune.
Why is it engineered to only work with iTunes?
As much as you'd like to say "integration", the real reason is very simple: It originally came with DRM, and DRM works better (to the extent that it works at all) on closed systems. It's only once they started to ship DRM-free songs that it might've occurred to them to publish an API.
setTimeout/setInterval doesn't actually surrender control of the thread back to the CPU. My CPU monitor says 99% usage, even when I set long intervals.
Sounds like you're Doing It Wrong.
Seriously, take a block like this:
function tick() { // do some stuff } setInterval(tick, 1000);
I guess it depends what you mean by a "long interval", but that definitely doesn't take 100% CPU for me.
good luck getting the sound to play at the moment you request it,
Have you actually had a case of this being a problem?
it won't tell you where your typo is.
If your file is so big you can't find a typo, your file is too big.
If you made a significant change it can be a PITA to track down.
If you made a significant change without testing, you're Doing It Wrong. See TDD, for one.
Less than a second to be in a game? I don't think you appreciate how long it takes to load resources before the game is actually running.
I think you're assuming all of these resources have to be loaded ahead of time.
O3D is a plugin that can be installed in Internet Explorer today.
Is it impossible that WebGL could ever be done that way?
I'm starting to think that the best way to deal with IE is to create a Webkit/V8 plugin.
O3D embeds V8. Consistent JavaScript performance is going to be an issue for any web-based 3D work.
And V8 may not always be the best engine for that. And since the browser already does Javascript, I'd say leave it to the browser. If it's really a problem for people, the solution is to upgrade the browser, not to install a bigger plugin.
No, what I like about O3D -- and you'll have to correct me if I'm wrong -- is that WebGL is a very low-level wrapper around OpenGL, whereas O3D is high-level-ish, right? Or, put another way: Would it be possible for O3D to wrap either Direct3D or OpenGL, depending on the platform? That would be a definite win.
Other than that, from reading that discussion, the biggest thing I like about WebGL is that, like most of the other web standards I know and love, and like the Unix philosophy, it tries to do one thing and well.
For example, rather than having its own format for loading assets, it's counting on the browser to provide a more generic one -- maybe the ability to have URLs that refer to some location inside a zipfile (or something else reasonably standard). It occurs to me that data URLs could go a long way here as a hack, too.
It was intended to and is intended to be primarily a phone which can also run computer applications.
Thus, a generic application platform.
Or, if you like, a specific application platform. You're still not going to find applications on a game console.
The Mac is an integrated machine in the same way that my Toyota Prius is a whole integrated car even though it is run by software that boots like and has a power button like my computer.
It also lets you run whatever you want once you boot it.
That is why Apple discourages but not totally prevents people from running their software on other hardware,
I'm sorry, what does this have to do with it being an integrated platform?
No, the reason for this is plain and simple: Greed. Even if Apple hardware is fairly priced -- and I'm not convinced it is -- this is their way of forcing you to buy all your hardware from Apple, if you want to run Apple software.
I can see why they might not want to encourage people from running OS X on non-Mac hardware. They do, however, take steps to discourage that, up to and including DRM.
So your argument that they are anti-DRM fails, no matter what excuse you want to use, as if they were anti-DRM, you'd think they wouldn't, y'know, use DRM.
Imagine if, for a moment, they took the same attitude towards the iPod and music that they are towards their software. Would you really try to argue that the iPod is sold as an entire integrated device including the iTunes store, and that I shouldn't be able to use the iTunes store with a non-Apple portable media device, and that Apple is therefore justified in encrypting each song?
I mean, would you then go on to suggest that it'd be OK for the iPod to be Mac-only, since it's all about this integrated software experience?
does not use sophisticated DRM to prevent you.
Oh, so it only counts if it's sophisticated? And they certainly use lawsuits to prevent me.
The Blu-ray Disk has been a sales disappointment and is likely to wither the way because it does not really offer anything besides a better picture.
Not true. It does offer more interactivity, it's just that people don't tend to care much about that -- it's lacking a "killer app", so to speak.
Still, I did some pretty cool things with HD-DVD (if I say so myself), which could not have been done with DVD.
But what does this have to do with the fact that Apple supports an organization -- is even a board member of said organization -- which is so rabidly pro-DRM?
Apple with its iTunes video store, where movies and TV shows can be both rented and purchased is actively trying to destroy the market for the Blu-ray Disk because there is no future in it.
Then why are they on the Blu-Ray board?
Also, eventually, the movie and TV companies will get around to realizing, just as the music industry has, that DRM is unnecessary and reduces sales.
And why hasn't Apple helped them understand? Why are they instead encouraging DRM-laden platforms?
For that matter, if Apple truly is in favor of the advantages of a DRM-free world, why can't I buy music from the iTunes Music Store, without using iTunes? Why isn't it a web-based system, like just about every other music store out there? And don't say "ease of use", because there's nothing preventing them from offering both ways.
as long as the compiler is not at least as optimized as the Java ones.
They're working on it. I haven't looked at benchmarks -- it may already be there. Picking a random benchmark shows v8 (Chrome's Javascript engine, which is embedded in O3D) to be 300x faster than Python, and I know Python is easily fast enough to make a decent game in.
Now the good and the bad news is, that nowadays, everything that changed in optics in the last 5-10 years is shader-based. Which means it's going to be just as fast as normal software when just loading precompiled shader progams. But it also means a big security risk, because everyone could load a shader in your graphics card on any website.
I guess the big question there is whether shaders are a security risk at all. Although I'm sure shader systems haven't been designed with security in mind, what, exactly, can they access? I could be entirely wrong, but it seems to me that they'd be pretty severely restricted -- the worst someone could do is DoS you by slowing down your video card a bunch.
it should be at least opt-in by default.
Nah, it should be opt-out by default, and people who want opt-in can use noscript.
Otherwise... shit, Flash should be opt-in by default.
It has the potential of finally blowing Flash out of the water, and freeing us from it. (Putting 3D features in Flash will mean to basically create a new product. I don't think Adobe is quick enough with that.)
I wouldn't underestimate Adobe, nor people's willingness to stick with what they're comfortable with.
I mean, yes, it has that potential, and I'm really excited, but do not underestimate them. That's why this part is so important:
what we need for this is: Authoring tools for the creative people out there.
These authoring tools have the potential to be very cool, but we kind of need to hurry -- assuming that it goes this way, and not O3D.
What would be especially cool is if Adobe started building authoring tools targeting this, and other open standards like the video tag (and canvas in general). I mean, it would be horrible, too -- Adobe GoLive has created abominations, if you dare to peek at the source -- but it would also mean Flash can finally die.
Either way, it introduces more security vulnerabilities to the average user.
Granted. But the obvious question is: How many features are you willing to remove or prevent to keep the user secure? Having a web browser at all introduces more security vulnerabilities to the average user than just not surfing the Internet.
The fact is, Flash is nearly always used for the wrong reasons. WebGL will become the next Flash, and be just as annoying if not more so.
Except that it'll at least be open. Flash is frustrating not only because it's abused (as any technology can be), but because there really aren't that many applications where Flash makes sense. In fact, the vast majority of places Flash is used now, there are and were existing technologies that make much more sense.
Let me put it another way: Do you like the video tag? It likely introduces more vulnerabilities, and it could be abused, and could make some sites slower. But it's a hell of an improvement over Flash.
That's the idea here.
And the fact that many browsers can't do them. IE can do Flash, IE can't do SVG.
IE can't do Flash without a plugin. IE can't do SVG without a plugin. What's the difference?
And I have to point out, I don't think you really mean "many browsers". I think you mean "IE".
However have you seen the state of technology for non-geeks? I still know people who use Windows 98 as their default operating system, old Dell towers with low-end Pentium 4s are very common, and for most notebooks integrated graphics is the best they have.
And again, these are systems on which Flash won't perform well.
And yes, I have seen non-geeks. They tend to like things like netbooks. In fact, my experience shows an opposite trend kind of balancing them out -- when a non-geek notices their computer going slower and slower (spyware, most likely), they have no idea how to fix it. Generally, they either pay someone else to fix it, or they buy a new computer.
A geek, on the other hand, can install Linux and make an old system useful again.
When people want to add things to their website they can do it with things such as... HTML and CSS (or whatever their replacements are in 10-15 years).
Replacements like... oh... WebGL?
I would prefer it to be in either server-side language with a small client interpreter (similar to how/. is coded) or make it be a desktop application. The risks are too great when you have code running like crazy on the client side, that is when security vulnerabilities come out.
This is the part I really can't agree with.
I agree that code "running like crazy" on the client side is a bad thing. But I would much rather have my apps sandboxed by default, not to mention auto-updated, Internet aware, cross-platform, and not needing installation, than having to download an EXE and pray it didn't come with malware.
Would you also want ads to run the same way?
Would adblock suddenly stop working? How about noscript?
Again, like so many other things in your response, this is already an issue with Flash. Someone can already display a video in an ad, with sound, and make it take over as much of the browser window as they can manage. All they can't do, yet, is make it go fullscreen without me clicking something -- and I expect WebGL would be the same way.
Or what about malware?
If it's properly sandboxed, there's not a lot it can do.
Security issues are a major concern as things get more complex. We have a hard enough time just with JavaScript issues which is a simple language.
*facepalm*
I think we've had a grand total of... maybe... one or two actual Javascript vulnerabilities.
The rest are vulnerabilities in the API exposed to J
Invariably these games use 99% of the CPU because Javascript doesn't have a real sleep() function.
setTimeout doesn't work? Or setInterval, if you're going for a specific framerate?
There's no decent way to manipulate sounds (like an FMOD for javascript).
You could play them with the audio tag. I guess the question is whether you can actually manipulate beyond play, pause, seek, and volume... Then again, it doesn't take much more than that to start to do 3D.
There's no way to switch to full screen
I agree, this should be addressed. Actually, I have some ideas of how a browser might implement this, if you're interested.
or to capture every key stroke/mouse movement.
No, but you can capture enough of them to make a game.
there's no decent debugger.
Firebug isn't "decent"?
3D games sound like a nice idea but they'll be prohibitively expensive (time-wise) to develop, suffer bizarre bottlenecks not seen in native code, and have to work through the very limited browser interface.
Granted. On the other hand, they'll be more accessible, they'll have access to the browser (and navigation, bookmarks, etc), and I know of no other platform where I could imagine clicking a link on a webpage and being inside a game in less than a second.
So you're proposing a company invest time into a "browser-based hardware-accelerated" graphics game or program by using WebGL... when it's only supported on the two smallest browser shares out there?
I would, if only because it's a lot easier to convince people to try a different browser (or just provide a downloadable version that embeds Webkit) than it is to convince them to download something every time they want to do 3D.
Or if it isn't, it should be.
Even if tomorrow Firefox is ready to go with WebGL in Gecko, you've got a long adoption and incubation time on these projects and you'd still be targeting the minority of browsers.
Where "minority" means "Everyone except IE, at least until someone hacks it into IE with a plugin."
Consider the following user experience: You try to view the webpage. It says "You need a browser that supports WebGL. Here, try one of these." You download a new browser. From this point on, it's no harder for you to try out a new 3D game than it would be a new Flash game.
It seems O3D is higher-level, thus allowing more to be handled by the browser, whereas WebGL forces Javascript to handle just about everything.
I'm not sure which one I like better. In theory, I like Javascript handling everything. In practice, I don't know enough about VMs to say whether Javascript could be made to perform well enough.
Quake Live requires you to download a plugin -- and it's a specific plugin, for a specific game (Quake Live).
WebGL, or O3D -- maybe they're the same thing? Anyway, both are planned to be either a plugin, or actually included in the browser. And they're just a 3D API -- it means that once you have this plugin, any game will work.
So, kind of like Flash is for crappy 2D games, only actually an open standard, and with decent cross-platform support.
My question was, WebGL and O3D seem to have identical goals. Is there a difference?
There are some positive uses for it (such as getting us out of dependence on proprietary technologies like Flash)
There are already a lot of ways we could get rid of Flash, if people would stop using it. After all, Flash is mostly used for vector graphics (we've got SVG), interactivity (we've got AJAX/DHTML), and audio/video (we've got the audio and video tags).
For one, this will add even more vulnerabilities to browsers which seem to already have loads of them.
So does every useful feature. I'll bet money that the first serious vulnerability is in a driver, not a browser.
And for another the web should be accessible for -everyone- from the low-end netbook to a Core i7, and even older systems should be able to browse web.
OpenGL can be implemented in software.
And you lost that argument already with Flash. When there are one or more video ads on many pages I visit, I doubt low-end netbooks are doing well.
Yeah, we all know that they should do it in HTML and that will still stick around, but how many of us have encountered sites built entirely in Flash?
The fact that technology can be misused is not a reason to avoid developing said technology.
For example: It's possible to build an entire site surrounded by an iframe, so that navigation is completely broken. That doesn't mean that iframes have no legitimate uses.
It's also possible to build an entire site as a single AJAX app. This can be done well, but it takes more work -- for example, with Gmail, notice that everywhere you go, it adjusts the hash in the URL, so that you can use browser navigation properly -- the back button works, so does bookmarking, open in a new window/tab, etc etc. Sites that don't do that could have really poor usability.
It's also theoretically possible to render images using massive HTML tables, with each cell representing a single pixel. Does that mean HTML tables should be made less flexible, just so no one can do that?
I could go on...
The fact is, there are ways to abuse any technology -- there's always the possibility that someone will print out a website, make the changes they want, scan it back in, and upload it as an image. The fact that people can abuse technology should never prevent us from creating new, interesting bits of technology that have real, practical applications.
While some things obviously need Flash (such as Homestar Runner because they are Flash cartoons)
Nope. They need Flash because they were authored in Flash. They could have been done with SVG, Javascript, and the audio tag, it's just that the authoring tools for these aren't anywhere near Flash itself, from what I understand.
adding a high-end graphics card to a computer just to view the web? Thats just a bit ridiculous.
See, now you're being ridiculous.
Consider that ten or fifteen years ago, using excessively large images would be considered bad taste -- you'd be asking for way too much RAM "just to browse the web", and you'd be wasting a ton of bandwidth. That's why we came up with the idea of thumbnail galleries -- which are still useful, but a better model is really a slideshow.
It's not a "high end video card" now, either. Just about any video card is going to have some 3D capability on it -- and we're moving in the direction of compositing window managers, which will actually lead to cards supporting just 3D (and having to emulate 2D) being cheaper than cards supporting just 2D (and having to emulate 3D).
So, 10 or 15 years from now, when people want to add a little effect to their website -- or build an interesting "flash game" that's capable of actually using 3D hardware -- would you prefer it use Flash? Or maybe you'd prefer Quake Live -- a plugin for each game -- may as well just download an exe?
When I make archives, I either make zipfiles or tarballs, depending on the application -- zipfiles if I need random access, tarballs if I don't.
When I need to unpack them, I use commandline tools -- unrar is free on Unix, and there's 7zip to handle just about anything on Windows.
I wouldn't mind sending some money to him if it was an open source project, actually. But I'm against proprietary standards, so no, I don't buy it, and I avoid using it.
If a company doesn't have to pony up for a DRM system, one thing that hasn't been explored that much are price points.
I agree. In fact, I'd encourage that irrespective of DRM.
This particular developer makes my point for me -- I might pay $5 for his game. Maybe $10. I will not pay $28 for it. He's blaming piracy for his own inability to either make a compelling enough product, or price his less-than-compelling product appropriately.
I have not yet heard of Apple doing such a thing on their Macs,
Doesn't mean they're unable to.
I have heard of Amazon deleting files.
Doesn't mean they could brick the device.
The means to brick the device is the fact that they can likely send some sort of a software update to it -- just as you probably get software updates from Apple.
Apple has and is still working hard to eliminate all DRM,
Apple has been against DRM on music -- that's it. They've been very pro-DRM on software. Why else would an iPhone have to be jailbroken to run any software that's not approved?
I mean, the iPhone alone makes you look really stupid here. Can you name a more locked-down application platform? I can't. The only ones that come close are game consoles, and those were never intended to be general-purpose application platforms.
Never mind that they have used Trusted Computing, among other things, to ensure that OS X can only run on OS X hardware.
Oh, and they're a board member of the Blu-ray Disk Association, meaning they (and 18 other companies) are more or less directly responsible for the AACS and BD+ DRM schemes that are on Blu-Ray at the moment.
It really seems like Apple only really wants to eliminate DRM on music -- anything else is fine by them.
you can't just write off the fact that Skype has so much saturation in the VOIP market
I think I made my point, though. Pop back up the thread to silas moeckel asking "There was a good reason to use Skype?" And Winckle saying "It's free." That's not a good reason.
You've pretty much made the argument by now that the only good reason to use Skype is that everyone uses Skype.
I consider myself reasonably tech-savvy, but many, or indeed most [sigh] of my acquaintances are not, and Skype offers a convenient and relatively intuitive communication channel that covers most bases very well.
And Google Talk doesn't? Have you tried it?
I acknowledge that Skype has many faults, but you can't force everybody to change just because you insist on sitting on your high horse and insisting that anyone who disagrees is a moron.
I don't. I have Skype installed, because I do prefer to actually talk to someone, rather than walk them through downloading something first.
But that's not really a good reason to use Skype, that's more my own laziness than anything else. It's certainly not a good reason to recommend Skype to anyone.
First, you have the people that will almost certainly buy the product. Currently, these people will probably download the demo in order to try it out, or they may just go to the store and buy the game outright. In either case, their mind is already set. Giving them the full version, and asking for a set donation to remove a nag screen will just make them feel trusted and appreciated.
Actually, it'll make me feel annoyed and nagged. I honestly don't know anyone who buys shareware like that -- for example, who buys WinRAR? Anyone?
A sub group of the above are the impulse buyers. As long as you continue to sell boxed copies, and advertise through all the normal channels (Google, Steam, review sites),
No, for this to work, you have to have digital downloads. That means not just advertising on Steam, it means selling on Steam, or something like it.
Second, you have the people that are not sure whether they want they game or not. They may not find the demo indicative of the full game, or they may want to play more (or all) of the game through before passing judgment.
When I've been in this group is when I've most often missed having a console of some sort, since you can just rent the game. That actually fits really well -- for example, a Final Fantasy game provides so many hours of gameplay that it can't be reasonably rented, and even if I never play it again (and I might anyway), I would call it well worth the price. But I could easily rent it and play as far as I can get in a few days or a week, and decide if I want to buy it.
On the other hand, there are games like Enter the Matrix. This was sort of like having another Matrix movie -- it was maybe five or six hours of gameplay, plus maybe two hours of FMV cutscenes. Cool, but not worth $50 or $60, and I can just rent it and finish it some weekend, then return it.
I think the largest problem here is that no one's tried this with digital distribution. I can think of some reasons why -- most users won't like having to download an entire game, only to have "their" game stop working. And to the developer, it may not be worth it -- the number of additional sales, or revenue from rentals, may not match the number of people who rented a game, played through it, and then let the rental expire until they need it again -- especially if it's a "rent-to-own" thing.
Finally, there are the hardcore pirates. These people don't care in the slightest that you worked hard to make this game. For them, it's a question of free entertainment.
Not quite "hardcore" enough.
they don't feel any qualms with piracy.
I don't either. But it comes down to simple economics.
Let me clarify: Portal is $20. It's also a 1 gig download, which on my connection and with how fast Valve servers are, will take about ten minutes.
$20 really isn't that much. And once I've spent it, I can be playing portal ten minutes from now. That's an experience piracy can't match.
And even if it could, even if it comes down to pure economics... Minimum wage is $7.25 in the US. So $20 is less than three hours of work at minimum wage. So even assuming I never get caught, I'm already spending some extra time finding it, downloading it, and cracking it. And if it fucks up my system, deliberately or otherwise, I'm probably going to spend a few hours cleaning up after it. If I take steps to prevent this, like a virtual machine or a disk image, I may spend some time doing that, too.
If I get it through Steam, I know it'll be well behaved -- well, alright, not all Steam games, but certainly all Valve games. It makes economic sense -- no risk of spending many hours trying to save myself only three hours of work (and really, less than one, for most of us) -- and even if I came out slightly ahead in piracy, I could choose to treat myself to a headache-free experience for, well, $20.
I mean, throw in another $10, and I get the Orange Box.
It's all well and good for us to say "just don't worry about the pirates", but it's probably not a long term solution.
I don't think that's what we're saying. I think we're saying that DRM is the wrong approach.
as much as we've become accustomed to the idea of free creative works, it's not really a cure-all either.
No, I'm not saying everything should be free, either. And certainly not this:
Yes, some stuff will get created even without any notion of intellectual property,
"Free" does not mean "developer doesn't get paid". Some obvious examples: America's Army was paid for by the US Army. And while it hasn't been tried beyond some flash toys, it's not hard to imagine a game being entirely ad-supported.
I don't have a solution.
I do, and I've been saying it for years: Provide a better product than the pirates. Especially, provide better value.
So: Charge $20, not $60. Provide a demo, and make it easy to upgrade the demo to the full version. Make the full version easier to obtain than the pirated version. And make an MMO, or learn from Steam -- Steam gives me Achievements, a Community, a nice little IM client that I can use to hop into a multiplayer game, all sorts of stupid little things like that, that I'd miss in a pirated version.
the integrated IM client is useful if you can't be bothered running a full IRC session
So use Jabber. For that matter, there's also Jingle. And for those who need it all in a nice, user-friendly package, there's Google Talk -- which supports this and SIP.
In fact, the only advantage that Skype has over these is that people already have Skype.
If people still think Steam is unfair, they can just buy the games they want when they go on sale. Steam usually has some really good ones.
The price still doesn't make it a good idea.
For example: Suppose you're a soldier. You're over in Iraq. Your Internet works only a couple hours a day, if that, and it's spotty when it does.
At home, on my fiber optic connection, I don't care. Steam always starts pretty much instantly, and if it needs to update something, go for it, it'll take maybe a minute or two till I can play my game again, if that.
But if I was overseas, on that kind of connection -- or worse, if I had internet only every few days, or maybe once a week -- it wouldn't matter how cheap a game is if I can't play it. How well does offline mode actually work?
Steam can saturate your fiber connection? Maybe it's a location thing, but it doesn't even saturate my DSL connection (~20 Mbps).
Ok, not quite. But it can get 2-3 megabytes per second. Yes, megabytes per second.
Except in cases where it's preinstalled, which is often.
it is not DRM, but the booting system differences.
It's actually quite old news that it's DRM.
Yes, there are booting differences also. And yes, Apple's method of booting is probably superior. But that doesn't preclude actual DRM.
the iPod is indeed an integrated device, which for a while was Mac only, but Apple also writes iTunes to run under Windows.
Why do you think they did that?
If Apple knew then what they know now, they might never have joined the organization.
And yet, they are still in that organization. If they really believe it's irrelevant, and if they're really trying to eliminate it, why haven't they left?
Your argument might hold water, if iTunes were an expensive program you had to buy, but it is totally free.
It is, however, a proprietary program only available for a proprietary platform. It is thus exactly as "free" as Internet Explorer.
I assume you run a Mac. What do you think when you run into a website that requires Internet Explorer?
If there were a single Linux variety, rather than the sad mishmash of incompatible of versions,
"Incompatible of versions?"
But... uhm... Amazon MP3 has a Linux version. So does Skype, for that matter. It's clearly not that it's hard, it's that Apple doesn't care.
You also seem to be forgetting that Apple is not a charity or nonprofit but a profit-making American corporation
I haven't forgotten.
What everyone who uses this argument seems to forget is that just because you're a for-profit corporation doesn't mean everything you do is ethically justified just because it gains profit.
In particular, you're the one who was bragging about how Apple's anti-DRM. Plenty of for-profit companies are pro-DRM. Clearly, you're trying to make some moral superiority argument which falls flat on its face when you consider something like iTunes -- which, properly engineered, would work on the Web, and in iTunes, and easily allow AmaroK and Songbird to add support, as they have for Magnatune.
Why is it engineered to only work with iTunes?
As much as you'd like to say "integration", the real reason is very simple: It originally came with DRM, and DRM works better (to the extent that it works at all) on closed systems. It's only once they started to ship DRM-free songs that it might've occurred to them to publish an API.
setTimeout/setInterval doesn't actually surrender control of the thread back to the CPU. My CPU monitor says 99% usage, even when I set long intervals.
Sounds like you're Doing It Wrong.
Seriously, take a block like this:
I guess it depends what you mean by a "long interval", but that definitely doesn't take 100% CPU for me.
good luck getting the sound to play at the moment you request it,
Have you actually had a case of this being a problem?
it won't tell you where your typo is.
If your file is so big you can't find a typo, your file is too big.
If you made a significant change it can be a PITA to track down.
If you made a significant change without testing, you're Doing It Wrong. See TDD, for one.
Less than a second to be in a game? I don't think you appreciate how long it takes to load resources before the game is actually running.
I think you're assuming all of these resources have to be loaded ahead of time.
O3D is a plugin that can be installed in Internet Explorer today.
Is it impossible that WebGL could ever be done that way?
I'm starting to think that the best way to deal with IE is to create a Webkit/V8 plugin.
O3D embeds V8. Consistent JavaScript performance is going to be an issue for any web-based 3D work.
And V8 may not always be the best engine for that. And since the browser already does Javascript, I'd say leave it to the browser. If it's really a problem for people, the solution is to upgrade the browser, not to install a bigger plugin.
No, what I like about O3D -- and you'll have to correct me if I'm wrong -- is that WebGL is a very low-level wrapper around OpenGL, whereas O3D is high-level-ish, right? Or, put another way: Would it be possible for O3D to wrap either Direct3D or OpenGL, depending on the platform? That would be a definite win.
Other than that, from reading that discussion, the biggest thing I like about WebGL is that, like most of the other web standards I know and love, and like the Unix philosophy, it tries to do one thing and well.
For example, rather than having its own format for loading assets, it's counting on the browser to provide a more generic one -- maybe the ability to have URLs that refer to some location inside a zipfile (or something else reasonably standard). It occurs to me that data URLs could go a long way here as a hack, too.
It was intended to and is intended to be primarily a phone which can also run computer applications.
Thus, a generic application platform.
Or, if you like, a specific application platform. You're still not going to find applications on a game console.
The Mac is an integrated machine in the same way that my Toyota Prius is a whole integrated car even though it is run by software that boots like and has a power button like my computer.
It also lets you run whatever you want once you boot it.
That is why Apple discourages but not totally prevents people from running their software on other hardware,
I'm sorry, what does this have to do with it being an integrated platform?
No, the reason for this is plain and simple: Greed. Even if Apple hardware is fairly priced -- and I'm not convinced it is -- this is their way of forcing you to buy all your hardware from Apple, if you want to run Apple software.
I can see why they might not want to encourage people from running OS X on non-Mac hardware. They do, however, take steps to discourage that, up to and including DRM.
So your argument that they are anti-DRM fails, no matter what excuse you want to use, as if they were anti-DRM, you'd think they wouldn't, y'know, use DRM.
Imagine if, for a moment, they took the same attitude towards the iPod and music that they are towards their software. Would you really try to argue that the iPod is sold as an entire integrated device including the iTunes store, and that I shouldn't be able to use the iTunes store with a non-Apple portable media device, and that Apple is therefore justified in encrypting each song?
I mean, would you then go on to suggest that it'd be OK for the iPod to be Mac-only, since it's all about this integrated software experience?
does not use sophisticated DRM to prevent you.
Oh, so it only counts if it's sophisticated? And they certainly use lawsuits to prevent me.
The Blu-ray Disk has been a sales disappointment and is likely to wither the way because it does not really offer anything besides a better picture.
Not true. It does offer more interactivity, it's just that people don't tend to care much about that -- it's lacking a "killer app", so to speak.
Still, I did some pretty cool things with HD-DVD (if I say so myself), which could not have been done with DVD.
But what does this have to do with the fact that Apple supports an organization -- is even a board member of said organization -- which is so rabidly pro-DRM?
Apple with its iTunes video store, where movies and TV shows can be both rented and purchased is actively trying to destroy the market for the Blu-ray Disk because there is no future in it.
Then why are they on the Blu-Ray board?
Also, eventually, the movie and TV companies will get around to realizing, just as the music industry has, that DRM is unnecessary and reduces sales.
And why hasn't Apple helped them understand? Why are they instead encouraging DRM-laden platforms?
For that matter, if Apple truly is in favor of the advantages of a DRM-free world, why can't I buy music from the iTunes Music Store, without using iTunes? Why isn't it a web-based system, like just about every other music store out there? And don't say "ease of use", because there's nothing preventing them from offering both ways.
as long as the compiler is not at least as optimized as the Java ones.
They're working on it. I haven't looked at benchmarks -- it may already be there. Picking a random benchmark shows v8 (Chrome's Javascript engine, which is embedded in O3D) to be 300x faster than Python, and I know Python is easily fast enough to make a decent game in.
Now the good and the bad news is, that nowadays, everything that changed in optics in the last 5-10 years is shader-based. Which means it's going to be just as fast as normal software when just loading precompiled shader progams. But it also means a big security risk, because everyone could load a shader in your graphics card on any website.
I guess the big question there is whether shaders are a security risk at all. Although I'm sure shader systems haven't been designed with security in mind, what, exactly, can they access? I could be entirely wrong, but it seems to me that they'd be pretty severely restricted -- the worst someone could do is DoS you by slowing down your video card a bunch.
it should be at least opt-in by default.
Nah, it should be opt-out by default, and people who want opt-in can use noscript.
Otherwise... shit, Flash should be opt-in by default.
It has the potential of finally blowing Flash out of the water, and freeing us from it. (Putting 3D features in Flash will mean to basically create a new product. I don't think Adobe is quick enough with that.)
I wouldn't underestimate Adobe, nor people's willingness to stick with what they're comfortable with.
I mean, yes, it has that potential, and I'm really excited, but do not underestimate them. That's why this part is so important:
what we need for this is: Authoring tools for the creative people out there.
These authoring tools have the potential to be very cool, but we kind of need to hurry -- assuming that it goes this way, and not O3D.
What would be especially cool is if Adobe started building authoring tools targeting this, and other open standards like the video tag (and canvas in general). I mean, it would be horrible, too -- Adobe GoLive has created abominations, if you dare to peek at the source -- but it would also mean Flash can finally die.
Of course it will work because you said so!
Worked for Flash.
Either way, it introduces more security vulnerabilities to the average user.
Granted. But the obvious question is: How many features are you willing to remove or prevent to keep the user secure? Having a web browser at all introduces more security vulnerabilities to the average user than just not surfing the Internet.
The fact is, Flash is nearly always used for the wrong reasons. WebGL will become the next Flash, and be just as annoying if not more so.
Except that it'll at least be open. Flash is frustrating not only because it's abused (as any technology can be), but because there really aren't that many applications where Flash makes sense. In fact, the vast majority of places Flash is used now, there are and were existing technologies that make much more sense.
Let me put it another way: Do you like the video tag? It likely introduces more vulnerabilities, and it could be abused, and could make some sites slower. But it's a hell of an improvement over Flash.
That's the idea here.
And the fact that many browsers can't do them. IE can do Flash, IE can't do SVG.
IE can't do Flash without a plugin. IE can't do SVG without a plugin. What's the difference?
And I have to point out, I don't think you really mean "many browsers". I think you mean "IE".
However have you seen the state of technology for non-geeks? I still know people who use Windows 98 as their default operating system, old Dell towers with low-end Pentium 4s are very common, and for most notebooks integrated graphics is the best they have.
And again, these are systems on which Flash won't perform well.
And yes, I have seen non-geeks. They tend to like things like netbooks. In fact, my experience shows an opposite trend kind of balancing them out -- when a non-geek notices their computer going slower and slower (spyware, most likely), they have no idea how to fix it. Generally, they either pay someone else to fix it, or they buy a new computer.
A geek, on the other hand, can install Linux and make an old system useful again.
When people want to add things to their website they can do it with things such as... HTML and CSS (or whatever their replacements are in 10-15 years).
Replacements like... oh... WebGL?
I would prefer it to be in either server-side language with a small client interpreter (similar to how /. is coded) or make it be a desktop application. The risks are too great when you have code running like crazy on the client side, that is when security vulnerabilities come out.
This is the part I really can't agree with.
I agree that code "running like crazy" on the client side is a bad thing. But I would much rather have my apps sandboxed by default, not to mention auto-updated, Internet aware, cross-platform, and not needing installation, than having to download an EXE and pray it didn't come with malware.
Would you also want ads to run the same way?
Would adblock suddenly stop working? How about noscript?
Again, like so many other things in your response, this is already an issue with Flash. Someone can already display a video in an ad, with sound, and make it take over as much of the browser window as they can manage. All they can't do, yet, is make it go fullscreen without me clicking something -- and I expect WebGL would be the same way.
Or what about malware?
If it's properly sandboxed, there's not a lot it can do.
Security issues are a major concern as things get more complex. We have a hard enough time just with JavaScript issues which is a simple language.
*facepalm*
I think we've had a grand total of... maybe... one or two actual Javascript vulnerabilities.
The rest are vulnerabilities in the API exposed to J
Because it's actually a good language, that you likely don't understand.
Invariably these games use 99% of the CPU because Javascript doesn't have a real sleep() function.
setTimeout doesn't work? Or setInterval, if you're going for a specific framerate?
There's no decent way to manipulate sounds (like an FMOD for javascript).
You could play them with the audio tag. I guess the question is whether you can actually manipulate beyond play, pause, seek, and volume... Then again, it doesn't take much more than that to start to do 3D.
There's no way to switch to full screen
I agree, this should be addressed. Actually, I have some ideas of how a browser might implement this, if you're interested.
or to capture every key stroke/mouse movement.
No, but you can capture enough of them to make a game.
there's no decent debugger.
Firebug isn't "decent"?
3D games sound like a nice idea but they'll be prohibitively expensive (time-wise) to develop, suffer bizarre bottlenecks not seen in native code, and have to work through the very limited browser interface.
Granted. On the other hand, they'll be more accessible, they'll have access to the browser (and navigation, bookmarks, etc), and I know of no other platform where I could imagine clicking a link on a webpage and being inside a game in less than a second.
So you're proposing a company invest time into a "browser-based hardware-accelerated" graphics game or program by using WebGL ... when it's only supported on the two smallest browser shares out there?
I would, if only because it's a lot easier to convince people to try a different browser (or just provide a downloadable version that embeds Webkit) than it is to convince them to download something every time they want to do 3D.
Or if it isn't, it should be.
Even if tomorrow Firefox is ready to go with WebGL in Gecko, you've got a long adoption and incubation time on these projects and you'd still be targeting the minority of browsers.
Where "minority" means "Everyone except IE, at least until someone hacks it into IE with a plugin."
Consider the following user experience: You try to view the webpage. It says "You need a browser that supports WebGL. Here, try one of these." You download a new browser. From this point on, it's no harder for you to try out a new 3D game than it would be a new Flash game.
Here's a nice summary.
It seems O3D is higher-level, thus allowing more to be handled by the browser, whereas WebGL forces Javascript to handle just about everything.
I'm not sure which one I like better. In theory, I like Javascript handling everything. In practice, I don't know enough about VMs to say whether Javascript could be made to perform well enough.
Quake Live requires you to download a plugin -- and it's a specific plugin, for a specific game (Quake Live).
WebGL, or O3D -- maybe they're the same thing? Anyway, both are planned to be either a plugin, or actually included in the browser. And they're just a 3D API -- it means that once you have this plugin, any game will work.
So, kind of like Flash is for crappy 2D games, only actually an open standard, and with decent cross-platform support.
My question was, WebGL and O3D seem to have identical goals. Is there a difference?
There are some positive uses for it (such as getting us out of dependence on proprietary technologies like Flash)
There are already a lot of ways we could get rid of Flash, if people would stop using it. After all, Flash is mostly used for vector graphics (we've got SVG), interactivity (we've got AJAX/DHTML), and audio/video (we've got the audio and video tags).
For one, this will add even more vulnerabilities to browsers which seem to already have loads of them.
So does every useful feature. I'll bet money that the first serious vulnerability is in a driver, not a browser.
And for another the web should be accessible for -everyone- from the low-end netbook to a Core i7, and even older systems should be able to browse web.
OpenGL can be implemented in software.
And you lost that argument already with Flash. When there are one or more video ads on many pages I visit, I doubt low-end netbooks are doing well.
Yeah, we all know that they should do it in HTML and that will still stick around, but how many of us have encountered sites built entirely in Flash?
The fact that technology can be misused is not a reason to avoid developing said technology.
For example: It's possible to build an entire site surrounded by an iframe, so that navigation is completely broken. That doesn't mean that iframes have no legitimate uses.
It's also possible to build an entire site as a single AJAX app. This can be done well, but it takes more work -- for example, with Gmail, notice that everywhere you go, it adjusts the hash in the URL, so that you can use browser navigation properly -- the back button works, so does bookmarking, open in a new window/tab, etc etc. Sites that don't do that could have really poor usability.
It's also theoretically possible to render images using massive HTML tables, with each cell representing a single pixel. Does that mean HTML tables should be made less flexible, just so no one can do that?
I could go on...
The fact is, there are ways to abuse any technology -- there's always the possibility that someone will print out a website, make the changes they want, scan it back in, and upload it as an image. The fact that people can abuse technology should never prevent us from creating new, interesting bits of technology that have real, practical applications.
While some things obviously need Flash (such as Homestar Runner because they are Flash cartoons)
Nope. They need Flash because they were authored in Flash. They could have been done with SVG, Javascript, and the audio tag, it's just that the authoring tools for these aren't anywhere near Flash itself, from what I understand.
adding a high-end graphics card to a computer just to view the web? Thats just a bit ridiculous.
See, now you're being ridiculous.
Consider that ten or fifteen years ago, using excessively large images would be considered bad taste -- you'd be asking for way too much RAM "just to browse the web", and you'd be wasting a ton of bandwidth. That's why we came up with the idea of thumbnail galleries -- which are still useful, but a better model is really a slideshow.
It's not a "high end video card" now, either. Just about any video card is going to have some 3D capability on it -- and we're moving in the direction of compositing window managers, which will actually lead to cards supporting just 3D (and having to emulate 2D) being cheaper than cards supporting just 2D (and having to emulate 3D).
So, 10 or 15 years from now, when people want to add a little effect to their website -- or build an interesting "flash game" that's capable of actually using 3D hardware -- would you prefer it use Flash? Or maybe you'd prefer Quake Live -- a plugin for each game -- may as well just download an exe?
Or would
...please explain the difference between this and Google's O3D.
not to mention voice calls and video calls service (one of the precious few that work on Linux)
Voice, that's along with Ekiga, Twinkle, KPhone, Gnome Meeting... There are tons of SIP phones for Linux.
Everyone uses this utility,
Actually, I don't.
When I make archives, I either make zipfiles or tarballs, depending on the application -- zipfiles if I need random access, tarballs if I don't.
When I need to unpack them, I use commandline tools -- unrar is free on Unix, and there's 7zip to handle just about anything on Windows.
I wouldn't mind sending some money to him if it was an open source project, actually. But I'm against proprietary standards, so no, I don't buy it, and I avoid using it.
If a company doesn't have to pony up for a DRM system, one thing that hasn't been explored that much are price points.
I agree. In fact, I'd encourage that irrespective of DRM.
This particular developer makes my point for me -- I might pay $5 for his game. Maybe $10. I will not pay $28 for it. He's blaming piracy for his own inability to either make a compelling enough product, or price his less-than-compelling product appropriately.
I have not yet heard of Apple doing such a thing on their Macs,
Doesn't mean they're unable to.
I have heard of Amazon deleting files.
Doesn't mean they could brick the device.
The means to brick the device is the fact that they can likely send some sort of a software update to it -- just as you probably get software updates from Apple.
Apple has and is still working hard to eliminate all DRM,
Bullshit.
Actually, let me try that again...
<ut2003_announcer>B-B-B-BULLSHIT-SHIT-SHIT</ut2003_announcer>
Apple has been against DRM on music -- that's it. They've been very pro-DRM on software. Why else would an iPhone have to be jailbroken to run any software that's not approved?
I mean, the iPhone alone makes you look really stupid here. Can you name a more locked-down application platform? I can't. The only ones that come close are game consoles, and those were never intended to be general-purpose application platforms.
Never mind that they have used Trusted Computing, among other things, to ensure that OS X can only run on OS X hardware.
Oh, and they're a board member of the Blu-ray Disk Association, meaning they (and 18 other companies) are more or less directly responsible for the AACS and BD+ DRM schemes that are on Blu-Ray at the moment.
It really seems like Apple only really wants to eliminate DRM on music -- anything else is fine by them.
you can't just write off the fact that Skype has so much saturation in the VOIP market
I think I made my point, though. Pop back up the thread to silas moeckel asking "There was a good reason to use Skype?" And Winckle saying "It's free." That's not a good reason.
You've pretty much made the argument by now that the only good reason to use Skype is that everyone uses Skype.
I consider myself reasonably tech-savvy, but many, or indeed most [sigh] of my acquaintances are not, and Skype offers a convenient and relatively intuitive communication channel that covers most bases very well.
And Google Talk doesn't? Have you tried it?
I acknowledge that Skype has many faults, but you can't force everybody to change just because you insist on sitting on your high horse and insisting that anyone who disagrees is a moron.
I don't. I have Skype installed, because I do prefer to actually talk to someone, rather than walk them through downloading something first.
But that's not really a good reason to use Skype, that's more my own laziness than anything else. It's certainly not a good reason to recommend Skype to anyone.
First, you have the people that will almost certainly buy the product. Currently, these people will probably download the demo in order to try it out, or they may just go to the store and buy the game outright. In either case, their mind is already set. Giving them the full version, and asking for a set donation to remove a nag screen will just make them feel trusted and appreciated.
Actually, it'll make me feel annoyed and nagged. I honestly don't know anyone who buys shareware like that -- for example, who buys WinRAR? Anyone?
A sub group of the above are the impulse buyers. As long as you continue to sell boxed copies, and advertise through all the normal channels (Google, Steam, review sites),
No, for this to work, you have to have digital downloads. That means not just advertising on Steam, it means selling on Steam, or something like it.
Second, you have the people that are not sure whether they want they game or not. They may not find the demo indicative of the full game, or they may want to play more (or all) of the game through before passing judgment.
When I've been in this group is when I've most often missed having a console of some sort, since you can just rent the game. That actually fits really well -- for example, a Final Fantasy game provides so many hours of gameplay that it can't be reasonably rented, and even if I never play it again (and I might anyway), I would call it well worth the price. But I could easily rent it and play as far as I can get in a few days or a week, and decide if I want to buy it.
On the other hand, there are games like Enter the Matrix. This was sort of like having another Matrix movie -- it was maybe five or six hours of gameplay, plus maybe two hours of FMV cutscenes. Cool, but not worth $50 or $60, and I can just rent it and finish it some weekend, then return it.
I think the largest problem here is that no one's tried this with digital distribution. I can think of some reasons why -- most users won't like having to download an entire game, only to have "their" game stop working. And to the developer, it may not be worth it -- the number of additional sales, or revenue from rentals, may not match the number of people who rented a game, played through it, and then let the rental expire until they need it again -- especially if it's a "rent-to-own" thing.
Finally, there are the hardcore pirates. These people don't care in the slightest that you worked hard to make this game. For them, it's a question of free entertainment.
Not quite "hardcore" enough.
they don't feel any qualms with piracy.
I don't either. But it comes down to simple economics.
Let me clarify: Portal is $20. It's also a 1 gig download, which on my connection and with how fast Valve servers are, will take about ten minutes.
$20 really isn't that much. And once I've spent it, I can be playing portal ten minutes from now. That's an experience piracy can't match.
And even if it could, even if it comes down to pure economics... Minimum wage is $7.25 in the US. So $20 is less than three hours of work at minimum wage. So even assuming I never get caught, I'm already spending some extra time finding it, downloading it, and cracking it. And if it fucks up my system, deliberately or otherwise, I'm probably going to spend a few hours cleaning up after it. If I take steps to prevent this, like a virtual machine or a disk image, I may spend some time doing that, too.
If I get it through Steam, I know it'll be well behaved -- well, alright, not all Steam games, but certainly all Valve games. It makes economic sense -- no risk of spending many hours trying to save myself only three hours of work (and really, less than one, for most of us) -- and even if I came out slightly ahead in piracy, I could choose to treat myself to a headache-free experience for, well, $20.
I mean, throw in another $10, and I get the Orange Box.
Took about three seconds on Google to prove you wrong.
Ok, that's not Arcade, but you see the point.
I think it would be resources well spent -- that patch would merit at least a small bump in sales, and probably a big one.
It's all well and good for us to say "just don't worry about the pirates", but it's probably not a long term solution.
I don't think that's what we're saying. I think we're saying that DRM is the wrong approach.
as much as we've become accustomed to the idea of free creative works, it's not really a cure-all either.
No, I'm not saying everything should be free, either. And certainly not this:
Yes, some stuff will get created even without any notion of intellectual property,
"Free" does not mean "developer doesn't get paid". Some obvious examples: America's Army was paid for by the US Army. And while it hasn't been tried beyond some flash toys, it's not hard to imagine a game being entirely ad-supported.
I don't have a solution.
I do, and I've been saying it for years: Provide a better product than the pirates. Especially, provide better value.
So: Charge $20, not $60. Provide a demo, and make it easy to upgrade the demo to the full version. Make the full version easier to obtain than the pirated version. And make an MMO, or learn from Steam -- Steam gives me Achievements, a Community, a nice little IM client that I can use to hop into a multiplayer game, all sorts of stupid little things like that, that I'd miss in a pirated version.
the integrated IM client is useful if you can't be bothered running a full IRC session
So use Jabber. For that matter, there's also Jingle. And for those who need it all in a nice, user-friendly package, there's Google Talk -- which supports this and SIP.
In fact, the only advantage that Skype has over these is that people already have Skype.
If people still think Steam is unfair, they can just buy the games they want when they go on sale. Steam usually has some really good ones.
The price still doesn't make it a good idea.
For example: Suppose you're a soldier. You're over in Iraq. Your Internet works only a couple hours a day, if that, and it's spotty when it does.
At home, on my fiber optic connection, I don't care. Steam always starts pretty much instantly, and if it needs to update something, go for it, it'll take maybe a minute or two till I can play my game again, if that.
But if I was overseas, on that kind of connection -- or worse, if I had internet only every few days, or maybe once a week -- it wouldn't matter how cheap a game is if I can't play it. How well does offline mode actually work?
Steam can saturate your fiber connection? Maybe it's a location thing, but it doesn't even saturate my DSL connection (~20 Mbps).
Ok, not quite. But it can get 2-3 megabytes per second. Yes, megabytes per second.