Home | Amazing | Today | Tags | Publishers | Years | Account | Search 
Good Habits for Great Coding: Improving Programming Skills with Examples in Python

Buy

Improve your coding skills and learn how to write readable code. Rather than teach basic programming, this book presumes that readers understand the fundamentals, and offers time-honed best practices for style, design, documenting, testing, refactoring, and more. 

Taking an informal, conversational tone, author Michael Stueben offers programming stories, anecdotes, observations, advice, tricks, examples, and challenges based on his 38 years experience writing code and teaching programming classes. Trying to teach style to beginners is notoriously difficult and can easily appear pedantic. Instead, this book offers solutions and many examples to back up his ideas.

Good Habits for Great Coding distills Stueben's three decades of analyzing his own mistakes, analyzing student mistakes, searching for problems that teach lessons, and searching for simple examples to illustrate complex ideas.  Having found that most learn by trying out challenging problems, and reflecting on them, each chapter includes quizzes and problems. The final chapter introduces dynamic programming to reduce complex problems to subcases, and illustrates many concepts discussed in the book. 

Code samples are provided in Python and designed to be understandable by readers familiar with any modern programming language. At the end of this book, you will have acquired a lifetime of good coding advice, the lessons the author wishes he had learned when he was a novice.

What You'll Learn

  • Create readable code through examples of good and bad style
  • Write difficult algorithms by comparing your code to the author's code
  • Derive and code difficult algorithms using dynamic programming
  • Understand the psychology of the coding process

Who This Book Is For

Students or novice programmers who have taken a beginning programming course and understand coding basics. Teachers will appreciate the author's road-tested ideas that they may apply to their own teaching.

(HTML tags aren't allowed.)

Blockchain Basics: A Non-Technical Introduction in 25 Steps
Blockchain Basics: A Non-Technical Introduction in 25 Steps

In 25 concise steps, you will learn the basics of blockchain technology. No mathematical formulas, program code, or computer science jargon are used. No previous knowledge in computer science, mathematics, programming, or cryptography is required. Terminology is explained through pictures, analogies, and metaphors.

This book...

Python Crash Course: A Hands-On, Project-Based Introduction to Programming
Python Crash Course: A Hands-On, Project-Based Introduction to Programming
Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time.

In the first half of the book, you’ll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing
...
Building Chatbots with Python: Using Natural Language Processing and Machine Learning
Building Chatbots with Python: Using Natural Language Processing and Machine Learning
Build your own chatbot using Python and open source tools. This book begins with an introduction to chatbots where you will gain vital information on their architecture. You will then dive straight into natural language processing with the natural language toolkit (NLTK) for building a custom language processing platform for...

The Joys of Hashing: Hash Table Programming with C
The Joys of Hashing: Hash Table Programming with C
Build working implementations of hash tables, written in the C programming language. This book starts with simple first attempts devoid of collision resolution strategies, and moves through improvements and extensions illustrating different design ideas and approaches, followed by experiments to validate the choices. ...
Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics
Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics

Do you want to build web pages but have no prior experience? This friendly guide is the perfect place to start. You’ll begin at square one, learning how the web and web pages work, and then steadily build from there. By the end of the book, you’ll have the skills to create a simple site with multicolumn pages that adapt...

Expert Twisted: Event-Driven and Asynchronous Programming with Python
Expert Twisted: Event-Driven and Asynchronous Programming with Python
Explore Twisted, the Python-based event-driven networking engine, and review several of its most popular application projects. It is written by community leaders who have contributed to many of the projects covered, and share their hard-won insights and experience.

Expert Twisted starts with an introduction...
©2019 LearnIT (support@pdfchm.net) - Privacy Policy