The magic of software; or, what makes a good engineer also makes a good engineering organization
moxie.org
The magic of software; or, what makes a good engineer also makes a good engineering organization
Don and Richard endured this build ordeal along with me, and during lunch and coffee breaks we commiserated with each other about how bored we were. We couldn’t fob this work off on junior programmers or interns either. Apple didn’t work like that. Secrecy was one reason, but, more important, Apple didn’t separate research and development from soft
... See moreThe dilemma is a cruel one. For efficiency and conceptual integrity, one prefers a few good minds doing design and construction. Yet for large systems one wants a way to bring considerable manpower to bear, so that the product can make a timely appearance. How can these two needs be reconciled? Mills's Proposal A proposal by Harlan Mills offers a f
... See moreMost of the big last gains in software productivity have come from removing artificial barriers that have made the accidental tasks inordinately hard, such as severe hardware constraints, awkward programming languages, lack of machine time. How much of what software engineers now do is still devoted to the accidental, as opposed to the essential? U
... See moreWith this in mind, here are the basic steps to organizational design: 1. Figure out what needs to be communicated. Start by listing the most important knowledge and who needs to have it. For example, knowledge of the product architecture must be understood by engineering, QA, product management, marketing, and sales. 2. Figure out what needs to be
... See more