Saturday, April 10, 2010

Apple versus the 'Free World'

Let's play I Spy. How many things do we love and enjoy (that aren't Apple) but are built on a proprietary architecture? Pretty much everything that doesn't fall under GNU/GPL, right?

Okay. Of those things, how many include a back-end that's totally built on the most familiar open-source architecture to date? FreeBSD anyone? ;-)

I don't have time to cover every electronics platform (video game consoles, toasters). Instead I'd like to focus on one of the biggest current topics crossing the worlds of mobile, micro, and desktop computing: "Apple versus the 'Free World'".

Let's start with those claims that "Apple is a proprietary ~blah blah blah~, long live the free world and all that is open source," by analyzing some foundations of what "open source" truly IS.

First, what does "open source" mean to you? Most people associate open source with freedoms to do things with hardware/software that normally wouldn't be achieveable within a proprietary hardware/software architechture. Take for instance, one of the first major public releases of proprietary hardware (the HTC Dream) with a open source mobile software platform (Android).
About half of my friends who use Android, when asked why they prefer it over an iPhone, reply with "because it's open source." Then I say, "Well... what have you done and what do you plan on doing with its opensourcedness? Tethering? Rooting? Application development? (Okay so you plan on quitting your job and building $2 apps only to live in your mom's basement...riiiight!)

Once we've cleared up most of these misconceptions, the usual retort is, "but it multitasks."
Bingo!
That's a valid reason to use it over the iPhone, which is why I love my G1 so much. Android 2.1 (with or without Sense) sickens me, because it's trying (and failing) to be pretty and multitask as a functional phone. This is where I draw the line... where smartphones become "dumbphones", and I have to say... "No thanks." This is also why, after owning 4 separate Windows Mobile devices that missed calls due to the core phone app failure because of too many running processes, that I gave up on Windows Mobile.

Apple does a good job at effectively using its hardware within the limitations of the general consumer's disposable income price expectancy, and being pretty, without multitasking capabilities. It can do all of those things most people claim they use an "open source" handset for, and open source in itself simply ≠ the ability to effectively multitask.
Android 1.6 can effectively multitask being not as pretty, but pleasantly acceptable for the busy hardware spec limit-pushers.
On the other hand, Android 2.1 bugs are almost as prevalent as bugs seen in Android 1.5 , with forced archival of SMS messages due to poor OS app management, the sluggish UI with multitasking... just to name a couple. Nexus, no thank you... hardware is fast, but software is too much for it to handle. Maybe when we re-write 2.1 and push a major release ala 1.5 to 1.6, you'll have my interest. Probably by then, iPhone/iPad OS will have multitasking, which could make me question where my brand loyalties lie.

Let's change gears and talk about netbooks. There's my Dell Mini 10. It shipped with 1.6 GHz Atom proc running 1 GB of ram at 533 and Windows 7 Starter edition (Aero/Dell branded Stardock enabled). With my MSDN I immediately upgrade to Windows 7 Ultimate, which seems to run fine until I begin my normal multitasking regimen. (Opening 7-20 tabs within Firefox from a seed blog to research referenced terms, studying pro audio development, photoshop techniques, wordpress plugins/CMS feature testing for my future websites, etc.) Last night I decided to try a micro version of audio editing with Audacity as my sandbox to test some supercool VST plugins for my recent fetish in 8-bit / chip music synthesis. In failing to recognize a valid audio output device in Audacity, I turned to the community to find that *gasp* everybody uses Hackintosh for any type of multimedia development, because it's the only thing that works on that hardware. Then, it hit me... the answer to the question, "Why does the multimedia community prefer Apple products over anything else," was realized: OS-X is a minimalist OS and it's really optimized for the hardware it's running on. It's basically running a rebranded base XWindows UI Gnome, and some system icons in an animated dock for its "pretty factor", but that's it. So if Dell can develop hardware that just so happens to work seamlessly with such a great OS, why would I ever invest in a proprietary hardware/software combo to do the same thing?

The best way to approach this question:
Are you a mobile user or a desktop user?

