Creative Selection: Inside Apple's Design Process During the Golden Age of Steve Jobs
Rate it:
Open Preview
19%
Flag icon
Like the movie, demos should be specifically choreographed, so it’s clear what must be includ...
This highlight has been truncated due to consecutive passage length restrictions.
19%
Flag icon
Those things that aren’t the main focus of a demo, but are required to create the proper setting, must be realized at the correct level of detail so they contribute to ...
This highlight has been truncated due to consecutive passage length restrictions.
20%
Flag icon
When I make a demo, I think about the intended audience, and I make a specific decision about what features to include. I draw a conceptual ring around those key details, and I use a thick imaginary marker to do it.
20%
Flag icon
The demo points inside the ring are the focus, and like the lamppost in the movie scene, I depict them with the highest fidelity. I leave outside the ring other less important details that will eventually have to be addressed, but not immediately. I pay them as little attention as possible. Like the inside of the hat shop, I omit them from the demo if I can get away with it.
20%
Flag icon
I take extra care at the...
This highlight has been truncated due to consecutive passage length restrictions.
20%
Flag icon
Some elements are right on the thick imaginary line, details that need some attention, since they help to set the scene and get my...
This highlight has been truncated due to consecutive passage length restrictions.
20%
Flag icon
I want my demo audience to think they’re looking at something real, even though they aren’t.
20%
Flag icon
I know the demo isn’t an actual product, and my audience knows it too, but creating the illusion of an actual product is essential during the development process to maintain the vision of what we’re actually trying to achieve,
20%
Flag icon
one final characteristic shared between backlot scenes and software demos—both
20%
Flag icon
both are elements in larger narratives.
20%
Flag icon
Each advances it...
This highlight has been truncated due to consecutive passage length restrictions.
20%
Flag icon
Look for ways to make quick progress. Watch for project stalls that might indicate a lack of potential. Cut corners to skip unnecessary effort. Remove distractions to focus attention where it needs to be. Start approximating your end goal as soon as possible. Maximize the impact of your most difficult effort. Combine inspiration, decisiveness, and craft to make demos.
21%
Flag icon
Adapting the code written for one operating system so that it works on another is common enough that programmers have a word to describe the task:
21%
Flag icon
porting.
21%
Flag icon
The Mozilla project leaders had designed a system they hoped would turn their software into components they could snap together like LEGOs.
21%
Flag icon
However, this scheme required reams of extra boilerplate code—programmers had to do something like filling out a pile of forms to register new code with this reuse system—and this buried their browser in red tape.
21%
Flag icon
Now that we saw the implications of this engineering decision and the resulting 10:1 ratio of Mozilla code to Konqueror code, it seemed obvious that their com...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
Mozilla was bloated, unwieldy, and...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
The Konqueror team had taken the opposite tack. Their code ...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
They prized b...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
a little knowledge of software development jargon.
21%
Flag icon
When I want a computer to perform a job, I type out my precise instructions using a programming language, like C++,
21%
Flag icon
computer programs are much like cookbook recipes.
21%
Flag icon
Both offer specific directions to accomplish a task.
21%
Flag icon
Computers speak a binary language of 0s and 1s, so to get a computer to perform my job, I have to convert my C++ code into a computer-consumable binary form using a program called a
21%
Flag icon
compiler.
21%
Flag icon
This conversion process of human-readable to machine-...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
compilation or b...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
This translation procedure also explains why lines of code written in a program...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
source...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
They’re the source material a compiler builds into (i.e., translates into) binary code...
This highlight has been truncated due to consecutive passage length restrictions.
21%
Flag icon
programmers break down all those lines into separate source code files.
22%
Flag icon
Doing this helps programmers organize and structure the separate subtasks.
22%
Flag icon
include directive,
22%
Flag icon
Include directives in software exist for the same reason as page cross-references in cookbooks. Such directives help programmers to stay organized and to have only one copy of a set of instructions for each specific task.
22%
Flag icon
This system isn’t perfect, since this cross-reference scheme introduces the possibility of mistakes.
22%
Flag icon
Mistakes like this happen all the time in programming. People are fallible and computers are unforgiving.
22%
Flag icon
Many things can go wrong when writing programs, like making an error in programming language syntax (akin to a spelling error in a cookbook) or referring to an incorrect file in an include directive (like looking on the wrong page for the Hollandaise sauce recipe).
22%
Flag icon
What’s more, compilers don’t have any capacity to understand what you mean if you do...
This highlight has been truncated due to consecutive passage length restrictions.
22%
Flag icon
Like trying to perfect a recipe in the kitchen, getting a program to build and run correctly takes a large number of tries—rewriting
24%
Flag icon
Apple didn’t separate research and development from software implementation.
24%
Flag icon
We were responsible for coming up with the ideas for our web browser and writing the shipping code that went out to customers too.
26%
Flag icon
one per cent inspiration and ninety-nine per cent perspiration.”
26%
Flag icon
For Edison, it was more important to build on promising ideas and keep working and working until an invention was made real.
26%
Flag icon
We want to believe geniuses like Edison can conjure world-changing inventions out of thin air. Easy explanations are alluring, and Edison-like inspiration seems magical.
26%
Flag icon
Perspiration, we know, involves drudgery.
26%
Flag icon
Ideas are nothing without the hard work to make them real.
27%
Flag icon
Hard work is hard. Inspiration does not pay off without diligence.
27%
Flag icon
We collaborated to get through the drudgery.
27%
Flag icon
The focus would be on one thing: