<body><script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener('load', function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <div id="navbar-iframe-container"></div> <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> <script type="text/javascript"> gapi.load("gapi.iframes:gapi.iframes.style.bubble", function() { if (gapi.iframes && gapi.iframes.getContext) { gapi.iframes.getContext().openChild({ url: 'https://www.blogger.com/navbar.g?targetBlogID\x3d10192368\x26blogName\x3dChrno\x26publishMode\x3dPUBLISH_MODE_BLOGSPOT\x26navbarType\x3dBLUE\x26layoutType\x3dCLASSIC\x26searchRoot\x3dhttp://mckev.blogspot.com/search\x26blogLocale\x3den_US\x26v\x3d2\x26homepageUrl\x3dhttp://mckev.blogspot.com/\x26vt\x3d7389753422818032331', where: document.getElementById("navbar-iframe-container"), id: "navbar-iframe" }); } }); </script>

Tuesday, March 20, 2012

You Can't Innovate Like Apple

Source: here

When what you teach and develop every day has the title “Innovation” attached to it, you reach a point where you tire of hearing about Apple. Without question, nearly everyone believes the equation Apple = Innovation is a fundamental truth. Discover what makes them different. By Alain Breillatt

Apple! Apple! Apple! Magazines can’t possibly be wrong, so Apple is clearly the “Most Admired,” the “Most Innovative," and the “Master at Design.”(1, 2, 3, 4, 5)

Let me tell you, when what you teach and develop every day has the title “Innovation” attached to it, you reach a point where you tire of hearing about Apple. Without question, nearly everyone believes the equation Apple = Innovation is a fundamental truth—akin to the second law of thermodynamics, Boyle’s Law, or Moore’s Law.

But ask these same people if they understand exactly how Apple comes up with their ideas and what approach the company uses to develop blockbuster products—whether it is a fluky phenomenon or based on a repeatable set of governing principles—and you mostly get a dumbfounded stare. This response is what frustrates me most, because people worship what they don’t understand.

I’ve been meaning to write this article for some time, but finally sat down and put pixel to screen after coming across a description of "Michael Lopp’s (a Senior Engineering Manager at Apple) discussion of how Apple does design. The discussion happened during a panel—including John Gruber (yes, for you Apple heads, that “Daring Fireball” guy)—titled "Blood, Sweat, and Fear: Great Design Hurts", which was presented at SXSW Interactive on March 8, 2008. I scoured the Internet to find an audio or video recording, so I could garner these pearls of wisdom straight from the developers’ mouths. But no search engine I know could locate said files. If someone reads this and happens to have such a recording, please, please share!



Insights On Innovation

Without the recorded details, here is a collection of insights that various attendees created from their notes of the discussion—along with my own thoughts about what this portends for people who aspire to be like Apple. My intention is to synthesize these comments into a single representation of what Lopp and Gruber actually said.

Helen Walters at BusinessWeek.com summarized Lopp’s panel with five key points:

Apple thinks good design is a present. Lopp kicked off the session by discussing, of all things, the story of the obsessive design of the new Mentos box. You know Mentos, right? Remember the really odd packaging (paper rolls like Spree candy) promoted by some of the most bizarre ads on TV? It’s the candy that nobody I know eats; they just use it to create cola geysers.

Have you looked recently at the new packaging Mentos comes in? Lopp says the new box is a clean example of obsessive design, because the cardboard top locks open and then closes with a click. There’s an actual latch on the box, and it actually works. It’s not just a square box, but one that serves a function and works. I bought a box just so I could examine it more closely. It’s an ingenious design of subtle simplicity that works so well even shaking it upside down does not pop the box open.

According to Gruber, the build-up of anticipation leading to the opening of the present that Apple offers is an important—if not the most important—aspect of the enjoyment people derive from Apple’s products. This is because the world divides into two camps:

  1. There are those who open their presents before Christmas morning.

  2. There are those who wait. They set their presents under the tree and, like a child, agonize over the enormous anticipation of what will be in the box when they open it on Christmas morning.


Apple designs for #2. No other mass-consumer products company puts as much attention to detail into the fit and finish of the box—let alone the out-of-box experience. If you’re an Apple enthusiast, you can capture the Christmas morning experience more than once a year with every stop you make at the local Apple store.

Apple “wraps great ideas inside great ideas,” and the whole experience is linked as the present concept traces concentric circles from the core outward. Apple’s OS X operating system is the present waiting inside its sleek, beautiful hardware; its hardware is the present, artfully unveiled from inside the gorgeous box; the box is the present, waiting for your sticky little hands inside its museum-like Apple stores. And the bow tying it all together? Jobs’ dramatic keynote speeches, where the Christmas morning fervor is fanned on a grand stage by one of the business world’s most capable hype men.

Pixel-perfect mockups are critical. This is hard work and requires an enormous amount of time, but is necessary to give the complete feeling for the entire product. For those who aren’t familiar with the term, pixel perfect means the designers of a piece of Apple software create an exact image—down to the very pixel (the basic unit of composition on a computer or television display) —for every single interface screen and feature.

There is no “Lorem Ipsum” used as filler for content, either. At least one of the senior managers refuses to look at any mockups that contain such “Greek” filler. Doing this detailed mockup removes all ambiguity—everyone knows and can see and critique how the final product looks. It also means you will not encounter interpretative changes by the designer or engineer after the review, as they are filling in the content—something I have seen happen time and time again. Ultimately, it means no one can feign surprise when they see the real thing.

10 to 3 to 1. Take the pixel-perfect approach and pile on top of it the requirement that Apple designers expect to design 10 different mockups of any new feature under consideration. And these are not just crappy mockups; they all represent different, but really good, implementations that are faithful to the product specifications.

Then, by using specified criteria, they narrow these 10 ideas down to three options, which the team spends months further developing…until they finally narrow down to the one final concept that truly represents their best work for production.

This approach is intended to offer enormous latitude for creativity that breaks past restrictions. But it also means they inherently plan to throw away 90% of the work they do. I don’t know many organizations for which this would be an acceptable ratio. Your CFO would probably declare, “All I see is money going down the drain.” This is a major reason why I say you can’t innovate like Apple.

Paired design meetings. Every week, the teams of engineers and designers get together for two complementary meetings.

Brainstorm meeting—leave your hang-ups at the door and go crazy in developing various approaches to solving particular problems or enhancing existing designs. This meeting involves free thinking with absolutely no rules.

Production meeting—the absolute opposite of the brainstorm meeting, where the aim is to put structure around the crazy ideas and define the how to, why, and when.

These two meetings continue throughout the development of any application. If you have heard stories of Jobs discarding finished concepts at the very last minute, you understand why the team operates in this manner. It’s part of their corporate DNA of grueling perfection. But the balance does shift away from free thinking and more toward a production mindset as the application progresses—even while they keep the door open for creative thought at the latest stages.

Pony meetings. These meetings are scheduled every two weeks with the internal clients to educate the decision-makers on the design directions being explored and influence their perception of what the final product should be.
They’re called “pony” meetings because they correspond to Lopp’s description of the experience of senior managers dispensing their wisdom and wants to the development team when discussing the early specifications for the product.

“I want WYSIWIG…

I want it to support major browsers…

I want it to reflect the spirit of our company.”


[What???] In other words, I want a pony. Who doesn’t want a pony? A pony is gorgeous! Anyone who has been through this experience can tell you that these people are describing what they think they want. Lopp cops to reality in explaining that, since they sign the checks, you cannot simply ignore these senior managers. But you do have to manage their expectations and help align their vision with the team’s.

The meetings achieve this purpose and give a sense of control to senior management, so that they have visibility into the process and can influence the direction. Again, the purpose of this is to save the team from pursuing a line of direction that ultimately gets tossed because one of the decision makers wasn’t on board.

Now, if you want to get the quick summary of what we just discussed, I highly recommend reading Mike Rohde’s SXSW Interactive 2008 Sketchnotes. He took highly illustrated notes of the Lopp/Gruber panel. Content for this write-up also came from: Scott Fiddelke, Dylan at The Email Wars, Jared Christensen, David at BFG, and Tom Kershaw.



What else does Apple do differently?

If you read the various interviews that Jobs and Jonathan Ive (Senior Vice President, Industrial Design at Apple) have given over the last few years, you’ll find a few specific trends:

1. Apple does not do market research. This is straight from Jobs’ mouth: We do no market research. They scoff at the notion of target markets, and they don’t conduct focus groups. Why? Because everything Apple designs is based on Jobs’ and his team’s perceptions of what they think is cool. He elaborates:

"It’s not about pop culture, and it’s not about fooling people, and it’s not about convincing people that they want something they don’t. We figure out what we want. And I think we’re pretty good at having the right discipline to think through whether a lot of other people are going to want it, too. That’s what we get paid to do. So you can’t go out and ask people, you know, what’s the next big [thing.] There’s a great quote by Henry Ford, right? He said, ‘If I’d have asked my customers what they wanted, they would have told me ‘A faster horse.’"

Said another way, Jobs hires really smart people, and he lets them loose—but on a leash, since he overlooks it all with an extremely demanding eye. If you’re seeing visions of the “Great Eye” from J.R.R. Tolkien’s books, then you probably wouldn’t be too far off. Here’s the way their simple process works:

Start with a gut sense of an opportunity, and the conversations start rolling.
What do we hate?

A: Our cell phones.
What do we have the technology to make?

A: A cell phone with a Mac inside.
What would we like to own?

A: An iPhone, what else?


But Jobs also explained that in this specific conversation, there were big debates across the organization about whether or not they could and should do it. Ultimately, he looked around and said, “Let’s do it.”

I think it’s clear they also benefit from the inauspicious “leak” to the market. By that I mean this overly tight-lipped organization occasionally leaks early ideas to the market to see what kind of response they might generate. Again, what other company benefits from having thousands of adoring designers come up with beautifully rendered concepts of what they think the next great product should look like?

2. Apple has a very small team who designs their major products. Look at Ive and his team of a dozen to 20 designers who are the brains behind the genius products that Apple has delivered to the market since the iMac back in 1998. New product development is not farmed out across the organization, but instead is creatively driven by this select group of world-class designers.

Jobs himself has delegated away many of his day-to-day operational responsibilities to enable himself to focus half of his week on the high- and very low-level development efforts for specific products.

3. Apple owns their entire system. They are completely independent of reliance on anyone else to provide inputs to the design and development of their products. They own the OS, they own the software, and they own the hardware. No other consumer electronics organization can easily do what Apple does because they own all of the technology and control the intimate interactions that ultimately become the total user experience. There is no other way to ensure such a seamless experience—a single executive calls the final shots for every single component.

4. Apple focuses on a select group of products. Apple acts like a small boutique and develops beautiful, artistic products in a manner that makes it very difficult to scale up to broad and extensive product lines. Part of this is due to the level of attention to detail provided by their small teams of designers and engineers. To think that a multi-billion dollar company only has 30 major products is astounding, because their neighbors at that level of revenues have thousands of products in hundreds of different SKUs.

As Jobs explains, this is the focus that enables them to bring such an extensive level of attention to excellence. But it is also an inherently risky enterprise, because they are limited in what new product areas they can invest in if one fails.

5. Apple has a maniacal focus on perfection. They say Jobs had the marble for the floor at the New York Apple store shipped to California first so he could examine the veins. He also complained about the chamfer radius on the plastic case of an early prototype of the Macintosh. You had better believe, given the 10 to 3 to 1 approach for design, that every shadow, every pixel is scrutinized. It’s in their DNA.

They are willing to spend the money to make sure everything is perfect, because that is their mission.



So is it possible for you to innovate like Apple?

So given all this, what is a company to do if they want to innovate like Apple? First, forget about it unless you are willing to invest significantly and heavily to establish a culture of innovation like Apple’s. Because it’s not just about copying Apple’s approach and procedures. The vast majority of executives who say, “I want to be just like Apple,” have no idea what it really takes to achieve that level of success. What they’re saying is they want to be adored by their customers, they want to launch sexy products that cause the press to fall all over themselves, and they want to experience incredible financial growth. But they generally want to do it on the cheap.

To succeed at innovation as Apple has, you need the following:

You need a leader who prioritizes new product innovation. The CEO needs to be someone who looks out to the horizon and consistently sets a vision of innovation for the organization that he or she is willing to support completely with people, funds, and time. Further, that leader needs to be fluent in the language of your customer and the markets in which you compete. If the CEO cannot be this person, then he or she needs to be willing to trust that role to a senior executive and give that person the authority and latitude to effectively oversee the new product development process.

You need to focus. A cohesive vision describes the storyline for your products and services. That storyline needs to state decisively what is in bounds and what is out-of-bounds over an 18-month to 3-year period. Everyone in the development process who matters must be in lockstep with this vision, which means you need to have open lines of communication that are regularly and consistently managed.

This storyline or strategic vision needs to be revised according to market changes and the evolution of your new product pipeline. It helps that Apple tends to approach their products with a systemic frame of mind, looking to develop the “total solution” rather than just loosely joined components.

Obviously, the other focus is to make a profit, since that is what supports the continued efforts to design the next great product. And, when every one of the major products is a moon shot, they have to work to ensure it meets exacting standards—to do everything they can to ensure success.

You need to know your customer and your market. Jobs and team can get away with not doing market research, identifying target markets, or going out and talking with customers because of the markets they play in and the cult-like customers who adore them. Most technology companies also believe they can get away with this—and most technology companies get it wrong.

Quick, identify 10 different pieces of technology that truly meet your needs and that don’t bug you due to a major flaw you either have to live with or compensate for in some fashion. Could you come up with more than five? I didn’t think so.

We’re drowning in a sea of technological crap, because every product that is released to the market is a result of multiple compromises based on decisions made by the product manager, the engineering manager, the marketing manager, the sales manager, and everyone else who has skin in the game as they prepare the offering to meet what they think are the target customer’s needs.

The reason Jobs and Ive get it right is because they design sexy products with elegant and simple interfaces—for themselves. And they count on their hip gaggle of early adopters to see it the same way. Once the snowball starts rolling, it’s all momentum from there.

Apple doesn’t sell functional products; they sell fashionable pieces of functional art. That present you’re unwrapping is all about emotional connection. And Jobs knows his marketplace better than anyone else.

Because you’re not Apple and you are likely not selling a similar set of products, you must do research to understand the customer. And, while I’m sure Jobs says he doesn’t do research, it’s pretty clear that his team goes out to thoroughly study behaviors and interests of those they think will be their early adopters. Call it talking to friends and family; but, honestly, you know that these guys live by immersing themselves in the hip culture of music, video, mobile, and computing.

The point is not to go ask your customers what they want. If you ask that question in the formative stages, then you’re doing it wrong. The point is to go immerse yourself in their environment and ask lots of “why” questions until you have thoroughly explored the ins and outs of their decision making, needs, wants, and problems. At that point, you should be able to break their needs and the opportunities down into a few simple statements of truth.

As Alan Cooper says, how can you help an end user achieve the goal if you don’t know what it is? You have to build a persona or model that accurately describes the objectives of your consumers and the problems they face with the existing solutions. The real benefit, as I saw in my years working at InstallShield and Macrovision, is that unless you put a face and expectations on that consumer, then disagreements about features or product positioning or design come down to who can pull the greatest political will—rather than who has the cleanest interpretation of the consumer’s need.

You need the right people, and you need to reward them.

The designers at Apple are paid 50% more than their counterparts at other organizations. These designers aren’t working at Apple simply because they’re paid more. They stay at Apple because of the amazing things they get to do there. Rewards are about salary and benefits, but they are also about recognition and being able to do satisfying work that challenges the mind and allows the creative muscles to stretch. Part of this also comes down to ensuring your teams are passionate about innovation and dedicated to the focus of the organization. As Jobs says, he looks for people who are crazy about Apple. So you need to look closely at the people you are hiring and whether you have the right team in the first place.



About Author

Alain Breillatt is a product manager with more than 14 years of experience in bringing new products and services to market. His previous professional lives have carried him through medical device R&D, consumer credit, IT management, software product management, and new product consulting at companies including Baxter, Sears, InstallShield, Macrovision, and Kuczmarski & Associates. As a consultant he has generated new product portfolios for Fortune 500 and smaller organizations and developed course materials on innovation for the MBA and Executive Education programs at Northwestern University’s Kellogg School of Management.

Alain is a Director of Product Management for The Nielsen Company’s syndicated consumer research solutions. Contact Alain at abreillatt@gmail.com or catch his latest insights at http://pictureimperfect.net

Friday, March 16, 2012

Installing League of Legends on Mac OS X 10.7 (Lion)

Okay... I got my Macbook Pro this week. I love it. The trackpad thingy with two-finger swipe to scroll, three-finger swipe to drag and drop and four-finger swipe to switch between full-screen apps is absolutely amazing. The trackpad is so sensitive and accurate it feels just like iPad. The only thing that I don't like is the 100% CPU usage every time I watch own3d.tv to watch my favorite League of Legends streaming because of Adobe Flash.

So it is time to solve it! In this article I want to be able to access Internet Explorer, League of Legends and Warcraft III directly from my Mac. Here's what I currently have:
- Macbook Pro MC024LL/A 17-inch laptop
- Mac OS X 10.7.3 (Lion)
- Xcode 4.3.1

I will separate it into several topics:

Installing Mac OS X 10.7 (Lion)

My Macbook Pro comes with Mac OS X 10.6 (Snow Leopard) Operating System. Most people will suggest that I upgrade it. I don't like upgrading. Maybe it's because I've had too many bad experiences with Microsoft Windows if I go to upgrade path. I always install new and fresh. That's just my habit. So how to do a clean installation of Mac OS X 10.7 on an existing Mac OS X 10.6, and have a dual-boot capability between them? It turns out to be this simple:

  • Create a new partition for Lion:
    - Launch Disk Utility (from Applications\Utilities\Disk Utility).
    - Select your hard drive (e.g. 500.11 GB Hitachi Media).
    - Click on "Partition" tab.
    - Click on "+" icon to add a new partition. Name it "Lion".
    - Set the partition size for Lion. Recommended: 20 GB or more.
    - Click "Apply".
    - A warning message that says "This partition will be added: Lion. This partition will be resized: Macbook Air". Click "Partition".

  • Install Mac OS X 10.7 Lion on the new partition:
    - Download "Install Mac OS X Lion.app" from App Store or buy it from Apple Store.
    - Double click "Install Mac OS X Lion".
    - Click "Continue" and then "Agree".
    - When it asks what drive to install on, choose "Show All Disks..."
    - Select to "Lion HD" partition.
    How to solve warning message "Features such as FileVault and Recovery Mode won't be available if you install Lion on this disk. To learn more, click More Info. To continue with the installation, click Continue. More Info: http://support.apple.com/kb/HT4649"?
    Repartition the harddisk. This time make only two partitions: "Macintosh HD" and an empty "Lion HD" with "Mac OS Extended (Journaled)" format for both partition. Then run again "Install Mac OS X" application.
    - Click on “Install” and let the installer do it’s business.
    Just let this be as it runs. You’ll see a preparation window and then after 2 minutes your Mac will reboot into the full installer. Due to the fact that you are installing from your local disk to another partition, the whole process is much faster than it would be to install from a DVD.
    When Lion is finished installing, your Mac will now automatically boot into 10.7.
    - Select Country or Region: United States
    - Choose a keyboard layout: U.S.
    - Finishing Up: Scroll to the bottom of the text and click "Start using Mac OS X Lion" button.

  • Click "Apple > Software Update...". It will download 1.92 GB of updates and this upgrades the version from Version 10.7 into the latest version (e.g. 10.7.3).

  • After reboot, click again "Apple > Software Update..." to get another updates. Do this again and again until the OS is up to date.

  • Go to "System Preferences > Startup Disk" to select which OS to be loaded by default. Or optionally during boot-up, press and hold the Option Key and it will let you select which OS you want to load.





Installing Xcode 4.3

Now Apple really make it easy to get Xcode. You can get it free from App Store.

  • Just click "App Store" and click "Install App" next to "Xcode".

  • And to prepare for MacPort, you need to install "Command Line Tools" as well.
    - Launch Xcode (from Applications\Xcode).
    - Click "Xcode > Preferences...". Click "Downloads" tab.

  • - On "Command Line Tools", click "Install".





Installing Wine

Wine is Windows emulator. I have used it on Linux since 10 years ago. Well, at that time it can only run Minesweeper or Solitaire. But now, it has grown to be able to run the most demanding Windows applications. Here's how to install it easily on Mac OS:

  • Install MacPorts
    - Download the latest version of MacPorts (e.g. 2.0.4) from http://www.macports.org/
    - Double click "MacPorts-2.0.4-10.7-Lion.dmg"
    - Double click "MacPorts-2.0.4.pkg"
    - Follow the installation guide
    - Verify by running: /opt/local/bin/port

    np-j0a0cj030187:~ kevin$ /opt/local/bin/port
    MacPorts 2.0.4
    Entering interactive mode... ("help" for help, "quit" to quit)
    [Users/kevin] > quit
    Goodbye
    np-j0a0cj030187:~ kevin$


  • Install Wine
    It's suppose to be this simple: sudo port install wine

  • Special instructions
    Well... I got this error while running above instruction "You may need to run `sudo xcode-select -switch /Applications/Xcode.app`". So all you have to do is to exactly do that instruction. A very nice guide for troubleshooting can be found here.

    np-j0a0cj030187:~ kevin$ sudo port install wine
    WARNING: Improper use of the sudo command could lead to data loss
    or the deletion of important system files. Please double-check your
    typing when using sudo. Type "man sudo" for more information.
    To proceed, enter your password, or type Ctrl-C to abort.
    Password:
    Warning: xcodebuild exists but failed to execute
    Warning: Xcode appears to be installed but xcodebuild is unusable; some ports will likely fail to build.
    Warning: You may need to run `sudo xcode-select -switch /Applications/Xcode.app`
    Warning: The Command Line Tools for Xcode don't appear to be installed; most ports will likely fail to build.
    Warning: See http://guide.macports.org/chunked/installing.xcode.html for more information.
    ---> Computing dependencies for wineError: Unable to execute port: can't read "build.cmd": Failed to locate 'make' in path:
    '/opt/local/bin:/opt/local/sbin:/bin:/sbin:/usr/bin:/usr/sbin' or at its MacPorts configuration time location, did you move it?
    To report a bug, see
    np-j0a0cj030187:~ kevin$
    np-j0a0cj030187:~ kevin$ xcode-select -print-path
    xcode-select: Error: No Xcode folder is set. Run xcode-select -switch to set the path to the Xcode folder.
    np-j0a0cj030187:~ kevin$
    np-j0a0cj030187:~ kevin$ sudo xcode-select -switch /Applications/Xcode.app
    np-j0a0cj030187:~ kevin$ xcode-select -print-path
    /Applications/Xcode.app/Contents/Developer
    np-j0a0cj030187:~ kevin$


  • It will take about 2 hours to download and compile all required dependencies for wine and the wine itself. Please be patient :).

    np-j0a0cj030187:~ kevin$ sudo port install wine
    ---> Computing dependencies for wine
    ---> Dependencies to be installed: apple-gcc42 bison gettext expat expat expat libiconv gperf gperf libiconv libiconv ncurses ncursesw ncursesw ncurses ncurses gettext m4 m4 bison flex flex fontconfig freetype bzip2 zlib zlib zlib freetype fontconfig gst-plugins-base gnome-vfs desktop-file-utils glib2 libffi libffi perl5 perl5.12 gdbm gdbm perl5.12 perl5 perl5 xz xz glib2 pkgconfig pkgconfig popt gconf dbus-glib dbus gtk-doc docbook-xml docbook-xml-4.1.2 xmlcatmgr docbook-xml-4.2 docbook-xml-4.3 docbook-xml-4.4 docbook-xml-4.5 docbook-xml-5.0 docbook-xsl docbook-xsl gnome-doc-utils intltool gnome-common p5.12-getopt-long p5.12-pathtools p5.12-scalar-list-utils p5.12-xml-parser iso-codes libxslt libxml2 libxml2 libxslt libxslt py27-libxml2 python27 db46 libedit openssl openssl python_select sqlite3 python27 py27-libxml2 rarian getopt gtk2 atk gdk-pixbuf2 jasper jpeg jpeg libpng libpng tiff tiff hicolor-icon-theme pango Xft2 xrender xorg-libX11 autoconf help2man p5.12-locale-gettext automake libtool xorg-bigreqsproto xorg-inputproto xorg-kbproto xorg-libXau xorg-xproto xorg-libXdmcp xorg-libxcb xorg-libpthread-stubs xorg-xcb-proto xorg-util-macros xorg-xcmiscproto xorg-xextproto xorg-xf86bigfontproto xorg-xtrans xorg-renderproto xrender cairo libpixman xorg-xcb-util shared-mime-info xorg-libXcomposite xorg-compositeproto xorg-libXext xorg-libXfixes xorg-fixesproto xorg-libXcomposite xorg-libXcursor xorg-libXcursor xorg-libXdamage xorg-damageproto xorg-libXi xorg-libXi xorg-libXinerama xorg-xineramaproto xorg-libXinerama xorg-libXrandr xorg-randrproto xorg-libXrandr orbit2 libidl policykit eggdbus gnome-mime-data gstreamer gzip texinfo gstreamer libtheora libvorbis libogg orc lcms mesa makedepend xorg-dri2proto xorg-glproto xorg-libXmu xorg-libXt xorg-libsm xorg-libice xorg-libsm xorg-libXxf86vm xorg-xf86vidmodeproto
    ---> Fetching apple-gcc42
    ---> Attempting to fetch gcc-5666.3.tar.gz from http://ykf.ca.distfiles.macports.org/MacPorts/mpdistfiles/apple-gcc42
    ---> Verifying checksum(s) for apple-gcc42
    ---> Extracting apple-gcc42
    ---> Applying patches to apple-gcc42
    ---> Configuring apple-gcc42
    ---> Building apple-gcc42

    ---> Fetching archive for wine
    ---> Attempting to fetch wine-1.4_2.darwin_11.i386.tbz2 from http://packages.macports.org/wine
    ---> Fetching wine
    ---> Attempting to fetch wine-1.4.tar.bz2 from http://cdnetworks-us-1.dl.sourceforge.net/project/wine/Source
    ---> Attempting to fetch wine_gecko-1.4-x86.msi from http://cdnetworks-us-1.dl.sourceforge.net/project/wine/Wine%20Gecko/1.4
    ---> Verifying checksum(s) for wine
    ---> Extracting wine
    ---> Applying patches to wine
    ---> Configuring wine
    ---> Building wine
    ---> Staging wine into destroot
    ---> Installing wine @1.4_2
    ---> Activating wine @1.4_2
    ---> Cleaning wine
    np-j0a0cj030187:~ kevin$






