Coverart for item
The Resource Bad programming practices 101 : become a better coder by learning how (not) to program, Karl Beecher, (electronic book)

Bad programming practices 101 : become a better coder by learning how (not) to program, Karl Beecher, (electronic book)

Label
Bad programming practices 101 : become a better coder by learning how (not) to program
Title
Bad programming practices 101
Title remainder
become a better coder by learning how (not) to program
Statement of responsibility
Karl Beecher
Creator
Author
Subject
Genre
Language
eng
Summary
This book takes a humorous slant on the programming practice manual by reversing the usual approach: under the pretence of teaching you how to become the world's worst programmer who generally causes chaos, the book teaches you how to avoid the kind of bad habits that introduce bugs or cause code contributions to be rejected. Why be a code monkey when you can be a chaos monkey? OK, so you want to become a terrible programmer. You want to write code that gets vigorously rejected in review. You look forward to reading feedback plastered in comments like "WTF???". Even better, you fantasize about your bug-ridden changes sneaking through and causing untold chaos in the codebase. You want to build a reputation as someone who writes creaky, messy, error-prone garbage that frustrates your colleagues. Bad Programming Practices 101 will help you achieve that goal a whole lot quicker by teaching you an array of bad habits that will allow you to cause maximum chaos. Alternatively, you could use this book to identify those bad habits and learn to avoid them. The bad practices are organised into topics that form the basis of programming (layout, variables, loops, modules, and so on). It's been remarked that to become a good programmer, you must first write 10,000 lines of bad code to get it all out of your system. This book is aimed at programmers who have so far written only a small portion of that. By learning about poor programming habits, you will learn good practices. In addition, you will find out the motivation behind each practice, so you can learn why it is considered good and not simply get a list of rules. You will: Become a better coder by learning how (not) to program Choose your tools wisely Think of programming as problem solving Discover the consequences of a program's appearance and overall structure Explain poor use of variables in programs Avoid bad habits and common mistakes when using conditionals and loops See how poor error-handling makes for unstable programs Sidestep bad practices related specifically to object-oriented programming Mitigate the effects of ineffectual and inadequate bug location and testing
Member of
Cataloging source
N$T
http://library.link/vocab/creatorName
Beecher, Karl
Dewey number
005.1
Index
index present
LC call number
QA76.6
Literary form
non fiction
Nature of contents
  • dictionaries
  • bibliography
  • handbooks
http://library.link/vocab/subjectName
Computer programming
Label
Bad programming practices 101 : become a better coder by learning how (not) to program, Karl Beecher, (electronic book)
Instantiates
Publication
Copyright
Antecedent source
unknown
Bibliography note
Includes bibliographical references and index
Carrier category
online resource
Carrier category code
cr
Carrier MARC source
rdacarrier
Color
multicolored
Content category
text
Content type code
txt
Content type MARC source
rdacontent
Contents
  • Intro; Table of Contents; About the Author; About the Technical Reviewer; Acknowledgments; Introduction; Chapter 1: Learning to Program; Objectives; Introduction; Bad Ways to Learn Programming; Take a Pass on Practicing; Thumbs Down!; Avoid Inspiration; Thumbs Down!; Be a Script Kiddie; Do It Alone; Bad Ways to Choose Your Tools; Choose Inappropriately While a Beginner; Thumbs Down!; Obsess Far Too Much over Your Choices; Thumbs Down!; Be a Fashion Victim; Chapter 2: Layout and Structure; Objectives; Prerequisites; Introduction; Make Spacing Poor and Inconsistent; On the Level
  • Thumbs Down!; Spaced Out; Tabs and Spaces; Thumbs Down!; Clutter the Code; Unused Stuff; Dead Stuff; Disabled Stuff; Thumbs Down!; Write Bad Comments; No Comment!; Thumbs Down!; Code Parroting; Thumbs Down!; Out of Sync; Avoid Structured Programming; Jump Around; Routine Work; Thumbs Down!; Chapter 3: Variables; Objectives; Prerequisites; Introduction; Use Obscure Names-Thinking Up Meaningful Labels Isn't Worth the Effort; All Meaningless; Thumbs Down!; Vowel Movements; Thumbs Down!; Lazy Naming; Treat Variable Declaration Like a Waste of Time; Be Confusing; Thumbs Down!
  • Be Contrarian; Maximize the Scope of Variables; Broad Scopes; Thumbs Down!; Going Global; Thoroughly Abuse the Type System; Turn Numbers into Secret Codes; Thumbs Down!; Strings Are Magic-They Can Pretend to Be Any Type; Thumbs Down!; Mix Things Up; Thumbs Down!; Null-The Harbinger of Doom; Null Checks; Seeding Disaster; Thumbs Down!; Chapter 4: Conditionals; Objectives; Prerequisites; Introduction; Forget the Alternatives; Or Else What?; Thumbs Down!; The Normal and the Exceptional; Thumbs Down!; Build a Ladder; Thumbs Down!; Abuse Expressions; Tortuous Expressions; Thumbs Down!
  • Not Being Not Non-negative ... Not; Thumbs Down!; Include Gaps and Overlaps; Thumbs Down!; Chapter 5: Loops; Objectives; Prerequisites; Introduction; Choose the Wrong Type; Collections; Thumbs Down!; Ranges; Thumbs Down!; Arbitrary Iterations; Thumbs Down!; Have Fun with Infinite Loops; Citing the Masters; Thumbs Down!; Taking Precautions; Thumbs Down!; Make Inappropriate Exits; Break Out; Thumbs Down!; Make'em Looooong and Complex; Long Loops; Thumbs Down!; Complex Loops; Thumbs Down!; Chapter 6: Subroutines; Objectives; Prerequisites; Introduction; Super-Size Your Subroutines
  • Thumbs Down!; Put Up Barriers to Understanding; Bad Naming; Thumbs Down!; High Complexity; Thumbs Down!; Too Many Purposes; Thumbs Down!; (Ab)use Parameters; The More the Merrier; Thumbs Down!; Being Defensive; Thumbs Down!; Surreptitious Subroutines; Screw with Return Values; Return of the Harbinger; Thumbs Down!; Fun with Output Parameters; Thumbs Down!; Chapter 7: Error Handling; Objectives; Prerequisites; Introduction; Assume Everything Will Always Go Well; Don't Check; Don't Assert; Thumbs Down!; Don't Catch; Thumbs Down!; Send Problems Down the Memory Hole