- Mobile user: Your hardware is totally proprietary to the manufacturer, with no ability to modify it without serious chances of bricking the device. Memory upgrades are limited, and in a lot of cases the FSB is modified so that 3rd party upgrades are prevented by the system BIOS firmware. Yuck!
Additionally, to my knowledge, nobody has developed a full sized notebook with hardware that seamlessly runs a variant of Mac OS-X like the Mini 10 does, which would give cause to take a look at a Macbook Pro.

- Desktop User: With PC, you have free choice over hardware/OS solely dependent upon what it can take. Sky is the limit, all major components are upgradable within form factor/bus architecture, however no particular OS is build specifically to your components without some major day-to-day usability sacrifices, and bugs are prevalent in even the most end-user "stable" OS choices. If you're a gamer of the anti-console type and are obsessed with bleeding edge graphics, this is the most supported option.

Before going further into the Desktop analysis, let's do a quick run down and comparison of the three most popular OS types for end users (also available for notebooks):

Windows: OS with most mainstream support for software and gaming. Lots of bloatware even at OS level, requires heavy tweaking for hardware optimization. Moderately easy to use for the general public, however users at all levels of expertise have major/constant complaints. End user support experience very poor. Employees/Developer income moderately decreasing, yet employer productivity expectations increase exponentially compared to the rest of the IT industry*.
(*I found this out listening to NPR one Sunday. If anybody can find the NPR article or show referencing this, I give you mucho props... otherwise, go research Bureau of Labor and Statistics data at bls.gov, or go pay for a GAP analysis report of Labor productivity vs Compensation with at least a date range of 2000-present...) Windows users aren't considered very uber.

Linux: Incredible control over the OS comes at a price --- constantly fixing minute details of application code, but the kernel can be built specifically optimized for your hardware. Requires heavy tweaking for software functionality. Intermediate/advanced learning curve for the general public. Modified Unix-based back-end operating environment. World community-driven support with most of the focus on just a few its hundreds of concurrent flavor versions (aka distributions), but virtually no centralized end user support.
Most software under GPL/GNU and is free and developed at the expense of the software engineer's own time, which may quickly become abandonware over a short period of time. If you're among the 1337, this is for you.

Mac OS: Virtually no tweaking necessary. Top tier multimedia development software support. Even has support for MS Office. Labelled proprietary, though optimized OS specifically designed for the hardware. Modified Unix-based back-end operating environment. Awesome support ratings. Happy users all around. Employees/Developers happy and paid well. All major complaints come from non-users, with subject centered around it being "proprietary" (most arguments unfounded). Uberness is limited to a single button mouse, left to personal interpretation.

Final Thoughts
In all, we like choices... but I guess the ultimate defining question as to how our loyalties lie simply boils down to this: Freedom is never free, there's always a price. I'll continue to be a Desktop PC user, but heavily considering moving mobile platforms to Apple products. If pro audio development experiments work out with a modified OS-X install on the mini, chances are, I may consider the future investment if it means a paradigm difference between functionality and constant bugs within both XP and Windows 7 in ProTools even on my desktop. Not that I need a lot of end-user support, but happy employees=more willing to provide better product support, so there's that too. One last thing... did you know about the Apple OpenSource Library? http://www.opensource.apple.com/ Yeah... I just found that out. VERY interesting stuff...



Short disclaimer:
~The opinions expressed in this blog do not reflect that of the opinions of any of my friends, family, co-workers, employer, or Facebook.~ 


*** Update: Prompted response by Apple?
Since this was posted, Apple responded literally a day later with their announcement for multitouch coming to iPhone 3GS and iPad this summer. Read more here, courtesy of Readwriteweb.com

Original Post: Wednesday, April 7th, 2010 @ 12:04 PM CST  (Wordpress / Facebook)

2 comments:

  1. Interesting tidbit on Android touch events... http://stackoverflow.com/questions/792185/why-are-touch-events-destroying-my-android-framerate

    Current benchmarks show off the Nexus hardware running 2.1 versus Android 1.6 on a G1 proving faster base framerate... however, I wonder why somebody doesn't create an Android benchmark based solely off touch events and actual app loading rather than something purely graphics based?

    ReplyDelete
  2. "Linux is only free if your time is worthless." -- Jamie Zawinski.

    ReplyDelete