Windows 2000 runs beautifully in Parallels, and the MUCH smaller footprint is a big advantage there. Parallels is quite efficient, why reboot when you can run both concurrently?
I don't believe any language or framework could ever eliminate drudge work completely, and compared to C++, Cocoa/Obj-C is very productive in this respect.
I'm not sure why that's so impressive. That's like comparing a Coke to a cup of drain cleaner.
The point I was making isn't "Objective C is bad", it was that "Garbage collection is a real improvement". And it's a real improvement to the language, not just the IDE.
It's like I said "Hey, Apple's come out with Rum & Coke", and you're going "So what, Coke's better than drain cleaner... and besides, I'd rather they improved the cup." You don't like rum in your Coke, don't put it in, but that's a silly quibble.
This is the sum total of the message I responded to:
>Why on earth do you think typical Apple users are any different than typical Windows users?
Cause Windows doesn't make you pay for service packs. Duh.
What I'm saying is that service packs, paid upgrades, new versions, new operating systems, what have you... MOST users only upgrade their OS when they get a new computer and it comes with a new version of the OS. That is, "typical Apple users" aren't any different from "typical Windows users".
The only reason more people have become fanatic about tracking Windows service packs is because Windows has so many deep and unfixable security holes (ActiveX, desktop/browser integration, the confused service and network model) that Microsoft's come to depend on bandaids to "fix" them, and you can really suffer from leaving the bandaids off.
Mac users don't have that problem.
So the whole "Apple charges for upgrades" thing is a red herring.
I think you missed the bigger part of the feature. It is incremental backups, and a complete versioned filesystem. It isn't just the ability to grab a version of a file from yesterday at midnight and the day before at midnight, it is the ability to grab every incremental change to the file, whether it was two saves or two hundred.
I definitely missed that. URL?
I'd much rather see jails or containers built into the OS, for all user space programs and, if possible, for VMs by default.
Well, I didn't mean to imply that only this application could use jails.
That might be nifty, but I'm not sure it would be that much actual use.
No. $129 is the full price. The upgrade price is $69, and you can get it from any Apple resaler (just not Apple itself).
Except that the upgrade isn't always available. It's not an upgrade like an upgrade copy of Windows XP is... it's a special deal for people who bought a Mac "close enough" to the new release. My Mac mini missed by a few weeks, for example.
Garbage collection is not the friend of good timing. (and neither is preemptive multitasking, for that matter, at least with the current threading model).
Neither is late binding, but you accept that:).
PS: Preemptive multitasking is the very best friend of good timing, if you have a real-time OS. But the last time we had one of those on the market was when the Amiga was still around. Be? No thanks, I actually compared BeOS, Rhapsody, FreeBSD, and Windows NT on the same hardware (same physical machine)... and while BeOS might have kicked Mac OS 9's butt, it was the most resource-hungry of the four.
And people talk about Cocoa's memory management as if it were rocket science. It's not, it's really, really simple. Elegant, even. Most of the time you can more or less ignore it, you don't have to bother too much about autorelease pools and so on. It just works. OK, there are a few rules you need to learn, but they are simple - takes ten minutes.
It's not that it's rocket science, it's that it's drudge work. 90%* of the time you don't need to pay much attention to it, but that same 90% of the time is the 90% of the time the compiler could do a static analysis of the code and eliminate run-time garbage collection anyway. 90% of the remaining 10% of the time, where the compiler can't do it, that's when you have to care about it, that's when garbage collection matters.
It's no different than the choice to use late binding in Objective C. 90%* of the time, the compiler can use static analysis to avoid actual runtime lookups, and 90% of the remaining 10% you'd need to create a wrapper class in an early bound language anyway... and make the other 90% of the code slower because it's a lot harder for the compiler to statically analyse when it can unwrap a wrapper.
* 90% of the time when someone says "90% of the time" they don't mean exactly nine tenths, they just mean a number close to 100%. Except in Discworld novels.
Windows Service Packs rarely introduce any new features that are noticeable to end users...so your point doesn't really fly.
I'm not just talking about service packs. I'm talking about users.
I'm using Windows 2000. I know people using Windows Me and Windows 98. I only upgraded from IE 5.5 to IE 6 because Windows Update required it. I'm still using Windows Media Player 2.0. I suspect that there's still some of the DOS-5-based diagnostic boxes I set up at my last job still in use.
I'm still using Panther, and I was still using Jaguar when Tiger came out, and the only reason I'm not still using Jaguar is because I upgraded from a desktop G4/433 to a Mac mini and it came with Panther. Heck, the machine I use for scanning photos is still running OS 9.1.
I think WinXP is ugly as sin as well, but it's a silly thing to grip about since I can make it identical to Win2K/Win9x in less than a minute.
You can't remove the extra code, XP still has a bigger footprint than 2000 no matter how you set the options. It also contains code deliberately designed to prevent it working if it decides you're violating Microsoft's copyright... not just at install, but every time you boot. My trust in Microsoft's good will and competence doesn't extend far enough to make me accept that kind of restriction lightly.
The ease of security updates (auto-update vs "Did I check this week?") makes it worth it to me.
I routinely turn off auto-update on every application or operating system that I use that has it. Again, it's a matter of trust: my lack of trust in them not using me as an unpaid test monkey. I install updates immediately only if I know I need them, otherwise I wait for the screams. For many people, I realise, making an informed decision about accepting an update is an unreasonable expectation, but it's not rocket science.
I agree that they are probably making better margins on the low end boxes, but it's higly unlikely that they are making good enough margins on those to raise the overall margin to 40%
Easily.
I had built a better computer than the original Mac mini for $300 about the time the mini came out, without the price advantages of integrated components, paying retail for everything. Faster CPU, more memory, more disk space, faster disk, better video,... and it ran FreeBSD too.
Is it "hold the right apple key and click the trackpad button", which sounds awkward?
Or is it "tap the right apple key for a click", which sounds, well, why the hell won't they let us do that in OS X? The "two finger tap" trick on the trackpad is cute but, like the Mighty Mouse, it feels like a kind of passive-aggressive assault on people who are still resisting the cult of the single button mouse.
(STEVE: IT'S OK, PEOPLE DON'T HATE YOU FOR HAVING TWO BUTTONS ON THE NEXT)
Various analyses and estimates of Apple's margins on Macs have been posted, and they seem to make about 40% margin on the hardware... compared to the razor-thin margins Dell gets. Since the main reason people buy Macs is for the software (yes, a few people have been buying them for the style and running Linux or (now) Windows on them... but in general it's the software that makes it a Mac), you can say for the sake of argument that the "full price" of OS X is 40% of the price of a Mac... from $200 on the Mac Mini to $1000+ on the Mac(book) Pro.
I'm not convinced that Apple's margins on the high end are as high as 40%, and Apple does toss in things like iLife and Garage Band, so let's say that they get $400* "for OS X"... on average, when someone buys a Mac.
Then the $130 price of the retail version is in spitting distance of Microsoft's upgrade price for Windows (Professional, since Apple doesn't sell a Mac OS Home).
So, what if Apple sold "Mac OS X Pro" for $400, capable of running on generic x86 hardware, and the existing retail OS X would be licensed as an "upgrade" for Pro as well as for Apple hardware. That way, whether someone bought a Mac or bought a Wintel box and slammed OS X Pro on it, they'd still be making the same profit.
The usual objection to this is that it would end up on BitTorrent.
"But, Doctor Evil, That Already Happened".
If they cared THAT much about people running pirated OS X on Wintel boxes they wouldn't have released the Intel kernel.
* Don't nitpick the number. It could be $500, or $350, or $487.43... I don't care, I don't have to care, Apple knows how much it is and they'd be the ones to pick the price.:)
I think of all the OpenGL eye candy in Panther and Tiger (including Dashboard and the Fast User Switching cube) as "Exposé eye-candy". I know Exposé is not used for all of it, but it makes for a nice sound bite.
Core Animation, Exposé, the rest of the stuff... it's all wrappers around stuff openGL hackers have been doing for years.
I'm actually kind of worried about the way Apple's moving away from enhancing OpenGL to wrapping it in a proprietary API, starting with Core Image. It feels like they're trying to reduce application portability and setting us up for replacing OpenGL with something proprietary... or even some kind of wrapper that would let them use DirectX support in video cards to reduce their dependance on card manufacturers making custom Apple cards. It'd be logical and sensible from Apple's viewpoint, but it would hurt cross-platform developers.
Skipping OS X releases is not generally a good idea. Apple does a lot of work behind the scenes with each release, and so you tend to end up with limited functionality (fortunately Objective-C provides late binding, so you can actually do this) in applications acquired after the release of the new version.
The only reason I'm running Panther rather than Jaguar on my Mac Mini is because that's what it came with. When I got it I was still running Jaguar... and that was right before the release of Tiger.
The only problem I've found with applications are applications that check the OS version and won't install, or applications that depend on new features. Some developers are pretty amateurish*, yes, but few profession apps (except Apple's) are version-locked.
Can you give examples of applications that misbehave because of incompatible 'behind the scenes' changes in APIs?
(* One application used PHP as a client scripting language to fetch a document from the Internet, rather than using Apple's Cocoa bindings or Apple's provided command line application. Not only that, but they insisted on Apple's install of PHP. I could have worked around it, but given that level of cluelessness I decided I was better off not using that application.)
I'm still running Windows 2000 and have no plans to downgrade* to XP, let alone Vista, until I absolutely have to. As the neighborhood "nice guy who knows about computers" I've found people running Windows 98 and Me. Why on earth do you think typical Apple users are any different than typical Windows users?
Sure, the obsessives and the hardcore gamers (but I repeat myself) track the latest version of the OS, but most people won't even understand your question.
(* Windows XP - Windows 2000 with a few more drivers and better game support, plus gigabytes of ugly eye-candy. Why risk a false positive from the Windows Genuine Advantage inquisition for that? About the only thing that's ever been a problem for me with Windows 2000 is Bluetooth support.)
Time Machine: Incremental backups with Exposé eye-candy. The hooks for applications to use Time Machine are a pretty cool idea, I don't think I've seen that kind of capability before.
What Apple needs to add:
Let's call it "Testbed": They could use FreeBSD jails and overlays to give you the ability to run a testbed environment that would looks almost like a virtualised system (like Parallels or VMware) which even "root" couldn't see out of, but without the overhead of virtualization. Plus Exposé eye-candy!
Plus, extend fast user switching to allow you to log in multiple times *as the same user*, giving OS X full virtual console capability.
Combine these with Time Machine, you could actually log into a version of your whole system as it existed a week ago, or two weeks ago... and (pause) with Exposé eye-candy.
Parallels Desktop is the logical way to do that.
Windows 2000 runs beautifully in Parallels, and the MUCH smaller footprint is a big advantage there. Parallels is quite efficient, why reboot when you can run both concurrently?
I don't believe any language or framework could ever eliminate drudge work completely, and compared to C++, Cocoa/Obj-C is very productive in this respect.
I'm not sure why that's so impressive. That's like comparing a Coke to a cup of drain cleaner.
The point I was making isn't "Objective C is bad", it was that "Garbage collection is a real improvement". And it's a real improvement to the language, not just the IDE.
It's like I said "Hey, Apple's come out with Rum & Coke", and you're going "So what, Coke's better than drain cleaner... and besides, I'd rather they improved the cup." You don't like rum in your Coke, don't put it in, but that's a silly quibble.
What I'm saying is that service packs, paid upgrades, new versions, new operating systems, what have you... MOST users only upgrade their OS when they get a new computer and it comes with a new version of the OS. That is, "typical Apple users" aren't any different from "typical Windows users".
The only reason more people have become fanatic about tracking Windows service packs is because Windows has so many deep and unfixable security holes (ActiveX, desktop/browser integration, the confused service and network model) that Microsoft's come to depend on bandaids to "fix" them, and you can really suffer from leaving the bandaids off.
Mac users don't have that problem.
So the whole "Apple charges for upgrades" thing is a red herring.
I think you missed the bigger part of the feature. It is incremental backups, and a complete versioned filesystem. It isn't just the ability to grab a version of a file from yesterday at midnight and the day before at midnight, it is the ability to grab every incremental change to the file, whether it was two saves or two hundred.
I definitely missed that. URL?
I'd much rather see jails or containers built into the OS, for all user space programs and, if possible, for VMs by default.
Well, I didn't mean to imply that only this application could use jails.
That might be nifty, but I'm not sure it would be that much actual use.
You don't have a teenager, I take it?
THe only unlikely future event is an on-time shipment of a non-beta-quality Vista.
No. $129 is the full price. The upgrade price is $69, and you can get it from any Apple resaler (just not Apple itself).
Except that the upgrade isn't always available. It's not an upgrade like an upgrade copy of Windows XP is... it's a special deal for people who bought a Mac "close enough" to the new release. My Mac mini missed by a few weeks, for example.
Ah yes, dangling pointers and circular references...
Reclaimer, spare that tree!
Take not a single bit!
It used to point to me,
Now I'm protecting it.
Garbage collection is not the friend of good timing. (and neither is preemptive multitasking, for that matter, at least with the current threading model).
:).
Neither is late binding, but you accept that
PS: Preemptive multitasking is the very best friend of good timing, if you have a real-time OS. But the last time we had one of those on the market was when the Amiga was still around. Be? No thanks, I actually compared BeOS, Rhapsody, FreeBSD, and Windows NT on the same hardware (same physical machine)... and while BeOS might have kicked Mac OS 9's butt, it was the most resource-hungry of the four.
And people talk about Cocoa's memory management as if it were rocket science. It's not, it's really, really simple. Elegant, even. Most of the time you can more or less ignore it, you don't have to bother too much about autorelease pools and so on. It just works. OK, there are a few rules you need to learn, but they are simple - takes ten minutes.
It's not that it's rocket science, it's that it's drudge work. 90%* of the time you don't need to pay much attention to it, but that same 90% of the time is the 90% of the time the compiler could do a static analysis of the code and eliminate run-time garbage collection anyway. 90% of the remaining 10% of the time, where the compiler can't do it, that's when you have to care about it, that's when garbage collection matters.
It's no different than the choice to use late binding in Objective C. 90%* of the time, the compiler can use static analysis to avoid actual runtime lookups, and 90% of the remaining 10% you'd need to create a wrapper class in an early bound language anyway... and make the other 90% of the code slower because it's a lot harder for the compiler to statically analyse when it can unwrap a wrapper.
* 90% of the time when someone says "90% of the time" they don't mean exactly nine tenths, they just mean a number close to 100%. Except in Discworld novels.
Windows Service Packs rarely introduce any new features that are noticeable to end users...so your point doesn't really fly.
I'm not just talking about service packs. I'm talking about users.
I'm using Windows 2000. I know people using Windows Me and Windows 98. I only upgraded from IE 5.5 to IE 6 because Windows Update required it. I'm still using Windows Media Player 2.0. I suspect that there's still some of the DOS-5-based diagnostic boxes I set up at my last job still in use.
I'm still using Panther, and I was still using Jaguar when Tiger came out, and the only reason I'm not still using Jaguar is because I upgraded from a desktop G4/433 to a Mac mini and it came with Panther. Heck, the machine I use for scanning photos is still running OS 9.1.
I think WinXP is ugly as sin as well, but it's a silly thing to grip about since I can make it identical to Win2K/Win9x in less than a minute.
You can't remove the extra code, XP still has a bigger footprint than 2000 no matter how you set the options. It also contains code deliberately designed to prevent it working if it decides you're violating Microsoft's copyright... not just at install, but every time you boot. My trust in Microsoft's good will and competence doesn't extend far enough to make me accept that kind of restriction lightly.
The ease of security updates (auto-update vs "Did I check this week?") makes it worth it to me.
I routinely turn off auto-update on every application or operating system that I use that has it. Again, it's a matter of trust: my lack of trust in them not using me as an unpaid test monkey. I install updates immediately only if I know I need them, otherwise I wait for the screams. For many people, I realise, making an informed decision about accepting an update is an unreasonable expectation, but it's not rocket science.
Maybe the RDF is finally effecting the Steve himself.
I agree that they are probably making better margins on the low end boxes, but it's higly unlikely that they are making good enough margins on those to raise the overall margin to 40%
... and it ran FreeBSD too.
Easily.
I had built a better computer than the original Mac mini for $300 about the time the mini came out, without the price advantages of integrated components, paying retail for everything. Faster CPU, more memory, more disk space, faster disk, better video,
I find the 40% margin figure extremely high and frankly I don't think it's possible.
:)
You're probably right. Of course if the margin is lower my argument is better.
Macs have a reputation for being very stable, and working very seamlessly.
:P
As someone whose first Mac was an original 128K model, let me just say that this reputation is more often undeserved than deserved.
Is it "hold the right apple key and click the trackpad button", which sounds awkward?
Or is it "tap the right apple key for a click", which sounds, well, why the hell won't they let us do that in OS X? The "two finger tap" trick on the trackpad is cute but, like the Mighty Mouse, it feels like a kind of passive-aggressive assault on people who are still resisting the cult of the single button mouse.
(STEVE: IT'S OK, PEOPLE DON'T HATE YOU FOR HAVING TWO BUTTONS ON THE NEXT)
Think about how Apple prices OS X.
:)
Various analyses and estimates of Apple's margins on Macs have been posted, and they seem to make about 40% margin on the hardware... compared to the razor-thin margins Dell gets. Since the main reason people buy Macs is for the software (yes, a few people have been buying them for the style and running Linux or (now) Windows on them... but in general it's the software that makes it a Mac), you can say for the sake of argument that the "full price" of OS X is 40% of the price of a Mac... from $200 on the Mac Mini to $1000+ on the Mac(book) Pro.
I'm not convinced that Apple's margins on the high end are as high as 40%, and Apple does toss in things like iLife and Garage Band, so let's say that they get $400* "for OS X"... on average, when someone buys a Mac.
Then the $130 price of the retail version is in spitting distance of Microsoft's upgrade price for Windows (Professional, since Apple doesn't sell a Mac OS Home).
So, what if Apple sold "Mac OS X Pro" for $400, capable of running on generic x86 hardware, and the existing retail OS X would be licensed as an "upgrade" for Pro as well as for Apple hardware. That way, whether someone bought a Mac or bought a Wintel box and slammed OS X Pro on it, they'd still be making the same profit.
The usual objection to this is that it would end up on BitTorrent.
"But, Doctor Evil, That Already Happened".
If they cared THAT much about people running pirated OS X on Wintel boxes they wouldn't have released the Intel kernel.
* Don't nitpick the number. It could be $500, or $350, or $487.43... I don't care, I don't have to care, Apple knows how much it is and they'd be the ones to pick the price.
Exposé eye-candy...doesn't make any sense.
I think of all the OpenGL eye candy in Panther and Tiger (including Dashboard and the Fast User Switching cube) as "Exposé eye-candy". I know Exposé is not used for all of it, but it makes for a nice sound bite.
Core Animation, Exposé, the rest of the stuff... it's all wrappers around stuff openGL hackers have been doing for years.
I'm actually kind of worried about the way Apple's moving away from enhancing OpenGL to wrapping it in a proprietary API, starting with Core Image. It feels like they're trying to reduce application portability and setting us up for replacing OpenGL with something proprietary... or even some kind of wrapper that would let them use DirectX support in video cards to reduce their dependance on card manufacturers making custom Apple cards. It'd be logical and sensible from Apple's viewpoint, but it would hurt cross-platform developers.
Dig into some of the dialogs, and you still see the Windows 2000 we all knew and, well, hated less.
:)
Well, at least they've gotten rid of the 16-bit parts of Windows Explorer by now.
Skipping OS X releases is not generally a good idea. Apple does a lot of work behind the scenes with each release, and so you tend to end up with limited functionality (fortunately Objective-C provides late binding, so you can actually do this) in applications acquired after the release of the new version.
The only reason I'm running Panther rather than Jaguar on my Mac Mini is because that's what it came with. When I got it I was still running Jaguar... and that was right before the release of Tiger.
The only problem I've found with applications are applications that check the OS version and won't install, or applications that depend on new features. Some developers are pretty amateurish*, yes, but few profession apps (except Apple's) are version-locked.
Can you give examples of applications that misbehave because of incompatible 'behind the scenes' changes in APIs?
(* One application used PHP as a client scripting language to fetch a document from the Internet, rather than using Apple's Cocoa bindings or Apple's provided command line application. Not only that, but they insisted on Apple's install of PHP. I could have worked around it, but given that level of cluelessness I decided I was better off not using that application.)
I'm still running Windows 2000 and have no plans to downgrade* to XP, let alone Vista, until I absolutely have to. As the neighborhood "nice guy who knows about computers" I've found people running Windows 98 and Me. Why on earth do you think typical Apple users are any different than typical Windows users?
Sure, the obsessives and the hardcore gamers (but I repeat myself) track the latest version of the OS, but most people won't even understand your question.
(* Windows XP - Windows 2000 with a few more drivers and better game support, plus gigabytes of ugly eye-candy. Why risk a false positive from the Windows Genuine Advantage inquisition for that? About the only thing that's ever been a problem for me with Windows 2000 is Bluetooth support.)
Other then developers who are going to use the brand new features and see if their code will break, who will need or even want an early beta.
Time travellers who went back too far.
This is absolutely garbage journalism,
There's another kind?
Spaces: Virtual desktop with Exposé eye-candy.
Time Machine: Incremental backups with Exposé eye-candy. The hooks for applications to use Time Machine are a pretty cool idea, I don't think I've seen that kind of capability before.
What Apple needs to add:
Let's call it "Testbed": They could use FreeBSD jails and overlays to give you the ability to run a testbed environment that would looks almost like a virtualised system (like Parallels or VMware) which even "root" couldn't see out of, but without the overhead of virtualization. Plus Exposé eye-candy!
Plus, extend fast user switching to allow you to log in multiple times *as the same user*, giving OS X full virtual console capability.
Combine these with Time Machine, you could actually log into a version of your whole system as it existed a week ago, or two weeks ago... and (pause) with Exposé eye-candy.