War Craft III

War Craft III Frozen Throne runs perfect without introduction movie. Perhaps additional steps are needed to support movies playing in War Craft. Here's what I did:

  • Copy "Warcraft III" directory into anywhere (I'm using /Users/kevin/Documents/Windows/GAMES/). But any directory should be fine.

  • Rename "Movies" directory so that War Craft III wouldn't load it:

    $ mv Movies Movies.bck

  • Launch using wine:

    $ wine war3.exe -opengl -window






League of Legends

Running League of Legends on Wine is way harder than War Craft III. You must install vcrun2005 and wininet. And the easiest way to do that is by using winetricks.


  • Installing winetricks:

    $ sudo port install winetricks

  • Installing additional Windows native libraries using winetricks:
    Visual C++ Runtime 2005 is required otherwise the application crashes with error "wine: Unimplemented function msvcp80.dll". And wininet library is required to log in.

    $ winetricks vcrun2005
    $ winetricks wininet

  • I'm still unable to play. After champion selection, it crashes. I'll update you later if I found the solution.

Saturday, March 10, 2012

Five Reasons Why Developers are Switching to Mac

This article is taken from this link.

Designers and developers have many choices to make when it comes to getting work done, from what frameworks, languages, and image editing software to use, to what platform to run. The latter is an oft debated and controversial topic and the mere mention of it risks setting off flame wars of epic proportions, so in the interest of sanity, we’ll try to avoid any direct comparisons to other operating systems.

It’s no secret that there has been a growing trend in recent years toward developers, especially of the web variety, choosing a Mac as their main dev machine. In this two-part series, we will examine some of the reasons behind this trend, look at some of the pitfalls of switching to the Mac, and go over the must-have software and configurations every switcher should be aware of.


First Reason for Switching: Mac OS X

You may have noticed the rise in the number of colleagues and fellow developers who are choosing a Mac as their next computer. If you haven’t, you’re probably either working for Microsoft or you have an MBA. So why is it so compelling?

If you were to ask a die-hard Windows user why he or she thinks people like Macs, they would almost invariably say the reasons are purely about aesthetics. If you were to ask most web developers why they have switched to a mac, however, the refrain would be loud and unanimous: OS X. To be fair to Windows, in terms of raw capability the two offerings differ very little; with enough elbow grease, both systems can be configured in pretty much any way its users wish.

When pressured to explain why they prefer OS X, Mac users often rest on qualifiable and subjective arguments such as “it feels intuitive” or “I enjoy using it more” or even “I can’t explain why I like it better, I just do.” The Windows user, when presented with these arguments, usually rolls his or her eyes and continues on their way. It isn’t until someone truly makes up their own mind to give OS X an honest chance that they can understand what all the fuss is about.

A Few Quantifiable Benefits of OS X include:

  • Open Source Friendly

    As a web developer, if there’s one skill you invariably have to develop, it’s the use of a *NIX terminal. Luckily, because OS X is built on top of UNIX, the terminal is ready and waiting. Every Apple ships with a wide variety of open source programming tools and frameworks built in such as PHP, Apache, and Ruby on Rails. Linux users who have grown tired of dealing with hardware issues, especially on laptops, often choose a Mac as their portable solution because it is UNIX based.

    It means that the entire world of open source software out there is pretty much guaranteed to run without much hassle. In a world where open source software is a way of life, web developers need a friendly environment to operate in.


  • Quartz Extreme

    Quartz is the OpenGL powered windowing system used by OS X. Quartz extreme utilizes the graphics card exclusively, which means no processor cycles are taxed. This allows for a variety of useful features such as Exposé, which dynamically resizes every window on the screen giving you a bird’s eye view of your entire workspace.

    Spaces, a feature introduced in OS X 10.5 (Leopard) takes the bird’s eye view a step further by providing a view of multiple desktops. To further illustrate the point, you can activate Exposé inside Spaces and drag these windows from desktop to desktop – any videos that are playing will continue to play and the windows will dynamically resize to accommodate the extra window. Once you get used to this sort of thing, you wonder how you ever lived without it.


  • Core Animation

    Core animation provides a way for developers to produce animated user interfaces via an implicit animation model as well as an ‘explicit’ model. In other words, it means some very flashy and useful features are going to start showing up in OS X applications much like the animated menu help system shown in the graphic above. Prodiving developers with a toolset to implement these types of animated effects means software will become more intuitive.


  • Built-in Tools

    There are so many useful tools that are built in to the Mac that come in handy for designers and developers that it’s easy to see OS X was built with developers and creative professionals in mind. Take the built-in screen capturing utility “Grab” for OS X, which has a wide variety of options, from selecting down to the pixel the area you want to screenshot, to providing window captures complete with the window frame, to outputting directly to the desktop as a .PNG file.

    In fact, some tools were created specifically for designers because Apple has long catered to the creative professional market (indeed, it sustained Apple during their darkest times). More built in tools include: The Digital Color Meter – a tool that allows you to grab the color value of any pixel on your screen; Console – Useful for viewing very large log files; Terminal – Mentioned above, complete with many OS X tools like VIM; XCode Tools – The Apple development IDE; Zoom – easy-as-pie down-to-the-pixel zooming; Safari Debug Mode – Similar to Firebug for Firefox; Time Machine – dead simple automated backups.


  • Unified User Interface

    As any student of design knows, consistency is one of the most important principles to adhere to, and it is clear the OS X UI was designed with this in mind. Because of the strict user interface guidelines provided by the Apple software development tools, applications and utilities on a Mac feel like they are all part of the same system.

    The menu bar, which for some switchers can be a difficult feature to get used to, adheres to this unification by standardizing the location and layout of the menu options. Drag-and-drop functionality is ubiquitous. Being able to do things like drag an image off your web browser directly into your Photoshop project are a boon to productivity. If it feels as though you should be able to drag-and-drop something, you probably can.


  • Security

    Now before you crack your knuckles and start composing your diatribe about why Macs aren’t any more secure than PCs, let me point out a trite but undebatable fact: there’s simply less malware out there for Macs than PCs – a LOT less (partly because Unix is inherently more secure than Windows and partly because Windows is just more wide-spread and Mac users aren’t targeted that often – read more in the article Is The Mac Really More Secure Than Windows?). If you are on a Mac, at least for the next few more years, you can pretty much rest assured your days of worrying about virus and spyware scans are a thing of the past.


  • Textmate, Growl, Quicksilver, and more

    There is no shortage of text editors available to developers, but one that seems to keep coming up in recommendation after recommendation is Textmate, the lightweight GUI text editor for OS X. The project management drawer makes it easy to keep track of folders, which for monolithic MVC frameworks like Ruby on Rails and CakePHP is a godsend.

    Nested scopes allow users to create their own syntax highlighting which is important in the ever changing world of web development. To speed up the development process, one can utilize “snippets” or pieces of reusable code that can be inserted with a few key strokes. While there aren’t any features that are revolutionary, they are combined in a way that makes for a very unobtrusive coding experience that seems very in tune with the overall feel of a Mac.

    In addition to Textmate, there is a whole host of other beloved applications that seem to have been created by people who truly understand and want to emulate the Mac experience, like the quick-launch solution Quicksilver, the system notifications app Growl, and the chat client Adium. These are pieces of software of a caliber that is sometimes difficult to find on Windows. It seems that quality, not quantity, is the best way to describe the Mac software library.


  • Quick Look

    OS X not only has icons that display an actual miniature version of the file they are representing, but it’s possible to view the contents of the file in their full glory without having to launch the program they are associated with simply by hitting the space bar. Furthermore, if a group of icons are highlighted, they can be expanded into a gallery view.


  • Virtualization

    OS X is the only OS you can get that can virtualize all three major operating systems out of the box. This is a must have for checking browser compatibility. To make life even easier, you can do it right from within OS X using programs like Parallels, Virtualbox, and VMWare Fusion. And if you think web browsers render websites exactly the same regardless of the operating system they’re running on you are sorely mistaken.




Second Reason for Switching: Intel Inside

When Apple made the switch to Intel chips, it upset a lot of Mac fans out there who liked the fact that Apple wasn’t the same as any other X86 box on the market. With the rise in mobile computing, however, Apple was forced to face the fact that the PowerPC wasn’t offering as good a solution as Intel.

They also knew that by offering a system that could run Windows in addition to OS X they would put to rest any compatibility arguments. It turned out to be a good strategical move, and droves of would-be switchers were finally able to take the plunge without being forced to give up their entire libraries of Windows-based software.

OS X can virtualize all three major operating systems out of the box. This is a must have for checking browser compatibility. To make life even easier, you can do it right from within OS X using programs like Parallels, Virtualbox, and VMWare Fusion. And if you think web browsers render websites exactly the same regardless of the operating system they’re running on you are sorely mistaken.


Third Reason for Switching: Less Hassle


  • Opinionated Software

    Some people like hassle. In fact, developers typically love getting their hands dirty customizing, maintaining, and tweaking their operating systems. If you fall under this category, Linux is probably your best fit, followed by Windows. OS X is more opinionated than other platforms. It’s more difficult to customize its look and feel, there’s no easy way to get it to run on anything but Apple hardware, and OS X can be very particular about the way certain things are done.

    Opionated software, however, can have its benefits. While it may be more difficult to customize and hack every last aspect of your OS, sometimes it can be nice to have a system where a good many of these choices have already been made for you. Because Apple provides a complete solution, from the operating system to the hardware to a lot of the software that’s bundled in, they have an easier go of making sure the experience is seemless and well tested. Opinionated software can be a very polarizing concept, however.

    Take Ruby on Rails for instance, a web development framework where many decisions are made for the developer based on the core contributors’ opinions about best practices. Rails has a preferred javascript framework, database ORM, templating system, and more. You can choose other configurations if you want to, but it shines brightest when you do things the “Rails Way.”

    You spend less time customizing and more time actually developing. This hands-off approach can be a major turn off for some developers, but for others it removes a lot of the hassle and reinventing of the wheel. The high rate of Mac ownership among Rails developers could be directly attributed to the analogous nature of Apple and Rails. The analogy is made more apt by any number of PHP vs Ruby on Rails flame wars you can find out there.


  • Support

    Because Apple provides the whole solution, they are obligated to provide support for the whole solution as well. Most developers are perfectly willing to trouble shoot their own computers, but when deadlines need to be met it can be nice knowing that you can offload some of that hassle to people who already know the system inside and out.

    Apple has impressive customer service specifically because they support the entire system, rather than just one aspect of the system. It’s also handy to be able to take your machine into an actual brick-and-mortar store rather than deal with outsourced phone support.

    Let’s face it, when it comes to a non-technical spouse or family member, we can expect to do a lot of troubleshooting. Just like its nice not to have to worry about troubleshooting your own computer, it’s even nicer not to have to worry as much about other people’s computers. It is reasonable to assume that because Macs typically have less security issues (at least for now), there’s less time spent trying to explain how to avoid malware and actually removing it.




Fourth Reason for Switching: Microsoft

If you like it or not: a big reason why developers have been flocking to Apple is in part due to the fact that it isn’t the big M. When personal computing was still in its infancy, the reverse was true. Microsoft understood that it was the developers (developers developers) that would make their OS successful while Apple’s closed model ended up being a huge mistake.

Once Microsoft started dominating the marketplace, however, the pungent stench of monopoly sparked the open source movement, and more and more developers were starting to wonder if there were better options out there.

Linux is of course the golden child of the open source movement, but despite the efforts of Ubuntu it is still a ways off in terms of being a turnkey solution for most people. Enter Apple: a Unix based system that despite being every bit as closed as Microsoft, is in large part the antithesis of Microsoft.

Microsoft software has the unfortunate feeling of having been designed by committee. Features are packed in with little regard to their usefulness, and aesthetics are seemingly an afterthought. When Vista first launched, the Aero user interface was so flashy it required higher end machines to even run it, somewhat defeating the argument Microsoft was making about the affordability of PCs. OS X was designed to run as well on the most expensive Mac Pro as it would an eight year old Powerbook because they control the solution from hardware to software.

Unfortunately, Windows doesn’t come bundled with PHP, Rails, or any other open-source web development frameworks or languages any time soon. More and more of what we do is in the cloud these days anyways and it is almost starting to feel quaint when you come across new software that runs solely as a desktop client. Microsoft has painted themselves into a corner – they rely on closed formats and standards in a world where open source software, open formats, and open standards are king.


Fifth Reason For Switching: Design and Minimalism

Good design gets out of the way. It doesn’t demand to be seen or appreciated. Most of all, good design is something you don’t even notice at first. Bang & Olufsen understands this, and Apple understands this. As of this writing, there are only two styles of Apple notebook: silver and white, and white is only available in the cheapest configuration. Apple notebooks are free of stickers, screws, vents, buttons, switches, and graphics.

What this leaves is a system with little to look at other than the screen in front of you, which is as it should be. The benefit of the entire product development cycle being done under one house is that Apple creates a system that truly feels as though it was created by one person.

At the heart of Apple’s design philosophy is the concept of minimalism. It is a concept that has worked well for companies such as Google. We all remember the gratuitous placement of links and ads on most search engines before Google came around with its simple search bar. After all, it was the search that was the important part, not the content the provider was hoping we would want. Apple figures if not including a feature angers 1% of their consumer base but makes things easier for the other 99% it’s probably worth doing.

Take, for instance, the lack of a second mouse buttom. It may seem like a glaring omission on Apple’s part, but it has had some unintended consequences: because developers can’t simple throw commands into a bloated right-click menu they are forced to think more about the one-click usability of their applications.

Minimalist design has its downsides too, however. Macs lack card readers, often have 2-3 less USB ports than even low end machines, and are typically difficult to customize. For those of you who value a product that gives you many choices, Apple is going to fall short. It is often pointed out that upgrading a Mac is easy: “Just throw it away and buy a new one.”

Humor aside, this isn’t too far from the truth but the good news is that Macs hold their value better than any computer on the market. Instead of throwing it away, sell it on Ebay for healthy head-start on a new machine.




Mac's Pitfalls

It’s not all sunshine and rainbows for everyone who switches to a Mac. There are the inevitable bumps in the road that everyone experiences when making a major platform change, and for some people these bumps are outright road blocks. Here’s what to be aware of:


  • Control is now Command

    Breaking the habit of using control as the main modifier key on your system can take a bit of time and some people never quite get the hang of it. Old habits die hard and muscle memory dies harder. This is a problem that can be solved by re-mapping command to the control key, but when you are using a system that assumes a certain configuration you may run into confusion later on.


  • No Second Mouse Button

    Unless you use an external mouse with your Apple laptop you will have to get used to the lack of a second mouse button. The truth is there is no optimal number of mouse buttons. Luckily, you can enable right-clicking in a number of ways on a mac, such as tapping the track pad with two fingers simultaneously or holding ctrl when clicking.


  • No Maximizing of Windows

    This is actually starting to become less true as time goes on as ex-Windows users who develop software for the Mac include the feature (for instance, maximize on firefox for the Mac works as expected). But the typical maximize you are used to in Windows cannot be found on the Mac, and for some this can be extremely frustrating. In fact, the whole “stop-light” window controls can at times feel stale and unintuitive.


  • Lack of an “affordable” Mac

    Perhaps the most popular sticking point of non-Mac users, price is always at the heart of the debate. Under $1200 or so, there is no question that byte for byte, ghz for ghz, you can get a better raw value by avoiding Apple. Apple has chosen not to enter the sub $1000 PC not because it doesn’t want to grow sales, but because it wants to avoid the dogfight that Sony, HP, and other brands are in for the lower end market.

    Profit margins are razor thin in that range, after all. Apple is certainly catering to the botique style consumer. If you are pinching pennies these days the price issue may just be the one pitfall you can’t bring yourself to overcome.


  • Much Smaller Software Library

    While this is somewhat mediated by the fact that you can virtualize Windows on a Mac, it is a far cry from being able to run your favorite programs natively on your system. If you are using software on a regular basis that only runs in the Windows environment, you may want to think hard about whether moving to a Mac is worth the trouble.


  • You Can’t Build a Mac (Easily)

    Part of the success of Windows was the fact that they licensed it to run on any PC, anywhere. Apple has been closed since the word go, save a brief period where they allowed Mac clones to exist in what turned out to be a devastatingly bad idea. If you’re the type who loves building your own PC from scratch, a Mac is not going to offer much for you.

    In general, even the most jaded Windows user is inevitably going to miss at least a few features or aspects of Windows during their switch to a Mac. The best policy to follow is to keep an open mind during the learning process. Try doing things “the Mac way” for a week and keep your skepticism to a minimum.

    Above all, ask questions before you make assumptions. There’s a fervent Apple community out there (in case you haven’t noticed) that have solutions for every issue you find, thanks in part to the fact that most of them are switchers themselves. Remember, if you’re having the issue, chances are good some other switcher experienced it before you and created or found a solution.




Conclusion

While not the right solution for everyone, it’s clear that many people are switching to a Mac these days for a good many reasons. Nevertheless, Macs are expensive and require user’s patience and willingness to adapt his or her behavior to a compltely different interface. Mac is certainly not an option for every user, but it is definitely an option worth considering – particularly for designers or developers.



By: Mark Nutter