Models and iterations Every month or so, Manock and Oyama would present a new iteration based on Jobs's previous criticisms. The latest plaster model would be dramatically unveiled, and all the previous attempts would be lined up next to it. That not only helped them gauge the design's evolution, but it prevented Jobs from insisting that one of his suggestions had been ignored. Walter Isaacson, Steve Jobs iterationprototypes
The fastest way to learn something is to do something An Article by David R. MacIver notebook.drmaciver.com Suppose you have a problem to solve. What do you do? Well, you sit down and think real hard, and after extensive and careful planning you try the well thought out and rigorous solution that you have thought up. Right? No, wrong! Bad. The correct thing to do when you have a problem is: Think for a short amount of time. Make sure it is safe to try things. Try something you think will work. Observe the result. If you succeeded, yay you solved the problem! If it didn't work, think about what that means for the nature of the problem and try again. The Feynman Algorithm problemsprototypesfeedback
Game feel An Article by Dave Rupert daverupert.com How do you make a game that’s fun? ...You have to focus on gameplay. In order for the final product to be fun and exciting, the core game play needs to be fun and exciting. The creator of Mario calls this 手応え (tegotae), which is often translated as “game feel”. To find this game feel, you need to build small prototypes around a single idea, play test them, and then follow the fun. Nintendo does this, indie game devs do this; this is the not-so-secret of the gaming industry. Follow the funFollow the brush prototypesmakinggames
The Fidelity Curve An Article by Ryan Singer m.signalvnoise.com How do we choose which level of fidelity is appropriate for a project? I think about it like this: The purpose of making sketches and mockups before coding is to gain confidence in what we plan to do. I’m trying to remove risk from the decision to build something by somehow “previewing” it in a cheaper form. There’s a trade-off here. The higher the fidelity of the mockup, the more confidence it gives me. But the longer it takes to create that mockup, the more time I’ve wasted on an intermediate step before building the real thing. I like to look at that trade-off economically. Each method reduces risk by letting me preview the outcome at lower fidelity, at the cost of time spent on it. The cost/benefit of each type of mockup is going to vary depending on the fidelity of the simulation and the work involved in building the real thing. Four levels of fidelityTime to build versus confidence gained prototypesinterfaces
Functional Prototyping. A Missed Opportunity in Web Design An Essay by Chuánqí Sun medium.com Prototyping allows engineers in various industries to “fail fast, fail cheap”, “select the best from the pool”, and “bring in the reality”. prototypessoftware
A Plea for Lean Software An Essay by Niklaus Wirth cr.yp.to Software's girth has surpassed its functionality, largely because hardware advances make this possible. The way to streamline software lies in disciplined methodologies and a return to the essentials. Measured by the number of its featuresEssential vs. nice to haveDependence is more profitable than educationThe most rewarding iterationsNever enough time A grossly obese set of requirementsFeatures and complexity softwareperformancefunction
Measured by the number of its features A primary cause of complexity is that software vendors uncritically adopt almost any feature that users want. Any incompatibility with the original system concept is either ignored or passes unrecognized, which renders the design more complicated and its use more cumbersome. When a system's power is measured by the number of its features, quantity becomes more important than quality. Every new release must offer additional features, even if some don't add functionality. featuresqualitycomplexity
Essential vs. nice to have Customers have trouble distinguishing between essential features and those that are just "nice to have." Examples of the latter class: those arbitrarily overlapping windows suggested by the uncritically but widely adopted desktop metaphor; and fancy icons decorating the screen display, such as antique mailboxes and garbage cans that are further enhanced by the visible movement of selected items toward their ultimate destination. These details are cute but not essential, and they have a hidden cost. / Increased complexity results in large part from our recent penchant for friendly user interaction. I've already mentioned windows and icons; color, gray-scales, shadows, pop-ups, pictures, and all kinds of gadgets can easily be added. Menus, Metaphors and Materials: Milestones of User Interface Designlittlebigdetails interfacesux
Dependence is more profitable than education A customer who pays—in advance—for service contracts is a more stable income source than a customer who has fully mastered a product's use. Customer dependence is more profitable than customer education. What I find truly baffling are manuals—hundreds of pages long—that accompany software applications, programming languages, and operating systems. Unmistakably, they signal both a contorted design that lacks clear concepts and an intent to hook customers. The design concept documentation
The most rewarding iterations Initial designs for sophisticated software applications are invariably complicated, even when developed by competent engineers. Truly good solutions emerge after iterative improvements or after redesigns that exploit new insights, and the most rewarding iterations are those that result in program simplifications. Evolutions of this kind, however, are extremely rare in current software practice—they require time-consuming thought processes that are rarely rewarded. Instead, software inadequacies are typically corrected by quickly conceived additions that invariably result in the well-known bulk. So that you can get feedback on it and make it betterTo anticipate all the uses and abuses agileiteration
Never enough time Time pressure is probably the foremost reason behind the emergence of bulky software. The time pressure that designers endure discourages careful planning. It also discourages improving acceptable solutions; instead, it encourages quickly conceived software additions and corrections. Time pressure gradually corrupts an engineer's standard of quality and perfection. It has a detrimental effect on people as well as products. Deadlines are bullshitThe Thing-deadline calculus