quality
It passes by the river
SAFe is oriented around volume, not value
To bring out its noblest qualities
We classify too much and enjoy too little
All the way to the last bolt
v0.crap
What excellence is
The aspiration for quality
Eating your own dog food
More profitable and a better buy
Maybe I should sharpen soon
You'll know it's there
Jobs's father had once taught him that a drive for perfection meant caring about the craftsmanship even of the parts unseen. Jobs applied that to the layout of the circuit board inside the Apple II. He rejected the initial design because the lines were not straight enough.
In an interview a few years later, after the Macintosh came out, Jobs again reiterated that lesson from his father: "When you're a carpenter making a beautiful chest of drawers, you're not going to use a piece of plywood on the back, even though it faces the wall and nobody will ever see it. You'll know it's there, so you're going to use a beautiful piece of wood on the back. For you to sleep well at night, the aesthetic, the quality, has to be carried all the way through."
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.
There is no kogin that can be called poor
Ensuring Excellence
An Article by Marty Cagan…in so many of the best product companies there is an additional dimension that goes beyond individual empowered product teams, and even goes beyond achieving business results.
It has to do with ensuring a level of what I’ll refer to here as “excellence” although that is clearly a very ambiguous term.
Over the years, this concept has been referred to by many different names, always necessarily vague, but all striving to convey the same thing: “desirability,” “aha moments,” “wow factor,” “magic experiences,” or “customer delight,” to list just a few.
The concept is that an effective product that achieves results is critical, but sometimes we want to go even beyond that, to provide something special.
Maybe it’s because we believe this is needed to achieve the necessary value. Maybe it’s because the company has built its brand on inspiring customers.
Often this dimension shows up most clearly in product design, where functional, usable but uninspiring designs can often achieve our business results, but great design can propel us into this realm of the inspiring.
Avant-Garde and Kitsch
An Essay by Clement GreenbergCapitalism in decline finds that whatever of quality it is still capable of producing becomes almost invariably a threat to its own existence.
Weinberg's Law
A Quote by Gerald WeinbergIf builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization.
The value-destroying effect of arbitrary date pressure on code
An Article by Gandalf HudlowThe mandate from above is clear, just get it done! Avoid everything that's in the way: all advice, all expertise, all discovery efforts that detract from hitting the Date™!
What these organizations don't realize is that all software change can be modeled as three components: Value, Filler and Chaos. Chaos destroys Value and Filler is just functionality that nobody wants. When date pressure is applied to software projects, the work needed to remove Chaos is subtly placed on the chopping block. Work like error handling, clear logging, chaos & load testing and other quality work is quietly deferred in favor of hitting the Date™.
Minimum Awesome Product
An Article by Carlos BeneytoUsers are accustomed to a minimum of quality, and they expect that of all new products.
If our product does not [meet basic expectations of quality], people will automatically believe that it is a bad product and they will not take it seriously. It is not what they expect.
Hence my suggestion that the MVP has died and the MAP: Minimum Awesome Product was born.
What happens to user experience in a minimum viable product?
An Article by Ryan Singer"Feature complexity is like surface area and quality of execution is like height. I want a base level of quality execution across all features. Whenever I commit to building or expanding a feature, I'm committing to a baseline of effort on the user experience."
There’s a distinction to make: The set of features you choose to build is one thing. The level you choose to execute at is another. You can decide whether or not to include a feature like ‘reset password’. But if you decide to do it, you should live up to a basic standard of execution on the experience side.
Features can be different sizes with more or less complexity, but quality of experience should be constant across all features. That constant quality of experience is what gives your customers trust. It demonstrates to them that whatever you build, you build well.
Why YKK zippers are the brown M&Ms of product design
An Article by Josh CentersA ‘pro tip’ for evaluating the quality of a piece of gear is to look at the small details, such as zippers and stitching. Cheap-minded manufacturers will skimp on those details because most people just don’t notice, and even a cheap component will often last past a basic warranty period, so it’s an easy way to increase profits without losing sales or returns.
If a designer does bother to invest in quality components, that’s a tried-and-true sign that the overall product is better than the competition.
The McNamara fallacy
A DefinitionThe McNamara fallacy, named for Robert McNamara, the US Secretary of Defense from 1961 to 1968, involves making a decision based solely on quantitative observations (or metrics) and ignoring all others. The reason given is often that these other observations cannot be proven.
The fallacy refers to McNamara's belief as to what led the United States to defeat in the Vietnam War—specifically, his quantification of success in the war (e.g., in terms of enemy body count), ignoring other variables.
Artifice, blindness, and suicide
A QuoteThe first step is to measure whatever can be easily measured. This is OK as far as it goes. The second step is to disregard that which can't be easily measured or to give it an arbitrary quantitative value. This is artificial and misleading. The third step is to presume that what can't be measured easily really isn't important. This is blindness. The fourth step is to say that what can't be easily measured really doesn't exist. This is suicide.
Figma's Engineering Values: Craftsmanship
An ArticleCraftsmanship is about thoughtfulness and care in the work we do. It means being deliberate about what we build and how possible it will be to maintain and extend in the future. A solution that will require revisiting in a month — because it’s not scaling, because it has a ton of bugs, because it doesn’t support all the use cases it needs to — is not useful to us and ultimately will generate pain for our users.
What we trade off by living this value is (sometimes) day-to-day speed. It’s easy to imagine an engineering team that emphasizes moving fast over keeping things stable and bug-free -- like a team building a product that isn’t responsible for important user data and doesn’t support anyone’s livelihood. But given the role the Figma product plays in the lives of our users, we feel it’s worth it to ensure we hold a high quality bar for them. And in the long run, being thoughtful about how we build often reduces the complexity of ongoing development and new features regardless.
The psychology of a discount
An Article by John MaedaFound on a wall.
The bitterness of poor quality remains long after the sweetness of low price is forgotten.
The Art of Doing Science and Engineering: Learning to Learn
The Art of Doing Science and Engineering is the full expression of what "You and Your Research" outlined. It's a book about thinking; more specifically, a style of thinking by which great ideas are conceived.
Gifts of knowledge to humanity
There are many commonalities we can admire in these endeavors: the dazzling leap of imagination, the broad scope of applicability, the founding of a new paradigm. But let’s focus here on their form of distribution. These are all things that are taught. To “use” them means to learn them, understand them, internalize them, perform them with one’s own hands. They are free to any open mind.
In Hamming’s world, great achievements are gifts of knowledge to humanity.
Hamming-greatness
Hamming-greatness is tied, inseparably, with the conception of science and engineering as public service. This school of thought is not extinct today, but it is rare, and doing such work is not impossible, but fights a nearly overwhelming current.
It cannot be taught in words
How to be a great painter cannot be taught in words; one learns by trying many different approaches that seem to surround the subject. Art teachers usually let the advanced student paint, and then make suggestions on how they would have done it, or what might also be tried, more or less as the points arise in the student’s head—which is where the learning is supposed to occur!
Preparing for problems
I firmly believe in Pasteur’s remark, “Luck favors the prepared mind.” In this way I can illustrate how the individual’s preparation before encountering the problem can often lead to recognition, formulation, and solution.
Student's future, not teacher's past
Teachers should prepare the student for the student’s future, not for the teacher’s past.
If you know what you are doing
In science, if you know what you are doing, you should not be doing it.
In engineering, if you do not know what you are doing, you should not be doing it.The homogeneity of knowledge
The standard process of organizing knowledge by departments, and sub-departments, and further breaking it up into separate courses, tends to conceal the homogeneity of knowledge, and at the same time to omit much which falls between the courses.
Another goal of the course is to show the essential unity of all knowledge rather than the fragments which appear as the individual topics are taught. In your future anything and everything you know might be useful, but if you believe the problem is in one area you are not apt to use information that is relevant but which occurred in another course.
An information service society
Society is steadily moving from a material goods society to an information service society. At the time of the American Revolution, say 1780 or so, over 90% of the people were essentially farmers—now farmers are a very small percentage of workers.
What will the situation be in 2020? As a guess I would say less than 25% of the people in the civilian workforce will be handling things; the rest will be handling information in some form or other. In making a movie or a tv program you are making not so much a thing, though of course it does have a material form, as you are organizing information.
From hands to machines
It has rarely proved practical to produce exactly the same product by machines as we produced by hand. Mechanization requires you produce an equivalent product, not identically the same one.
A matter of choice and balance
More than ever before, engineering is a matter of choice and balance rather than just doing what can be done. And more and more it is the human factors which will determine good design—a topic which needs your serious attention at all times.
Central planning gives poor results
Central planning has been repeatedly shown to give poor results (consider the Russian experiment, for example, or our own bureaucracy). The persons on the spot usually have better knowledge than can those at the top and hence can often (not always) make better decisions if things are not micromanaged.
"Real programmers"
At the time the Symbolic Assembly Program (SAP) first appeared I would guess about 1% of the older programmers were interested in it—using SAP was “sissy stuff,” and a real programmer would not stoop to wasting machine capacity to do the assembly.
Using your own expertise
Almost all professionals are slow to use their own expertise for their own work. The situation is nicely summarized by the old saying, “The shoemaker’s children go without shoes.”
History tends to be charitable
History tends to be charitable. It gives credit for understanding what something means when we first do it. But there is a wise saying, “Almost everyone who opens up a new field does not really understand it the way the followers do.”
The reason this happens so often is the creators have to fight through so many dark difficulties, and wade through so much misunderstanding and confusion, they cannot see the light as others can, now the door is open and the path made easy.
Mass production of variable products
Computers have opened the door much more generally to the mass production of a variable product, regardless of what it is: numbers, words, word processing, making furniture, weaving, or what have you. They enable us to deal with variety without excessive standardization, and hence we can evolve more rapidly to a desired future!
Thinking is a matter of degree
Perhaps “thinking” is not a yes/no thing, but maybe it is a matter of degree.
Making coal miners into programmers
Many humans at present are not equipped to compete with machines—they are unable to do much more than routine jobs. There is a widespread belief (hope?) that humans can compete, once they are given proper training. However, I have long publicly doubted you could take many coal miners and make them into useful programmers.
A minimum size to fish
There is the famous story by Eddington about some people who went fishing in the sea with a net. Upon examining the size of the fish they had caught, they decided there was a minimum size to the fish in the sea! Their conclusion arose from the tool used and not from reality.
Spelled with a lowercase letter
I used to tease John Tukey that you are famous only when your name was spelled with a lowercase letter such as watt, ampere, volt, fourier (sometimes), and such.
Why it can't be done
Moral: when you know something cannot be done, also remember the essential reason why, so later, when the circumstances have changed, you will not say, “It can’t be done.”
When you decide something is not possible, don’t say at a later date it is still impossible without first reviewing all the details of why you originally were right in saying it couldn’t be done.
Intellectual shelf life
Let lab equipment lie idle for some time, and suddenly it will not work properly! This is called “shelf life,” but it is sometimes the shelf life of the skills in using it rather than the shelf life of the equipment itself! I have seen it all too often in my direct experience. Intellectual shelf life is often more insidious than is physical shelf life.
Beware of jargon
Beware of jargon—learn to recognize it for what it is, a special language to facilitate communication over a restricted area of things or events. But it also blocks thinking outside the original area it was designed to cover. Jargon is both a necessity and a curse.
You cannot consume what is not produced
The only law of economics that I believe in is Hamming’s law: “You cannot consume what is not produced.” There is not another single reliable law in all of economics I know of which is not either a tautology in mathematics or else sometimes false.
I walked the crest of the dune
Thus piece by piece I walked the crest of the dune, and each time the solution slipped on one side or the other I knew what to do to get back on the track.
God loved sand
“God loved sand, He made so much of it.” I heard, inside myself, that we were already having to exploit lower-grade copper mines, and could only expect to have an increasing cost for good copper as the years went by, but the material for glass is widely available and is not likely to ever be in short supply.
The Hawthorne effect
At the Hawthorne plant of Western Electric, long, long ago, some psychologists were trying to improve productivity by making various changes in the environment. They painted the walls an attractive color, and productivity rose. They made the lighting softer, and productivity rose. Each change caused productivity to rise. One of the men got a bit suspicious and sneaked a change back to the original state, and productivity rose! Why? It appears that when you show you care, the person on the other end responds more favorably than if you appear not to care. The workers all thought the changes were being made for their benefit and they responded accordingly. In the field of education, if you tell the students you are using a new method of teaching, then they respond by better performance, and so, incidentally, does the professor. A new method may or may not be better, indeed it may be worse, but the Hawthorne effect, which is not small in the educational area, is likely to indicate that here is a new, important, improved teaching method. It hardly matters what the new method is; its trial will produce improvements if the students perceive it as being done for their benefit.
What you learn for yourself
What you learn from others you can use to follow;
What you learn for yourself you can use to lead.The unreasonable effectiveness of mathematics
We now see that all this “truth” which is supposed to reside in mathematics is a mirage. It is all arbitrary, human conventions.
But we then face the unreasonable effectiveness of mathematics. Having claimed there was neither “truth” nor “meaning” in the mathematical symbols, I am now stuck with explaining the simple fact that mathematics is used and is an increasingly central part of our society, especially in science and engineering. We have passed from absolute certain truth in mathematics to the state where we see there is no meaning at all in the symbols—but we still use them! We put the meaning into the symbols as we convert the assumptions of the problem into mathematical symbols, and again when we interpret the results. Hence we can use the same formula in many different situations—mathematics is sort of a universal mental tool for clear thinking.
What can be put into words
It is not evident, though many people, from the early Greeks on, implicitly act as if it were true, that all things, whatsoever they may be, can be put into words—you could talk about anything: the gods, truth, beauty, and justice. But if you consider what happens in a music concert, then it is obvious that what is transmitted to the audience cannot be put into words—if it could, then the composer and musicians would probably have used words. All the music critics to the contrary, what music communicates cannot (apparently) be put into words. Similarly, but to a lesser extent, for painting. Poetry is a curious field where words are used but the true content of the poem is not in the words!
Initial psychological distance
Creativity seems, among other things, to be “usefully” putting together things which were not perceived to be related before, and it may be the initial psychological distance between the things which counts most.
Tossing an idea around
Can we do anything to increase creativity? There are training courses, and books, as well as “brainstorming sessions” which are supposed to do this. Taking the brainstorming sessions first, while they were very fashionable at one time, they have generally been found to be not much good when formally done, when a brainstorming session is carefully scheduled. But we all have had the experience of “tossing an idea around” with a friend, or a few friends (but not a large group, generally), from which insight, creativity, or whatever you care to call it, arises and we make progress.
Prepare your mind for the future
Probably the most important tool in creativity is the use of an analogy. Something seems like something else which we knew in the past. Wide acquaintance with various fields of knowledge is thus a help—provided you have the knowledge filed away so it is available when needed, rather than to be found only when led directly to it. This flexible access to pieces of knowledge seems to come from looking at knowledge while you are acquiring it from many different angles, turning over any new idea to see its many sides before filing it away. This implies effort on your part not to take the easy, immediately useful “memorizing the material” path, but to prepare your mind for the future.
Stuck with a problem
If you cannot drop a wrong problem, then the first time you meet one you will be stuck with it for the rest of your career.
Experts and impossibility
If an expert says something can be done he is probably correct, but if he says it is impossible then consider getting another opinion.
Always time to fix it later
As the saying goes:
There is never time to do the job right, but there is always time to fix it later,
especially in computer software!
The average adult
Averages are meaningful for homogeneous groups (homogeneous with respect to the actions that may later be taken), but for diverse groups averages are often meaningless. As earlier remarked, the average adult has one breast and one testicle.
Solution to evaluation and back again
A second reason the systems engineer’s design is never completed is the solution offered to the original problem usually produces both deeper insight and dissatisfactions in the engineers themselves.
Furthermore, while the design phase continually goes from proposed solution to evaluation and back again and again, there comes a time when this process of redefinement must stop and the real problem be coped with—thus giving what they realize is, in the long run, a suboptimal solution.
The heart of systems engineering
While the client has some knowledge of his symptoms, he may not understand the real causes of them, and it is foolish to try to cure the symptoms only. Thus while the systems engineers must listen to the client, they should also try to extract from the client a deeper understanding of the phenomena. Therefore, part of the job of a systems engineer is to define, in a deeper sense, what the problem is and to pass from the symptoms to the causes.
Just as there is no definite system within which the solution is to be found, and the boundaries of the problem are elastic and tend to expand with each round of solution, so too there is often no final solution, yet each cycle of input and solution is worth the effort. A solution which does not prepare for the next round with some increased insight is hardly a solution at all.
I suppose the heart of systems engineering is the acceptance that there is neither a definite fixed problem nor a final solution, rather evolution is the natural state of affairs. This is, of course, not what you learn in school, where you are given definite problems which have definite solutions.