Hacking Mac OS X
Bill Hamm writes "DB is carrying a deep interview with Jonathan Rentzsch, who created an open source technology to allow other developers to inject their code into any running process to alter its functions and written papers for IBM to program the PowerPC correctly. The interview is huge and technical, and all over the place in terms of content. Some of the things discussed are the reasons for corporate America's resistance to buying from Apple, software optimization, the importance and history of 10.4's Core Data, why WebObjects is no longer relevant, the status of PowerPC compilers, and why Mac OS X's Finder should be killed off."
so basically is this just like dynamically open sourcing running operations?
...or did i just completely misunderstand that entire thing?
allowing users to modify whatever's running? interesting idea, and might be useful for developers who would like the ability to code in real time and see their changes implemented as they make them....
I wouldn't be surprised if Core Data apps don't get AppleScriptablity for free-to-cheap circa 10.5.
Seems like this is the promise of Automator - once every app can understand Applescript, every app can interact with every other, without the user.
concrete5: a cms made for marketing, but strong enough for geeks.
Take a look at this on IBM compilers on mac os x. According to SPEC ratings int performance is 11% to 50% faster using xlc and floating point is apparantly even better. Most of the performance gains are over 50%. Apple of all people can afford a compiler to at least compile their own OS on. The free software side of me in the other hand is happy that they are choosing to improve the gnu compiler instead but it honestly doesn't make any sense to me since they can get a practicaly free huge performance gain on a relatively cheap purchase of a compiler.
-bloo
Like hell. I moved my least techical users (Sales and execs) to Macs and haven't had a support request in months. The ROI is very much worth the increased price tag over your typical Wintel box/laptop. The stability and lack of malware are some fo the more obvious benefits but don't forget the lack of forced upgrades, no antivirus licensing to worry about. Not to mention IT issues a Mac and completely forgets about it since there are no support issues. A Mac might be out of place if you're a Windows admin trying to lock down your users with draconian Group Policies but for those of use with servers to run that don't want to spend our time worrying whether or not our users can browse certain sites or install programs of their own, Macs are freaking great. I have idiot Sales guys running around the world with 70 day uptimes on their Macs. And not 1 complaint.
This guy is way out there
I agree with the comment about Version Control and Finder. I use TortoiseSVN on win32 and love it. When I code on my mac, I greatly miss this significant integration.
The beauty of TortoiseSVN (CVS) is that they integrate to the Windows Explorer, which is in turn used by *most* applications in windows for managing files allowing the version control to be very well integrated with the entire operating system.
Unfortunately on Mac the only decent graphical way of managing Subversion is through eSVN, although there are other projects out there, this one shows the most promice ( I have not actually tested on Mac yet though.
If Apple could allow for Icon overlays and adding of file attributes similar to Windows Explorer it would be a huge improvement to the usability of OSX for GUI based hacking.
For Core Mac'ers - Checkout the activity on TortoiseSVN project on tigris.org. There is a huge amount of activity on this project as it is widely used by a very diverse group of hackers. Unfortunately a differentiator on the side of win32.
JsD
Corporate America is risk-averse. With Microsoft, they get their OS from a single company, but they have a wide range of hardware choices. Furthermore, it may be a single software company, the software company is a monopolist, is extraordinarily wealthy, and will hang around for a long time.
With Apple, they have only a single source for both their hardware and software. The hardware range is limited and prices are essentially fixed by Apple. The operating system is used by only a few percent of computer users, and the application programming interfaces are neither a de-facto standard nor are they open source or conform to other open standards.
If Apple wants to catch on more widely, they either have to make their entire software platform open (probably ditching at least Quartz), or they have to create a third party PPC market (which they can share with Linux). If they don't do either, they won't be growing much more.
Ok feel I feel I need to address this.
1) I use my iBook everyday in my "corporate America" Job
2) 'Mac' is not a company
. Error messaging was minimal ("sad mac"? please.)
3) the 'sad mac' was to indicate a hardware failure of some type, and it gave a diag code to lookup. Im not sure what kinda of failure code you are looking for from the built in ROM software. Perhaps you would like a blue screen filled with unintelligible register contents?
4) Ejecting a disk, well then I ask should there have been a separate 'eject media' icon?
5) One button mouse. Dont like the mouse go buy a 2 button mouse. they work just fine. However i get the distinct impression you dont use a mac anyway.
6) Auto sizing windows: this behavior is a personal preference, Some windows I want large, some not. Based on your previous comments you seem to be upset that Apple makes some choices for the user that are personal preferences, but when they dont make this one you are upset about that also.
Mac offered compatibility with windows networking very late in the game
7) Im not sure im getting the point of this one. If the complaint is that Apple (see #2) didnt add windows file sharing until osx, this seems to miss the point of this screed about 'Corporate America'. From a corporate network POV, the server is supposed to be set up to talk to the clients, the clients have no onus to be peer to peer compatible with other clients, otherwise you lose the central control that is predominant in the corporate arena. Of course to be fair you would also have to complain that PC work stations haven't added any non MS windows compatibility.
I can only assume by your context that you mean wintel x86 as corporate workstations, so I have to base my comments on that assumption. I suppose its possible you mean some stripped down unix workstation from like 1998.
You claim to 'like' macs, but your things you dont like seems to be picayune at best. For all of these things that you believe that would get in the way of your 'corporate' workflow, it seems as if you have never tried to do such a thing to begin with.
I feel that you are using this 'corporate' thing as a bag you can fill up with a bunch of complaints and use it to bolster your beliefs.
And unfortunately, those corporate workers all have kids in school. They lobby their towns to buy PCs that will 'prepare their kids' for work. I know someone who deals with this, and he's always being confronted by parents who are angry that the school system just bought another Mac lab.
I suggest you read Slashdot
You will need a copy of OS X Server, but that's only $500 or $1,000. What BOFH can't hide that expense amount in a budget request? Especially if it means sticking it to those pesky Mac users!
For even more fun, treat your Mac users as if they were children needing supervision with Parental Controls -- no more sending messages to random users, no typing unapproved URLs into Safari, no running unapproved applications. Even better, the Parental Controls are built into every copy of OS X! What more can a BOFH ask for?
Bah!
More "It's still not done the Tog way, therefore it sucks" whining.
The core complaint:
Any window can still be "transformed" from a "file browser" to a "regular folder" and back again at any time.
I call that a Good Thing. The only possible objections are based on old-school MacOS Human Interface Dogma^H^H^H^H^H Guidlines zealotry.
Let me know when Ars starts complaining about something that matters.
Information wants to be anthropomorphized.
I'm still trying to figure out how it was posted on /. It's sure to just confuse a bunch of people who read the summary and think it's all about how 'the finder sux'... which is the shortest section in there. What's weird is I'd never noticed that hiding the Finder toolbar and sidebar changed the window from bushed metal to aqua look! While I have to admit that's stupid, I'm not sure it's a reason to toss the whole thing ( just make it all one or the other... I hate brushed metal, so I'd make it aqua, but just pick one, Apple! ).
Of course, I'm in the 'why the hell would you want to hide the toolbar and sidebar' camp, and thus don't often see the aqua-look windows unless I'm undoing something some old-time can't-learn-anything-new all-this-useful-file-navigation-stuff-confuses-me OS 9 user did. I guess that just shows my NeXT vs. Mac OS bias. For me, the Finder is not the biggest problem in OS X. It's the Menu bar. I've realized that it's not so great on larger screens. It's perfect for the Mac Classic screen, but it's not what people look at to figure out what the active application is. I promise, if there's a flashing cursor in a text field, the user is _sure_ that's the active application, they're not looking at the menu bar... it's a broken interface designed for a 9-inch screen. I'd say that's my NeXT bias, but I've spent a lot of time watching people use OS X, and they do _not_ pay attention to the menu bar, which ultimately makes it just a bit of lost screen real estate. Too bad that's the one thing that's not likely to change about Mac OS. Otherwise, OS X is the best thing _ever_.
Far from trying to be a troll. Maybe you haven't paid attention to all the criticism going around on the Dock, specifically referring to it as a flashy tool for marketing rather than a useful tool.
While the Dock accomplishes, to an extent, what it is supposed to do, it does so poorly.
For example, there are two distinct ways of hiding windows. If you "hide" an application, its windows are no longer individually selectable using the Dock. The same goes for the fabled exposé: it doesn't show you the windows of hidden applications, and it doesn't show minimized windows.
The nifty animation of application zooming in and out serves no specific function except making new users drool. Not even the visual hint that the windows is minimized in a given place is useful if magnification is used: icons change position, and after doing some other work you can no longer remember which one is which.
The visual appearance of minimized windows gives little indication of which windows is which: if you have ten finder windows, finding the right one is impossible without checking the names one by one.
Exposé (which is part of the dock) has its own failings too: you cannot disable the cute (and time consuming) zoom effect. If you want to reveal the desktop, all the windows will pop in front again as soon as you start doing something.
I could go on, but I believe I have elaborated enough at this point, there are far more elaborate analyses around.
As much as it pains me to admit that, I think the Windows taskbar is actually a lot more effective: you see the name of the window you want, you click on it.
Much more effective.
If it's not lost, how come you are looking for it in the first place?
At least "Finder" implies you will actually find something you are looking for. Consider please the term "Explorer" which implies a long journey, at great cost and possibly without success at the end. Nothing could be more apt to describe Explorer and the annoying little dog that couldn't find drugs in a reggae bands luggage.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Overall I'm not impressed with your comment as I think its largely irrelevant/innaccurate. This snippet I take particular issue, when you send them some hardware, they ask you on the phone "is the data backed up or do we need to do that?" They make a note in your case and bam they do that for you(they charge you for that).
My experience with Apple is that with AppleCare support is incredible. Direct sales is useless to me as I don't need some rep to tell me what to order, I order that and it appears at the office in a few days, why do i need to talk to somebody?
You make issue of losing the computer for a few days, but any business will/should have backup workstations/loaners for this purpose. If fact I cannot imagine a business so small, that they could afford a IT staff but not have the money to have a spare iBook chilling around for emergencies.
Oh and FYI, 60gb worth of backup space is what ~$30 now(cheap IDE drive that i pop in format, copy files over and rip out in time to send machine out.. before you come back foaming at the mouth this does not violate warranties so your gonna have to complain from a different angle).
So a better question than "Why doesn't Corporate America use Macs" might be "Why don't we?"
I use Wintel because my corporate overlords use Wintel and have really annoying applications that are harder to use than a good browser interface that I need to use to get my official email and do my timecard and the like.
These applications provide zero value. Nobody likes them, even the MCSE guys who are total Wintel zombies, but they keep you chained to the Wintel desktop.
But I have enough of a rep and enough goodwill at this place that they let me use my Mac next to my PC, and so I spend most of my time on my Mac. I use Wintel, like I use toilet paper or dishwasher detergent, when I need it. I work on a Mac. But for most people at big businesses, well, that's not an option. Hell, we get slammed enough for using non-approved browsers like Firefox...
It's a well known fact that the term "hacker" did not originally apply to the people that media now calls hackers.
The whole reason this discussion keeps happening is that it is not a "well known fact."
Just because the media says it, doesn't mean it's true.
And just because the Jargon File says it's not doesn't make it false.
Linguistically, words have no transcendent, objective "true" or "false" meaning. The "correct" definition of a word is simply however most people use it. It is not the original meaning, or the meaning that some people want it to be.
I generally agree with your sentiment, and have even "corrected" people who've used it in the perjorative sense. But, what's the point? If the general public thinks it means one thing, what good does it do to take the considerable effort required to re-engineer its meaning back to what we want it to be?
Cracking refers to people who break into computer systems using nefarious means.
This is a good example of my point. The only time I see "cracking" used in this sense is by those trying to reclaim the positive meaning of "hacker."
If these were technical terms, arguing for a "correct" definition would be one thing, but these are all basically slang. There are a lot of good issues for this community to advocate; why spend so much effort on a purely semantic one?
Well I'm prepared for the term to have positive and negative meanings and have the reader/listener infer the meaning from the context like they have to for many other words.
Like the poster that started this debate, I get annoyed with people going on and on about "hacker" not meaning computer criminal although my main objection is with them trying to tell us that the *proper* name for such people is "crackers". People that crack encryption or copy-protection schemes are called crackers, but hackers - sorry, people who break into computer systems - have never been called crackers by anyone except people who are trying to reclaim the word hacker.
Now before this post gets tagged as redundant I'll get to my point which is that ESR may have been well intentioned in getting the media to understand that 'hacker' can be a good thing, but HE PICKED SUCH A STUPID ALTERNATIVE LABEL FOR THE BAD GUYS THAT NO REASONABLE PERSON COULD USE IT WITH A STRAIGHT FACE. Just listen to yourself!
A while ago (on a different board) I was explaining to someone how I regarded this hacker/cracker thing as revisionism as I'd always known hacker to be used for bad guys and only since I learned to program as being a good thing. He got very annoyed and insisted I was wrong. I just blew it off at the time but them I decided to do a little research and looked at Google Groups USENET archive. The earliest reference I could find was from the early '80s and it was - wait for it - someone complaining about the media misusing the term "hacker". Given that 20 years have elapsed since and the term probably only dates from the '60s, it shows that people have been 'misusing' the term for at least half its life.
I'll see your obscure link and reaise you therelevant portion of the OED (can't link as you need a subscription) Note the dates of the defining (1976 v 1983):
3.
a. A person with an enthusiasm for programming or using computers as an end in itself. colloq. (orig. U.S.).
1976 J. Weizenbaum Computer Power & Human Reason iv. 118 The compulsive programmer, or hacker as he calls himself, is usually a superb technician.
1977 Time 5 Sept. 39/1 Some 500 retail outlets have opened in the past couple of years to sell and service microcomputers-and serve as hangouts for the growing legions of home-computer nuts, or `hackers' as they call themselves.
1982 Sci. Amer. Oct. 110/1 In the jargon of computer science a hacker is someone who spends much of his time writing computer programs.
1983 Byte May 298/1 `Hacker' seems to have originated at MIT. The original German/Yiddish expression referred to someone so inept as to make furniture with an axe, but somehow the meaning has been twisted so that it now generally connotes someone obsessed with programming and computers but possessing a fair degree of skill and competence.
1984 Which Micro? Dec. 17/3 A hacker might spend more time playing his own version of PacMan than on useful program development.
1986 A & B Computing Nov. 16/3 The on-screen help is for the casual user but there's plenty for the hacker who wants to tinker with the software and tailor it for special purposes.
b. A person who uses his skill with computers to try to gain unauthorized access to computer files or networks. colloq.
1983 Daily Tel. 3 Oct. 3/1 A hacker-computer jargon for an electronic eavesdropper who by-passes computer security systems-yesterday penetrated a confidential British Telecom message system being demonstrated live on BBC-TV.
1985 U.S.A. Today 18 Oct. a1/4 A gang of 23 teen-age computer hackers has done `significant damage' to Chase Manhattan Bank's records.
1986 TeleLink Sept.-Oct. 25/2 Just for fun, the hackers decided to drop a few APBs (All Points Bulletins) into the local police computer, with the result that, when out driving in his car, he was repeatedly stopped.
I am, and always will be, an idiot. Karma: Coma (mostly effected by
It cost me $200 for the training materials and $300 for two tests. Doesn't sound like you've looked into the involved costs at all in the last decade.
For every bad experience, there are plenty good. My reps are just fine. Wrong. You just need to enter a "self-servicing" agreement with Apple and have -one- ACDT-certifed greasemonkey in your company. You get -full- access to GSX, manuals, parts, etc.
I'm one of those greasemonkeys, which is how I know. Your failure to perform your own backups isn't Apple's (or any company's) fault. If you can't even maintain backups of your own data, do you really think anyone wants to spend the time/effort required to ship you a mainboard and show you how to install it?
-- often wrong; never in doubt
The real problem is that interprocess communication under UNIX isn't very good, was added late, isn't portable, and isn't used much. So apps tend to be monolithic, and intercommunication takes place at a very high level, like CORBA, XSLT, or Java RMI, if at all.
So trying to interpose new features at a lower level tends to involve horrible hacks. In the DOS era, there was "hooking" interrupts (a concept faithfully replicated in all Microsoft's OSs to date.) Then came "injecting DLLs." Now there's this.
One of the sad things about UNIX/Linux is that the original concept of little intercommunicating programs has been lost. Because the original intercommunication mechanism (pipes) was so weak, the concept didn't generalize.
I often wonder how different the history of UNIX might have been if, when you invoked a program, you got results back. You get to pass command line arguments and environment variables into a subprocess, but all you get back is a status code. This one-way model permeates the UNIX world. It's one reason that shell scripts and makefiles tend to be so blind.
What's needed is a sane approach to interprocess subroutine calls. Multics had this. QNX has it. Mach has support for it, but nobody uses it much.
It's not that I don't like finding files, it's that I keep losing them again.
Apple needs to come up with something like Trapper Keeper, so I won't lose my files. Apple could even replace Jeff Goldblum with Rosie O'Donnel. Yeah, I know. That last bit is brilliant.
It's not offtopic, dumbass. It's orthogonal.