Author: Zed A. Shaw
Publisher: Addison-Wesley Professional
Release Date: 2015-08-10
You Will Learn C! Zed Shaw has crafted the perfect course for the beginning C programmer eager to advance their skills in any language. Follow it and you will learn the many skills early and junior programmers need to succeed–just like the hundreds of thousands of programmers Zed has taught to date! You bring discipline, commitment, persistence, and experience with any programming language; the author supplies everything else. In Learn C the Hard Way , you’ll learn C by working through 52 brilliantly crafted exercises. Watch Zed Shaw’s teaching video and read the exercise. Type his code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn what good, modern C programs look like; how to think more effectively about code; and how to find and fix mistakes far more efficiently. Most importantly, you’ll master rigorous defensive programming techniques, so you can use any language to create software that protects itself from malicious activity and defects. Through practical projects you’ll apply what you learn to build confidence in your new skills. Shaw teaches the key skills you need to start writing excellent C software, including Setting up a C environment Basic syntax and idioms Compilation, make files, and linkers Operators, variables, and data types Program control Arrays and strings Functions, pointers, and structs Memory allocation I/O and files Libraries Data structures, including linked lists, sort, and search Stacks and queues Debugging, defensive coding, and automated testing Fixing stack overflows, illegal memory access, and more Breaking and hacking your own C code It’ll Be Hard at First. But Soon, You’ll Just Get It–And That Will Feel Great! This tutorial will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful programming languages. You’ll be a C programmer.
You Will Learn C! Zed Shaw has perfected the world's best system for learning C. Follow it and you will succeed-just like the hundreds of thousands of programmers Zed has taught to date! You bring discipline, commitment, persistence, and experience with any programming language; the author supplies everything else. In Learn C the Hard Way, you'll learn C by working through 52 brilliantly crafted exercises. Watch Zed Shaw's teaching video. Type his code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn what good modern C programs look like, how to think more effectively about code, and how to find and fix mistakes far more efficiently. Most importantly, you'll master rigorous defensive programming techniques, so you can use any language to create software that defends itself from malicious activity and defects. Shaw teaches all the key skills you need to start writing excellent C software: Planning and attention to detail Setting up a C environment Basic syntax and idioms Compilation, make files, and linkers Operators, variables, and data types Program control Arrays and strings Functions, pointers, and structs Memory allocation I/O and files Libraries Data structures, including linked lists, sort, and search Stacks and queues Debugging, defensive coding, and automated testing Fixing stack overflows, illegal memory access, and more It'll Be Hard At First. But Soon, You'll Just Get It-And That Will Feel Great! This tutorial will reward you for every minute you put into it. Soon, you'll know one of the world's most powerful programming languages. You'll be a C programmer. Watch Zed first! The accompanying DVD contains 5+ hours of passionate, powerful teaching to jumpstart your learning of each key skill: a complete C video course!
Author: Zed A. Shaw
Publisher: Addison-Wesley Professional
Release Date: 2014-12-01
You Will Learn Ruby! Zed Shaw has perfected the world’s best system for learning Ruby. Follow it and you will succeed–just like the hundreds of thousands of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Ruby the Hard Way, Third Edition , you’ll learn Ruby by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn how software works; what good programs look like; how to read, write, and think about code; and how to find and fix your mistakes using tricks professional programmers use. Most importantly, you’ll learn the following, which you need to start writing excellent Ruby software of your own: • Installing your Ruby environment • Organizing and writing code • Ruby symbols and keywords • Basic mathematics • Variables and printing • Strings and text • Interacting with users • Working with files • Using and creating functions • Looping and logic • Arrays and elements • Hashmaps • Program design • Object-oriented programming • Inheritance and composition • Modules, classes, and objects • Project “skeleton” directories • Debugging and automated testing • Advanced user input • Text processing • Basic game development • Basic web development It’ll Be Hard At First. But Soon, You’ll Just Get It–And That Will Feel Great! This tutorial will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful, popular programming languages. You’ll be a Ruby programmer. Watch Zed, too! The accompanying DVD contains 5+ hours of passionate, powerful teaching: a complete Ruby video course! Zed Shaw is an avid guitar player, programmer, and writer whose books teach people all over the world how to write software. His book Learn Python the Hard Way has been read by millions of people around the world. His software has been used by many large and small companies. His essays are often quoted and read by members of many geek communities. He is an entertaining and lively writer, who is sure to keep you laughing and make you think.
Author: Zed A. Shaw
Publisher: Addison-Wesley Professional
Release Date: 2017-06-26
You Will Learn Python 3! Zed Shaw has perfected the world’s best system for learning Python 3. Follow it and you will succeed—just like the millions of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Python 3 the Hard Way, you’ll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn how a computer works; what good programs look like; and how to read, write, and think about code. Zed then teaches you even more in 5+ hours of video where he shows you how to break, fix, and debug your code—live, as he’s doing the exercises. Install a complete Python environment Organize and write code Fix and break code Basic mathematics Variables Strings and text Interact with users Work with files Looping and logic Data structures using lists and dictionaries Program design Object-oriented programming Inheritance and composition Modules, classes, and objects Python packaging Automated testing Basic game development Basic web development It’ll be hard at first. But soon, you’ll just get it—and that will feel great! This course will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful, popular programming languages. You’ll be a Python programmer. This Book Is Perfect For Total beginners with zero programming experience Junior developers who know one or two languages Returning professionals who haven’t written code in years Seasoned professionals looking for a fast, simple, crash course in Python 3
Author: Bradley L. Jones
Publisher: Sams Publishing
Release Date: 2013-10-07
Sams Teach Yourself C Programming in One Hour a Day, Seventh Edition is the newest version of the worldwide best-seller Sams Teach Yourself C in 21 Days. Fully revised for the new C11 standard and libraries, it now emphasizes platform-independent C programming using free, open-source C compilers. This edition strengthens its focus on C programming fundamentals, and adds new material on popular C-based object-oriented programming languages such as Objective-C. Filled with carefully explained code, clear syntax examples, and well-crafted exercises, this is the broadest and deepest introductory C tutorial available. It’s ideal for anyone who’s serious about truly mastering C – including thousands of developers who want to leverage its speed and performance in modern mobile and gaming apps. Friendly and accessible, it delivers step-by-step, hands-on experience that starts with simple tasks and gradually builds to professional-quality techniques. Each lesson is designed to be completed in hour or less, introducing and clearly explaining essential concepts, providing practical examples, and encouraging you to build simple programs on your own. Coverage includes: Understanding C program components and structure Mastering essential C syntax and program control Using core language features, including numeric arrays, pointers, characters, strings, structures, and variable scope Interacting with the screen, printer, and keyboard Using functions and exploring the C Function Library Working with memory and the compiler Contents at a Glance PART I: FUNDAMENTALS OF C 1 Getting Started with C 2 The Components of a C Program 3 Storing Information: Variables and Constants 4 The Pieces of a C Program: Statements, Expressions, and Operators 5 Packaging Code in Functions 6 Basic Program Control 7 Fundamentals of Reading and Writing Information PART II: PUTTING C TO WORK 8 Using Numeric Arrays 9 Understanding Pointers 10 Working with Characters and Strings 11 Implementing Structures, Unions, and TypeDefs 12 Understanding Variable Scope 13 Advanced Program Control 14 Working with the Screen, Printer, and Keyboard PART III: ADVANCED C 15 Pointers to Pointers and Arrays of Pointers 16 Pointers to Functions and Linked Lists 17 Using Disk Files 18 Manipulating Strings 19 Getting More from Functions 20 Exploring the C Function Library 21 Working with Memory 22 Advanced Compiler Use PART IV: APPENDIXES A ASCII Chart B C/C++ Reserved Words C Common C Functions D Answers
Author: Richard M Reese
Publisher: "O'Reilly Media, Inc."
Release Date: 2013-05-01
Improve your programming through a solid understanding of C pointers and memory management. With this practical book, you’ll learn how pointers provide the mechanism to dynamically manipulate memory, enhance support for data structures, and enable access to hardware. Author Richard Reese shows you how to use pointers with arrays, strings, structures, and functions, using memory models throughout the book. Difficult to master, pointers provide C with much flexibility and power—yet few resources are dedicated to this data type. This comprehensive book has the information you need, whether you’re a beginner or an experienced C or C++ programmer or developer. Get an introduction to pointers, including the declaration of different pointer types Learn about dynamic memory allocation, de-allocation, and alternative memory management techniques Use techniques for passing or returning data to and from functions Understand the fundamental aspects of arrays as they relate to pointers Explore the basics of strings and how pointers are used to support them Examine why pointers can be the source of security problems, such as buffer overflow Learn several pointer techniques, such as the use of opaque pointers, bounded pointers and, the restrict keyword
C Primer Plus is a carefully tested, well-crafted, and complete tutorial on a subject core to programmers and developers. This computer science classic teaches principles of programming, including structured code and top-down design. Author and educator Stephen Prata has created an introduction to C that is instructive, clear, and insightful. Fundamental programming concepts are explained along with details of the C language. Many short, practical examples illustrate just one or two concepts at a time, encouraging readers to master new topics by immediately putting them to use. Review questions and programming exercises at the end of each chapter bring out the most critical pieces of information and help readers understand and digest the most difficult concepts. A friendly and easy-to-use self-study guide, this book is appropriate for serious students of programming, as well as developers proficient in other languages with a desire to better understand the fundamentals of this core language. The sixth edition of this book has been updated and expanded to cover the latest developments in C as well as to take a detailed look at the new C11 standard. In C Primer Plus you’ll find depth, breadth, and a variety of teaching techniques and tools to enhance your learning: Complete, integrated discussion of both C language fundamentals and additional features Clear guidance about when and why to use different parts of the language Hands-on learning with concise and simple examples that develop your understanding of a concept or two at a time Hundreds of practical sample programs Review questions and programming exercises at the end of each chapter to test your understanding Coverage of generic C to give you the greatest flexibility
Author: David Himmel
Publisher: Waite Group Pr
Release Date: 1992
Some 250,000 programming students learn C each year and the total market for C titles comes close to one million copies annually. All those eager programmers could hardly ask for a more effective learning tool than this remarkable "learn by doing" training book that combines hands-on exercises with a real C compiler.
Author: David Mark
Release Date: 2013-02-01
Considered a classic by an entire generation of Mac programmers, Dave Mark's Learn C on the Mac has been updated for you to include Mac OS X Mountain Lion and the latest iOS considerations. Learn C on the Mac: For OS X and iOS, Second Edition is perfect for beginners learning to program. It includes contemporary OS X and iOS examples! This book also does the following: • Provides best practices for programming newbies • Presents all the basics with a pragmatic, Mac OS X and iOS -flavored approach • Includes updated source code which is fully compatible with latest Xcode After reading this book, you'll be ready to program and build apps using the C language and Objective-C will become much easier for you to learn when you're ready to pick that up.
Get a comprehensive, in-depth introduction to the core Python language with this hands-on book. Based on author Mark Lutz’s popular training course, this updated fifth edition will help you quickly write efficient, high-quality code with Python. It’s an ideal way to begin, whether you’re new to programming or a professional developer versed in other languages. Complete with quizzes, exercises, and helpful illustrations, this easy-to-follow, self-paced tutorial gets you started with both Python 2.7 and 3.3— the latest releases in the 3.X and 2.X lines—plus all other releases in common use today. You’ll also learn some advanced language features that recently have become more common in Python code. Explore Python’s major built-in object types such as numbers, lists, and dictionaries Create and process objects with Python statements, and learn Python’s general syntax model Use functions to avoid code redundancy and package code for reuse Organize statements, functions, and other tools into larger components with modules Dive into classes: Python’s object-oriented programming tool for structuring code Write large programs with Python’s exception-handling model and development tools Learn advanced Python tools, including decorators, descriptors, metaclasses, and Unicode processing
Author: Greg Perry
Publisher: Que Publishing
Release Date: 2013-08-02
Updated for C11 Write powerful C programs…without becoming a technical expert! This book is the fastest way to get comfortable with C, one incredibly clear and easy step at a time. You’ll learn all the basics: how to organize programs, store and display data, work with variables, operators, I/O, pointers, arrays, functions, and much more. C programming has neverbeen this simple! Who knew how simple C programming could be? This is today’s best beginner’s guide to writing C programs–and to learning skills you can use with practically any language. Its simple, practical instructions will help you start creating useful, reliable C code, from games to mobile apps. Plus, it’s fully updated for the new C11 standard and today’s free, open source tools! Here’s a small sample of what you’ll learn: • Discover free C programming tools for Windows, OS X, or Linux • Understand the parts of a C program and how they fit together • Generate output and display it on the screen • Interact with users and respond to their input • Make the most of variables by using assignments and expressions • Control programs by testing data and using logical operators • Save time and effort by using loops and other techniques • Build powerful data-entry routines with simple built-in functions • Manipulate text with strings • Store information, so it’s easy to access and use • Manage your data with arrays, pointers, and data structures • Use functions to make programs easier to write and maintain • Let C handle all your program’s math for you • Handle your computer’s memory as efficiently as possible • Make programs more powerful with preprocessing directives
Learn C++ in Just One Hour a Day Completely updated for the C++11 standard, Sams Teach Yourself C++ in One Hour a Day presents the language from a practical point of view, helping you learn how to use C++11 to create faster, simpler, and more efficient C++ applications. Master the fundamentals of C++ and object-oriented programming Understand how C++11 features help you write compact and efficient code using concepts such as lambda expressions, move constructors, and assignment operators Learn the Standard Template Library, including containers and algorithms used in most real-world C++ applications Test your knowledge and expertise using exercises at the end of every lesson Learn on your own time, at your own pace: No previous programming experience required Learn C++11, object-oriented programming, and analysis Write fast and powerful C++ programs, compile the source code with a gcc compiler, and create executable files Use the Standard Template Library’s (STL) algorithms and containers to write feature-rich yet stable C++ applications Develop sophisticated programming techniques using lambda expressions, smart pointers, and move constructors Learn to expand your program’s power with inheritance and polymorphism Master the features of C++ by learning from programming experts Learn C++11 features that allow you to program compact and high-performance C++ applications TABLE OF CONTENTS PART I: THE BASICS LESSON 1: Getting Started with C++11 LESSON 2: The Anatomy of a C++ Program LESSON 3: Using Variables, Declaring Constants LESSON 4: Managing Arrays and Strings LESSON 5: Working with Expressions, Statements, and Operators LESSON 6: Controlling Program Flow LESSON 7: Organizing Code with Functions LESSON 8: Pointers and References Explained PART II: FUNDAMENTALS OF OBJECT-ORIENTED C++ PROGRAMMING LESSON 9: Classes and Objects LESSON 10: Implementing Inheritance LESSON 11: Polymorphism LESSON 12: Operator Types and Operator Overloading LESSON 13: Casting Operators LESSON 14: An Introduction to Macros and Templates PART III: LEARNING THE STANDARD TEMPLATE LIBRARY (STL) LESSON 15: An Introduction to the Standard Template Library LESSON 16: The STL String Class LESSON 17: STL Dynamic Array Classes LESSON 18: STL list and forward_list LESSON 19: STL Set Classes LESSON 20: STL Map Classes PART IV: MORE STL LESSON 21: Understanding Function Objects LESSON 22: C++11 Lambda Expressions LESSON 23: STL Algorithms LESSON 24: Adaptive Containers: Stack and Queue LESSON 25: Working with Bit Flags Using STL PART V: ADVANCED C++ CONCEPTS LESSON 26: Understanding Smart Pointers LESSON 27: Using Streams for Input and Output LESSON 28: Exception Handling LESSON 29: Going Forward APPENDIXES A: Working with Numbers: Binary and Hexadecimal B: C++ Keywords C: Operator Precedence D: Answers E: ASCII Codes
Author: Stephen G. Kochan
Publisher: Addison-Wesley Professional
Release Date: 2014-08-18
Programming in C will teach you how to write programs in the C programming language. Whether you’re a novice or experienced programmer, this book will provide you with a clear understanding of this language, which is the foundation for many object-oriented programming languages such as C++, Objective-C, C#, and Java. This book teaches C by example, with complete C programs used to illustrate each new concept along the way. Stephen Kochan provides step-by-step explanations for all C functions. You will learn both the language fundamentals and good programming practices. Exercises at the end of each chapter make the book ideally suited for classroom use or for self-instruction. All the features of the C language are covered in this book, including the latest additions added with the C11 standard. Appendixes provide a detailed summary of the language and the standard C library, both organized for quick reference. “Absolutely the best book for anyone starting out programming in C. This is an excellent introductory text with frequent examples and good text.…This is the book I used to learn C–it’s a great book.” –Vinit S. Carpenter, Learn C/C++ Today
Author: Brian Ward
Publisher: No Starch Press
Release Date: 2014-11-14
Unlike some operating systems, Linux doesn’t try to hide the important bits from you—it gives you full control of your computer. But to truly master Linux, you need to understand its internals, like how the system boots, how networking works, and what the kernel actually does. In this completely revised second edition of the perennial best seller How Linux Works, author Brian Ward makes the concepts behind Linux internals accessible to anyone curious about the inner workings of the operating system. Inside, you’ll find the kind of knowledge that normally comes from years of experience doing things the hard way. You’ll learn: * How Linux boots, from boot loaders to init implementations (systemd, Upstart, and System V) * How the kernel manages devices, device drivers, and processes * How networking, interfaces, firewalls, and servers work * How development tools work and relate to shared libraries * How to write effective shell scripts You’ll also explore the kernel and examine key system tasks inside user space, including system calls, input and output, and filesystems. With its combination of background, theory, real-world examples, and patient explanations, How Linux Works will teach you what you need to know to solve pesky problems and take control of your operating system.