Apple's Trend Away From Tinkering
theodp writes "Having cut his programming teeth on an Apple ][e as a ten-year-old, Mark Pilgrim laments that Apple now seems to be doing everything in their power to stop his kids from finding the sense of wonder he did: 'Apple has declared war on the tinkerers of the world. With every software update, the previous generation of "jailbreaks" stop working, and people have to find new ways to break into their own computers. There won't ever be a MacsBug for the iPad. There won't be a ResEdit, or a Copy ][+ sector editor, or an iPad Peeks & Pokes Chart. And that's a real loss. Maybe not to you, but to somebody who doesn't even know it yet.'"
The iP* products are consumer electronic devices, not general purpose machines. It makes perfect sense that these are locked down for the sake of reliability and performance. Not to mention the Apple business model is based on the closed nature of these products.
The desktop versions of OS X are incredibly flexible and powerful tools, with the usability bonus of a well thought out graphical shell. There is a reason programmers and IT people are migrating en mass to Mac--they are way ahead of the competition when it comes to power and flexibility compared to Windows, and reliability and usability for an end user compared to Linux.
When you purchase a Mac, you are getting a full featured development environment and sys admin toolkit out of the box.
Sure. Like the Nexus One. Not only is the SDK free, easy to program (java), flexible (you can replace most of the built in apps) but the phone itself isn't locked. Watch this video if you don't believe me ... the shipping phone doesn't need a "jailbreak" because you can simply run an officially provided command and after informing you that you void the warranty, the phone will let you reflash to any OS (it changes the bootup logo to make it harder to resell trojaned/warranty voided phones but that seems reasonable).
Apple's trend away from tinkering predates the company. During the design and building phase of the ][, Woz was building in things which Jobs didn't want. Three specifically that they argued over were color (vs. black and white output), the lid (and by extension, poking around inside) and memory expansion past the max installed 16 K (this is the actual source of the often repeated and rarely correct "Who would ever need more than X-kb of memory?" -- It was Jobs and it was 16K). The second and third are both in the 'tinkering' group of features. In all cases Woz won, and we got a machine that ultimately was pushed to do things which by design it supposedly 'couldn't'.
When Jobs decided to make his own machine, all three of the above limitations were built in. The first Mac was B&W, had no lid, and came with the only memory configuration that it could run. At the time I was senior/technical editor of The Road Apple, a 'zine for Apple ][, // and ]|[ users, created with the specific intention of trying to prevent Apple from dropping the ][ line. (As far as I have ever been able to determine, it was the first computer publication produced simultaneously in the US (Portland OR; Al Martin, Publisher)
and USSR (Moscow, Russia); my co-editor was a member of the Russian Academy of Sciences; Academician Vladimir Fedorov). When Woz left, Jobs prevailed and we lost. Jobs' design choices for the first Mac and his acquiring complete control when Woz left, were the second and third major changes away from tinkering. Both were a direct result of Job's taking back those things he wanted done on the ][ that allowed tinkering (or were just plain neat hacks) but which Woz chose to do his own way. Simply put, this direction was based on the fact that Jobs lost those arguments. resented it, and when he got the chance, he finally got his own way.
References for the historical stuff can all be located if one digs. Support for Jobs' tendency towards management techniques such as tantrums and verbiage bordering on abuse has also been documented up through the point where John Scully took over for 10 years so Jobs could grow up and gain some people skills. Collections of The Road Apple were available on some of the Apple ][ ftp sites. One that has been converted to webby stuff is at http://apple2.org.za/gswv/a2zine/GS.WorldView/Resources/ROAD.APPLE/
"I may be synthetic, but I'm not stupid." -- Bishop 341-B
another option is the nokia N900. Basically a linux box in your pocket, root and all.
comment first, facts later. http://chem.tufts.edu/AnswersInScience/RelativityofWrong.htm
Do we complain how the Kindle or past Nokia phones are essentially closed to the average person the same way?
Yes. We. Do.
I'd rather have someone respond than be modded up.
I almost completely disagree with you. Pay $100 for the iPhone developer program and you can do whatever you want to your own iPhone, iPod Touch, or iPad.
You left out "per year" after the "$100".
The iphone and macbook freely allow tinkering, so I expect the iPod will be much the same.
If you recall all the peek charts did was give you access to system calls and variables, well... things are a little tighter now thanks to multitasking and you're expected to use an API to access them. Apart from that though, Apple is quite happy with you tinkering with your own computers to your heart's content.
What apple tries hard to control is you sharing those hacks with non tinkerers. Say I wrote an awesome iPad game and distributed the source code over the net for anyone with the SDK (a free download). Well, Apple would not exactly approve but they wouldn't stop me. However, say I distributed the same game in binary form, telling anybody interested to email me their IEMI number... well, I suspect Apple would take action at that point.
I had an Apple II. I didn't write any C code for it because I didn't have a C compiler, so instead I wrote assembly - in hindsight, how dumb is that! I mean, great, I can say I wrote 6502 assembly and sound geeky - but I'm sure I would've been more productive using C. Similarly, I had a Mac Plus and I had to copy someone else's compiler to be able to write software. Piracy because I wanted to write software... Then I got a 6100, and I shelled out I believe $150 of my hard earned student money to buy a compiler (Metrowerks). I couldn't afford the apple suite at the time. As I got a bit older and richer, I signed up for an apple developer account which gave me access to tech support (they were amazingly helpful in the days before you could get similar information off the internet or usenet).
Lets compare that to now, where I can download the SDK for not only my mac but my iPhone completely for free (a colleague of mine would disagree on this point, noting that he wanted to develop for the iPhone but had to buy a mac to do so). Not only do I get an excellent SDK, but I get video tutorials, lots of example code and even a simulator! Sadly, I'm too busy to tinker any more but I do feel that Apple is bending over backwards to make it easy for me, completely unlike how they were twenty years ago.
They could be better - If they embraced open standards a bit more so that say MobileMe could be connected to using LDAP - it would make it easier to do cool stuff in a similar way to how easy it is to do cool stuff in Linux. But to say they're less tinker friendly because they try and prevent jail-breaking is just... wrong.
In response to your subject line, YES, Microsoft does give you dev tools for Windows. They're the Visual Studio Express editions.
Well there's two things you have to understand:
1) EULAs aren't legally binding. So if all there is is a "click here to agree" window, we don't have to care. We can click and the lawyers don't get involved. They've told us the only problem is when there's an actual, signed, contract.
2) When we got Microsoft volume licensing, it was a major ordeal. The contract went back and forth multiple times. We'd change it, they'd change it, we'd change it. Finally both sides got one they could agree on. Apple flat out said "No negotiation, take it or leave it." Meant we had to leave it. Normally a contract, especially between large entities, involved negotiation. Apple flat out refused, which halted the process then and there.
You can argue all you like that it is the fault of our lawyers, doesn't matter, there is nothing we can do to change that. The fact of the matter is that because of their attitude, the class is now being taught on Google Android, rather than iPhone. Also no matter how reasonable you may think Apple's license to be, that doesn't change the fact that they wanted a special signed contract when Google was ok with just a download.
For that matter most of our software only involves contracts when there's a special volume licensing agreement. We never signed any contract for Windows back when we just got it with systems or per copy. It was only when we wanted a volume agreement that we had to sign.
This is just the reality of our highly litigious society. Universities, in particular state universities (being governmental entities) have to CYA. That means that they carefully vet any contract that comes their way.
usually Apple gets interfaces near perfect.
I beg to differ. What I will say is that Apple are very good at making interfaces that LOOK nice. However, I don't find them all that functional. Here are some examples.
So, these, along with other, smaller issues make this particular Apple UI far from perfect, and for me, far out-weigh the good bits. It should also be noted that I am yet to find any UI element in OSX that I prefer over Windows, KDE or Gnome.
Let me tell you my story. I ran Linux as my primary OS from 1994 to 2005.
Ugh, I can feel a jaded old software user rant coming up soon.
I do not like having to patch my kernel just let get my digital camera to work. (Incremented a hex value in a #define in unusual_devs.h so that my Sony DCF-707 would be mounted as a usb storage device.)
I'm not sure why you did that. The Linux kernel has had usb mass storage support since 2.4 (2001). Your camera was listed as supporting it around that time as well.(1) You were also able to transfer photos through the PTP protocol on that camera since 2002.(2) (this required changing a setting on your camera of course)
(1)http://www.faqs.org/docs/Linux-HOWTO/USB-Digital-Camera-HOWTO.html#AEN33
(2)http://www.gphoto.org/news/
I do not enjoy having to manually load a kernel module just to get my printer working, because it fails to be autoloaded. I do not like having a print driver that makes every photo come out pink, and then buy a print driver, only to have the photos still come out pink. (Canon i850. Printed perfectly under windows. The only think I ever used it for, well that and Warcraft III.)
I got a 17" Powerbook G4, and all my hardware worked. And you know what? I got a terminal, and X11, and XEmacs, and gcc, and everything else I wanted too. It's quite simply a better unix.
Your printer is partially supported by gutenprint, which is a collection of free software printer drivers for systems such as CUPS. What OS uses CUPS besides Linux? A relevent excerpt about gutenprint:
"It was originally developed as a plug-in for the GIMP, but later became a more general tool for use by other programs. When Apple Computer brought out Mac OS X, it omitted printer drivers, claiming that it was the printer manufacturer's task to produce these. Many of them did not update their drivers, and since Apple had chosen to use CUPS as the core of its printing system, Gimp-Print filled the void."
So until a driver was written for your printer, you would have had to buy a new one with your mac. OSX is the better unix? It doesn't appear to be as different as you think. By the way, for someone so comfortable with scripts and the like, I'm surprised you couldn't write one to load this module on boot, or I dunno, compile the driver with the rest of your kernel instead of loading it as a module.
I do not like having two(!) different sound systems being installed, and my system still not always have sound. (I loved how I'd get "No ALSA devices found" during boot, but could only adjust my volume through alsamixer.)
Yeah, sound on linux sucked for a while. Just like blue screens sucked on windows. However just like windows blue screens, sound on linux hasn't been an issue for a long time.
2. It's always pale copy. Free of over bearing commercial interests, you'd think that the Linux "community" would create some ground breaking new ideas, but they don't. Instead they mindlessly copy whatever Microsoft does. (Thanks unreorganizable taskbar!) And now whatever Apple does (Thanks no-typing-allow file-open dialog!) Even when they do it, it just feels like a cheap knockoff. There's no coherent feel, beyond shoddy. You'd think after all these years, someone would get it right, but they never have, because of #1.
OS's tend to incorporate each other's features as it makes sense to do so. Just like how OSX just implemented spaces, which has been a feature of Linux since 1989. Or how Windows Vista's Desktop Window Manager (part of Aero) introduced compositing to Windows in 2007, while Compiz had already done so in Linux a year prior.
Desktop Linux can go