skip to content
Bad programming practices 101 : become a better coder by learning how (not) to program Preview this item
ClosePreview this item
Checking...

Bad programming practices 101 : become a better coder by learning how (not) to program

Author: Karl Beecher
Publisher: [Berkeley, CA] : Apress, [2018] ©2018
Edition/Format:   eBook : Document : EnglishView all editions and formats
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  Read more...
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic book
Electronic books
Handbooks and manuals
Handbooks, manuals, etc
Additional Physical Format: Print version:
Beecher, Karl.
Bad programming practices 101.
[Berkeley, CA] : Apress, [2018]
(OCoLC)1013171575
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Karl Beecher
ISBN: 9781484234112 1484234111 9781484234129 148423412X 9781484245699 1484245695
OCLC Number: 1023425107
Description: 1 online resource (xxii, 221 pages) : illustrations
Contents: Learning to program --
Layout and structure --
Variables --
Condictionals --
Loops --
Subroutines --
Error handling --
Modules --
Classes and objects --
Testing --
Debugging.
Responsibility: Karl Beecher.

Abstract:

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.

Reviews

Editorial reviews

Publisher Synopsis

"Beecher focuses on poor coding practices that frequently creep into programmers' code. He crams 11 chapters of well-illustrated, well-documented examples of bad programming practices into just over Read more...

 
User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


\n\n

Primary Entity<\/h3>\n
<http:\/\/www.worldcat.org\/oclc\/1023425107<\/a>> # Bad programming practices 101 : become a better coder by learning how (not) to program<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Book<\/a>, schema:MediaObject<\/a>, schema:CreativeWork<\/a> ;\u00A0\u00A0\u00A0\nlibrary:oclcnum<\/a> \"1023425107<\/span>\" ;\u00A0\u00A0\u00A0\nlibrary:placeOfPublication<\/a> <http:\/\/id.loc.gov\/vocabulary\/countries\/cau<\/a>> ;\u00A0\u00A0\u00A0\nrdfs:comment<\/a> \"Warning: This malformed URI has been treated as a string - \'https:\/\/learning.oreilly.com\/library\/view\/~\/9781484234112\/?ar?orpq&email=^u\'<\/span>\" ;\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computer_programming_software_development<\/a>> ; # Computer programming--software development<\/span>\n\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/dewey.info\/class\/005.1\/e23\/<\/a>> ;\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computer_programming<\/a>> ; # Computer programming<\/span>\n\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/software_engineering<\/a>> ; # Software Engineering<\/span>\n\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/programming_&_scripting_languages_general<\/a>> ; # Programming & scripting languages: general<\/span>\n\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computers_programming_general<\/a>> ; # COMPUTERS--Programming--General<\/span>\n\u00A0\u00A0\u00A0\nschema:author<\/a> <http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Person\/beecher_karl<\/a>> ; # Karl Beecher<\/span>\n\u00A0\u00A0\u00A0\nschema:bookFormat<\/a> schema:EBook<\/a> ;\u00A0\u00A0\u00A0\nschema:datePublished<\/a> \"2018<\/span>\" ;\u00A0\u00A0\u00A0\nschema:description<\/a> \"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.<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:description<\/a> \"Learning to program -- Layout and structure -- Variables -- Condictionals -- Loops -- Subroutines -- Error handling -- Modules -- Classes and objects -- Testing -- Debugging.<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:exampleOfWork<\/a> <http:\/\/worldcat.org\/entity\/work\/id\/4646958920<\/a>> ;\u00A0\u00A0\u00A0\nschema:genre<\/a> \"Electronic book<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:genre<\/a> \"Electronic books<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:genre<\/a> \"Handbooks and manuals<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:inLanguage<\/a> \"en<\/span>\" ;\u00A0\u00A0\u00A0\nschema:isSimilarTo<\/a> <http:\/\/www.worldcat.org\/oclc\/1013171575<\/a>> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Bad programming practices 101 : become a better coder by learning how (not) to program<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\nschema:productID<\/a> \"1023425107<\/span>\" ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/doi.org\/10.1007\/978-1-4842-3411-2<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/link.springer.com\/book\/10.1007\/978-1-4842-3411-2<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <http:\/\/dx.doi.org\/10.1007\/978-1-4842-3411-2<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <http:\/\/VH7QX3XE2P.search.serialssolutions.com\/?V=1.0&L=VH7QX3XE2P&S=JCs&C=TC0001986112&T=marc&tab=BOOKS<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <http:\/\/www.books24x7.com\/marc.asp?bookid=139173<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> \"https:\/\/learning.oreilly.com\/library\/view\/~\/9781484234112\/?ar?orpq&email=^u<\/span>\" ;\u00A0\u00A0\u00A0\nschema:url<\/a> <http:\/\/www.vlebooks.com\/vleweb\/product\/openreader?id=none&isbn=9781484234112<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/search.ebscohost.com\/login.aspx?direct=true&scope=site&db=nlebk&db=nlabk&AN=1709187<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/public.ebookcentral.proquest.com\/choice\/publicfullrecord.aspx?p=5287201<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/link.springer.com\/10.1007\/978-1-4842-3411-2<\/a>> ;\u00A0\u00A0\u00A0\nschema:url<\/a> <https:\/\/link.springer.com\/book\/10.1007\/978-1-4842-3410-5<\/a>> ;\u00A0\u00A0\u00A0\nschema:workExample<\/a> <http:\/\/worldcat.org\/isbn\/9781484234112<\/a>> ;\u00A0\u00A0\u00A0\nschema:workExample<\/a> <http:\/\/worldcat.org\/isbn\/9781484234129<\/a>> ;\u00A0\u00A0\u00A0\nschema:workExample<\/a> <http:\/\/dx.doi.org\/10.1007\/978-1-4842-3411-2<\/a>> ;\u00A0\u00A0\u00A0\nschema:workExample<\/a> <http:\/\/worldcat.org\/isbn\/9781484245699<\/a>> ;\u00A0\u00A0\u00A0\nwdrs:describedby<\/a> <http:\/\/www.worldcat.org\/title\/-\/oclc\/1023425107<\/a>> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n\n