Control code
SPR1023425107
Dimensions
unknown
Extent
1 online resource (xxii, 221 pages)
File format
unknown
Form of item
online
Isbn
9781484234112
Level of compression
unknown
Media category
computer
Media MARC source
rdamedia
Media type code
c
Other control number
10.1007/978-1-4842-3411-2
Other physical details
illustrations
Quality assurance targets
not applicable
Reformatting quality
unknown
Sound
unknown sound
Specific material designation
remote
System control number
  • on1023425107
  • (OCoLC)1023425107
Label
Bad programming practices 101 : become a better coder by learning how (not) to program, Karl Beecher, (electronic book)
Publication
Copyright
Antecedent source
unknown
Bibliography note
Includes bibliographical references and index
Carrier category
online resource
Carrier category code
cr
Carrier MARC source
rdacarrier
Color
multicolored
Content category
text
Content type code
txt
Content type MARC source
rdacontent
Contents
  • Intro; Table of Contents; About the Author; About the Technical Reviewer; Acknowledgments; Introduction; Chapter 1: Learning to Program; Objectives; Introduction; Bad Ways to Learn Programming; Take a Pass on Practicing; Thumbs Down!; Avoid Inspiration; Thumbs Down!; Be a Script Kiddie; Do It Alone; Bad Ways to Choose Your Tools; Choose Inappropriately While a Beginner; Thumbs Down!; Obsess Far Too Much over Your Choices; Thumbs Down!; Be a Fashion Victim; Chapter 2: Layout and Structure; Objectives; Prerequisites; Introduction; Make Spacing Poor and Inconsistent; On the Level
  • Thumbs Down!; Spaced Out; Tabs and Spaces; Thumbs Down!; Clutter the Code; Unused Stuff; Dead Stuff; Disabled Stuff; Thumbs Down!; Write Bad Comments; No Comment!; Thumbs Down!; Code Parroting; Thumbs Down!; Out of Sync; Avoid Structured Programming; Jump Around; Routine Work; Thumbs Down!; Chapter 3: Variables; Objectives; Prerequisites; Introduction; Use Obscure Names-Thinking Up Meaningful Labels Isn't Worth the Effort; All Meaningless; Thumbs Down!; Vowel Movements; Thumbs Down!; Lazy Naming; Treat Variable Declaration Like a Waste of Time; Be Confusing; Thumbs Down!
  • Be Contrarian; Maximize the Scope of Variables; Broad Scopes; Thumbs Down!; Going Global; Thoroughly Abuse the Type System; Turn Numbers into Secret Codes; Thumbs Down!; Strings Are Magic-They Can Pretend to Be Any Type; Thumbs Down!; Mix Things Up; Thumbs Down!; Null-The Harbinger of Doom; Null Checks; Seeding Disaster; Thumbs Down!; Chapter 4: Conditionals; Objectives; Prerequisites; Introduction; Forget the Alternatives; Or Else What?; Thumbs Down!; The Normal and the Exceptional; Thumbs Down!; Build a Ladder; Thumbs Down!; Abuse Expressions; Tortuous Expressions; Thumbs Down!
  • Not Being Not Non-negative ... Not; Thumbs Down!; Include Gaps and Overlaps; Thumbs Down!; Chapter 5: Loops; Objectives; Prerequisites; Introduction; Choose the Wrong Type; Collections; Thumbs Down!; Ranges; Thumbs Down!; Arbitrary Iterations; Thumbs Down!; Have Fun with Infinite Loops; Citing the Masters; Thumbs Down!; Taking Precautions; Thumbs Down!; Make Inappropriate Exits; Break Out; Thumbs Down!; Make'em Looooong and Complex; Long Loops; Thumbs Down!; Complex Loops; Thumbs Down!; Chapter 6: Subroutines; Objectives; Prerequisites; Introduction; Super-Size Your Subroutines
  • Thumbs Down!; Put Up Barriers to Understanding; Bad Naming; Thumbs Down!; High Complexity; Thumbs Down!; Too Many Purposes; Thumbs Down!; (Ab)use Parameters; The More the Merrier; Thumbs Down!; Being Defensive; Thumbs Down!; Surreptitious Subroutines; Screw with Return Values; Return of the Harbinger; Thumbs Down!; Fun with Output Parameters; Thumbs Down!; Chapter 7: Error Handling; Objectives; Prerequisites; Introduction; Assume Everything Will Always Go Well; Don't Check; Don't Assert; Thumbs Down!; Don't Catch; Thumbs Down!; Send Problems Down the Memory Hole
Control code
SPR1023425107
Dimensions
unknown
Extent
1 online resource (xxii, 221 pages)
File format
unknown
Form of item
online
Isbn
9781484234112
Level of compression
unknown
Media category
computer
Media MARC source
rdamedia
Media type code
c
Other control number
10.1007/978-1-4842-3411-2
Other physical details
illustrations
Quality assurance targets
not applicable
Reformatting quality
unknown
Sound
unknown sound
Specific material designation
remote
System control number
  • on1023425107
  • (OCoLC)1023425107

Library Locations

Processing Feedback ...