Version Control with Git
Track, branch, merge, and manage code revisions with Git, the free and open source distributed version control system. Through a series of step-by-step tutorials, this practical guide quickly takes you from Git fundamentals to advanced techniques, and provides friendly yet rigorous advice for navigating Git's many functions. You'll learn how to work with everything from small to very large projects with speed and efficiency. In this third edition, authors Prem Kumar Ponuthorai and Jon Loeliger break down Git concepts using a modular approach. You'll start with the basics and fundamental philosophy of Git, followed by intermediate commands to help you efficiently supplement your daily development workflow. Finally, you'll learn advanced Git commands and concepts to understand how Git works under the hood. Learn how to use Git for real-world development scenarios Gain insight into Git's common use cases, initial tasks, and basic functions Use the system for distributed version control Learn how to manage merges, conflicts, patches, and diffs Apply advanced techniques such as rebasing, hooks, and ways to handle submodules
Pharo 9 by example
Pharo is a modern, dynamically-typed, reflective, and pure object-oriented programming language. It offers strong productivity via a fully live programming environment. It supports Xtreme TDD, a powerful development technique that puts live objects at the center of the coding experience. More information at http: //www.pharo.org. Pharoers are used to say that programmers will never program the same once they coded seriously in Pharo. Learning Pharo is easy. Software developers learn Pharo in a couple of days. In addition, you can follow an excellent online free lecture available at: http: //mooc.pharo.org. This book covers all the key aspects of Pharo: its syntax and its core libraries such as collections and streams. It also takes the user over simple tutorials that present all the aspects of code development with tests and git management with Pharo. In addition, it presents advanced topics such as reflective facilities and meta-level.
Pro C# 10 with .Net 6
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 solid foundation 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 LearnExplore 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, and basic 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 ForDevelopers 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 teaching to 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
C++
Book 1Discover The World of Programming and Get to Know the Potential of C++ Along With Me.Do you want to be a programmer but doesn't know where to start from? Do you find C++ hard to learn? Do you find it difficult even when you're reading the most basics book of C++?If so, the simple solution is right below: C++ basics for Beginners.Imagine writing the code as a professional programmer. Imagine when beginners ask you how you started your journey. Imagine when you'd be able to help beginner programmer with your experience. Imagine getting recognized as a top notch C++ programmer! You'll discover all the little things that seems tough but aren't. You'll also learn a few simple codes that aren't rocket science. You'll have a better understanding of C++ and a base for your career in the language.Book 2This book provides a detailed and easy to use reference of C++ libraries. It provides a short description for each library with an option for the reader to search for what they're looking for. What makes this book unique is that not only does it provide a guide to those new or returning to C++, it allows for the reader to easily navigate through libraries.This book is aimed at a creative environment, and introduces, in detail, various C++ libraries that are used by professionals. It is for people who want to learn these useful libraries. The book contains a list of the libraries and their applications. In this way, the reader will be able to learn how to use them by searching for their names. The best thing about this book is that it introduces common used libraries in C++, something that is not possible if you are a beginner with C++ in general.Book 3Discover the tactics to unleash your code to its full potential. Learn how you can avoid spending hours on compilation. Become the best programmer today.Do you want your code to be fast and run like a butter down the slope? Do you also find it hard to compile your C++ code? Are you unaware of the hacks and tactics to make your code perform better?If so, the simple solution is right below.Imagine writing a code that performs like smooth slope. Imagine the pride of teaching these hacks to newbies and gaining their utmost respect. Imagine writing a code that's light on memory yet runs like a cheetah. Imagine getting recognized as a top notch C++ programmer! This book will not only educate you on the topic of performance but it'll teach you some advance topics like Lambda expressions and Enumerations from beginning to how they improve the performance of C++ code.You'll receive in depth chapters discussing why X factor slows down your code and how you can fix it. Along with this there is a whole chapter dedicated to common speedups for when you don't have time for the "whys" you can jump up to the speedup.You'll discover DO's and DON'Ts of high performance code. You'll also discover how your hardware plays an immense role in your code performance and have a better understanding of C++ code performance. You'll uncover the mischievous slackers in the code you were unaware of. This book is for those who're looking to fix the performance of their code and learn new tactics of those who might never drop their secrets.
Programming in ADA 2012 with a Preview of ADA 2022
The latest edition of the definitive guide to the Ada language covers the full details of the core language Ada 2012 as updated by the 2016 ISO Corrigendum and introduces the key new features in Ada 2022. The book is in four parts. It begins by introducing the fundamental concepts for newcomers, before moving onto algorithmic aspects and then structural features such as OOP and multitasking. The fourth part gives details of the standard library and interaction with the external environment. Six complete executable programs illustrate the core features of the language in action. The book concludes with an appendix focussing on the new features in Ada 2022. These new features aid program proof and the efficient use of multicore architectures.
Running Start
You're looking for your first software engineering job. Maybe you're graduating college or maybe you've decided to switch careers. Maybe you're finishing up at a coding bootcamp or maybe you taught yourself how to code.You've come to the right place.Getting a job is hard. Getting the right job is harder. How do I know which companies and positions to apply for?How do I get an interview?How do I prepare for my interviews?How do I look for red flags that should turn me away from a company?How do I navigate one or more offers?But once you've gotten the job, the fun is just beginning. Now you have questions like: How do I make a good first impression?How do I set myself up for success?Am I moving too slowly?What's my manager thinking?I can't do this. I'm in over my head. Are they going to fire me?And even once you're feeling comfortable in your new role, you'll have yet more questions.What should I be doing to get promoted?How do I identify growth opportunities?Where do I want my career to lead?When is it time to look for a new job?These are all real questions that I've asked myself throughout my career. These are the things that I wish I would have known when I was first starting out and even as I've progressed.I've learned a lot the hard way, by making mistakes and learning from others. In my last several years as an engineering manager, I've also learned a lot about what your manager thinks, how to use your manager effectively, and how to navigate your career. And I've been taking notes.Are you interested in a strategy guide for your software engineering career?What if you could learn from my mistakes and insights and grow faster in your career?What if you knew how to avoid opportunities that would hold you back or would even be toxic?What if you knew how to take what it is that makes you unique and make that your biggest selling point?That's why I wrote Running Start.My goal is to help you get a job, keep that job, and thrive. Not only in that first job, but in your entire career.My target audience is anyone who isn't stereotypically represented in tech, including but not limited to: women, BIPOCs, self-taught, career switchers, bootcamp graduates, and many more. But I also hope that this book will be useful to anyone in tech.With that in mind, I took great care to make sure point out where people's experiences might differ from the "norm". I also tried to get as diverse a set of pre-readers as possible to really hold me accountable for making sure I do right by all backgrounds and experiences.My goal is to get as many different people in tech as possible. Not because of some artificial diversity targets but because I truly believe that the best teams are the ones that are the most diverse. Not only that, but the teams that have the most different kinds of diversity. It takes a village to be a truly successful development team. You need people from different backgrounds, with different life experiences, different skillsets, different abilities and disabilities. The more diverse a team is, the better a product they'll put out. I'd bet a million dollars on it.This book is my way of trying to help make that happen.
COGNITIVE BIASES - A Brief Overview of Over 160 Cognitive Biases
You will find 169 cognitive biases in this book. Some of them are already well researched, and we have only vague ideas for some. Nevertheless, this book should give you a comprehensive overview and introduction to cognitive biases. I have provided the QR-Codes to the respective biases for those who need more detailed information. In addition, I have added a chapter on "Algorithmic Biases" because the more artificial intelligence systems are used in decision-making, the more significant the topic of algorithmic biases becomes. "Let's learn more about our human biases to make less biased conclusions in the future. A world with less bias is a better world." Murat Durmus
PLC and HMI Development with Siemens TIA Portal
Become well-versed with the tools available in the Siemens TIA toolbox and write PLC and HMI code effectively Key Features: Find out how to use TIA Portal effectively to boost your productivityLearn about a structured design pattern and understand why it is so powerful when implemented correctlyDiscover efficient project management and design practicesBook Description: With automation requirements on the rise, Siemens' TIA Portal development environment is almost a necessity for any automation engineer. The Totally Integrated Automation (TIA) environment helps seamlessly integrate all things automation, from PLC hardware and software design to HMI development. This book helps you understand the tools available in the TIA toolbox and shows you how to write code effectively.The book begins by introducing you to the TIA environment, covering the layout and tools available. Once you've got to grips with the environment, you'll find out how to create hardware to write programs against, including adding IO modules and assigning memory for input and output. Next, you'll develop logic in all of the languages that TIA Portal offers, such as Ladder, Function Block Diagram, and Structured Text (SCL) (note that Statement List is not covered as a deprecated language), as well as the newest language, Cause and Effect (CEM). You'll also discover how to store standard code in libraries, creating a version control system that is easy to manage and aids standard design. Finally, following the PLC design chapters, you'll learn how to develop HMI applications in TIA Portal's latest unified hardware.By the end of the book, you'll be well equipped to use all of the features that TIA Portal V17 offers.What You Will Learn: Set up a Siemens Environment with TIA PortalFind out how to structure a projectCarry out the simulation of a project, enhancing this further with structureDevelop HMI screens that interact with PLC dataMake the best use of all available languagesLeverage TIA Portal's tools to manage the deployment and modification of projectsWho this book is for: This TIA Portal book is for anybody looking to learn PLC/HMI development using the latest Siemens development platform. Industrial software engineers, PLC engineers, automation engineers, and electricians will be able to advance their skill set with this guide. A basic understanding of PLC principles such as PLC data types and basic objects such as function blocks and functions is necessary to get started.
Modeling and Simulation Based Systems Engineering: Theory and Practice
Modeling and simulation (M&S) based systems engineering (MSBSE) is the extension of MBSE, which enhances the value of MBSE and the ability of digitally evaluating and optimizing the whole system through comprehensive applications of M&S technologies. This book puts together the recent research in MSBSE, and hopefully this will provide the researchers and engineers with reference cases in M&S technologies to support the R&D of complex products and systems.
Running Start
You're looking for your first software engineering job. Maybe you're graduating college or maybe you've decided to switch careers. Maybe you're finishing up at a coding bootcamp or maybe you taught yourself how to code.You've come to the right place.Getting a job is hard. Getting the right job is harder. How do I know which companies and positions to apply for?How do I get an interview?How do I prepare for my interviews?How do I look for red flags that should turn me away from a company?How do I navigate one or more offers?But once you've gotten the job, the fun is just beginning. Now you have questions like: How do I make a good first impression?How do I set myself up for success?Am I moving too slowly?What's my manager thinking?I can't do this. I'm in over my head. Are they going to fire me?And even once you're feeling comfortable in your new role, you'll have yet more questions.What should I be doing to get promoted?How do I identify growth opportunities?Where do I want my career to lead?When is it time to look for a new job?These are all real questions that I've asked myself throughout my career. These are the things that I wish I would have known when I was first starting out and even as I've progressed.I've learned a lot the hard way, by making mistakes and learning from others. In my last several years as an engineering manager, I've also learned a lot about what your manager thinks, how to use your manager effectively, and how to navigate your career. And I've been taking notes.Are you interested in a strategy guide for your software engineering career?What if you could learn from my mistakes and insights and grow faster in your career?What if you knew how to avoid opportunities that would hold you back or would even be toxic?What if you knew how to take what it is that makes you unique and make that your biggest selling point?That's why I wrote Running Start.My goal is to help you get a job, keep that job, and thrive. Not only in that first job, but in your entire career.My target audience is anyone who isn't stereotypically represented in tech, including but not limited to: women, BIPOCs, self-taught, career switchers, bootcamp graduates, and many more. But I also hope that this book will be useful to anyone in tech.With that in mind, I took great care to make sure point out where people's experiences might differ from the "norm". I also tried to get as diverse a set of pre-readers as possible to really hold me accountable for making sure I do right by all backgrounds and experiences.My goal is to get as many different people in tech as possible. Not because of some artificial diversity targets but because I truly believe that the best teams are the ones that are the most diverse. Not only that, but the teams that have the most different kinds of diversity. It takes a village to be a truly successful development team. You need people from different backgrounds, with different life experiences, different skillsets, different abilities and disabilities. The more diverse a team is, the better a product they'll put out. I'd bet a million dollars on it.This book is my way of trying to help make that happen.
Certified Programming with Dependent Types
A handbook to the Coq software for writing and checking mathematical proofs, with a practical engineering focus. The technology of mechanized program verification can play a supporting role in many kinds of research projects in computer science, and related tools for formal proof-checking are seeing increasing adoption in mathematics and engineering. This book provides an introduction to the Coq software for writing and checking mathematical proofs. It takes a practical engineering focus throughout, emphasizing techniques that will help users to build, understand, and maintain large Coq developments and minimize the cost of code change over time. Two topics, rarely discussed elsewhere, are covered in detail: effective dependently typed programming (making productive use of a feature at the heart of the Coq system) and construction of domain-specific proof tactics. Almost every subject covered is also relevant to interactive computer theorem proving in general, not just program verification, demonstrated through examples of verified programs applied in many different sorts of formalizations. The book develops a unique automated proof style and applies it throughout; even experienced Coq users may benefit from reading about basic Coq concepts from this novel perspective. The book also offers a library of tactics, or programs that find proofs, designed for use with examples in the book. Readers will acquire the necessary skills to reimplement these tactics in other settings by the end of the book. All of the code appearing in the book is freely available online.
Cyber-Physical Systems
CYBER-PHYSICAL SYSTEMS Provides a unique general theory of cyber-physical systems, focusing on how physical, data, and decision processes are articulated as a complex whole Cyber-physical systems (CPS) operate in complex environments systems with integrated physical and computational capabilities. With the ability to interact with humans through variety of modalities, cyber-physical systems are applied across areas such as Internet of Things (IoT)-enabled devices, smart grids, autonomous automotive systems, medical monitoring, and distributed robotics. Existing engineering methods are capable of solving technical problems, yet the deployment of CPS in a net-enabled society requires a general theory of cyber-physical systems that goes beyond specific study cases and their associated technological development. Cyber-physical Systems: Theory, Methodology, and Applications is a unique theoretical-methodological guide to assessing systems where complex information processing defines the behavior of physical processes. Using a systematic approach, the book describes the fundamentals of cybernetics, complexity sciences, system engineering, concepts of data and information, the data dissemination process, graph theory, and more. Readers are provided with the general theory, methodological framework, and analytical tools to assess and design CPS for applications in transport, energy, communication, health care, the military, and industry. Provides a framework for measuring the performance of different cyber-physical systems and assessing the potential impact of various cyber-threats Proposes a theory of CPS comprised of autonomous but interdependent physical, data, and regulatory layers Discusses decision-making approaches rooted in probability theory, information theory, complexity sciences, and game theory Helps readers perform a systemic impact evaluation of trending topics such as Artificial Intelligence, 5G, Energy Internet, blockchain, and data ownership Features extensive analysis of various cyber-physical systems across different domains Cyber-physical Systems: Theory, Methodology, and Applications is a must-read for undergraduate and graduate students, researchers, and practitioners in electrical and computer engineering and other technical fields.
Practical Model-Driven Enterprise Architecture
Bridge the gap between theory and reality by implementing real-world examples using the Sparx EA tool and ArchiMate(R) 3.1 specification to develop sophisticated enterprise architecture models serving every unit in your organization Key Features: Discover the various artifacts that enterprise architects need to develop for stakeholders to make sound decisionsBuild a functional enterprise architecture repository that is rich in information, references, and metamodelsLearn how to use Sparx Enterprise Architect from scratchBook Description: Most organizations face challenges in defining and achieving evolved enterprise architecture practices, which can be a very lengthy process even if implemented correctly. Developers, for example, can build better solutions only if they receive the necessary design information from architects, and decision-makers can make appropriate changes within the organization only if they know the implications of doing so.The book starts by addressing the problems faced by enterprise architecture practitioners and provides solutions based on an agile approach to enterprise architecture, using ArchiMate(R) 3.1 as an industry standard and Sparx EA as the modeling tool. You'll learn with the help of a fictional organization that has three business units, each expecting something different from you as the enterprise architect. You'll build the practice, satisfy the different requirements of each business unit, and share the knowledge with others so they can follow your steps. Toward the end, you'll learn how to put the diagrams and the content that you have developed into documents, presentations, and web pages that can be published and shared with any stakeholder.By the end of this book, you'll be able to build a functional enterprise architecture practice that supports every part of your organization. You'll also have developed the necessary skills to populate your enterprise architecture repository with references and artifacts.What You Will Learn: Discover how enterprise architects can contribute to projects and departments within organizationsUse Sparx Enterprise Architect to build a rich architecture repositoryLearn about the ArchiMate(R) 3.1 specification as you apply it in real-world projectsUse the focused metamodel technique to build the information necessary for maintaining your repository's consistency and accuracyUnderstand the importance of keeping architectural artifacts simple yet eye-catchingDefine an operational model that fits your initial needs and expands as requiredWho this book is for: This book is for enterprise architects at all architectural layers and practices of any maturity level. Many of the artifacts suggested in this book are inspired by The Open Group Architecture Framework (TOGAF(R)); however, familiarity with TOGAF(R) is not required. Whether you work within the business, applications, data, or technology layers, this book covers examples that apply to your work. Although not mandatory, experience modeling in Sparx Systems Enterprise Architect using any modeling language will be helpful. No prior knowledge of ArchiMate(R) is required to get started with this book.
Ajax and REST Recipes
Ajax is one of the hottest new methodologies on the web, but it requires a lot of coding, and there are some inherent problems with Ajax applications. That's where this book comes in -- it provides more than 50 adaptable recipes for all of the common tasks developers will want to implement on web sites using Ajax, DOM Scripting, and REST techniques, saving them hours of development time. The code examples can be adapted for use in their own applications. The recipes provided here go beyond simple, isolated functions, providing complete solutions for form validation, drag and drop functionality, data sorting, data presentation techniques, application architecture, debugging, performance enhancements, server-side techniques for web services, and much more. The book makes use of REST, and other design patterns, and many popular JavaScript libraries. The authors focus heavily on efficiency, optimization, reusability, and fixing some of the problems inherent with Ajax-style coding.
Foundations of PEAR
This book has been carefully constructed to be a one stop resource for locating the right PEAR package. It is the first book that devotes exclusive coverage to PEAR covering key items and topics missing in the online documentation. The most useful and widely used packages have been carefully selected for inclusion in this book. The packages inside have been broken down logically by function. Each package is covered in detail, yet presented in a fashion that allows the reader to quickly jump to the key items needed to implement a solution. To see the packages in action, performing in real world applications four projects have been included in the book that each use a combination of PEAR packages in their implementations. Armed with the knowledge in this book, the reader is set to take their PHP development to a new level.
Genetic Programming
This book constitutes the refereed proceedings of the 25th European Conference on Genetic Programming, EuroGP 2022, held as part of Evo*2021, as Virtual Event, in April 2022, co-located with the Evo*2022 events, EvoCOP, EvoMUSART, and EvoApplications. The 12 revised full papers and 7 short papers presented in this book were carefully reviewed and selected from 35 submissions. The wide range of topics in this volume reflects the current state of research in the field. The collection of papers cover topics including developing new operators for variants of GP algorithms, as well as exploring GP applications to the optimization of machine learning methods and the evolution of complex combinational logic circuits.
Arduino
This book is the all-in-one for beginners, as all the necessary basics for working with an arduino regarding hardware, software & programming are explained in detail.In this course, aimed specifically at beginners, you will learn all the basics you need to know when working with an arduino. By the way, we will work exclusively with the arduino uno in this book, as this arduino model is perfect for beginners. You will find information about:: What is arduino?Why is the use of arduino so popular?Advantages and disadvantages of arduino.Arduino mega server. What is it and how to use it?Arduino ide. What is it and how to use it?Arduino projects that everyone must to try.The text is written in simple language to make it accessible, and every effort has been made to clarify the concepts indispensable for perfect understanding of the process of programming a microcontroller, making it useful to the widest possible audience and thus preparing the foundation that serves as a starting point for further study and the basis for what will follow in the other two volumes that continue the series.
Practical Forensic Analysis of Artifacts on IOS and Android Devices
Leverage foundational concepts and practical skills in mobile device forensics to perform forensically sound criminal investigations involving the most complex mobile devices currently available on the market. Using modern tools and techniques, this book shows you how to conduct a structured investigation process to determine the nature of the crime and to produce results that are useful in criminal proceedings. You'll walkthrough the various phases of the mobile forensics process for both Android and iOS-based devices, including forensically extracting, collecting, and analyzing data and producing and disseminating reports. Practical cases and labs involving specialized hardware and software illustrate practical application and performance of data acquisition (including deleted data) and the analysis of extracted information. You'll also gain an advanced understanding of computer forensics, focusing on mobile devices and other devices not classifiable as laptops, desktops, or servers. This book is your pathway to developing the critical thinking, analytical reasoning, and technical writing skills necessary to effectively work in a junior-level digital forensic or cybersecurity analyst role. What You'll LearnAcquire and investigate data from mobile devices using forensically sound, industry-standard toolsUnderstand the relationship between mobile and desktop devices in criminal and corporate investigationsAnalyze backup files and artifacts for forensic evidenceWho This Book Is ForForensic examiners with little or basic experience in mobile forensics or open source solutions for mobile forensics. The book will also be useful to anyone seeking a deeper understanding of mobile internals.
Service-Oriented and Cloud Computing
This book constitutes the refereed proceedings of the 8th IFIP WG 2.14 European Conference on Service-Oriented and Cloud Computing, ESOCC 2022, held in Wittenberg, Germany, in March 2022. The 6 full and 2 short papers presented in this volume were carefully reviewed and selected from 17 submissions.
Mastering the Microsoft Kinect
Know how to program the Microsoft Kinect and use the device for applications that interact directly with humans through gestures and motion. This book covers the mathematics and theoretical background needed for depth sensing, motion tracking, and object recognition while maintaining a practical focus on getting things done. You will learn to track the human body in three-dimensional space, analyze the human motion, and remove the background to isolate the person being tracked. You will see how to recognize objects and voice, and transform between the three-dimensional physical space and a computer's two-dimensional screen.The book is written with real-world applications in mind. It provides step-by-step tutorials and source code for common use cases. The author has worked with startups and Fortune 500 companies, and all of the examples are taken directly from the industry. The book's practical focus simplifies the core principles, removes the clutter, and allows developers to start writing code right away. Also covered is the use of Azure Cognitive Services on Microsoft's cloud platform and their use for object and voice recognition, enabling your applications to "see" objects and respond to their environment. What You Will LearnVisualize color, depth, and body dataCalculate angles between different body jointsAnalyze human motion and create fitness applicationsRecognize objects and voice using cloud-powered artificial intelligenceRemove the background from a scene to create virtual worldsWho This Book Is ForDevelopers who want to build demanding Kinect apps and games, and those who are looking for a careful balance between theoretical knowledge and practical application that favors the practical. Readers should have a basic knowledge of C# and some familiarity with the Unity3D engine.
Rust Atomics and Locks
The Rust programming language is extremely well suited for concurrency, and its ecosystem has many libraries that include lots of concurrent data structures, locks, and more. But implementing those structures correctly can be very difficult. Even in the most well-used libraries, memory ordering bugs are not uncommon. In this practical book, Mara Bos, leader of the Rust library team, helps Rust programmers of all levels gain a clear understanding of low-level concurrency. You'll learn everything about atomics and memory ordering and how they're combined with basic operating system APIs to build common primitives like mutexes and condition variables. Once you're done, you'll have a firm grasp of how Rust's memory model, the processor, and the role of the operating system all fit together. With this guide, you'll learn: How Rust's type system works exceptionally well for programming concurrency correctly All about mutexes, condition variables, atomics, and memory ordering What happens in practice with atomic operations on Intel and ARM processors How locks are implemented with support from the operating system How to write correct code that includes concurrency, atomics, and locks How to build your own locking and synchronization primitives correctly
Ocp Oracle Certified Professional Java Se 17 Developer Study Guide
An effective and practical study aid to the new OCP Java SE 17 Developer certification exam In the OCP Oracle Certified Professional Java SE 17 Developer Study Guide: Exam 1Z0-829, you'll find accessible and essential test prep material for the in-demand and practical OCP Java SE 17 Developer certification. Providing comprehensive coverage of all OCP Java SE 17 exam objectives and competencies, the Study Guide offers you access to all the skills and knowledge you'll need to succeed on the test and in the field as a new or experienced Java developer. This book provides material on records, sealed classes, text blocks, dates, streams, controlling program flow, using the Java object-oriented approach, handling exceptions, working with arrays and collections, and more. You'll also get: Intuitively organized information that aligns with the competencies tested on the exam and those required by real-world Java developers Opportunities to practice and develop skills that remain in high demand in the IT industry Access to the Sybex online learning center, with chapter review questions, full-length practice exams, hundreds of electronic flashcards, and a glossary of key terms Perfect for anyone prepping for the brand-new OCP Java SE 17 credential, OCP Oracle Certified Professional Java SE 17 Developer Study Guide: Exam 1Z0-829 is also a can't-miss reference for practicing and aspiring Java developers seeking to learn or reinforce their foundational skills in Java programming and improve their performance on the job.
Algorithms for Dummies
Your secret weapon to understanding--and using!--one of the most powerful influences in the world today From your Facebook News Feed to your most recent insurance premiums--even making toast!--algorithms play a role in virtually everything that happens in modern society and in your personal life. And while they can seem complicated from a distance, the reality is that, with a little help, anyone can understand--and even use--these powerful problem-solving tools! In Algorithms For Dummies, you'll discover the basics of algorithms, including what they are, how they work, where you can find them (spoiler alert: everywhere!), who invented the most important ones in use today (a Greek philosopher is involved), and how to create them yourself. You'll also find: Dozens of graphs and charts that help you understand the inner workings of algorithms Links to an online repository called GitHub for constant access to updated code Step-by-step instructions on how to use Google Colaboratory, a zero-setup coding environment that runs right from your browser Whether you're a curious internet user wondering how Google seems to always know the right answer to your question or a beginning computer science student looking for a head start on your next class, Algorithms For Dummies is the can't-miss resource you've been waiting for.
The MySQL Workshop
Learning MySQL just got a whole lot easier, thanks to this hands-on workshop, complete with simple explanations, engaging examples, and realistic exercises that focus on helping you to build and maintain databases effectivelyKey Features: Learn how to set up and maintain a MySQL databaseRun SQL queries to create, retrieve, and manipulate dataUse MySQL effectively with common business applications such as Excel and MS AccessBook Description: Do you want to learn how to create and maintain databases effectively? Are you looking for simple answers to basic MySQL questions as well as straightforward examples that you can use at work? If so, this workshop is the right choice for you.Designed to build your confidence through hands-on practice, this book uses a simple approach that focuses on the practical, so you can get straight down to business without having to wade through pages and pages of dull, dry theory.As you work through bite-sized exercises and activities, you'll learn how to use different MySQL tools to create a database and manage the data within it. You'll see how to transfer data between a MySQL database and other sources, and use real-world datasets to gain valuable experience of manipulating and gaining insights from data. As you progress, you'll discover how to protect your database by managing user permissions and performing logical backups and restores.If you've already tried to teach yourself SQL, but haven't been able to make the leap from understanding simple queries to working on live projects with a real database management system, The MySQL Workshop will get you on the right track.By the end of this MySQL book, you'll have the knowledge, skills, and confidence to advance your career and tackle your own ambitious projects with MySQL.What You Will Learn: Understand the concepts of relational databases and document storesUse SQL queries, stored procedures, views, functions, and transactionsConnect to and manipulate data using MS Access, MS Excel, and Visual Basic for Applications (VBA)Read and write data in the CSV or JSON format using MySQLManage data while running MySQL Shell in JavaScript modeUse X DevAPI to access a NoSQL interface for MySQLManage user roles, credentials, and privileges to keep data securePerform a logical database backup with mysqldump and mysqlpumpWho this book is for: This book is for anyone who wants to learn how to use MySQL in a productive, efficient way. If you're totally new to MySQL, it'll help you get started or if you've used MySQL before, it'll fill in any gaps, consolidate key concepts, and offer valuable hands-on practice. Prior knowledge of simple SQL or basic programming techniques will help you in quickly grasping the concepts covered, but is not necessary.
Cloud Native Apps on Google Cloud Platform
Step-by-step guide for developing cloud native apps on GCP powered by hands-on interactive learningKey FeaturesCutting-edge coverage on Google Cloud Build, Cloud Run, GKE, Kubectl and Anthos.Includes tutorials and exercises to learn designing, deploying and running cloud native apps.Covers Service Mesh, Apps Optimization, logs monitoring and cloud IAM access.DescriptionThe book Cloud Native Apps on Google Cloud Platform teaches the readers how to design, construct, and maintain successful cloud-native apps using the Google Cloud Platform. With interactive tutorials, the book reinforces learning and helps to develop practical skills for working in an Agile and DevOps context. The book provides a step-by-step approach to building and managing cloud-native applications on Google Cloud Platform for Google Cloud Users, DevOps teams, and Cloud-Native Developers.First, you will investigate the advantages and applicability of each Google Serverless Computing option. You'll learn about Cloud Build and how to use it to prepare code files, create microservices, and build container images. The book walks readers through creating and running Docker image containers on Cloud Run and App Engine. You'll learn how to use kubectl to create and manage Kubernetes clusters, as well as how to configure the autoscaler for increased resilience and availability. You'll build a pipeline that uses Cloud Build to automate CI/CD and Pub/Sub to ingest streaming data.Finally, you'll have the opportunity to learn about Anthos, which enables you to manage massive GKE clusters in both Cloud and on-premises environments.What you will learnDistinguish between using containers or microservices for cloud native apps.Build a streaming data pipeline using BigQuery and Dataflow using Pub/Sub.Practice to deploy and optimize cloud native applications on Kubernetes Engine.Build continuous integration/continuous delivery pipelines and improve Kubernetes apps.Learn to protect apps running on GCP from cyberattacks.Who this book is forThis book is meant for the Cloud and DevOps professionals and for those who wish to learn about Google Cloud services and incorporate them into end-to-end cloud applications.Table of Contents1. Introducing Cloud Native Apps2. Developing Cloud Native Apps with Cloud Shell3. Preparing Source-Code with Cloud Build4. Create and Deploy Microservices5. Building and Deploying Containers in Cloud Build6. Create a Serverless Pipeline with Pub/Sub, Dataflow and BigQuery7. Container Orchestration with Google Kubernetes Engine8. Deploying and Managing Kubernetes Applications9. Optimizing Kubernetes Cluster and Apps in GKE10. Deploying a CI/CD Pipeline with Kubernetes and Cloud Build11. Build a Software Delivery Platform with Anthos12. Application Management with Anthos13. Securing Cloud Native Apps in AnthosRead more
Pro Active Directory Certificate Services
In order to deploy and use Microsoft Certificate Services, you need to understand the fundamentals of cryptography, digital signatures, encryption, TLS, and S/MIME. It is also important to understand the concepts behind public key infrastructure (PKI). This book teaches you all the required background knowledge you need. Then it takes you deeper, step by step, teaching you how to deploy Certificate Services and configure it to issue various digital certificate types, complete with examples of using these certificates with IIS, Outlook, and Windows.Microsoft-based networks--on-premises, hybrid, and cloud-based networks--are used in companies of all sizes. Within them, there are many applications of digital certificates that can be created and managed by Microsoft Certificate Services. As security is more important than ever, and cryptography and PKI are fundamental to so many of these defenses, understanding Microsoft Certificate Services is becoming an increasingly more desirable skill. Most IT workers don't realize the many uses and purposes of Certificate Services, especially within a corporate or government agency network, and how tightly integrated they are with the Microsoft Windows Domain style of networks and Active Directory (on-premises or cloud-based, including Azure, AWS, and Google Cloud Services). This book will teach you the gamut. You will appreciate the learning approach presented in the book, beginning with the basics (cryptographic primitives such as encryption and message digests), getting into combinations of primitives to accomplish specific things (such as digital signatures and envelopes), and then trying real-word systems based on digital certificates and PKI (such as TLS, S/MIME secure email, cryptographic authentication, and more). The book wraps it all up and teaches you how to deploy Certificate Services and issue the various types of certificates, including how they are used. What YouWill Learn Understand basic cryptography (symmetric and asymmetric key encryption, message digests, and digital signatures and envelopes)Know how TLS, S/MIME, and cryptographic authentication workDiscover applications of cryptography related to secure servers with TLS and cryptographic (passwordless) authentication to online services including Windows and secure emailGet to know the common types of digital certificates, how to create and manage them, and examples of their use with IIS, Outlook, etc. Who This Book Is ForMicrosoft system and network engineers, security engineers, and CISOs. Readers should have familiarity with Windows Server 2019 (or more recent) and Active Directory.
Software Quality: The Next Big Thing in Software Engineering and Quality
This book constitutes the refereed proceedings of the 14th Software Quality Days Conference, SWQD 2022, held in Vienna, Austria, during May 17-19, 2022.The Software Quality Days (SWQD) conference started in 2009 and has grown to the biggest conference on software quality in Europe. The program of the SWQD conference is designed to encompass a stimulating mixture of practical presentations and new research topics in scientific presentations. The guiding conference topic of the SWQD 2022 is "What's The Next Big Thing in Software Engineering and Quality?".The 4 full papers presented in this volume were carefully reviewed and selected from 8 submissions. The contributions were organized in two topical sections named: AI in Software Engineering; and Quality Assurance for Software-Intensive Systems. The book also contains two invited talks.
Quantum Computing and Future
Be Prepared for a Revolutionary Transformation with Quantum ComputingKey FeaturesDemystify concepts, working principles, and the process of Quantum Computing.Extensive coverage on various applications of Quantum Computing across industries and sectors.Learn how to harness the power of Quantum Computing and Artificial Intelligence in your business.DescriptionThe book Quantum Computing and Future brings a holistic view of the potential of Quantum Computing across various industries and sectors. This book touches almost every area of application that can be benefitted from the capability of Quantum Computing, thus helping readers to understand how this innovative technology brings agility and transformation across enterprises. This book begins with concepts and principles of Quantum Computing followed by the process of quantum computing functions. It explains how Quantum Computing has led to transformation across sectors, including Healthcare, Banking, Finance, Genomics, Drug Discovery, Aviation, Tourism, Cryptocurrency, and Security. The book describes how an enterprise can leverage the tremendous capabilities of Quantum Computing and put its application in your business infrastructure for its optimal performance. What you will learnExplore Quantum concepts and principles such as Superposition, Entanglement, and Interference.Understand how Quantum Computing is revolutionizing the Healthcare and Medicine fields.Understand how Quantum Computing is transforming the Banking and Finance sectors.Who this book is forThis book is for IT and Non-IT professionals, developers, business analysts, business heads, CXOs, students, and researchers who are interested in Quantum Computing. Anyone who wants to know the latest trends and future of this cutting-edge technology will find this book helpful.Table of Contents1. An Overview of Quantum Computing2. History of Quantum Physics and Dynamics3. Quantum Concepts and Principles (Superposition, Entanglement and Interference)4. Quantum Computing in Healthcare and Medicine5. Quantum Computing in Banking and Finance6. Quantum Computing in Drug Discovery and Research7. Quantum Computing in Aviation, Travel, and Logistics8. Quantum Computing in Crypto and Security9. Quantum Computing in Space Exploration, Astronomical, and Weather Studies10. Quantum Computing for Solving Complex Optimization Problems11. Quantum Computing in Chemistry, Chemical Research and Agriculture12. Quantum Computing in Artificial Intelligence and Machine Learning13. Quantum Computing for Optimizing Big Data14. Quantum Computing for Simulation of Durable Battery Designs15. Quantum Computing and Future of Autonomous Vehicles16. Quantum Computing in Education and Research17. How Quantum and AI Will Revolutionize Defense and Warfare?18. Quantum Computing in Life Science19. Quantum Computing in Cyber Security and Hacking20. Quantum Computing in Movies and Cinemas21. Quantum Computing in Spirituality and Mysticism22. Quantum Computing in Robotics23. Quantum Computing in Nuclear Research and Study of Atoms24. Quantum Computing in Sports and Games25. Quantum Computing in Traffic Optimization26. Quantum Computing in Metaverse27. Quantum Computing in Fintech, AI, and Sustainability28. How Quantum Explains Human Consciousness?Read more
Expert Microsoft Teams Solutions
Written by Microsoft engineers, Expert Microsoft Teams Solutions covers in-depth topics in Teams that are not covered elsewhere and explores tasks that customers frequently rely on Microsoft Partners to accomplishKey Features: Extend the MS Teams experience with this practical guide from Microsoft's technical specialistsDiscover advanced Teams capabilities such as voice, governance, and Power Platform integrationGet to grips with planning resources for voice integration in TeamsBook Description: Microsoft Teams is designed to improve collaboration and integrate components of SharePoint, Exchange, Power Platform, and voice calling into a single platform.Complete with step-by-step explanations of concepts, practical examples, and architecture guidance, you'll learn how to plan and deploy Teams for your organization. As you progress, you'll explore and understand the Teams platform as a whole, from architecture and collaboration through to apps and voice, with the help of examples. The book approaches Teams not only from an end-user perspective but also from an administrator's point of view. You'll be able to understand the challenges around modernization in your organization relating to adopting, implementing, and administering Teams and tackle them effectively. By helping you realize the potential of Teams as a platform, this book will enable you to set up and deploy Teams solutions, leading to modernization in your organization's chat and voice infrastructure.By the end of this book, you'll be able to design and implement the most important and exciting aspects of Microsoft Teams.What You Will Learn: Gain a clear understanding of Microsoft Teams architecture and deployment conceptsBecome well-versed with advanced Teams voice capabilitiesExplore best practices to extend the Teams experience to various apps through collaborationFocus on how to conduct effective meetings, including ad hoc, scheduled, channel, and live eventsIntegrate Power Apps and Power Automate with Microsoft TeamsUnderstand key governance and security concepts in administering Microsoft TeamsWho this book is for: The book is for intermediate-level and experienced Microsoft Teams IT professionals as well as for administrator roles. Intermediate-level knowledge of the Microsoft Teams platform is assumed.
Simulation Tools and Techniques
This proceedings constitutes the refereed post-conference proceedings of the 13th International Conference on Simulation Tools and Techniques, SIMUTools 2021, held in November 2021. Due to COVID-19 pandemic the conference was held virtually. The 63 revised full papers were carefully selected from 143 submissions. The papers focus on new results in the field of system modeling and simulation, software simulation, communication networks' modeling and analysis, AI system simulation and performance analysis, big data simulation analysis, addressing current and future trends in simulation techniques. They are grouped in thematic aspects on wireless communication, big data, modeling and simulation, deep learning, network simulation and life and medical sciences.
Peeking at Call-A.P.P.L.E. 1979
PEEKing at Call-A.P.P.LE.: 1979 Compendium of Magazine Articles represents a nostalgic look back at the early years of the Apple computing revolution through the eyes of the Apple Pugetsound Program Library Exchange (A.P.P.L.E.) user group. Articles from all nine issues from the second year of Call-A.P.P.L.E. magazine are organized into categories such as: Applesoft BASIC, Integer BASIC, Color, Disks, DOS, The Monitor, Printers, and Utilities. Over 190 pages are enhanced and restored, complete with advertisements, and program listings. Relive the earliest days of the Apple II computer through the eyes of the creators and users. Highlights Include: - Articles and programs from Apple computing legends including: Darrell Aldrich, Ron Aldrich, Val Golding, Andy Hertzfeld, Randall Hyde, Bob Huelsdonk, Neil Konzen, Roger Wagner, and Randy Wigginton. - Programming tips and tutorials for Applesoft BASIC and Integer BASIC. - File and programming utilities along with tools and drivers for early printers. - A rundown of Monitor Calls and color graphics on the Apple II and Apple II Plus. - Reviews of Software, Books, Utilities, Hardware and other products.
Peeking at Call-A.P.P.L.E. 1979
PEEKing at Call-A.P.P.LE.: 1979 Compendium of Magazine Articles represents a nostalgic look back at the early years of the Apple computing revolution through the eyes of the Apple Pugetsound Program Library Exchange (A.P.P.L.E.) user group. Articles from all nine issues from the second year of Call-A.P.P.L.E. magazine are organized into categories such as: Applesoft BASIC, Integer BASIC, Color, Disks, DOS, The Monitor, Printers, and Utilities. Over 190 pages are enhanced and restored, complete with advertisements, and program listings. Relive the earliest days of the Apple II computer through the eyes of the creators and users. Highlights Include: - Articles and programs from Apple computing legends including: Darrell Aldrich, Ron Aldrich, Val Golding, Andy Hertzfeld, Randall Hyde, Bob Huelsdonk, Neil Konzen, Roger Wagner, and Randy Wigginton. - Programming tips and tutorials for Applesoft BASIC and Integer BASIC. - File and programming utilities along with tools and drivers for early printers. - A rundown of Monitor Calls and color graphics on the Apple II and Apple II Plus. - Reviews of Software, Books, Utilities, Hardware and other products.
Fundamental Approaches to Software Engineering
This open access book constitutes the proceedings of the 25th International Conference on Fundamental Approaches to Software Engineering, FASE 2022, which was held during April 4-5, 2022, in Munich, Germany, as part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022. The 17 regular papers presented in this volume were carefully reviewed and selected from 64 submissions. The proceedings also contain 3 contributions from the Test-Comp Competition. The papers deal with the foundations on which software engineering is built, including topics like software engineering as an engineering discipline, requirements engineering, software architectures, software quality, model-driven development, software processes, software evolution, AI-based software engineering, and the specification, design, and implementation of particular classes of systems, such as (self-)adaptive, collaborative, AI, embedded, distributed, mobile, pervasive, cyber-physical, or service-oriented applications.
Ethically Hacking an Industrial Control System
Explore to tackle industrial cyber risksKey FeaturesLearn how to defend industrial control systems from an attacking standpoint.Learn about industrial network protocols and threat hunting.Handling of tackle industrial cyber risksDevelop offensive and defensive skills.DescriptionIn recent years, the industrial cybersecurity arena has risen dramatically. Red teams must be used to continually test and exploit the security integrity of a company's people, processes, and products in order to completely safeguard critical infrastructure. This pen testing book takes a different approach than most by assisting you in gaining hands-on experience with equipment you'll encounter in the field. This will allow you to comprehend how industrial equipment interacts and functions in a real-world setting.This book begins by covering the fundamentals of industrial processes, then goes on to learn how to design and break them. It also includes obtaining open-source intelligence to develop a dangerous environment for your potential customer. You'll learn how to install and employ offensive tactics used by skilled hackers as you go. Before eventually launching assaults against systems in an industrial network, you'll learn about industrial equipment, port, and service discovery, pivoting, and much more.You'll not only know how to evaluate and navigate the nuances of an industrial control system (ICS) by the conclusion of this penetration testing book, but you'll also have gained crucial offensive and defensive skills to proactively safeguard industrial networks from current assaults.What you will learnSet up an ICS lab with both physical and virtual equipment using a beginning kit.Perform pre-engagement open-source intel collection to aid in the mapping of your attack landscape.Learn how to do penetration testing on industrial equipment using Standard Operating Procedures (SOPs).Recognize the necessity of listening to customer networks and the concepts of traffic stretching.Learn the fundamentals of ICS communication.Connect engineering workstations and supervisory controlConnect data acquisition (SCADA) software to physical operational technologies.Learn how to map web-based SCADA solutions using directory scanning tools.Who this book is forThis book is intended for an ethical hacker, penetration tester, automation engineer, or IT security expert who wants to keep industrial networks safe from intruders. You'll get the most out of this book if you have a basic grasp of cybersecurity and recent cyber incidents.Table of Contents1. Using Virtualization2. Route the Hardware3. I Love My Bits: Lab Setup4. Open-Source Ninja5. Span Me If You Can6. Packet Deep Dive7. Scanning 1018. Protocols 2029. Ninja 308 10. I Can Do It 42011. Whoot I Have To Go DeepRead more
Functional and Logic Programming
This book constitutes the proceedings of the 16th International Symposium on Functional and Logic Programming, FLOPS 2022, held in Kyoto, Japan, in May 2022.The 12 papers presented in this volume were carefully reviewed and selected from 30 submissions. Additionally, the volume includes two system descriptions and a declarative pearl paper. The papers cover all aspects of the design, semantics, theory, applications, implementations, and teaching of declarative programming focusing on topics such as functional programming, logic programming, declarative programming, constraint programming, formal method, model checking, program transformation, program refinement, and type theory.
Introducing Charticulator for Power Bi
Create stunning and complex visualizations using the amazing Charticulator custom visuals in Power BI. Charticulator offers users immense power to generate visuals and graphics. To a beginner, there are myriad settings and options that can be combined in what feels like an unlimited number of combinations, giving it the unfair label, "the DAX of the charting world". This is not true. This book is your start-to-finish guide to using Charticulator, a custom visualization software that Microsoft integrated into Power BI Desktop so that Power BI users can create incredibly powerful, customized charts and graphs. You will learn the concepts that underpin the software, journeying through every building block of chart design, enabling you to combine these parts to create spectacular visuals that represent the story of your data.Unlike other custom Power BI visuals, Charticulator runs in a separate application window within Power BI with its own interface and requires a different set of interactions and associated knowledge. This book covers the ins and outs of all of them.What You Will LearnGenerate inspirational and technically competent visuals with no programming or other specialist technical knowledgeCreate charts that are not restricted to conventional chart types such as bar, line, or pieLimit the use of diverse Power BI custom visuals to one Charticulator custom visualAlleviate frustrations with the limitations of default chart types in Power BI, such as being able to plot data on only one categorical axisUse a much richer set of options to compare different sets of dataRe-use your favorite or most often used chart designs with Charticulator templates Who This Book Is ForThe average Power BI user. It assumes no prior knowledge on the part of the reader other than being able to open Power BI desktop, import data, and create a simple Power BI visual. User experiences may vary, from people attending a Power BI training course to those with varying skills and abilities, from SQL developers and advanced Excel users to people with limited data analysis experience and technical skills.
Automotive Software Architectures
This book introduces the concept of software architecture as one of the cornerstones of software in modern cars. Following a historical overview of the evolution of software in modern cars and a discussion of the main challenges driving that evolution, Chapter 2 describes the main architectural styles of automotive software and their use in cars' software. Chapter 3 details this further by presenting two modern architectural styles, i.e. centralized and federated software architectures. In Chapter 4, readers will find a description of the software development processes used to develop software on the car manufacturers' side. Chapter 5 then introduces AUTOSAR - an important standard in automotive software. Chapter 6 goes beyond simple architecture and describes the detailed design process for automotive software using Simulink, helping readers to understand how detailed design links to high-level design. The new chapter 7 reports on how machine learning is exploited in automotive software e.g. for image recognition and how both on-board and off-board learning are applied. Next, Chapter 8 presents a method for assessing the quality of the architecture - ATAM (Architecture Trade-off Analysis Method) - and provides a sample assessment, while Chapter 9 presents an alternative way of assessing the architecture, namely by using quantitative measures and indicators. Subsequently Chapter 10 dives deeper into one of the specific properties discussed in Chapter 8 - safety - and details an important standard in that area, the ISO/IEC 26262 norm. Lastly, Chapter 11 presents a set of future trends that are currently emerging and have the potential to shape automotive software engineering in the coming years. This book explores the concept of software architecture for modern cars and is intended for both beginning and advanced software designers. It mainly aims at two different groups of audience - professionals working with automotive software who need to understand concepts related to automotive architectures, and students of software engineering or related fields who need to understand the specifics of automotive software to be able to construct cars or their components. Accordingly, the book also contains a wealth of real-world examples illustrating the concepts discussed and requires no prior background in the automotive domain. Compared to the first edition, besides the two new chapters 3 and 7 there are considerable updates in chapters 5 and 8 especially.
Hands-On System Design
The ultimate guide to ace your system designing interviews. Key FeaturesProvides step-by-step solutions to real-world problems related to system design and development.Includes detailed explanations of each OOPs idea and design pattern, along with code snippets in the C++ style.Contains illustrations and demonstrations that describe the technologies enabling modern scalable systems.DescriptionScaling software application is the focus of this book, which takes the reader on an in-depth journey. You'll have a better understanding of how to create a scalable, enterprise-level application after reading this guide.The book discusses system design principles, computer networks, major networking protocols, strategies for scaling data access, and various architectural styles for creating the system. A thorough examination of various technologies such as Cache Memory, CDN, Load Balancers, and Messaging Queues are conducted and their implementation. The book also demonstrates how you can use these combinations of technologies in the best way to build a scalable enterprise-level system. The examination of several architectural styles for system design assists you in choosing the best path for architecting your system. Additionally, the book explores object-oriented programming concepts and design patterns that facilitate the creation of clean, maintainable code. The reader will develop an intuitive knowledge of numerous tools and approaches for creating a scalable system by using several actual system design examples.This book can tackle any system design problem you may meet in your current position or interviews. You'll learn how to design a system from scratch, and the examples in the book will help you to improve your skills.What you will learnAcquaint yourself with the fundamentals of computer networks and major networking protocols.Gain an understanding of various technologies to develop a distributed scalable application.Develop the capacity to approach any system design problem with a unique perspective.Gain insight into programming design patterns and object-oriented principles.Investigate several methods for expanding data access.Discover many architectural styles for system design.Who this book is forThe book is intended for software developers, system design engineers, aspiring system architects, IT professionals and students who want to learn how to construct a scalable application or prepare for system design interviews. Basic knowledge of programming and computer architecture is recommended but not demanded to grasp the book.Table of Contents1. Fundamentals of System Design Principles2. Networking Basics3. Scaling Databases4. System Architecture5. Introduction to Object Oriented Programming6. Design Patterns7. Object Oriented Design Methodology8. Approaching System design problems9. Designing a key-value store10. Designing a video streaming website11. Designing a website like Twitter12. Designing a card authentication system13. Designing an Image Hosting ApplicationRead more
Modernizing Your Windows Applications with the Windows App SDK and WinUI
Use Windows App SDK and WinUI 3 to take your existing Windows desktop applications to the next level by enabling a modern and accessible UI and integrating the latest Windows features like WinML and Windows HelloKey Features: Improve your apps and enable them to support modern devices with features such as touch screens and responsive UIIntegrate your app with the latest Windows innovations using modern tools and the newest C# featuresReuse your existing knowledge in .NET, C#, and Visual Studio to create new Windows appsBook Description: If you're a developer looking to improve and modernize your existing LOB applications to leverage modern Windows features without having to rewrite the entire application from scratch, this book is for you. You'll learn how to modernize your existing Windows Forms, WPF, and UWP applications and enrich them with the latest Windows features.Starting with sample LOB applications that cover common scenarios, you'll learn the differences between various components and then focus on design features for improved visual aspects like accessibility and responsive layouts.The book shows you how to enhance your existing applications using Windows App SDK components and various Windows APIs, resulting in deeper integration with the operating system. You'll be taking a closer look at WinML, which enables Windows applications to evaluate machine learning models offline and leverage the power of your machine, or notifications, to engage with your users in a more effective way. You'll also learn how to make your application deployment-ready by distributing it using various platforms like the Microsoft Store or websites.By the end of this Windows book, you'll be able to create a migration plan for your existing Windows applications and put your knowledge to work by enhancing your application with new features and integrating them with the Windows ecosystem.What You Will Learn: Understand the key concepts of the Windows App SDK and WinUIIntegrate new features by creating new applications or by enhancing your existing onesRevamp your app's UI by adopting Fluent Design and new interaction paradigms such as touch and inkingUse notifications to engage with your users more effectivelyIntegrate your app with the Windows ecosystem using the Windows App SDKUse WinML to boost your tasks using artificial intelligenceDeploy your application in LOB and customer-facing scenarios with MSIXWho this book is for: This book is for developers who are building Windows applications with Windows Forms, WPF, and UWP and would like to evolve and modernize their applications, but aren't able to rebuild them from scratch. This book focuses on Line-of-Business scenarios. Basic knowledge of Windows app development, .NET/C#, and Visual Studio will help you understand the concepts covered in this book.
101 Best Excel Tips & Tricks
Learn the Best Excel Tips & Tricks Ever: FORMULAS, MACROS (VBA), PIVOT TABLES, FORMATTING, DATA, MICROSOFT OFFICE 365 plus Many More!With this book, you'll learn to apply the must know Excel features and tricks to make your data analysis & reporting easier and will save time in the process.With this book you get the following: ✔ 101 Best Excel Tips & Tricks To Advance Your Excel Skills & Save You Hours✔ New Excel Tips & Tricks for Microsoft Office 365✔ Easy to Read Step by Step Guide with Screenshots✔ Downloadable Practice Excel Workbooks for each Tip & Trick✔ You also get a FREE BONUS downloadable PDF version of this book!✔ Exclusive to Hardcover: You also get a FREE BONUS 20+ Hour Excel Course with 77 video tutorials!This book is a MUST-HAVE for Beginner to Intermediate Excel users who want to learn Microsoft Excel FAST & stand out from the crowd!
Network Programming with Laboratory Work in C, C++, and Java
The material in this notes is based on lectures taught at Florida Tech for the classes on Network Programming Concepts (CSE 4232) and Network Programming (CSE 5232), as well as in other advanced classes.
From Objects to Functions
Build applications quicker and with less effort using functional programming and Kotlin. Learn by building a complete application, from gathering requirements to delivering a microservice architecture following functional programming principles. Learn how to implement CQRS and EventSourcing in a functional way to map the domain into code better and to keep the cost of change low for the whole application life cycle. If you're curious about functional programming or you are struggling with how to put it into practice, this guide will help you increase your productivity composing small functions together instead of creating fat objects. Switching to the functional paradigm isn't easy when you're used to object-oriented programming. You need more than just lambdas and mapping over collections to get a declarative style and disentangle the state from the computations. Use transformations and compositions to help you write less code with better results. Boost your productivity and harness the power of functional programming by creating real-world applications rather than focusing on theoretical concepts. Work through a series of short exercises to find and compose pure functions, and create data structures that work like algebra. Get rid of mutable state in your software to eliminate the main source of bugs. Apply CQRS and EventSourcing patterns to translate stakeholder requirements into functional design and then into code. See how Kotlin's easy-to-learn syntax and functional-friendly approach make it a great option for a pragmatic language that integrates well with existing Java code and libraries. Leverage functional programming to build and deliver robust applications in less time and with fewer defects. What You Need: The code in this book is designed to allow you to build your application from scratch on Windows, Mac and Linux. You will need a recent IDE, we recommend IntelliJ Community Edition, and Kotlin 1.3.x or later.
Beginning Grpc with ASP.NET Core 6
Broaden your developer experience by learning how to use gRPC and ASP.NET Core together on the Microsoft's developer framework, .NET 6 and discover a new way of developing APIs with gRPC. Beginning gRPC with ASP.NET Core 6 is your guide to quickly and efficiently getting down to the business of building gRPC applications in the Microsoft .NET ecosystem. Readers will dive in and build an application using gRPC and the latest technologies such Angular and ASP.NET Core Razor Pages. This book will teach you how to set up an efficient application using industry best practices such as security, monitoring, logging, and more. You will do this by performing Create, Read, Update, and Delete (CRUD) operations on a SQL Server database with Entity Framework Core. From there you will build web applications using Angular and ASP.NET Core Razor pages combined with gRPC APIs. After reading the book, you'll be able to take advantage of the full range of developer opportunities with gRPC, and come away with any understanding of which usage scenarios are best suited for your projects. And you will possess a solid understanding of the best way to build APIs with ASP.NET Core. What You Will Learn Discover the latest .NET 6 framework Benefit from a new way to design APIs Build modern web applications Migrate easily from WCF to gRPC Become comfortable with latest industry programming standards Who This Book Is ForProfessional developers who are interested in getting started with gRPC and want to learn how to use it to build applications in the .NET ecosystem.
Machine Learning with Python
This book explains how to use the programming language Python to develop machine learning and deep learning tasks. It provides readers with a solid foundation in the fundamentals of machine learning algorithms and techniques. The book covers a wide range of topics, including data preprocessing, supervised and unsupervised learning, model evaluation, and deployment. By leveraging the power of Python, readers will gain the practical skills necessary to build and deploy effective machine learning models, making this book an invaluable resource for anyone interested in exploring the exciting world of artificial intelligence.
SwiftUI for Masterminds
Learn how to create apps for iOS 15 and macOS Monterey with Swift 5.5 and the SwiftUI 3 framework.SwiftUI for Masterminds is a complete course on how to create professional applications for iPhones, iPads and Mac computers. After reading this book, you will know how to program in Swift, how to design user interfaces, and how to combine traditional frameworks with the advanced features provided by SwiftUI to build modern applications.In this book we teach you how to build insanely great apps from scratch. Each chapter explores basic and complex concepts; from computer programming and the Swift programming language to database storage, iCloud data sharing, and everything you need to know to develop applications for Apple devices. The information is supported by practical examples that gradually introduce the technologies involved and make them accessible to everyone.SwiftUI for Masterminds was designed to prepare you for the future and was written for the genius in you, for Masterminds. Introduction to Swift 5.5Swift ParadigmSwift ConcurrencyDeclarative User InterfacesSwiftUI FrameworkCombine FrameworkLayout and NavigationScroll ViewsUIKit in SwiftUILists and GridsMapsGraphics and AnimationsFilesArchivingCore DataiCloudCloudKitCamera and Photo LibraryVideo ViewWeb ViewGesture RecognizersDrag & DropTimersNotificationsError Handling...and more!iOS and Mac development with iOS 15, Xcode 13, Swift 5.5 and SwiftUI 3