Related Entities<\/h3>\n
<http:\/\/dewey.info\/class\/005.1\/e23\/<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/dx.doi.org\/10.1007\/978-1-4842-3411-2<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:IndividualProduct<\/a> ;\u00A0\u00A0\u00A0\nrdfs:comment<\/a> \"Available from SpringerLink. Online version available for university members only. This requires an institutional login off-campus.<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Person\/beecher_karl<\/a>> # Karl Beecher<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Person<\/a> ;\u00A0\u00A0\u00A0\nschema:familyName<\/a> \"Beecher<\/span>\" ;\u00A0\u00A0\u00A0\nschema:givenName<\/a> \"Karl<\/span>\" ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Karl Beecher<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computer_programming<\/a>> # Computer programming<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Computer programming<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computer_programming_software_development<\/a>> # Computer programming--software development<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Computer programming--software development<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/computers_programming_general<\/a>> # COMPUTERS--Programming--General<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"COMPUTERS--Programming--General<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/programming_&_scripting_languages_general<\/a>> # Programming & scripting languages: general<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Programming & scripting languages: general<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/experiment.worldcat.org\/entity\/work\/data\/4646958920#Topic\/software_engineering<\/a>> # Software Engineering<\/span>\n\u00A0\u00A0\u00A0\u00A0a \nschema:Intangible<\/a> ;\u00A0\u00A0\u00A0\nschema:name<\/a> \"Software Engineering<\/span>\"@en<\/a> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/id.loc.gov\/vocabulary\/countries\/cau<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:Place<\/a> ;\u00A0\u00A0\u00A0\ndcterms:identifier<\/a> \"cau<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/worldcat.org\/isbn\/9781484234112<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:ProductModel<\/a> ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"1484234111<\/span>\" ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"9781484234112<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/worldcat.org\/isbn\/9781484234129<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:ProductModel<\/a> ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"148423412X<\/span>\" ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"9781484234129<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/worldcat.org\/isbn\/9781484245699<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:ProductModel<\/a> ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"1484245695<\/span>\" ;\u00A0\u00A0\u00A0\nschema:isbn<\/a> \"9781484245699<\/span>\" ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/www.worldcat.org\/oclc\/1013171575<\/a>>\u00A0\u00A0\u00A0\u00A0a \nschema:CreativeWork<\/a> ;\u00A0\u00A0\u00A0\nrdfs:label<\/a> \"Bad programming practices 101.<\/span>\" ;\u00A0\u00A0\u00A0\nschema:description<\/a> \"Print version:<\/span>\" ;\u00A0\u00A0\u00A0\nschema:isSimilarTo<\/a> <http:\/\/www.worldcat.org\/oclc\/1023425107<\/a>> ; # Bad programming practices 101 : become a better coder by learning how (not) to program<\/span>\n\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n
<http:\/\/www.worldcat.org\/title\/-\/oclc\/1023425107<\/a>>\u00A0\u00A0\u00A0\u00A0a \ngenont:InformationResource<\/a>, genont:ContentTypeGenericResource<\/a> ;\u00A0\u00A0\u00A0\nschema:about<\/a> <http:\/\/www.worldcat.org\/oclc\/1023425107<\/a>> ; # Bad programming practices 101 : become a better coder by learning how (not) to program<\/span>\n\u00A0\u00A0\u00A0\nschema:dateModified<\/a> \"2020-06-30<\/span>\" ;\u00A0\u00A0\u00A0\nvoid:inDataset<\/a> <http:\/\/purl.oclc.org\/dataset\/WorldCat<\/a>> ;\u00A0\u00A0\u00A0\u00A0.\n\n\n<\/div>\n\n

Content-negotiable representations<\/p>\n