Author: Alan M. Davis
Publisher: Wiley-IEEE Computer Society Press
ISBN:
Category : Business & Economics
Languages : en
Pages : 296
Book Description
The industry’s most outspoken and insightful critic explains how the software industry REALLY works. In Great Software Debates, Al Davis, shares what he has learned about the difference between the theory and the realities of business and encourages you to question and think about software engineering in ways that will help you succeed where others fail. In short, provocative essays, Davis fearlessly reveals the truth about process improvement, productivity, software quality, metrics, agile development, requirements documentation, modeling, software marketing and sales, empiricism, start-up financing, software research, requirements triage, software estimation, and entrepreneurship. He will get you thinking about: The danger of following trends and becoming a ‘software lemming’ Is software development art or engineering? How to survive management mistakes The bizarre world of software estimation How to succeed as software entrepreneur How to resolve incompatible schedules and requirements If you are in the software industry and do not know which way to turn, Great Software Debates provides valuable and insightful advice. Whether you are a software developer, software manager, software executive, entrepreneur, requirements writer, architect, designer, or tester, you will find no shortage of sound, palatable advice.
Great Software Debates
Author: Alan M. Davis
Publisher: Wiley-IEEE Computer Society Press
ISBN:
Category : Business & Economics
Languages : en
Pages : 296
Book Description
The industry’s most outspoken and insightful critic explains how the software industry REALLY works. In Great Software Debates, Al Davis, shares what he has learned about the difference between the theory and the realities of business and encourages you to question and think about software engineering in ways that will help you succeed where others fail. In short, provocative essays, Davis fearlessly reveals the truth about process improvement, productivity, software quality, metrics, agile development, requirements documentation, modeling, software marketing and sales, empiricism, start-up financing, software research, requirements triage, software estimation, and entrepreneurship. He will get you thinking about: The danger of following trends and becoming a ‘software lemming’ Is software development art or engineering? How to survive management mistakes The bizarre world of software estimation How to succeed as software entrepreneur How to resolve incompatible schedules and requirements If you are in the software industry and do not know which way to turn, Great Software Debates provides valuable and insightful advice. Whether you are a software developer, software manager, software executive, entrepreneur, requirements writer, architect, designer, or tester, you will find no shortage of sound, palatable advice.
Publisher: Wiley-IEEE Computer Society Press
ISBN:
Category : Business & Economics
Languages : en
Pages : 296
Book Description
The industry’s most outspoken and insightful critic explains how the software industry REALLY works. In Great Software Debates, Al Davis, shares what he has learned about the difference between the theory and the realities of business and encourages you to question and think about software engineering in ways that will help you succeed where others fail. In short, provocative essays, Davis fearlessly reveals the truth about process improvement, productivity, software quality, metrics, agile development, requirements documentation, modeling, software marketing and sales, empiricism, start-up financing, software research, requirements triage, software estimation, and entrepreneurship. He will get you thinking about: The danger of following trends and becoming a ‘software lemming’ Is software development art or engineering? How to survive management mistakes The bizarre world of software estimation How to succeed as software entrepreneur How to resolve incompatible schedules and requirements If you are in the software industry and do not know which way to turn, Great Software Debates provides valuable and insightful advice. Whether you are a software developer, software manager, software executive, entrepreneur, requirements writer, architect, designer, or tester, you will find no shortage of sound, palatable advice.
A Philosophy of Software Design
Author: John K. Ousterhout
Publisher:
ISBN: 9781732102217
Category : Computer programs
Languages : en
Pages : 0
Book Description
"This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply."--Amazon.
Publisher:
ISBN: 9781732102217
Category : Computer programs
Languages : en
Pages : 0
Book Description
"This book addresses the topic of software design: how to decompose complex software systems into modules (such as classes and methods) that can be implemented relatively independently. The book first introduces the fundamental problem in software design, which is managing complexity. It then discusses philosophical issues about how to approach the software design process and it presents a collection of design principles to apply during software design. The book also introduces a set of red flags that identify design problems. You can apply the ideas in this book to minimize the complexity of large software systems, so that you can write software more quickly and cheaply."--Amazon.
Great Software Debates
Author: Alan Michael Davis
Publisher:
ISBN: 9781119134657
Category : Computer software
Languages : en
Pages : 271
Book Description
In Great Software Debates, Al Davis shares what he has learned about the difference between the theory and the realities of business and encourages you to question and think about software engineering in ways that will help you succeed where others fail.--[book cover].
Publisher:
ISBN: 9781119134657
Category : Computer software
Languages : en
Pages : 271
Book Description
In Great Software Debates, Al Davis shares what he has learned about the difference between the theory and the realities of business and encourages you to question and think about software engineering in ways that will help you succeed where others fail.--[book cover].
User Interface Design for Programmers
Author: Avram Joel Spolsky
Publisher: Apress
ISBN: 1430208570
Category : Computers
Languages : en
Pages : 152
Book Description
Most programmers' fear of user interface (UI) programming comes from their fear of doing UI design. They think that UI design is like graphic design—the mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers instead—strong at reasoning, weak on artistic judgment, and incapable of doing UI design. In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolsky's primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple. In a fun and entertaining way, Spolky makes user interface design easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works.
Publisher: Apress
ISBN: 1430208570
Category : Computers
Languages : en
Pages : 152
Book Description
Most programmers' fear of user interface (UI) programming comes from their fear of doing UI design. They think that UI design is like graphic design—the mysterious process by which creative, latte-drinking, all-black-wearing people produce cool-looking, artistic pieces. Most programmers see themselves as analytic, logical thinkers instead—strong at reasoning, weak on artistic judgment, and incapable of doing UI design. In this brilliantly readable book, author Joel Spolsky proposes simple, logical rules that can be applied without any artistic talent to improve any user interface, from traditional GUI applications to websites to consumer electronics. Spolsky's primary axiom, the importance of bringing the program model in line with the user model, is both rational and simple. In a fun and entertaining way, Spolky makes user interface design easy for programmers to grasp. After reading User Interface Design for Programmers, you'll know how to design interfaces with the user in mind. You'll learn the important principles that underlie all good UI design, and you'll learn how to perform usability testing that works.
Working Effectively with Legacy Code
Author: Michael Feathers
Publisher: Prentice Hall Professional
ISBN: 0132931753
Category : Computers
Languages : en
Pages : 457
Book Description
Get more out of your legacy systems: more performance, functionality, reliability, and manageability Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform—with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structure This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
Publisher: Prentice Hall Professional
ISBN: 0132931753
Category : Computers
Languages : en
Pages : 457
Book Description
Get more out of your legacy systems: more performance, functionality, reliability, and manageability Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts. In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform—with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structure This book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.
Information Theory and Best Practices in the IT Industry
Author: Sanjay Mohapatra
Publisher: Springer Science & Business Media
ISBN: 1461430437
Category : Business & Economics
Languages : en
Pages : 228
Book Description
The importance of benchmarking in the service sector is well recognized as it helps in continuous improvement in products and work processes. Through benchmarking, companies have strived to implement best practices in order to remain competitive in the product- market in which they operate. However studies on benchmarking, particularly in the software development sector, have neglected using multiple variables and therefore have not been as comprehensive. Information Theory and Best Practices in the IT Industry fills this void by examining benchmarking in the business of software development and studying how it is affected by development process, application type, hardware platforms used, and many other variables. Information Theory and Best Practices in the IT Industry begins by examining practices of benchmarking productivity and critically appraises them. Next the book identifies different variables which affect productivity and variables that affect quality, developing useful equations that explaining their relationships. Finally these equations and findings are applied to case studies. Utilizing this book, practitioners can decide about what emphasis they should attach to different variables in their own companies, while seeking to optimize productivity and defect density.
Publisher: Springer Science & Business Media
ISBN: 1461430437
Category : Business & Economics
Languages : en
Pages : 228
Book Description
The importance of benchmarking in the service sector is well recognized as it helps in continuous improvement in products and work processes. Through benchmarking, companies have strived to implement best practices in order to remain competitive in the product- market in which they operate. However studies on benchmarking, particularly in the software development sector, have neglected using multiple variables and therefore have not been as comprehensive. Information Theory and Best Practices in the IT Industry fills this void by examining benchmarking in the business of software development and studying how it is affected by development process, application type, hardware platforms used, and many other variables. Information Theory and Best Practices in the IT Industry begins by examining practices of benchmarking productivity and critically appraises them. Next the book identifies different variables which affect productivity and variables that affect quality, developing useful equations that explaining their relationships. Finally these equations and findings are applied to case studies. Utilizing this book, practitioners can decide about what emphasis they should attach to different variables in their own companies, while seeking to optimize productivity and defect density.
Just Enough Requirements Management
Author: Alan Mark Davis
Publisher: Pearson Education
ISBN: 0133491293
Category : Computer software
Languages : en
Pages : 257
Book Description
This is the digital version of the printed book (Copyright © 2005). If you develop software without understanding the requirements, you're wasting your time. On the other hand, if a project spends too much time trying to understand the requirements, it will end up late and/or over-budget. And products that are created by such projects can be just as unsuccessful as those that fail to meet the basic requirements. Instead, every company must make a reasonable trade-off between what's required and what time and resources are available. Finding the right balance for your project may depend on many factors, including the corporate culture, the time-to-market pressure, and the criticality of the application. That is why requirements management-gathering requirements, identifying the "right" ones to satisfy, and documenting them-is essential. Just Enough Requirements Management shows you how to discover, prune, and document requirements when you are subjected to tight schedule constraints. You'll apply just enough process to minimize risks while still achieving desired outcomes. You'll determine how many requirements are just enough to satisfy your customers while still meeting your goals for schedule, budget, and resources. If your project has insufficient resources to satisfy all the requirements of your customers, you must read Just Enough Requirements Management.
Publisher: Pearson Education
ISBN: 0133491293
Category : Computer software
Languages : en
Pages : 257
Book Description
This is the digital version of the printed book (Copyright © 2005). If you develop software without understanding the requirements, you're wasting your time. On the other hand, if a project spends too much time trying to understand the requirements, it will end up late and/or over-budget. And products that are created by such projects can be just as unsuccessful as those that fail to meet the basic requirements. Instead, every company must make a reasonable trade-off between what's required and what time and resources are available. Finding the right balance for your project may depend on many factors, including the corporate culture, the time-to-market pressure, and the criticality of the application. That is why requirements management-gathering requirements, identifying the "right" ones to satisfy, and documenting them-is essential. Just Enough Requirements Management shows you how to discover, prune, and document requirements when you are subjected to tight schedule constraints. You'll apply just enough process to minimize risks while still achieving desired outcomes. You'll determine how many requirements are just enough to satisfy your customers while still meeting your goals for schedule, budget, and resources. If your project has insufficient resources to satisfy all the requirements of your customers, you must read Just Enough Requirements Management.
How to Design Programs, second edition
Author: Matthias Felleisen
Publisher: MIT Press
ISBN: 0262344122
Category : Computers
Languages : en
Pages : 793
Book Description
A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.
Publisher: MIT Press
ISBN: 0262344122
Category : Computers
Languages : en
Pages : 793
Book Description
A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.
Coders at Work
Author: Peter Seibel
Publisher: Apress
ISBN: 1430219491
Category : Computers
Languages : en
Pages : 619
Book Description
Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words “at work” suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 15 folks who’ve been kind enough to agree to be interviewed: Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow Joe Armstrong: Inventor of Erlang Joshua Bloch: Author of the Java collections framework, now at Google Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger Douglas Crockford: JSON founder, JavaScript architect at Yahoo! L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1 Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal Dan Ingalls: Smalltalk implementor and designer Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler Donald Knuth: Author of The Art of Computer Programming and creator of TeX Peter Norvig: Director of Research at Google and author of the standard text on AI Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress Ken Thompson: Inventor of UNIX Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker
Publisher: Apress
ISBN: 1430219491
Category : Computers
Languages : en
Pages : 619
Book Description
Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress’s highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words “at work” suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 15 folks who’ve been kind enough to agree to be interviewed: Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow Joe Armstrong: Inventor of Erlang Joshua Bloch: Author of the Java collections framework, now at Google Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger Douglas Crockford: JSON founder, JavaScript architect at Yahoo! L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1 Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal Dan Ingalls: Smalltalk implementor and designer Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler Donald Knuth: Author of The Art of Computer Programming and creator of TeX Peter Norvig: Director of Research at Google and author of the standard text on AI Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress Ken Thompson: Inventor of UNIX Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker
The Meaning of Jesus
Author: Marcus J. Borg
Publisher: Harper Collins
ISBN: 0061934828
Category : Religion
Languages : en
Pages : 302
Book Description
Was Jesus born of a virgin? Did he know he was the Messiah? Was he bodily resurrected from the dead? Did he intentionally die to redeem humankind? Was Jesus God? Two leading Jesus scholars with widely divergent views go right to the heart of these questions and others, presenting the opposing visions of Jesus that shape our faith today.
Publisher: Harper Collins
ISBN: 0061934828
Category : Religion
Languages : en
Pages : 302
Book Description
Was Jesus born of a virgin? Did he know he was the Messiah? Was he bodily resurrected from the dead? Did he intentionally die to redeem humankind? Was Jesus God? Two leading Jesus scholars with widely divergent views go right to the heart of these questions and others, presenting the opposing visions of Jesus that shape our faith today.