Game Programming PatternsRobert Nystrom
- Genre: Programming
- Publish Date: November 2, 2014
- Publisher: Robert Nystrom
- Apple Books | $24.99Amazon Kindle
The most popular and best selling computer programming ebooks at the Apple iBookstore.
Chart of the top computer programming ebook best sellers was last updated:
1
Game Programming PatternsRobert Nystrom
The biggest challenge facing many game programmers is completing their game. Most game projects fizzle out, overwhelmed by the complexity of their own code. Game Programming Patterns tackles that exact problem. Based on years of experience in shipped AAA titles, this book collects proven patterns to untangle and optimize your game, organized as independent recipes so you can pick just the patterns you need. You will learn how to write a robust game loop, how to organize your entities using components, and take advantage of the CPUs cache to improve your performance. You'll dive deep into how scripting engines encode behavior, how quadtrees and other spatial partitions optimize your engine, and how other classic design patterns can be used in games.
2
iOS 17 App Development for Beginners: Get started with iOS app development using Swift 5.9, SwiftUI, and Xcode 15Arpit Kulsreshtha
Learn iOS app development from scratch and build your dream app KEY FEATURES ● Experience the cutting-edge capabilities of Xcode 15 and Swift 5.9 with this enhanced edition, unraveling the latest features. ● Embark on an exciting journey into the world of iOS programming while enjoying the process of building your very own iOS apps. ● Uncover the exciting advancements in iOS 17, including SwiftData, ActivityKit, SwiftUI, CoreML, and the Symbol Framework. DESCRIPTION "iOS 17 App Development for Beginners" is a definitive guide to building iOS apps with Swift. This book teaches the fundamentals of Swift, laying the foundation for future app development. It covers how to develop user interfaces for iOS apps using SwiftUI and UIKit and how to write code for views, view controllers, and data managers. The book also teaches using Core Data, Swift Data, and SQLite for database storage. Additionally, it covers essential Apple technologies and frameworks, such as Core Location and MapKit for GPS tracking, Camera and Photo Library for image storage, CI/CD, and Core ML for machine learning and artificial intelligence solutions. After completing this book, you will have a solid grasp of Swift app development and successfully publish your apps to the App Store. WHAT YOU WILL LEARN ● Explore the enhancements in the Swift programming language. ● Discover how to seamlessly integrate and manage complex data models using SwiftData and Core Data. ● Take a deep dive into the declarative and intuitive SwiftUI framework. ● Learn how to integrate machine learning with Core ML into your apps. ● Integrate ActivityKit to create engaging and interactive experiences within your iOS 17 apps. WHO THIS BOOK IS FOR This book is an excellent resource for anyone who wants to learn how to program in Swift and develop applications for the iOS platform. Whether you are a beginner, a student, or a professional, this book will teach you the basics of Swift and how to use it to create your apps. No prior programming experience is necessary, but some familiarity with other programming languages will be helpful.
3
C Programming For DummiesDan Gookin
Get an A grade in C As with any major language, mastery of C can take you to some very interesting new places. Almost 50 years after it first appeared, it's still the world's most popular programming language and is used as the basis of global industry's core systems, including operating systems, high-performance graphics applications, and microcontrollers. This means that fluent C users are in big demand at the sharp end in cutting-edge industries—such as gaming, app development, telecommunications, engineering, and even animation—to translate innovative ideas into a smoothly functioning reality. To help you get to where you want to go with C, this 2nd edition of C Programming For Dummies covers everything you need to begin writing programs, guiding you logically through the development cycle: from initial design and testing to deployment and live iteration. By the end you'll be au fait with the do's and don'ts of good clean writing and easily able to produce the basic—and not-so-basic—building blocks of an elegant and efficient source code. Write and compile source code Link code to create the executable program Debug and optimize your code Avoid common mistakes Whatever your destination: tech industry, start-up, or just developing for pleasure at home, this easy-to-follow, informative, and entertaining guide to the C programming language is the fastest and friendliest way to get there!
4
Grokking Deep Reinforcement LearningMiguel Morales
Grokking Deep Reinforcement Learning uses engaging exercises to teach you how to build deep learning systems. This book combines annotated Python code with intuitive explanations to explore DRL techniques. You’ll see how algorithms function and learn to develop your own DRL agents using evaluative feedback. Summary We all learn through trial and error. We avoid the things that cause us to experience pain and failure. We embrace and build on the things that give us reward and success. This common pattern is the foundation of deep reinforcement learning: building machine learning systems that explore and learn based on the responses of the environment. Grokking Deep Reinforcement Learning introduces this powerful machine learning approach, using examples, illustrations, exercises, and crystal-clear teaching. You'll love the perfectly paced teaching and the clever, engaging writing style as you dig into this awesome exploration of reinforcement learning fundamentals, effective deep learning techniques, and practical applications in this emerging field. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology We learn by interacting with our environment, and the rewards or punishments we experience guide our future behavior. Deep reinforcement learning brings that same natural process to artificial intelligence, analyzing results to uncover the most efficient ways forward. DRL agents can improve marketing campaigns, predict stock performance, and beat grand masters in Go and chess. About the book Grokking Deep Reinforcement Learning uses engaging exercises to teach you how to build deep learning systems. This book combines annotated Python code with intuitive explanations to explore DRL techniques. You’ll see how algorithms function and learn to develop your own DRL agents using evaluative feedback. What's inside An introduction to reinforcement learning DRL agents with human-like behaviors Applying DRL to complex situations About the reader For developers with basic deep learning experience. About the author Miguel Morales works on reinforcement learning at Lockheed Martin and is an instructor for the Georgia Institute of Technology’s Reinforcement Learning and Decision Making course. Table of Contents 1 Introduction to deep reinforcement learning 2 Mathematical foundations of reinforcement learning 3 Balancing immediate and long-term goals 4 Balancing the gathering and use of information 5 Evaluating agents’ behaviors 6 Improving agents’ behaviors 7 Achieving goals more effectively and efficiently 8 Introduction to value-based deep reinforcement learning 9 More stable value-based methods 10 Sample-efficient value-based methods 11 Policy-gradient and actor-critic methods 12 Advanced actor-critic methods 13 Toward artificial general intelligence
5
Hands-On Network Programming with CLewis Van Winkle & Kevin Quillen
A comprehensive guide to programming with network sockets, implementing internet protocols, designing IoT devices, and much more with C Key Features Apply your C and C++ programming skills to build powerful network applicationsGet to grips with a variety of network protocols that allow you to load web pages, send emails, and do much moreWrite portable network code for Windows, Linux, and macOS Book Description Network programming enables processes to communicate with each other over a computer network, but it is a complex task that requires programming with multiple libraries and protocols. With its support for third-party libraries and structured documentation, C is an ideal language to write network programs. Complete with step-by-step explanations of essential concepts and practical examples, this C network programming book begins with the fundamentals of Internet Protocol, TCP, and UDP. You'll explore client-server and peer-to-peer models for information sharing and connectivity with remote computers. The book will also cover HTTP and HTTPS for communicating between your browser and website, and delve into hostname resolution with DNS, which is crucial to the functioning of the modern web. As you advance, you'll gain insights into asynchronous socket programming and streams, and explore debugging and error handling. Finally, you'll study network monitoring and implement security best practices. By the end of this book, you'll have experience of working with client-server applications and be able to implement new network programs in C. The code in this book is compatible with the older C99 version as well as the latest C18 and C++17 standards. You'll work with robust, reliable, and secure code that is portable across operating systems, including Winsock sockets for Windows and POSIX sockets for Linux and macOS. What you will learn Uncover cross-platform socket programming APIsImplement techniques for supporting IPv4 and IPv6Understand how TCP and UDP connections work over IPDiscover how hostname resolution and DNS workInterface with web APIs using HTTP and HTTPSExplore Simple Mail Transfer Protocol (SMTP) for electronic mail transmissionApply network programming to the Internet of Things (IoT) Who this book is for If you're a developer or a system administrator who wants to get started with network programming, this book is for you. Basic knowledge of C programming is assumed.
6
Spring Start HereLaurentiu Spilca
Quickly master the massive Spring ecosystem with this focused, hands-on guide that teaches you exactly what you need to know. In Spring Start Here , you will learn how to: Build web applications with Spring Manage application objects with Spring context Implement data persistence using data sources and transactions Implement data exchange between applications using REST services Utilize Spring Boot's convention-over-configuration approach Write unit and integration tests for apps implemented with Spring Minimize work when building any kind of app Persisting data in a Spring application using the latest approach Spring Start Here introduces you to Java development with Spring by concentrating on the core concepts you'll use in every application you build. You'll learn how to refactor an existing application to Spring, how to use Spring tools to make SQL database requests and REST calls, and how to secure your projects with Spring Security. There's always more to learn, and this book will make your next steps much easier. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology For Java developers, Spring is the must-learn framework. This incredible development tool powers everything from small business ecommerce applications to enterprise-scale microservices. Mastering Spring is a long journey. Taking your first step is easy! Start here. About the book Spring Start Here teaches Java developers how to build applications using Spring framework. Informative graphics, relevant examples, and author Laurentiu Spilca's clear and lively writing make it easy to pick up the skills you need. You'll discover how to plan, write, and test applications. And by concentrating on the most important features, this no-nonsense book gives you a firm foundation for exploring Spring's rich ecosystem. What's inside Build web applications with Spring Minimize repetition and manual work Persisting data in a Spring application HTTP and REST-based web services Testing your Spring implementations About the reader For readers with beginning to intermediate Java skills. About the author Lauren?iu Spilca is a skilled Java and Spring developer and an experienced technology instructor. Table of Contents PART 1 FUNDAMENTALS 1 Spring in the real world 2 The Spring context: Defining beans 3 The Spring context: Wiring beans 4 The Spring context: Using abstractions 5 The Spring context: Bean scopes and life cycle 6 Using aspects with Spring AOP PART 2 IMPLEMENTATION 7 Understanding Spring Boot and Spring MVC 8 Implementing web apps with Spring Boot and Spring MVC 9 Using the Spring web scopes 10 Implementing REST services 11 Consuming REST endpoints 12 Using data sources in Spring apps 13 Using transactions in Spring apps 14 Implementing data persistence with Spring Data 15 Testing your Spring app
7
Elements of Causal InferenceJonas Peters, Dominik Janzing & Bernhard Schölkopf
A concise and self-contained introduction to causal inference, increasingly important in data science and machine learning. The mathematization of causality is a relatively recent development, and has become increasingly important in data science and machine learning. This book offers a self-contained and concise introduction to causal models and how to learn them from data. After explaining the need for causal models and discussing some of the principles underlying causal inference, the book teaches readers how to use causal models: how to compute intervention distributions, how to infer causal models from observational and interventional data, and how causal ideas could be exploited for classical machine learning problems. All of these topics are discussed first in terms of two variables and then in the more general multivariate case. The bivariate case turns out to be a particularly hard problem for causal learning because there are no conditional independences as used by classical methods for solving multivariate cases. The authors consider analyzing statistical asymmetries between cause and effect to be highly instructive, and they report on their decade of intensive research into this problem. The book is accessible to readers with a background in machine learning or statistics, and can be used in graduate courses or as a reference for researchers. The text includes code snippets that can be copied and pasted, exercises, and an appendix with a summary of the most important technical concepts.
8
iOS 18 App Development EssentialsNeil Smyth
This book aims to teach the skills necessary to build iOS 18 applications using SwiftUI, Xcode 16, and the Swift programming language. Beginning with the basics, this book outlines the steps to set up an iOS development environment, together with an introduction to using Swift Playgrounds to learn and experiment with Swift. The book also includes in-depth chapters introducing the Swift programming language, including data types, control flow, functions, object-oriented programming, property wrappers, structured concurrency, and error handling. A guided tour of Xcode in SwiftUI development mode follows an introduction to the key concepts of SwiftUI and project architecture. The book also covers creating custom SwiftUI views and explains how these views are combined to create user interface layouts, including stacks, frames, and forms. Other topics covered include data handling using state properties and observable, state, and environment objects, as are key user interface design concepts such as modifiers, lists, tabbed views, context menus, user interface navigation, and outline groups. The book also includes chapters covering graphics and chart drawing, user interface animation, view transitions and gesture handling, WidgetKit, Live Activities, document-based apps, Core Data, SwiftData, and CloudKit. Chapters also explain how to integrate SwiftUI views into existing UIKit-based projects and integrate UIKit code into SwiftUI. Finally, the book explains how to package up a completed app and upload it to the App Store for publication. Along the way, the topics covered in the book are put into practice through detailed tutorials, the source code for which is also available for download, and over 50 online knowledge test quizzes. The aim of this book, therefore, is to teach you the skills to build your own apps for iOS 18 using SwiftUI. Assuming you are ready to download the iOS 18 SDK and Xcode 16 and have an Apple Mac system, you are ready to get started.
9
Beginning Git and GitHubMariot Tsitoara
Learn the fundamentals of version control through step-by-step tutorials that will teach you the ins-and-outs of Git. This updated version introduces Github workflows, and contains new chapters on how to make Git and GitHub truly yours, covers additional common problems and how to solve them, along with new features of Github pull requests. Divided into three parts – Version Control, Project Management and Teamwork – this book reveals what waits for you in the real world and how to resolve the problems you may run into. Once past the basics of Git, you'll see how to manage a software project, and finally how to utilize Git and GithHub to work effectively as a team. You'll examine how to plan, follow and execute a project with GitHub, and then apply those concepts to real-world situations. Workaround the pitfalls that most programmers fall into when driving a project with Git by using proven tactics to avoid them. You will also be taught the easiest and quickest ways to resolve merge conflicts. A lot of modern books on Git don’t go into depth about non-technical topics. Beginning Git and GitHub is your complete guide to how Git and GitHub work in a professional team environment and will help you cover all the bases right at the start of your career. You will: Review basic and advanced concepts of GitApply Project Management skills using GitHub Solve conflicts or, ideally, avoid them altogetherUse advanced concepts for a more boosted workflow
10
Beginner's Step-by-Step Coding CourseDK
With this visual guide to computer programming for beginners, it has never been easier to learn how to code. Coding skills are in high demand and the need for programmers is still growing. Covering three of the most popular languages for new coders, this book uses a graphic method to break complex subjects into user-friendly chunks, bringing essential skills within easy reach. Each chapter contains tutorials on practical projects designed to teach you the main applications of each language, such as building websites, creating games, and designing apps. The book also looks at many of the main coding languages that are out there, outlining the key applications of each language, so you can choose the right language for you. You'll learn to think like a programmer by breaking a problem down into parts, before turning those parts into lines of code. Short, easy-to-follow steps then show you, piece by piece, how to build a complete program. There are challenges for you to tackle to build your confidence before moving on. Written by a team of expert coders and coding teachers, Beginner's Step-by-Step Coding Course is the ideal way to get to set you on the road to code.
11
Black Hat Python, 2nd EditionJustin Seitz & Tim Arnold
Fully-updated for Python 3, the second edition of this worldwide bestseller (over 100,000 copies sold) explores the stealthier side of programming and brings you all new strategies for your hacking projects. When it comes to creating powerful and effective hacking tools, Python is the language of choice for most security analysts. In Black Hat Python, 2nd Edition , you’ll explore the darker side of Python’s capabilities—writing network sniffers, stealing email credentials, brute forcing directories, crafting mutation fuzzers, infecting virtual machines, creating stealthy trojans, and more. The second edition of this bestselling hacking book contains code updated for the latest version of Python 3, as well as new techniques that reflect current industry best practices. You’ll also find expanded explanations of Python libraries such as ctypes, struct, lxml, and BeautifulSoup, and dig deeper into strategies, from splitting bytes to leveraging computer-vision libraries, that you can apply to future hacking projects. You’ll learn how to: • Create a trojan command-and-control using GitHub • Detect sandboxing and automate common malware tasks, like keylogging and screenshotting • Escalate Windows privileges with creative process control • Use offensive memory forensics tricks to retrieve password hashes and inject shellcode into a virtual machine • Extend the popular Burp Suite web-hacking tool • Abuse Windows COM automation to perform a man-in-the-browser attack • Exfiltrate data from a network most sneakily When it comes to offensive security, your ability to create powerful tools on the fly is indispensable. Learn how with the second edition of Black Hat Python . New to this edition : All Python code has been updated to cover Python 3 and includes updated libraries used in current Python applications. Additionally, there are more in-depth explanations of the code and the programming techniques have been updated to current, common tactics. Examples of new material that you'll learn include how to sniff network traffic, evade anti-virus software, brute-force web applications, and set up a command-and-control (C2) system using GitHub.
12
Python Crash Course, 3rd EditionEric Matthes
Python Crash Course is the world’s bestselling programming book, with over 1,500,000 copies sold to date! Python Crash Course is the world’s best-selling guide to the Python programming language. This fast-paced, thorough introduction will have you writing programs, solving problems, and developing functioning applications in no time. You’ll start by learning basic programming concepts, such as variables, lists, classes, and loops, and practice writing clean code with exercises for each topic. You’ll also learn how to make your programs interactive and test your code safely before adding it to a project. You’ll put your new knowledge into practice by creating a Space Invaders–inspired arcade game, building a set of data visualizations with Python’s handy libraries, and deploying a simple application online. As you work through the book, you’ll learn how to: Use powerful Python libraries and tools, including pytest, Pygame, Matplotlib, Plotly, and DjangoMake increasingly complex 2D games that respond to keypresses and mouse clicksGenerate interactive data visualizations using a variety of datasetsBuild apps that allow users to create accounts and manage their own data, and deploy your apps online Troubleshoot coding errors and solve common programming problems New to this edition : This third edition is completely revised to reflect the latest in Python code. New and updated coverage includes VS Code for text editing, the pathlib module for file handling, pytest for testing your code, as well as the latest features of Matplotlib, Plotly, and Django. If you’ve been thinking about digging into programming, Python Crash Course will provide you with the skills to write real programs fast. Why wait any longer? Start your engines and code! Covers Python 3.x
13
Grokking Algorithms, Second EditionAditya Y. Bhargava
A friendly, fully-illustrated introduction to the most important computer programming algorithms. Master the most widely used algorithms and be fully prepared when you’re asked about them at your next job interview. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, you’ll actually enjoy learning about algorithms with this fun and friendly guide! In Grokking Algorithms, Second Edition you will discover: • Search, sort, and graph algorithms • Data structures such as arrays, lists, hash tables, trees, and graphs • NP-complete and greedy algorithms • Performance trade-offs between algorithms • Exercises and code samples in every chapter • Over 400 illustrations with detailed walkthroughs The first edition of Grokking Algorithms proved to over 100,000 readers that learning algorithms doesn't have to be complicated or boring! This revised second edition contains brand new coverage of trees, including binary search trees, balanced trees, B-trees and more. You’ll also discover fresh insights on data structure performance that takes account of modern CPUs. Plus, the book’s fully annotated code samples have been updated to Python 3. Foreword by Daniel Zingaro. About the technology The algorithms you use most often have already been discovered, tested, and proven. Grokking Algorithms, Second Edition makes it a breeze to learn, understand, and use them. With beautifully simple explanations, over 400 fun illustrations, and dozens of relevant examples, it’s the perfect way to unlock the power of algorithms in your everyday work and prepare for your next coding interview—no math required! About the book Grokking Algorithms, Second Edition teaches you important algorithms to speed up your programs, simplify your code, and solve common programming problems. Start with tasks like sorting and searching, then build your skills to tackle advanced problems like data compression and artificial intelligence. You’ll even learn to compare the performance tradeoffs between algorithms. Plus, this new edition includes fresh coverage of trees, NP-complete problems, and code updates to Python 3. What's inside • Search, sort, and graph algorithms • Data structures such as arrays, lists, hash tables, trees, and graphs • NP-complete and greedy algorithms • Exercises and code samples in every chapter About the reader No advanced math or programming skills required. About the author Aditya Bhargava is a Software Engineer with a dual background in Computer Science and Fine Arts. He blogs on programming at adit.io. Table of Contents 1 Introduction to algorithms 2 Selection sort 3 Recursion 4 Quicksort 5 Hash tables 6 Beadth-first search 7 Trees 8 Balanced trees 9 Dijkstra’s algorithm 10 Greedy algorithms 11 Dynamic programming 12 k-nearest neighbors 13 where to go next
14
CodeCharles Petzold
The classic guide to how computers work, updated with new chapters and interactive graphics "For me, Code was a revelation. It was the first book about programming that spoke to me. It started with a story, and it built up, layer by layer, analogy by analogy, until I understood not just the Code, but the System. Code is a book that is as much about Systems Thinking and abstractions as it is about code and programming. Code teaches us how many unseen layers there are between the computer systems that we as users look at every day and the magical silicon rocks that we infused with lightning and taught to think." - Scott Hanselman, Partner Program Director, Microsoft, and host of Hanselminutes Computers are everywhere, most obviously in our laptops and smartphones, but also our cars, televisions, microwave ovens, alarm clocks, robot vacuum cleaners, and other smart appliances. Have you ever wondered what goes on inside these devices to make our lives easier but occasionally more infuriating? For more than 20 years, readers have delighted in Charles Petzold's illuminating story of the secret inner life of computers, and now he has revised it for this new age of computing. Cleverly illustrated and easy to understand, this is the book that cracks the mystery. You'll discover what flashlights, black cats, seesaws, and the ride of Paul Revere can teach you about computing, and how human ingenuity and our compulsion to communicate have shaped every electronic device we use. This new expanded edition explores more deeply the bit-by-bit and gate-by-gate construction of the heart of every smart device, the central processing unit that combines the simplest of basic operations to perform the most complex of feats. Petzold's companion website, CodeHiddenLanguage.com, uses animated graphics of key circuits in the book to make computers even easier to comprehend. In addition to substantially revised and updated content, new chapters include: Chapter 18: Let's Build a Clock! Chapter 21: The Arithmetic Logic Unit Chapter 22: Registers and Busses Chapter 23: CPU Control Signals Chapter 24: Jumps, Loops, and Calls Chapter 28: The World Brain From the simple ticking of clocks to the worldwide hum of the internet, Code reveals the essence of the digital revolution.
15
SwiftUI for Masterminds 5th EditionJ.D. Gauchat
Anyone can learn how to develop professional applications for iPhones, iPads, and Mac computers. All you need is the information to be presented in a format that is clear and easy to understand. If that’s what you are looking for, this book is for you. SwiftUI for Masterminds covers both fundamental and advanced concepts, from computer programming and the Swift programming language to database storage, data sharing, graphics, the user interface, and everything you need to know to develop applications for Apple devices. Each topic is supported by practical step-by-step examples, making the latest technologies accessible to everyone. Whether you are a complete beginner or an experienced developer, SwiftUI for Masterminds will help you master SwiftUI and develop professional apps for Apple devices. By the end of this book, you will have a deep understanding of computer programming, the Swift language, SwiftUI, and every technology provided by Apple to create innovated applications and stunning user interfaces. Discover how easy and powerful app development can be. With SwiftUI for Masterminds, you will have everything you need to turn your ideas into fully functional applications! Introduction to Swift 6 Swift Paradigm Swift Concurrency SwiftData Observation Declarative User Interfaces SwiftUI Framework Multiplatform Applications Navigation Stacks Navigation Split Views Custom Layouts Scroll Views Lists and Grids Tables Maps Forms Graphics and Animations Charts Files Archiving Documents iCloud CloudKit Camera and Photos Video View Web View Gesture Recognizers Drag & Drop Notifications Internationalization and Localization UIKit in SwiftUI ...and more! iOS and Mac development with iOS 18, Xcode 16, Swift 6 and SwiftUI
16
How To Think About AIRichard Susskind
Susskind tells the unfolding story of AI, explaining what it does and how it has evolved, offering unconventional views on its ups and downs. He suggests that the main error we make in thinking about AI is anthropomorphizing, that is, evaluating and discussing current and future AI systems by reference to humans.
17
Learning GoJon Bodner
Go has rapidly become the preferred language for building web services. Plenty of tutorials are available to teach Go's syntax to developers with experience in other programming languages, but tutorials aren't enough. They don't teach Go's idioms, so developers end up recreating patterns that don't make sense in a Go context. This practical guide provides the essential background you need to write clear and idiomatic Go. No matter your level of experience, you'll learn how to think like a Go developer. Author Jon Bodner introduces the design patterns experienced Go developers have adopted and explores the rationale for using them. This updated edition also shows you how Go's generics support fits into the language. This book helps you: Write idiomatic code in Go and design a Go projectUnderstand the reasons behind Go's design decisionsSet up a Go development environment for a solo developer or teamLearn how and when to use reflection, unsafe, and cgoDiscover how Go's features allow the language to run efficientlyKnow which Go features you should use sparingly or not at allUse Go's tools to improve performance, optimize memory usage, and reduce garbage collectionLearn how to use Go's advanced development tools
18
C++Ryan Turner
Do you have to manage large volumes of data at work or in your hobby? Do you need a capable and dedicated programming language that can cope with your requirements? C++ is the answer you’ve been looking for. If you are someone who needs a powerful backend language that is perfect for handling large volumes of data , then C++ is a good place for you to start. It already helps power such giants of the modern age as Spotify, YouTube and Amazon . With a portfolio like that it’s easy to see why it could be the right fit for you. But how do you get started when you are a novice? Inside this book, C++: The Ultimate Beginner’s Guide to Learn C++ Programming Step by Step, you will find that because of the type-checked code C++ uses, it can outperform most others with its speed and is particularly good when using multiple devices in app development. You will also learn: • Installation and setup made easy • The basic principles that will get you started • The different operations that are available in C++ • Decision making with C++ • How to create functions • And lots more… Perfect for anyone who is starting out with a programming language and needs something that will fulfill all their needs in a complex environment, this guide is the book that will create a solid platform for you to go further and expand your knowledge even more. Get a copy now and see what C++ will do for your computer work!
19
SQL: For Beginners: Your Guide To Easily Learn SQL Programming in 7 Daysi Code Academy
There was a time when Information Technology was only known as "Electronic Data Processing." Despite the fuss about innovative techniques, data process is still the heart of every system in the world—and even more so as the data sizes that are being managed today seems to grow at an exponential rate. Some of the architectural preferences are complete long shots on the future. You will definitely not only need an exceptionally firm grasp on the theoretical knowledge, but also rigor. However, those characteristics are essentials of any art. This book is definitely not a SQL cookbook wherein all possible problems and their solutions are listed. The aim is to impart not only a firm grasp of the fundamentals of database query language, but also a good working knowledge of the relational theory of SQL. It is also the aim of this book to help budding developers—and their administrators—to raise exceptionally good questions. There's a big chance that you'll still write bad code—inefficient queries after going through this book. A developer, from time to time, has to. Hopefully, however, it'll be knowingly and with perfectly good reason. Welcome readers to the world of SQL. Let's begin your journey.
20
C++ Crash CourseJosh Lospinoso
A fast-paced, thorough introduction to modern C++ written for experienced programmers. After reading C++ Crash Course , you'll be proficient in the core language concepts, the C++ Standard Library, and the Boost Libraries. C++ is one of the most widely used languages for real-world software. In the hands of a knowledgeable programmer, C++ can produce small, efficient, and readable code that any programmer would be proud of. Designed for intermediate to advanced programmers, C++ Crash Course cuts through the weeds to get you straight to the core of C++17, the most modern revision of the ISO standard. Part 1 covers the core of the C++ language, where you'll learn about everything from types and functions, to the object life cycle and expressions. Part 2 introduces you to the C++ Standard Library and Boost Libraries, where you'll learn about all of the high-quality, fully-featured facilities available to you. You'll cover special utility classes, data structures, and algorithms, and learn how to manipulate file systems and build high-performance programs that communicate over networks. You'll learn all the major features of modern C++, including: Fundamental types, reference types, and user-defined typesThe object lifecycle including storage duration, memory management, exceptions, call stacks, and the RAII paradigm Compile-time polymorphism with templates and run-time polymorphism with virtual classesAdvanced expressions, statements, and functionsSmart pointers, data structures, dates and times, numerics, and probability/statistics facilitiesContainers, iterators, strings, and algorithmsStreams and files, concurrency, networking, and application development With well over 500 code samples and nearly 100 exercises, C++ Crash Course is sure to help you build a strong C++ foundation.
21
Reinforcement Learning, second editionRichard S. Sutton & Andrew G. Barto
The significantly expanded and updated new edition of a widely used text on reinforcement learning, one of the most active research areas in artificial intelligence. Reinforcement learning, one of the most active research areas in artificial intelligence, is a computational approach to learning whereby an agent tries to maximize the total amount of reward it receives while interacting with a complex, uncertain environment. In Reinforcement Learning , Richard Sutton and Andrew Barto provide a clear and simple account of the field's key ideas and algorithms. This second edition has been significantly expanded and updated, presenting new topics and updating coverage of other topics. Like the first edition, this second edition focuses on core online learning algorithms, with the more mathematical material set off in shaded boxes. Part I covers as much of reinforcement learning as possible without going beyond the tabular case for which exact solutions can be found. Many algorithms presented in this part are new to the second edition, including UCB, Expected Sarsa, and Double Learning. Part II extends these ideas to function approximation, with new sections on such topics as artificial neural networks and the Fourier basis, and offers expanded treatment of off-policy learning and policy-gradient methods. Part III has new chapters on reinforcement learning's relationships to psychology and neuroscience, as well as an updated case-studies chapter including AlphaGo and AlphaGo Zero, Atari game playing, and IBM Watson's wagering strategy. The final chapter discusses the future societal impacts of reinforcement learning.
22
Learning SparkJules S. Damji, Brooke Wenig, Tathagata Das & Denny Lee
Data is bigger, arrives faster, and comes in a variety of formatsâ??and it all needs to be processed at scale for analytics or machine learning. But how can you process such varied workloads efficiently? Enter Apache Spark. Updated to include Spark 3.0, this second edition shows data engineers and data scientists why structure and unification in Spark matters. Specifically, this book explains how to perform simple and complex data analytics and employ machine learning algorithms. Through step-by-step walk-throughs, code snippets, and notebooks, youâ??ll be able to: Learn Python, SQL, Scala, or Java high-level Structured APIsUnderstand Spark operations and SQL EngineInspect, tune, and debug Spark operations with Spark configurations and Spark UIConnect to data sources: JSON, Parquet, CSV, Avro, ORC, Hive, S3, or KafkaPerform analytics on batch and streaming data using Structured StreamingBuild reliable data pipelines with open source Delta Lake and SparkDevelop machine learning pipelines with MLlib and productionize models using MLflow
23
Object Oriented Programming Properties Explained in C#: Beginner GuideChittaranjan Dhurat
Book Description This book explains Object Oriented Programming Properties with easy to understand examples and simple language.Level: Beginner to Intermediate Are you looking for learning object oriented programming properties with simple language and easy to understand examples?Have you just started to learn Object Oriented Programming in C# or you have some experience with it and want to learn some basic properties of object oriented programming?Are you a beginner programmer or intermediate level programmer who wants to gain strong hold on object oriented programming with C# language by being expertise with OOPs properties?Is your concept of Object Oriented Programming Properties is not yet clear? Then this is the perfect guide for you. What you will learn in this book?1. What is OOP?2. Classes and Objects3. Inheritance4. Polymorphism5. Abstract Classes6. Interface7. Aggregation, Composition & Encapsulation Please note that this book is NOT the complete guide on Object Oriented Programming. The focus of this book is to explain the basic properties of Object Oriented Programming with C# language. So that programmers can have strong base for more complex OOP programming. This is a short book which will help you to understand the Object Oriented Programming Properties in C# very quickly. Download you copy today! Tags:C#, C# language, C# book, C# tutorial, learning C#, C# beginner guide, C# coding, C# examples, visual studio, .NET
24
How to Make Your Own Video GameM. Usman
Table of Contents Preface Chapter # 1: Important Tips to Think About Before Making Your Game Have a Concrete Idea Determine Your Audience Consider Your Platform Pick a Genre Have a Great Title Work on Gameplay Be Realistic Chapter # 2: Coming up with Game Ideas Read Books Get Ideas From Movies Use Other Games Mix Different Ideas Day Dream Brainstorm with Your Friends Pay Attention to Your Life Chapter # 3: Choosing an Engine Stencyl GameMaker Unity Unreal Engine RPG Maker VX Chapter # 4: Secrets on How to Make a Game Great Small Learning Curve Continuous Challenges Set Appropriate Rewards Freedom to Make Decisions Don't Just Focus on the Story, But Gameplay as Well Chapter # 5: Testing Your Game Think of What You Want to Know After Testing Test on Every Platform Use Your Friends Ask people Online Your Presence During Testing Chapter # 6: How to Promote a Game Begin Marketing Before the Release Date Have a Website Don't Forget Social Media Join Forums Tell Your Friends Connect with other Developers Chapter # 7: How To Become a Great Game Developer Play many video games Don't Wait for Motivation Learn Programming Take Criticism Work with Other People Work on Deadlines Conclusion About the Author Publisher Preface If you are an avid gamer, you probably have had the will to create your own game. Unfortunately, you had no idea where to start from. In this book, you will discover how you can make a game. Your ideas should not be buried in your head; you just don't know if they could make the next “Grand Theft Auto.” In order to make a simple game, you mainly need a computer and game-making software. Since you play games all the time, then you already have a computer. If not, you can build one easily. As for the softwares, you can download them online. Some are free while some come at a cost. Making your first game will not be an easy task as there are a couple of things you need to learn first. So you should not have high hopes for your first game. But with time and practice, you will definitely get better. In this book, I will show you the best softwares you can use to make your own games. I will also give you things you must think about before you start developing your game. In addition to that, you will also find guidance on testing your game, tips for becoming a great game developer, advice on creating game ideas, and more. If you thought that making games was something only for big companies, this book will show you that you too can do it. I hope you will find this book helpful.
25
The Nature of CodeDaniel Shiffman
All aboard The Coding Train ! This beginner-friendly creative coding tutorial is designed to grow your skills in a fun, hands-on way as you build simulations of real-world phenomena with “The Coding Train” YouTube star Daniel Shiffman. What if you could re-create the awe-inspiring flocking patterns of birds or the hypnotic dance of fireflies—with code? For over a decade, The Nature of Code has empowered countless readers to do just that, bridging the gap between creative expression and programming. This innovative guide by Daniel Shiffman, creator of the beloved Coding Train, welcomes budding and seasoned programmers alike into a world where code meets playful creativity. This JavaScript-based edition of Shiffman’s groundbreaking work gently unfolds the mysteries of the natural world, turning complex topics like genetic algorithms, physics-based simulations, and neural networks into accessible and visually stunning creations. Embark on this extraordinary adventure with projects involving: A physics engine : Simulate the push and pull of gravitational attraction. Flocking birds : Choreograph the mesmerizing dance of a flock. Branching trees : Grow lifelike and organic tree structures. Neural networks : Craft intelligent systems that learn and adapt. Cellular automata : Uncover the magic of self-organizing patterns. Evolutionary algorithms : Play witness to natural selection in your code. Shiffman’s work has transformed thousands of curious minds into creators, breaking down barriers between science, art, and technology, and inviting readers to see code not just as a tool for tasks but as a canvas for boundless creativity. Whether you’re deciphering the elegant patterns of natural phenomena or crafting your own digital ecosystems, Shiffman’s guidance is sure to inform and inspire. The Nature of Code is not just about coding; it’s about looking at the natural world in a new way and letting its wonders inspire your next creation. Dive in and discover the joy of turning code into art—all while mastering coding fundamentals along the way. NOTE: All examples are written with p5.js, a JavaScript library for creative coding, and are available on the book's website.
26
Think PythonAllen Downey
Python is an excellent way to get started in programming, and this clear, concise guide walks you through Python a step at a time—beginning with basic programming concepts before moving on to functions, data structures, and object-oriented design. This revised third edition reflects the growing role of large language models (LLMs) in programming and includes exercises on effective LLM prompts, testing code, and debugging skills. With this popular hands-on guide at your side, you'll get: A grounding in the syntax and semantics of the Python languageA clear definition of each programming concept, with emphasis on clear vocabularyHow to work with variables, statements, functions, and data structures in a logical progressionTechniques for reading and writing files and databasesA solid understanding of objects, methods, and object-oriented programmingDebugging strategies for syntax, runtime, and semantic errorsAn introduction to recursion, interface design, data structures, and basic algorithmsHow to use LLMs—including effective prompts, testing code, and debuggingAnd more
27
Red Hat Enterprise Linux 9 for SysAdmins: A Technical Guide for Building Secure Production Systems Using RHEL 9 AdministrationJerome Gotangco & Luca Berton
DESCRIPTION Red Hat Enterprise Linux (RHEL) is the de facto standard for Linux in the enterprise and the latest version (RHEL 9) offers the best of open-source software to date with the stability and security provided by the biggest name in open-source, Red Hat. The book begins with an introduction to RHEL 9's features, architecture, and its role in the open-source ecosystem, including comparisons with Fedora and CentOS. It then delves into practical aspects of RHEL 9 setup, covering installation methods, cloud deployments on AWS, Azure, and GCP, and subscription management. The book further explores application deployment and management, including software repositories, the GNOME desktop environment, infrastructure services, virtualization, containerization with Podman, networking, file storage, and DevOps pipelines. Finally, it addresses critical security and monitoring aspects, detailing security hardening techniques, capacity planning, log analysis, system auditing and an introduction to AI/ML frameworks on RHEL 9. Whether you are learning the ropes on Linux, had some experience on running a previous RHEL system, or even have managed Linux clusters, Red Hat Enterprise Linux 9 for SysAdmins is a handy reference that would boost your knowledge and experience with the latest version of RHEL 9. KEY FEATURES ● Learn the essentials of setting up and managing a RHEL 9 server environment for your computing environment. ● Learn DevOps pipelines and automation on RHEL 9 platform. ● Understand RHEL 9 security, audits, and performance tuning. WHAT YOU WILL LEARN ● Master fundamental and advanced RHEL 9 administration, including system environment configuration, desktop customization, and automated task management. ● Implement RHEL 9 security hardening with secure access controls and subscription management, ensuring comprehensive enterprise protection. ● Configure enterprise infrastructure with database applications and virtual machines, optimized for high-performance workload delivery. ● Develop containerized applications using Podman, integrating RHEL and AI capabilities for automated deployment and orchestration. ● Build development platforms in RHEL 9 with DevOps practices and automated workflows for efficient application lifecycle management. WHO THIS BOOK IS FOR This book is written for IT professionals with beginner or intermediate system administration experience and is tasked to install, configure, and manage a RHEL 9 system. Readers are expected to have some basic understanding of operating systems and networking concepts.
28
Mastering PodmanRobert Johnson
"Mastering Podman: A Comprehensive Guide to Container Management and Deployment" offers a definitive resource for both beginners and seasoned professionals looking to leverage Podman for containerization. This book navigates the complexities of modern container management, providing clear explanations and practical examples. Readers will gain a deep understanding of Podman’s architecture and its strategic advantages over other container tools, equipping them with the knowledge to deploy and manage containers with precision and confidence. The guide covers the full spectrum of container management, from setting up environments and understanding core concepts to advanced command operations and security best practices. Each chapter is meticulously designed to build on the previous, ensuring a smooth and logical learning progression. Practical insights into troubleshooting and performance optimization are also provided, empowering users to enhance the reliability and efficiency of their containerized applications. Whether aiming to streamline deployment processes or ensure robust security protocols, this book serves as an essential companion in the realm of container technology.
29
R ProgrammingRoger Peng
This book is designed to be used in conjunction with the course titled R Programming offered by the Department of Biostatistics at The Johns Hopkins University. The course is the second course in the Data Science Specialization. This book contains all of the key video lectures from the course in a convenient offline format. Each of the four weeks of the course is covered in this book. Note that there are no assessments or programming assignments included in the book.
30
Automate the Boring Stuff with Python, 2nd EditionAl Sweigart
Learn how to code while you write programs that effortlessly perform useful feats of automation! The second edition of this international fan favorite includes a brand-new chapter on input validation, Gmail and Google Sheets automations, tips for updating CSV files, and more. If you've ever spent hours renaming files or updating spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you? Automate the Boring Stuff with Python, 2nd Edition teaches even the technically uninclined how to write programs that do in minutes what would take hours to do by hand—no prior coding experience required! This new, fully revised edition of Al Sweigart’s bestselling Pythonic classic, Automate the Boring Stuff with Python , covers all the basics of Python 3 while exploring its rich library of modules for performing specific tasks, like scraping data off the Web, filling out forms, renaming files, organizing folders, sending email responses, and merging, splitting, or encrypting PDFs. There’s also a brand-new chapter on input validation, tutorials on automating Gmail and Google Sheets, tips on automatically updating CSV files, and other recent feats of automations that improve your efficiency. Detailed, step-by-step instructions walk you through each program, allowing you to create useful tools as you build out your programming skills, and updated practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks. Boring tasks no longer have to take to get through—and neither does learning Python!
31
PowerShell for SysadminsAdam Bertram
Learn to use PowerShell, Microsoft's scripting language, to automate real-world tasks that IT professionals and system administrators deal with every day. Save Time. Automate. PowerShell® is both a scripting language and an administrative shell that lets you control and automate nearly every aspect of IT. In PowerShell for Sysadmins , five-time Microsoft® MVP "Adam the Automator" Bertram shows you how to use PowerShell to manage and automate your desktop and server environments so that you can head out for an early lunch. You'll learn how to: Combine commands, control flow, handle errors, write scripts, run scripts remotely, and test scripts with the PowerShell testing framework, PesterParse structured data like XML and JSON, work with common domains (like Active Directory, Azure, and Amazon Web Services), and create a real-world server inventory scriptDesign and build a PowerShell module to demonstrate PowerShell isn't just about ad-hoc scriptsUse PowerShell to create a hands-off, completely automated Windows deploymentBuild an entire Active Directory forest from nothing but a Hyper-V host and a few ISO filesCreate endless Web and SQL servers with just a few lines of code!Real-world examples throughout help bridge the gap between theory and actual system, and the author's anecdotes keep things lively. Stop with the expensive software and fancy consultants. Learn how to manage your own environment with PowerShell for Sysadmins and make everyone happy. Covers Windows PowerShell v5.1
32
Racket UnleashedRobert Johnson
"Racket Unleashed: Building Powerful Programs with Functional and Language-Oriented Programming" is a comprehensive guide to mastering the Racket programming language, renowned for its roots in the Lisp/Scheme family and its prowess in functional programming. This book provides readers with a deep understanding of Racket's syntax, semantics, and powerful abstractions, equipping them to utilize the language's full potential in creating robust and efficient software. Covering essential topics such as recursion, data structures, macros, and error handling, the book serves as an invaluable resource for both beginners and experienced programmers seeking to harness the capabilities of Racket effectively. Beyond the fundamentals, "Racket Unleashed" explores advanced concepts like language-oriented programming, modular development, and interfacing with other languages, offering readers a pathway to leverage Racket's unique strengths in diverse programming scenarios. Practical insights into building GUI applications, ensuring cross-platform deployment, and optimizing parallel and concurrent processes further empower readers to develop scalable and maintainable applications. With its clear explanations and detailed examples, this book is designed to be an authoritative guide for anyone aspiring to create dynamic, efficient programs using Racket's rich feature set.
33
Mathematics for 3D Game Programming and Computer Graphics, Third EditionEric Lengyel
This updated third edition addresses the mathematical skills that a programmer needs to develop a 3D game engine and computer graphics for professional-level games. MATHEMATICS FOR 3D GAME PROGRAMMING & COMPUTER GRAPHICS, THIRD EDITION is suitable for advanced programmers who are experienced with C++, DirectX, or OpenGL. The book begins at a fairly basic level, covering areas such as vector geometry and linear algebra, and then progresses to more advanced topics in 3D game programming such as illumination and visibility determination. It discusses the math first; then it presents how to translate the math into programs. By providing the math behind the effect, screenshots of the results, and samples of code that translate the math so that the effect is achieved, readers get the full story rather than only a mathematical explanation or a set of code samples that are not clearly drawn from mathematical expressions. With this revised edition, almost every chapter will provide a programming example taken directly from a real-world game programming context, and based on programs that have been written and used in game engine development.
34
Head First JavaKathy Sierra, Bert Bates & Trisha Gee
What will you learn from this book? Head First Java is a complete learning experience in Java and object-oriented programming. With this book, you'll learn the Java language with a unique method that goes beyond how-to manuals and helps you become a great programmer. Through puzzles, mysteries, and soul-searching interviews with famous Java objects, you'll quickly get up to speed on Java's fundamentals and advanced topics including lambdas, streams, generics, threading, networking, and the dreaded desktop GUI. If you have experience with another programming language, Head First Java will engage your brain with more modern approaches to coding--the sleeker, faster, and easier to read, write, and maintain Java of today. What's so special about this book? If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. If you haven't, you're in for a treat. With Head First Java , you'll learn Java through a multisensory experience that engages your mind, rather than by means of a text-heavy approach that puts you to sleep.
35
Core Graphics and Core AnimationJ.D. Gauchat
Learn how to use the Core Graphics and Core Animation frameworks to create and animate graphics in your iOS applications. After reading this guide, you will know how to generate custom graphics, how to manipulate images, and how to create animations. Table of Contents CORE GRAPHICS FRAMEWORK Core Graphics Data Types Quartz 2D Context Paths Colors Configuration Saving the State Clipping Gradients Shadows Transformations Text Images Drawing Cycle Image Context CORE ANIMATION FRAMEWORK Core Animation Layers 3D Transformations UIView Animations QUICK REFERENCE CGFloat CGSize CGPoint CGVector CGRect CGContext UIColor UIImage CGImage CGGradient CGAffineTransform UIGraphicsImageRenderer UIGraphicsImageRendererContext CALayer UIViewPropertyAnimator UIViewAnimating UICubicTimingParameters UISpringTimingParameters Functions This guide assumes that you have a basic knowledge of app development, Xcode, and the Swift language. If you don't know how to program in Swift or how to create an application with Xcode, download our guides Introduction to Swift and Interface Builder. For a complete course on app development for iOS, read our book iOS Apps for Masterminds. This guide is a collection of excerpts from the book iOS Apps for Masterminds. The information included in this guide will help you understand a particular aspect of app development in iOS, but it will not teach you everything you need to know to develop an app for Apple devices. If you need a complete course on app development for iOS, read our book iOS Apps for Masterminds. For more information, visit our website at www.formasterminds.com.
36
Building Mobile Apps at ScaleGergely Orosz
While there is a lot of appreciation for backend and distributed systems challenges, there tends to be less empathy for why mobile development is hard when done at scale. This book collects challenges engineers face when building iOS and Android apps at scale, and common ways to tackle these. By scale, we mean having numbers of users in the millions and being built by large engineering teams. For mobile engineers, this book is a blueprint for modern app engineering approaches. For non-mobile engineers and managers, it is a resource with which to build empathy and appreciation for the complexity of world-class mobile engineering. The book covers iOS and Android mobile app challenges on these dimensions: Challenges due to the unique nature of mobile applications compared to the web, and to the backend.App complexity challenges. How do you deal with increasingly complicated navigation patterns? What about non-deterministic event combinations? How do you localize across several languages, and how do you scale your automated and manual tests?Challenges due to large engineering teams. The larger the mobile team, the more challenging it becomes to ensure a consistent architecture. If your company builds multiple apps, how do you balance not rewriting everything from scratch while moving at a fast pace, over waiting on "centralized" teams?Cross-platform approaches. The tooling to build mobile apps keeps changing. New languages, frameworks, and approaches that all promise to address the pain points of mobile engineering keep appearing. But which approach should you choose? Flutter, React Native, Cordova? Native apps? Reuse business logic written in Kotlin, C#, C++ or other languages?What engineering approaches do "world-class" mobile engineering teams choose in non-functional aspects like code quality, compliance, privacy, compliance, or with experimentation, performance, or app size?
37
Pro C# 10 with .NET 6Andrew Troelsen & Phil Japikse
Welcome to the most comprehensive foundational guide available on the topic of C# coding and .NET. This book goes beyond “do this, to achieve this” to drill down into the core stuff that makes a good developer, great. This expanded 11th edition delivers loads of new content on Entity Framework, Razor Pages, Web APIs and more. You will find the latest C# 10 and .NET 6 features served up with plenty of “behind the curtain” discussion designed to expand developers’ critical thinking skills when it comes to their craft. Coverage of ASP.NET Core, Entity Framework Core, and more sits alongside the latest updates to the new unified .NET platform, from performance improvements to Windows Desktop apps on .NET 6, updates in XAML tooling, and expanded coverage of data files and data handling. Going beyond the latest features in C# 10, all code samples are rewritten for this latest release. Dive in and discover why this essential classic is a favorite of C# developers worldwide. Gain a solidfoundation in object-oriented development techniques, attributes and reflection, generics and collections, and numerous advanced topics not found in other texts (such as CIL opcodes and emitting dynamic assemblies). Pro C# 10 with .NET 6 will build your coding confidence putting C# into practice, and exploring the .NET universe and its vast potential on your own terms. What You Will Learn Explore C# 10 features and updates in records and record structs, global and implicit using directives, file level namespaces, extended property patterns, and moreDevelop applications with C# and modern frameworks for services, web, and smart client applicationsHit the ground running with ASP.NET Core web applications using MVC and Razor Pages, including view components, custom tag helpers, custom validation, GDPR support, and areasBuild ASP.NET RESTful services complete with versioning, enhanced swagger, andbasic authenticationEmbrace Entity Framework Core for building real-world, data-centric applications, with deeply expanded coverage new to this edition including SQL Server temporal table supportDive into Windows Desktop Apps on .NET 6 using Windows Presentation FoundationUnderstand the philosophy behind .NETDiscover the new features in .NET 6, including single file applications, smaller container images, and more Who This Book Is For Developers of any level who want to either learn C# and .NET or want to take their skills to the next level. “Amazing! Provides easy-to-follow explanations and examples. I remember reading the first version of this book; this is a ‘must-have’ for your collection if you are learning .NET!” – Rick McGuire, Senior Application Development Manager, Microsoft “Phil is a journeyman programmer who brings years of experience and a passion for teachingto make this fully revised and modernized ‘classic’ a ‘must-have’. Any developer who wants full-spectrum, up-to-date coverage of both the C# language and how to use it with .NET and ASP.NET Core should get this book.” – Brian A. Randell, Partner, MCW Technologies and Microsoft MVP
38
CUDA Programming with PythonWilliam Smith
"CUDA Programming with Python: From Basics to Expert Proficiency" is an authoritative guide that bridges the gap between Python programming and high-performance GPU computing using CUDA. Tailored for both beginners and intermediate programmers, this comprehensive book elucidates the core concepts of CUDA, from setting up the development environment to advanced optimization techniques. Readers are introduced to the principles of parallel processing and the distinctions between GPU and CPU computing, establishing a solid foundation for further exploration. The book meticulously covers essential topics such as the CUDA architecture and memory model, basic and advanced CUDA programming concepts, and leveraging Python with Numba for GPU acceleration. Practical sections on debugging, profiling, and optimizing CUDA applications ensure that readers can identify and rectify performance bottlenecks. Enriched with real-world examples and best practices, it provides a methodical approach to mastering CUDA programming, ultimately enabling readers to develop efficient and high-performing parallel applications.
39
Python Projects for EveryoneMohamad Charara
In this book, you will find 100 Python projects ranging from beginner to advanced level. These projects are designed to help you improve your coding skills, learn new programming concepts, and have fun along the way. However, it is important to note that these projects are not meant to be a one-size-fits-all solution. Instead, they are meant to be a starting point for your own experimentation and exploration. In some cases, the code provided may be more like a guidance than a complete code. This is intentional, as the goal is to give you the idea and provide an example of how to implement it in Python. In other cases, the code may be more complex. However, even in these cases, the code should be seen as a starting point for your own exploration.
40
The Pandas WorkshopBlaine Bateman, Saikat Basak, Thomas V. Joseph & William So
Learn the fundamentals of data science with Python by analyzing real datasets and solving problems using pandas Key Features Learn how to apply data retrieval, transformation, visualization, and modeling techniques using pandasBecome highly efficient in unlocking deeper insights from your data, including databases, web data, and moreBuild your experience and confidence with hands-on exercises and activities Book Description The Pandas Workshop will teach you how to be more productive with data and generate real business insights to inform your decision-making. You will be guided through real-world data science problems and shown how to apply key techniques in the context of realistic examples and exercises. Engaging activities will then challenge you to apply your new skills in a way that prepares you for real data science projects. You'll see how experienced data scientists tackle a wide range of problems using data analysis with pandas. Unlike other Python books, which focus on theory and spend too long on dry, technical explanations, this workshop is designed to quickly get you to write clean code and build your understanding through hands-on practice. As you work through this Python pandas book, you'll tackle various real-world scenarios, such as using an air quality dataset to understand the pattern of nitrogen dioxide emissions in a city, as well as analyzing transportation data to improve bus transportation services. By the end of this data analytics book, you'll have the knowledge, skills, and confidence you need to solve your own challenging data science problems with pandas. What you will learn Access and load data from different sources using pandasWork with a range of data types and structures to understand your dataPerform data transformation to prepare it for analysisUse Matplotlib for data visualization to create a variety of plotsCreate data models to find relationships and test hypothesesManipulate time-series data to perform date-time calculationsOptimize your code to ensure more efficient business data analysis Who this book is for This data analysis book is for anyone with prior experience working with the Python programming language who wants to learn the fundamentals of data analysis with pandas. Previous knowledge of pandas is not necessary.
41
DEEP LEARNING FOR EEG-BASED BRAIN-COMPUTER INTERFACESXiang Zhang & Lina Yao
Deep Learning for EEG-Based Brain-Computer Interfaces is an exciting book that describes how emerging deep learning improves the future development of Brain-Computer Interfaces (BCI) in terms of representations, algorithms and applications. BCI bridges humanity's neural world and the physical world by decoding an individuals' brain signals into commands recognizable by computer devices.This book presents a highly comprehensive summary of commonly-used brain signals; a systematic introduction of around 12 subcategories of deep learning models; a mind-expanding summary of 200+ state-of-the-art studies adopting deep learning in BCI areas; an overview of a number of BCI applications and how deep learning contributes, along with 31 public BCI data sets. The authors also introduce a set of novel deep learning algorithms aimed at current BCI challenges such as robust representation learning, cross-scenario classification, and semi-supervised learning. Various real-world deep learning-based BCI applications are proposed and some prototypes are presented. The work contained within proposes effective and efficient models which will provide inspiration for people in academia and industry who work on BCI.
42
SuperintelligenceNick Bostrom
This seminal book injects the topic of superintelligence into the academic and popular mainstream. What happens when machines surpass humans in general intelligence? Will artificial agents save or destroy us? In a tour de force of analytic thinking, Bostrom lays a foundation for understanding the future of humanity and intelligent life.
43
Python Essentials 1: The Official OpenEDG Python Institute beginners course with practical exercises – learn the basics of Python in seven days and pass the PCEP certification examThe OpenEDG Python Institute
Unleash Your Potential and Transform Your Life with Python Essentials 1 — Your Gateway to Career Success! Are you stuck in a job that drains your energy? Do you yearn to achieve your full potential, all while earning a better income? Are you overwhelmed by repetitive, tedious tasks that eat away at your free time and joy? Step into a transformative learning experience with Python Essentials 1 — a meticulously crafted course that empowers you to claim the life you've always wanted. This book doesn't just teach you Python; it opens the door to a thrilling career as a professional programmer, and an opportunity to become part of a global community of people just like you. Every moment you invest in learning equips you to tackle real-world challenges with Python, setting you on a fast-track to becoming an in-demand professional. Here's a taste of what you'll dive into: The magical world of computing, making the machine bend to your will The beauty and genius behind Python, created by Guido van Rossum — a language that has changed millions of lives Step-by-step setup guidance, so you can jump in without any hitches Empowering you to replace tedious tasks with simple Python scripts Mastering the heart and soul of Python—variables, operators, and professional best practices Crafting interactive programs that spark awe Creating complex solutions effortlessly with conditional logic Looping code to multiply productivity Real-world Python applications to show off in your portfolio The Python Essentials 1 book includes: Four Comprehensive Modules 23 In-Depth Chapters 30 Hands-on Lab Exercises with Thoughtful Hints and Sample Solutions 18 Quizzes to Validate Your Progress and Sharpen Your Skills Complete Preparatory Material for the Globally Trusted PCEP™ – Certified Entry-Level Python Programmer certification exam So why just dream of a fulfilling, high-paying career? Seize this opportunity to be more, do more, and achieve more. Get Python Essentials 1 from the OpenEDG Python Institute and make your aspirations a reality — today!
44
Art of Computer Programming, Volume 4, Fascicle 7, TheDonald Knuth
The Art of Computer Programming is a multivolume work on the analysis of algorithms and has long been recognized as the definitive description of classical computer science. The five volumes published to date--Volumes 1, 2, 3, 4A, and 4B--already comprise a unique and invaluable resource in programming theory and practice. Countless readers have spoken about the profound personal influence of Knuth's writings. Scientists have marveled at the beauty and elegance of his analysis, while practicing programmers have successfully applied his "cookbook" solutions to their day-to-day problems. All have admired Knuth for the breadth, clarity, accuracy, and good humor found in his books. To continue the set, and to update parts of the existing volumes, Knuth has created a series of small books called fascicles, which are published at regular intervals. Each fascicle encompasses a section or more of wholly new or revised material. Ultimately, the content of these fascicles will be rolled up into the comprehensive, final versions of each volume, and the enormous undertaking that began in 1962 will be complete. Volume 4, Fascicle 7, which is brimming with lively examples, forms the first third of what will eventually become hardcover Volume 4C. It introduces and explores an important general framework for modeling and solving combinatorial problems, called the Constraint Satisfaction Problem (CSP). The concluding sections of Volume 4B contain expositions of two analogous frameworks, namely XCC ("exact covering with colors") and SAT ("Boolean satisfiability"); the XCC solvers and SAT solvers are now joined by CSP solvers, completing a powerful trio of techniques. Each member of the trio has its own strengths, while separately helping to understand the other two. This fascicle illuminates how the CSP framework is tied to dozens of other parts of computer science: Scene analysis (computer vision); efficient algorithms that embed one graph in another; fascinating instances of "graceful graphs"; new ways to look ahead when backtracking; new heuristics to guide a search that backtracks through a massive space of possibilities; situations when backtracking isn't necessary. New sparse-set data structures are introduced, leading to a technique called "dancing cells"--which often is even better than "dancing links"! Recreational topics appear throughout, including some new takes on the classic problem of a knight's tour, as well as modern puzzles such as fillomino. Nearly 500 exercises are provided, arranged carefully for self-instruction, together with detailed answers (in fact, sometimes also with answers to the answers). All the while, the author pays significant attention to the history of the subject and its human dimensions.
45
Learning PythonMark Lutz
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 sixth 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 Python 3.12 and all other releases in use today. With a pragmatic focus on what you need to know, it also introduces some advanced language features that have become increasingly common in Python code. This book helps you: Explore Python's built-in object types such as strings, lists, dictionaries, and filesCreate and process objects with Python statements, and learn Python's syntax modelUse functions and functional programming to avoid redundancy and maximize reuseOrganize code into larger components with modules and packagesCode robust programs with Python's exception handling and development toolsApply object-oriented programming and classes to make code customizableSurvey advanced Python tools including decorators, descriptors, and metaclassesWrite idiomatic Python code that runs portably across a wide variety of platforms
46
Python Programming: Your Step By Step Guide To Easily Learn Python in 7 Daysi Code Academy
Learning Python Programming in 7 days is possible, although it might not look like it's easy at first, especially if you are someone with meager experience in dealing with a programming language. As you learn, you will see that it is not that difficult to understand, and it becomes easier when you add patience, diligence, and discipline. This book has all the materials that you need in learning basic Python Programming. It is presented in easy to understand format – much of technical jargons were eliminated, although you might still find some, but they are the terms that you will likely (almost always) encounter when creating your codes. You will find no such trouble in understanding the terms, and how to do it properly. Samples are provided for you, and explanations are also presented so you won't get lost and still have fun while learning. You will be glad that you have this book with you while learning Python. Discover many things that you can do with Python programming, and you might even start a new career.
47
Python For Kids For DummiesBrendan Scott
The kid-friendly way to learning coding with Python Calling all wanna-be coders! Experts point to Python as one of the best languages to start with when you're learning coding, and Python For Kids For Dummies makes it easier than ever. Packed with approachable, bite-sized projects that won't make you lose your cool, this fun and friendly guide teaches the basics of coding with Python in a language you can understand. In no time, you'll be installing Python tools, creating guessing games, building a geek speak translator, making a trivia game, constructing a Minecraft chat client, and so much more. Whether you don't have the opportunity to take coding classes at school or in camp—or just simply prefer to learn on your own— Python For Kids For Dummies makes getting acquainted with this popular coding language fast and easy. It walks you step-by-step through basic coding projects and provides lots of hands-on tasks that give you a sweet sense of accomplishment when you complete them. What's not to love about that? Navigate the basics of coding with the Python language Create your own applications and games Find help from other Python users Expand your technology skills with Python If you're a pre-to-early-teen looking to add coding skills to your creativity toolbox, Python For Kids For Dummies is your sure-fire weapon for getting up and running with one of the hottest programming languages around.
48
Programming Concepts in C++Robert Burns
Programming Concepts in C++ is one in a series of books that introduce the basic concepts of computer programming, using a selected programming language. Other books in the series use languages like Java and Python, but all focus on concepts and not on any particular language. The presentation of the material is the same in each language, and much of the text is identical. Code samples are specific to the selected language, and some unique language features are unavoidably included, but the presentation is largely language-independent. A unique feature of the book is that it explains how to acquire, install, and use freely available software to edit, compile, and run console programs on just about any system, including Windows and Mac. Its examples use command line compiling, so that the presentation remains focused on programming concepts and avoids becoming a training tool for a specific IDE. The three-part organization of material starts with the basics of sequential processing, then adds branching and looping logic and subprograms, and ends with arrays and objects. It turns a beginner with no programming experience into a programmer, prepared to continue their training in C++ or just about any other specific programming language.
49
C++ Programming LanguageKnowledge flow
C++ Programming is an object-oriented programming language, generally compiled and transitional middle-level programming language was developed by Bjarne Stroustrup in 1979. In simple words, C++ programming is a classy, well-organized and a general purpose programming language based on C programming. Generally operating systems, applications, browsers, games and system drivers use C++ programming core language. This makes C++ programming one of the best languages in the world. This book of C++ Programming Language provides up to date and complete coverage of all C++ language features and standard library components like standard I/O streams, general structures, variables, classes, functions, objects, modifiers and most popular part control loops. So you will find some fundamental skills and learn like a programmer.
50
Hands-On Software Architecture with GolangJyotiswarup Raiturkar
Understand the principles of software architecture with coverage on SOA, distributed and messaging systems, and database modeling Key Features Gain knowledge of architectural approaches on SOA and microservices for architectural decisions Explore different architectural patterns for building distributed applications Migrate applications written in Java or Python to the Go language Book Description Building software requires careful planning and architectural considerations; Golang was developed with a fresh perspective on building next-generation applications on the cloud with distributed and concurrent computing concerns. Hands-On Software Architecture with Golang starts with a brief introduction to architectural elements, Go, and a case study to demonstrate architectural principles. You'll then move on to look at code-level aspects such as modularity, class design, and constructs specific to Golang and implementation of design patterns. As you make your way through the chapters, you'll explore the core objectives of architecture such as effectively managing complexity, scalability, and reliability of software systems. You'll also work through creating distributed systems and their communication before moving on to modeling and scaling of data. In the concluding chapters, you'll learn to deploy architectures and plan the migration of applications from other languages. By the end of this book, you will have gained insight into various design and architectural patterns, which will enable you to create robust, scalable architecture using Golang. What you will learn Understand architectural paradigms and deep dive into Microservices Design parallelism/concurrency patterns and learn object-oriented design patterns in Go Explore API-driven systems architecture with introduction to REST and GraphQL standards Build event-driven architectures and make your architectures anti-fragile Engineer scalability and learn how to migrate to Go from other languages Get to grips with deployment considerations with CICD pipeline, cloud deployments, and so on Build an end-to-end e-commerce (travel) application backend in Go Who this book is for Hands-On Software Architecture with Golang is for software developers, architects, and CTOs looking to use Go in their software architecture to build enterprise-grade applications. Programming knowledge of Golang is assumed.