Expert Python Programming, 4th EditionThis new edition of Expert Python Programming provides you with a thorough understanding of the process of building and maintaining Python apps. Complete with best practices, useful tools, and standards implemented by professional Python developers, this fourth edition has been extensively updated. Become familiar with the latest Python improvements, syntax elements, and interesting tools to boost your development efficiency.
The initial few chapters will allow experienced programmers coming from different languages to transition to the Python ecosystem. You will explore common software design patterns and various programming methodologies, such as event-driven programming, concurrency, and metaprogramming. You will also go through complex code examples and try to solve meaningful problems by bridging Python with C and C++, writing extensions that benefit from the strengths of multiple languages. Finally, you will understand the complete lifetime of any application after it goes liv ...
Learning MongoDBData in the world started to grow tremendously after mobile application came in the market. This huge amount of data became almost impossible to handle with traditional relational database - SQL. NoSQL databases are introduced to handle those data where much more flexibility came like variable number of columns for each data. MongoDB is one of the leading NoSQL databases. Each collection contains a number of JSON documents. Any data model that can be expressed in a JSON document can be easily stored in MongoDB.
It is an unofficial and free MongoDB ebook created for educational purposes. All the content is extracted from Stack Overflow Documentation, which is written by many hardworking individuals at Stack Overflow. ...
C# Programming for Absolute BeginnersGet started using the C# programming language. Based on the author's 15 years of experience teaching beginners, this book provides you with a step-by-step introduction to the principles of programming, or rather, how to think like a programmer. The task-solution approach will get you immersed, with minimum theory and maximum action.
What You Will Learn: Understand what programming is all about; Write simple, but non-trivial, programs; Become familiar with basic programming constructs such as statements, types, variables, conditions, and loops; Think like a programmer and combine these programming constructs in new ways; Get to know C# as a modern, mainstream programming language, and Visual Studio as one of the world's most popular programming tools. ...
Building the Modern Workplace with SharePoint OnlineBuild a digital workplace solution from scratch using SharePoint Online, Teams, and the Power Platform. The book will help you implement all the modern capabilities of the SharePoint Framework, Teams, and Power Platform into a SharePoint Online solution.
You will begin your journey with a short overview of the basics of SharePoint Online. You will then work through a case study with a solutions approach to implement various business requirements using SharePoint Online. Further, you will learn how to provision sites using PnP and build SharePoint forms using out-of-the-box forms. The next section covers Power Apps and Power Automate, followed by a discussion on SharePoint Framework where you will learn to customize SharePoint Online sites using SPFx. Moving forward you will go through configuration and customization of PnP modern search. Wrapping up, you will integrate Microsoft Teams, MS Graph, and Power Virtual Agents with SharePoint Online.
After reading Building the Modern Wo ...
Lean Software Systems Engineering for DevelopersGraduate to the next level of your software development career, learning the tools you need to successfully manage the complexity of modern software systems.
Whether you are a developer at a small software company, or one of many developers at a large enterprise, your success directly correlates to the ability of your development team to rapidly respond to change. What makes this task challenging in today's world, is that the technical challenges we as developers strive to overcome are becoming increasingly more complex. We have to consider many more options when it comes to things like requirements, solution hosting, support, pace of change, and generally with less time and warning.
A good developer knows that it is critical to manage every aspect of software development from soup to nuts, and understands that when details and decisions are left to chance, outcomes can be negatively impacted. Poor planning can result in increased errors, substandard quality, budget and schedule ...
Test-Driven Development in SwiftLeverage Swift to practice effective and efficient test-driven development (TDD) methodology. Software testing and TDD are evergreen programming concepts - yet Swift developers haven't widely adopted them. What's needed is a clear roadmap to learn and adopt TDD in the Swift world. Over the past years, Apple has invested in XCTest and Xcode's testing infrastructure, making testing a new top priority in their ecosystem. Open-source libraries such as Quick and Nimble have also reached maturity. The tools are there. This book will show you how to wield them.
TDD has much more to offer than catching bugs. With this book, you'll learn a philosophy for building software. TDD enables engineers to solve problems incrementally, writing only as much code as necessary. By decomposing big problems into small steps, you can move along at a fast pace, always making visible progress.
Participate in the test-driven development journey by building a real iOS application and incorporating new con ...
Quantum Machine Learning: An Applied ApproachKnow how to adapt quantum computing and machine learning algorithms. This book takes you on a journey into hands-on quantum machine learning (QML) through various options available in industry and research.
The first three chapters offer insights into the combination of the science of quantum mechanics and the techniques of machine learning, where concepts of classical information technology meet the power of physics. Subsequent chapters follow a systematic deep dive into various quantum machine learning algorithms, quantum optimization, applications of advanced QML algorithms (quantum k-means, quantum k-medians, quantum neural networks, etc.), qubit state preparation for specific QML algorithms, inference, polynomial Hamiltonian simulation, and more, finishing with advanced and up-to-date research areas such as quantum walks, QML via Tensor Networks, and QBoost.
Hands-on exercises from open source libraries regularly used today in industry and research are included, such as Qisk ...
Is Parallel Programming Hard, And, If So, What Can You Do About It?The purpose of this book is to help you program shared-memory parallel systems without risking your sanity. Nevertheless, you should think of the information in this book as a foundation on which to build, rather than as a completed cathedral. Your mission, if you choose to accept, is to help make further progress in the exciting field of parallel programming-progress that will in time render this book obsolete.
Parallel programming in the 21st century is no longer focused solely on science, research, and grand-challenge projects. And this is all to the good, because it means that parallel programming is becoming an engineering discipline. Therefore, as befits an engineering discipline, this book examines specific parallel-programming tasks and describes how to approach them. In some surprisingly common cases, these tasks can be automated.
This book is written in the hope that presenting the engineering discipline underlying successful parallel-programming projects will free a ne ...
Learning AlgorithmsWhen it comes to writing efficient code, every software professional needs to have an effective working knowledge of algorithms. In this practical book, author George Heineman (Algorithms in a Nutshell) provides concise and informative descriptions of key algorithms that improve coding. Software developers, testers, and maintainers will discover how algorithms solve computational problems creatively.
Each chapter builds on earlier chapters through eye-catching visuals and a steady rollout of essential concepts, including an algorithm analysis to classify the performance of every algorithm presented in the book. At the end of each chapter, you'll get to apply what you've learned to a novel challenge problem - simulating the experience you might find in a technical code interview.
With this book, you will: Examine fundamental algorithms central to computer science and software engineering; Learn common strategies for efficient problem solving - such as divide and conquer, dynamic p ...
Linux Cookbook, 2nd EditionThis handy cookbook teaches new-to-intermediate Linux users the essential skills necessary to manage a Linux system, using both graphical and command-line tools. Whether you run Linux in embedded, desktop, server, or cloud or virtual environments, the fundamental skills are the same. This book aims to get you up and running quickly, with copy-paste examples.
Carla Schroder provides recipes that cover specific problems, with discussions that explain how each recipe works, as well as references for additional study.
You'll learn how to: Use systemd, the new comprehensive service manager; Build simple or complex firewalls with firewalld; Set up secure network connections for Linux systems and mobile devices; Rescue nonbooting systems; Reset lost passwords on Linux and Windows; Use dnsmasq to simplify managing your LAN name services; Manage users and groups and control access to files; Probe your computer hardware and monitor hardware health; Manage the GRUB bootloader and multiboot ...