That little song and dance about their derivative license? Yeah, leech off free software.
Bull. Apple has released far more of their code than they had to (zero). And it's not all modifications to existing software either, quite a bit was written from scratch.
OSX gives some of what Linux's had all along.
More accurately, OS X gives what Linux has been trying to achieve for years: a desktop OS usable by non-geeks.
What about network shares in Windows or remote mounts in *nix? These are filesystem-independent, so unique identifiers like inodes aren't available.
I don't know the details of how it works, but Mac OS aliases handle this perfectly. When you access the alias it will even automatically mount the remote volume.
the GUI desktop is like a workbench: you pull up the tool you want to use, and you work on your creation with the tool until you're done. Then you put the tool away to make room for using the next tool.
You're making his point. The computer is not a workbench, and there's no reason to impose artificial limitations from the physical world. With enough RAM and/or a decent VM system, there is no difference from the user's perspective between a closed app and an app that is running but has no documents open.
You're nitpicking details of how you imagine these features would work, without considering that there are better ways of implementing them.
My idea of hell is an editor that auto-saves code that I'm in the process of hacking up in an editor to let me think about the problem over top of code that already works.
See previous threads. You should be able to have "hard" commit points when you save manually and "soft" saves done automatically, and you should be able to revert to any of them.
My idea of hell is a platform where every document I've ever opened has no way to close it and no way to exit the application that's got it up in a window, because there;s no 'Quit' or 'Exit' option.
Nobody has mentioned removing the ability to close documents. It's just that whether an application is "running" or not is an implementation detail that users shouldn't be concerned with.
My idea of hell is not being able to drag something in a GUI from one folder to another, because they have an obscure "parent of my parent" relationship, which makes me have to cut and paste the document, instead of just dragging it
It sounds like you just need a better file manager, such as the Workspace Manager in NeXT/OpenStep.
My idea of hell is symbolic links that get changed when I rename a file out from under them because the OS thinks it knows what I want better than I do, so it's impossible to replace a file with another, while keeping
Mac OS X aliases do exactly what you want. They first look at the file path, and only if no file is found there do they use the inode/file ID.
You really want at least 512 MB for OS X. Especially for laptops, where hitting VM hurts due to their slow hard drives.
Re:I find Mac OS X slow
on
Is Mac OS X Slow?
·
· Score: 4, Interesting
On that note, I'd be curious to see what the speed difference between Carbon and Cocoa apps are
Roughly zero. An Objective C message dispatch is around 3x slower than a straight C function call, which is not noticeable in the vast majority of code. And in the rare cases where it is, there are simple optimizations that can eliminate it (see methodForSelector and related methods of NSObject).
I challenge you to explain how any of these items simultaneously increase my liberty and my safety
Actually, several of your items *decrease* both liberty and safety. Gun laws are an obvious example; substantial evidence indicates that when states restrict gun ownership, crime rises (and vice versa). Likewise the War on Drugs causes both reduced liberty (such as civil asset forfeiture) and reduced saftey due to increased violent crime. So it is true that liberty and saftey are not mutually exclusive, although sadly we're more likely to see actions that reduce both rather than increase both.
Yes, they do. Look at how many Republicans are on the list only for co-sponsoring COPA. Certainly this is not admirable, but counting each of them as equal in badness to Fritz Hollings is just a bit misleading.
The truth is, the political climate has shifted so far to the right that most of the mainstream liberals are somewhere in the center.
I only wish. What on earth are you basing this on? Democrats and Republicans are rushing to create new entitlement programs for prescription drugs, Bush worked with Ted Kennedy to create a massive federal education bill, and government spending as a percentage of GDP is perpetually increasing.
I'm so sick of everyone pissing and moaning about Gore's infamous "I invented the internet".
So am I, because it diverts attention from more serious matters such as his cheerleading for the Clipper Chip and cryptography bans. Likewise I was annoyed with the Clinton/Monica fiasco because it diverted attention from his possibly criminal dealings with China (and as we know now, his ineptitude with North Korea).
It doesn't matter how much money the EFF has, they won't be able to run an issue ad.
With any luck at all, the Supreme Court will have struck down campaign finance "reform" by then. I'll be surprised if it isn't a 9-0 decision; it's even more of a slam dunk than the CDA.
Compared to our current President, who seems willing to destroy America's freedoms in order to "save" it, he was a strongly positive influence.
Are you kidding me? Who came up with the Clipper chip? Who defended the blatantly unconstitutional crypto restrictions that could make you a felon for typing 4 lines of Perl? (Little-known fact: Ashcroft opposed those restrictions). Who tried to use the OKC bombing as a pretext for censorship? Who presided over the largest ever increase in arrests of nonviolent drug offenders?
I'm just sorry so many Americans are so inattentive to the issues, they allow their precious liberties to be whittled away.
Actually, it seems like too many Americans don't care about their liberties if they're being taken away by the party they voted for. I'm perfectly willing to stand up and say that Bush is wrong on things like the Patriot Act and the drug war. I would hope that liberals could do the same and realize that the Democratic Party is no friend of civil liberties either.
Where in the flaming levels of hell did you get that brilliant nugget?
That would be from your own post, specifically "Problem solved". It certainly created the impression that the delay was done in order to solve the "problem" of not getting through to people with telezappers. So strike the word "deliberately" from my original post; the rest stands.
if you wanted to indicate that you didn't want intrusion into your life, then maybe you should have let intelligence intrude into your head and signed up on all the various no-call lists (cost: free) instead of wasting your good money on something that doesn't work
I really don't understand your contempt for the people whose lives you were interrupting. Perhaps they didn't know about the no-call lists, didn't trust telemarketers to honor them, or didn't want to spend the time to figure out how to get on them. Time is not free, although I wouldn't expect telemarketers or those who use their tactics to understand that.
No, you were not. You were deliberately annoying people who had gone out of their way to indicate that they did not want you intruding on their lives. That is not a good thing.
Hm. Is Apple's Objc-java bridge open-source or no? If it's part of the closed-source Cocoa stuff, how does that work out? (And won't even cocoa services run in Darwin as long as you stay in the Foundation and don't touch the AppKit where all the GUI stuff lives?
The Java bridge isn't open source, and unfortunately neither is Foundation, so even Cocoa command-line tools won't run on a stock Darwin install. That's unfortunate, and Apple really should release Foundation, especially since most of it is apparently a thin wrapper over CoreFoundation, which is open source.
I really think if more people could get over their intense fear of the [square brackets]; they would fall in love with NeXTStep:)
I agree completely. I too had an irrational distaste for Objective C based on the "weird" syntax, but after using it you realize that it does a lot of things right that most other languages do wrong. It's interesting to compare it to Java, where Sun made some design decisions that were technically inferior but probably necessary to get developers on board, such as:
Method syntax. Java had to look like C and C++ so as not to frighten anyone, but Objective C is more readable once you're used to it. "[table setObject:foo forKey:bar]" is much more self-documenting than "table.put(bar, foo)".
Factory methods vs constructors. Java continues the inane tradition of treating object creation as some mystical act that requires its own operator and syntax, while to create an object in ObjC you just send the appropriate message to the class object. Compare "new Integer(1)" with "[NSNumber numberWithInt:1]". Java requires you to name the exact class to be instantiated, as well as hard-coding the act of allocating a new object. The ObjC method can return an instance of a private subclass and/or a cached object, and is much cleaner from an OO perspective.
I could go on for a while, but I'll stop there. And in fairness there are some things I'd like to see ObjC take from Java as well, specifically namespaces, garbage collection, and lack of header files. But overall Objective C is a great language, and Cocoa is an even better API.
I keep meaning to try to port a couple of the open-source Mac OS X apps, probably one of the excellent GPLed AIM clients, to Linux using GNUStep as a proof-of-concept
My game Gridlock runs on Mac OS X and GNUStep. I think there are 3 "#ifdef GNUSTEP" occurrences in around 5000 lines of code, all to work around minor GNUStep UI and Gorm bugs. It doesn't look nearly as nice on GNUStep as on Mac OS X, but like you I wanted to do the port as a proof of concept.
Does anyone know if the InterfaceBuilder analogue in GNUStep is anywhere near as good as Apple's?
Gorm looks and acts very similar to IB, but the last version I used was very buggy. In particular, it had an annoying habit of corrupting files when it saved them such that it could no longer open them, even though they would load fine at runtime. There's a new version out that I haven't tried yet.
Umm, a streaming server for a closed and proprietary media format
No. The QuickTime format is completely open and documented. It just happens that the most common codecs used with it are closed (Sorenson) or patent-encumbered (MPEG4). There's nothing stopping anyone from writing their own codec and having QuickTime support it.
Macs are definitely more expensive, but it's not quite as bad as your numbers indicate. You ordered extra RAM and hard drives from Apple; *never* do that, their markups are insane. A stock dual 867 with a GeForce 4Ti is $2050. From third parties, get 1 GB of ram for $250, 2 80 GB drives for $250, a Firewire CD-RW for $150, and you're at $2700 with a better system than you got from the Apple store. Still more than the Dell, but the difference is reduced by half.
For instance the MacOS's file-type registry (you know, the thing that links the file type stored in the resource fork to the application that's supposed to open it?) would be inconsistant after such a delete
I don't believe that was the case in 9, and I'm sure it's not in X.
There are other things, like extensions being left around... and we all know that extensions NEVER, EVER, EVER cause system conflicts. Basically it's the DLL hell all over again, just renamed.
Nope. Mac OS X uses "file wrappers", which essentially allow a folder to appear as a single file at the UI level. This lets you include localized resources, graphics, supporting libraries, etc. in (from the user's perspective) a single file. Drag it to the trash, and it's really all gone. The worst that happens is that you're left with a stray prefs file in ~/Library/Preferences, which is harmless. And Mac OS 9-style extensions are thankfully gone in X.
Most people that use Apple computers don't use them for what they are best at (multimedia, audio, video, etc) so they've basically spent anywhere from $500-$1500 more than a better equipped PC for absolutely no reason, they aren't benefitting from "ease of use," they aren't benefitting from the power.
The combination of Unix with a great UI and mainstream applications can be a benefit to just about everyone. If you don't think it's worth the cost, that's fine, but don't try to claim there's "absolutely no reason".
(how is clicking start -> programs -> microsoft word harder than clicking Macintosh HD then searching around for your software? hm...)
It probably isn't. On the other hand, you can "uninstall" an app by dragging it to the trash, without worrying about what DLLs will remain strewn about. And you can copy an app from one Mac to another by dragging and dropping (or "cp -r" if you like), rather than hunting for the install CD.
If Apple went toe-to-toe with the 1000lb Gorilla, they'd be dead within 18 months.
Probably yes, but maybe no. There is a small but significant chance that Mac OS X for x86 could crack open the Windows monopoly, and if I were Bill I wouldn't want to take that chance.
Moving into an ultra-low margin commodity hardware market from a high-margin monopolistic hardware market to compete with a software company would be moronic.
Which is why Apple won't do that unless they're compelled to, i.e. if Microsoft stops Mac development.
Cocoa using Objective-C is a somewhat outdated programming environment: the GUI design tools were great in the 1980's, but they are pretty dated by today's standards.
That's a matter of opinion; I and many others would disagree.
And resource management in Objective-C and Cocoa is a lot more work and a lot more error prone than in Java or C++.
Not really. Objective C has no built in memory management (neither does C++), but it uses a reference counting system that works well enough that you rarely have to manually allocate or free memory.
I don't see much of a future for Cocoa, at least in its current form.
Apple does. Virtually all apps that come with Mac OS X are written in Cocoa and Objective C. iTunes and iMovie are Carbon, but that's only because they were designed to also run on OS 9.
First things first, they cost twice as much as a comperable PC.
Where can you get a PC comparable to the iMac for $650? Or comparable to the iBook for $600? The price difference is not as much as you think, and can easily be made up for by ease of maintenance, lack of viruses and spyware, and better security.
But a MacOS X-class OS would have shipped four years earlier, and had outstanding multiprocessor support in the core.
Doubtful. Apple would have had to integrate existing Mac OS technologies (QuickTime, Java, AppleScript, etc) and create a Carbon-style compatibility layer for BeOS the same way they did for OpenStep. It probably wouldn't have taken any less time, and they would have ended up with a not-quite-Unix system and an API that, while good, doesn't compare to Cocoa.
Bull. Apple has released far more of their code than they had to (zero). And it's not all modifications to existing software either, quite a bit was written from scratch.
OSX gives some of what Linux's had all along.
More accurately, OS X gives what Linux has been trying to achieve for years: a desktop OS usable by non-geeks.
I don't know the details of how it works, but Mac OS aliases handle this perfectly. When you access the alias it will even automatically mount the remote volume.
the GUI desktop is like a workbench: you pull up the tool you want to use, and you work on your creation with the tool until you're done. Then you put the tool away to make room for using the next tool.
You're making his point. The computer is not a workbench, and there's no reason to impose artificial limitations from the physical world. With enough RAM and/or a decent VM system, there is no difference from the user's perspective between a closed app and an app that is running but has no documents open.
My idea of hell is an editor that auto-saves code that I'm in the process of hacking up in an editor to let me think about the problem over top of code that already works.
See previous threads. You should be able to have "hard" commit points when you save manually and "soft" saves done automatically, and you should be able to revert to any of them.
My idea of hell is a platform where every document I've ever opened has no way to close it and no way to exit the application that's got it up in a window, because there;s no 'Quit' or 'Exit' option.
Nobody has mentioned removing the ability to close documents. It's just that whether an application is "running" or not is an implementation detail that users shouldn't be concerned with.
My idea of hell is not being able to drag something in a GUI from one folder to another, because they have an obscure "parent of my parent" relationship, which makes me have to cut and paste the document, instead of just dragging it
It sounds like you just need a better file manager, such as the Workspace Manager in NeXT/OpenStep.
My idea of hell is symbolic links that get changed when I rename a file out from under them because the OS thinks it knows what I want better than I do, so it's impossible to replace a file with another, while keeping
Mac OS X aliases do exactly what you want. They first look at the file path, and only if no file is found there do they use the inode/file ID.
You really want at least 512 MB for OS X. Especially for laptops, where hitting VM hurts due to their slow hard drives.
Roughly zero. An Objective C message dispatch is around 3x slower than a straight C function call, which is not noticeable in the vast majority of code. And in the rare cases where it is, there are simple optimizations that can eliminate it (see methodForSelector and related methods of NSObject).
Actually, several of your items *decrease* both liberty and safety. Gun laws are an obvious example; substantial evidence indicates that when states restrict gun ownership, crime rises (and vice versa). Likewise the War on Drugs causes both reduced liberty (such as civil asset forfeiture) and reduced saftey due to increased violent crime. So it is true that liberty and saftey are not mutually exclusive, although sadly we're more likely to see actions that reduce both rather than increase both.
Yes, they do. Look at how many Republicans are on the list only for co-sponsoring COPA. Certainly this is not admirable, but counting each of them as equal in badness to Fritz Hollings is just a bit misleading.
I only wish. What on earth are you basing this on? Democrats and Republicans are rushing to create new entitlement programs for prescription drugs, Bush worked with Ted Kennedy to create a massive federal education bill, and government spending as a percentage of GDP is perpetually increasing.
I'm so sick of everyone pissing and moaning about Gore's infamous "I invented the internet".
So am I, because it diverts attention from more serious matters such as his cheerleading for the Clipper Chip and cryptography bans. Likewise I was annoyed with the Clinton/Monica fiasco because it diverted attention from his possibly criminal dealings with China (and as we know now, his ineptitude with North Korea).
With any luck at all, the Supreme Court will have struck down campaign finance "reform" by then. I'll be surprised if it isn't a 9-0 decision; it's even more of a slam dunk than the CDA.
Are you kidding me? Who came up with the Clipper chip? Who defended the blatantly unconstitutional crypto restrictions that could make you a felon for typing 4 lines of Perl? (Little-known fact: Ashcroft opposed those restrictions). Who tried to use the OKC bombing as a pretext for censorship? Who presided over the largest ever increase in arrests of nonviolent drug offenders?
I'm just sorry so many Americans are so inattentive to the issues, they allow their precious liberties to be whittled away.
Actually, it seems like too many Americans don't care about their liberties if they're being taken away by the party they voted for. I'm perfectly willing to stand up and say that Bush is wrong on things like the Patriot Act and the drug war. I would hope that liberals could do the same and realize that the Democratic Party is no friend of civil liberties either.
That would be from your own post, specifically "Problem solved". It certainly created the impression that the delay was done in order to solve the "problem" of not getting through to people with telezappers. So strike the word "deliberately" from my original post; the rest stands.
if you wanted to indicate that you didn't want intrusion into your life, then maybe you should have let intelligence intrude into your head and signed up on all the various no-call lists (cost: free) instead of wasting your good money on something that doesn't work
I really don't understand your contempt for the people whose lives you were interrupting. Perhaps they didn't know about the no-call lists, didn't trust telemarketers to honor them, or didn't want to spend the time to figure out how to get on them. Time is not free, although I wouldn't expect telemarketers or those who use their tactics to understand that.
No, you were not. You were deliberately annoying people who had gone out of their way to indicate that they did not want you intruding on their lives. That is not a good thing.
The Java bridge isn't open source, and unfortunately neither is Foundation, so even Cocoa command-line tools won't run on a stock Darwin install. That's unfortunate, and Apple really should release Foundation, especially since most of it is apparently a thin wrapper over CoreFoundation, which is open source.
I really think if more people could get over their intense fear of the [square brackets]; they would fall in love with NeXTStep
I agree completely. I too had an irrational distaste for Objective C based on the "weird" syntax, but after using it you realize that it does a lot of things right that most other languages do wrong. It's interesting to compare it to Java, where Sun made some design decisions that were technically inferior but probably necessary to get developers on board, such as:
I could go on for a while, but I'll stop there. And in fairness there are some things I'd like to see ObjC take from Java as well, specifically namespaces, garbage collection, and lack of header files. But overall Objective C is a great language, and Cocoa is an even better API.
I keep meaning to try to port a couple of the open-source Mac OS X apps, probably one of the excellent GPLed AIM clients, to Linux using GNUStep as a proof-of-concept
My game Gridlock runs on Mac OS X and GNUStep. I think there are 3 "#ifdef GNUSTEP" occurrences in around 5000 lines of code, all to work around minor GNUStep UI and Gorm bugs. It doesn't look nearly as nice on GNUStep as on Mac OS X, but like you I wanted to do the port as a proof of concept.
Does anyone know if the InterfaceBuilder analogue in GNUStep is anywhere near as good as Apple's?
Gorm looks and acts very similar to IB, but the last version I used was very buggy. In particular, it had an annoying habit of corrupting files when it saved them such that it could no longer open them, even though they would load fine at runtime. There's a new version out that I haven't tried yet.
No. The QuickTime format is completely open and documented. It just happens that the most common codecs used with it are closed (Sorenson) or patent-encumbered (MPEG4). There's nothing stopping anyone from writing their own codec and having QuickTime support it.
Macs are definitely more expensive, but it's not quite as bad as your numbers indicate. You ordered extra RAM and hard drives from Apple; *never* do that, their markups are insane. A stock dual 867 with a GeForce 4Ti is $2050. From third parties, get 1 GB of ram for $250, 2 80 GB drives for $250, a Firewire CD-RW for $150, and you're at $2700 with a better system than you got from the Apple store. Still more than the Dell, but the difference is reduced by half.
And thus it should be invalid due to lack of consideration. I've yet to hear a reasonable counter-argument to this, any lawyers want to enlighten me?
A sphere has no edges but has a finite area. Just bump it up a dimension.
For most DMCA violations it should be "+1 Illegal".
I don't believe that was the case in 9, and I'm sure it's not in X.
There are other things, like extensions being left around... and we all know that extensions NEVER, EVER, EVER cause system conflicts. Basically it's the DLL hell all over again, just renamed.
Nope. Mac OS X uses "file wrappers", which essentially allow a folder to appear as a single file at the UI level. This lets you include localized resources, graphics, supporting libraries, etc. in (from the user's perspective) a single file. Drag it to the trash, and it's really all gone. The worst that happens is that you're left with a stray prefs file in ~/Library/Preferences, which is harmless. And Mac OS 9-style extensions are thankfully gone in X.
The combination of Unix with a great UI and mainstream applications can be a benefit to just about everyone. If you don't think it's worth the cost, that's fine, but don't try to claim there's "absolutely no reason".
(how is clicking start -> programs -> microsoft word harder than clicking Macintosh HD then searching around for your software? hm...)
It probably isn't. On the other hand, you can "uninstall" an app by dragging it to the trash, without worrying about what DLLs will remain strewn about. And you can copy an app from one Mac to another by dragging and dropping (or "cp -r" if you like), rather than hunting for the install CD.
Probably yes, but maybe no. There is a small but significant chance that Mac OS X for x86 could crack open the Windows monopoly, and if I were Bill I wouldn't want to take that chance.
Moving into an ultra-low margin commodity hardware market from a high-margin monopolistic hardware market to compete with a software company would be moronic.
Which is why Apple won't do that unless they're compelled to, i.e. if Microsoft stops Mac development.
That's a matter of opinion; I and many others would disagree.
And resource management in Objective-C and Cocoa is a lot more work and a lot more error prone than in Java or C++.
Not really. Objective C has no built in memory management (neither does C++), but it uses a reference counting system that works well enough that you rarely have to manually allocate or free memory.
I don't see much of a future for Cocoa, at least in its current form.
Apple does. Virtually all apps that come with Mac OS X are written in Cocoa and Objective C. iTunes and iMovie are Carbon, but that's only because they were designed to also run on OS 9.
Where can you get a PC comparable to the iMac for $650? Or comparable to the iBook for $600? The price difference is not as much as you think, and can easily be made up for by ease of maintenance, lack of viruses and spyware, and better security.
I've seen several. Try here for starters.
Doubtful. Apple would have had to integrate existing Mac OS technologies (QuickTime, Java, AppleScript, etc) and create a Carbon-style compatibility layer for BeOS the same way they did for OpenStep. It probably wouldn't have taken any less time, and they would have ended up with a not-quite-Unix system and an API that, while good, doesn't compare to Cocoa.