Allgemein
Architekturen für BI & Analytics
Konzepte, Technologien und Anwendung - Erstauflage aus November 2021.Sowohl regulatorische Vorgaben als auch gesteigerte Anforderungen seitens der Fachanwender haben in den letzten Jahren zu immer komplexeren Business-Intelligence- und Analytics-Landschaften geführt, die es zu entwickeln und betreiben gilt. So setzt sich eine heute übliche Architektur aus zahlreichen Einzelkomponenten zusammen, deren Zusammenspiel und funktionale Abdeckung als wesentlicher Erfolgsfaktor für zugehörige BIA-Initiativen zu werten ist.»Architekturen für Business Intelligence & Analytics« setzt sich das Ziel, die derzeit gebräuchlichen Architekturmuster zu beschreiben und dabei einen Überblick über die aktuell verwendeten Technologien zu liefern. Dabei werden nicht nur die architektonischen Frameworks der großen Produktanbieter aufgegriffen, sondern darüber hinaus Lösungen für konkrete Anwendungsfälle präsentiert. Im Einzelnen werden behandelt:Anforderungen an eine ganzheitliche BIA-ArchitekturArchitekturen und Technologien für Data LakesDatenzugriffsstrategien für AnalyticsEnterprise Application IntegrationCloud-Konzepte und -ArchitekturenEinfluss regulatorischer AnforderungenDatenvirtualisierungBIA-Architekturen für KMU Das Buch vermittelt wertvolle Einblicke und hilfreiche Anregungen für die erfolgreiche Konzeptionierung und Realisierung von BIA-Ökosystemen und -Landschaften in der Praxis. Zielgruppe:Business-Intelligence-Manager*innenDaten- und InformationsverantwortlicheProjektleiter*innenStudierende der Informatik und Wirtschaftsinformatik Autoren:Prof. Dr. Peter Gluchowski leitet den Lehrstuhl für Wirtschaftsinformatik, insb. Systementwicklung und Anwendungssysteme, an der Technischen Universität in Chemnitz und konzentriert sich dort mit seinen Forschungsaktivitäten auf das Themengebiet Business Intelligence & Analytics. Er beschäftigt sich seit mehr als 25 Jahren mit Fragestellungen, die den praktischen Aufbau dispositiver bzw. analytischer Systeme zur Entscheidungsunterstützung betreffen. Seine Erfahrungen aus unterschiedlichsten Praxisprojekten sind in zahlreichen Veröffentlichungen zu diesem Themenkreis dokumentiert. Frank Leisten ist passionierter Berater für datengetriebene Vorhaben mit modernen Technologien. Seine Expertise in den Funktionen des Datenmanagements sowie jahrelange Praxiserfahrung in verschiedenen IT-Domänen und Rollen kommen seinen Kunden bei der Orchestrierung sowie der kulturellen und strategischen Entwicklung ihrer Transformationen zugute. Dr. Gero Presser ist Mitgründer und Geschäftsführer bei der QuinScape GmbH, einem Dortmunder IT-Dienstleistungsunternehmen mit 170 Mitarbeitern und Fokus auf Data & Analytics. Er organisiert die Meetup-Gruppe „Business Intelligence & Analytics Dortmund“ mit über 1.000 Mitgliedern und ist Vorsitzender des TDWI Roundtable Ruhrgebiet.
Mastering VMware Horizon 8
Learn all about designing, installing, configuring, and managing VMware Horizon, with a core focus on how to deliver virtual desktops using Horizon. This book allows you to follow the complete process for deploying VMware Horizon and covers the design, deployment, and management of solutions.You'll start by reviewing remote solutions, from virtual desktops to published applications, including the benefits and what the different solutions deliver. Once through the high-level technology you'll then look at the VMware Horizon solution focusing on the architecture and the components that make up the solution and how to design a production-ready environment. Other VMware EUC technologies that complement the core Horizon solution will also be incorporate into it.Armed with the knowledge of how to design a solution, you'll move onto the installation phase and start to build a test lab environment. Once your lab is installed, you'll move onto the configuration stage where you will understand how to build, configure, and optimize virtual desktops, and desktop pools ready for end-users to use. As part of this you will also look at delivering published applications with Horizon Apps.With resources built and configured you can optimize the end-user experience with Horizon clients. The final sections of the book will focus on the other complementary solutions introducing you to VMware App Volumes and VMware Dynamic Environment Manager before finishing with how to manage the solution where we will look at some advanced configuration options and troubleshooting techniques.WHAT YOU WILL LEARN* See the core components of VMware Horizon and their functionality* Design and install a Horizon environment* Deliver the best end-user experience* Manage the deployed solution* Use VMware reference architectures to create real-life scenario examples* Review the minimum requirements for designing a solutionWHO THIS BOOK IS FORVMware professionals, system integrators, IT professionals, and consultants.PETER VON OVEN is an experienced technical consultant working closely with customers and partners designing technology solutions, to meet business needs. During his career, Peter has presented at key IT events such as VMworld, IP EXPO, and various VMUGs and CCUG events. He has also worked in senior presales roles and presales management roles for Fujitsu, HP, Citrix, and VMware, and has been awarded VMware vExpert for the last six years in a row. In 2016, Peter founded his own company, Droplet Computing, where he works today as the founder and chief executive officer, helping redefine the way applications are delivered today. He is also an avid author, having now written 13 books and made videos about VMware end-user computing solutions. In his spare time, Peter volunteers as a STEM Ambassador, helping the next generation develop the skills and confidence in building careers in technology.Chapter 1: What Are Remote Desktop Solutions?Chapter 2: Getting Started with VMware HorizonChapter 3: Architecting Horizon for DeploymentChapter 4: Installing and Configuring Your Horizon EnvironmentChapter 5: Creating Virtual Desktop Images for DeploymentChapter 6: Building and Configuring Desktop PoolsChapter 7: Managing Horizon with Active Directory GPOsChapter 8: Horizon Computer GPOs Settings (split from chapter 7)Chapter 9: Horizon User GPO Settings (split from chapter 7)Chapter 10: Managing the End User Environments (former chapter 8)Chapter 11: Horizon Apps (former chapter 9)Chapter 12: Horizon Published Desktop (former chapter 10)Chapter 13: Connecting End Users (former chapter 11)Chapter 14: Horizon Enterprise Edition (former chapter 12)Chapter 15: Upgrading Horizon (former chapter 13)Chapter 16: Running Horizon in the Cloud (former chapter 14)Chapter 17: Horizon Troubleshooting (former chapter 15)Online Resource: Advanced Configuration and Management (former chapter 16)
Solving the Riddle of Microsoft and Your Computer
Solving the Riddle of Microsoft and Your Computer provides easy to follow step by step instructions.Chapter one provides some useful facts about your computer. This Chapter describes such things as how to operate your mouse; how to modify your screen saver and printer settings; options for printing files; how to use different functions of the calculator; playing and storing music; using Snipping Tool to capture images; determining amount of Radom Access Memory (RAM) is on your computer; determining your computer name; how to use Microsoft Excel to keep track of financial transactions.Chapter two discusses how to use Microsoft File Explorer. I refer to File Explorer as the electronic filing cabinet. This chapter provides a description of the drives in your computer; how to create top level and sub-folders in your C-Drive also known as the hard drive; how to find files in File Explorer; copying files from the C-Drive and changing properties on files.Chapter three is the real meat of this book. It provides detailed information on the most useful Microsoft Word functions. You will learn how to use pull down menus to include (Find, Replace, Tracking Changes, Accepting or Rejecting Changes, saving files, Print Preview, Printing, inserting Headers and Footers); additional topics on cover pages, inserting blank pages, inserting page breaks, inserting tables and inserting pictures; next you will learn how to adjust margins, adjust orientation, adjusting size of paper, inserting columns, inserting page and section breaks, how to vertical line numbers; an in depth discussion concerning interactive table of contents; other useful tools include inserting symbols, inserting footnotes, inserting text boxes, inserting other files into Word, how to use Format Painter, description of formatting fonts and how to insert splits in Word.
Knowledge Graphs
This book provides a comprehensive and accessible introduction to knowledge graphs, which have recently garnered notable attention from both industry and academia. Knowledge graphs are founded on the principle of applying a graph-based abstraction to data, and are now broadly deployed in scenarios that require integrating and extracting value from multiple, diverse sources of data at large scale. The book defines knowledge graphs and provides a high-level overview of how they are used. It presents and contrasts popular graph models that are commonly used to represent data as graphs, and the languages by which they can be queried before describing how the resulting data graph can be enhanced with notions of schema, identity, and context. The book discusses how ontologies and rules can be used to encode knowledge as well as how inductive techniques—based on statistics, graph analytics, machine learning, etc.—can be used to encode and extract knowledge. It covers techniques for the creation, enrichment, assessment, and refinement of knowledge graphs and surveys recent open and enterprise knowledge graphs and the industries or applications within which they have been most widely adopted. The book closes by discussing the current limitations and future directions along which knowledge graphs are likely to evolve. This book is aimed at students, researchers, and practitioners who wish to learn more about knowledge graphs and how they facilitate extracting value from diverse data at large scale. To make the book accessible for newcomers, running examples and graphical notation are used throughout. Formal definitions and extensive references are also provided for those who opt to delve more deeply into specific topics. * Preface * Acknowledgments * Introduction * Data Graphs * Schema, Identity, and Context * Deductive Knowledge * Inductive Knowledge * Creation and Enrichment * Quality Assessment * Refinement * Publication * Knowledge Graphs in Practice * Conclusions * Bibliography * Authors' Biographies
Prinzipien des Softwaredesigns
Entwurfsstrategien für komplexe SystemeDie Prinzipien guten Softwaredesigns zu verstehen, hält John Ousterhout für eine Schlüsselqualifikation in der Softwareentwicklung. Sein Buch gibt Impulse für eine anregende und notwendige Diskussion und bietet praxistaugliche Hilfestellungen für gute Designentscheidungen. Ausgehend von der Frage »Wie können wir die Komplexität in großen Softwaresystemen reduzieren und managen?« arbeitet John Ousterhout Prinzipien für das Softwaredesign heraus, die als Leitlinie für den gesamten Softwareentwicklungsprozess dienen können. Ousterhout stellt Überzeugungen infrage, die weit verbreitet sind: Er rät davon ab, die Anzahl der Codezeilen einer Methode oder Klasse als Gradmesser für die Komplexität von Software zu verstehen, und plädiert dafür, sich auf ihre »Tiefe« zu konzentrieren – wie gut sie also Komplexität verstecken. Und während viele Entwicklerinnen und Entwickler meinen, dass sich gut geschriebene Programme von selbst dokumentierten, zeigt Ousterhout, wie essenziell Kommentare sind: Das Schreiben guter Kommentare ermöglicht Abstraktion, und es wird zu besserem Softwaredesign führen.Zielgruppe:Softwareentwickler*innenProgrammierendeSoftwarearchitekt*innenAutor:John Ousterhout ist Professor für Informatik an der Stanford University. Er hat die Entwicklung weit verbreiteter Softwaresysteme wie Raft, Tcl/Tk, Sprite und Magic geleitet und eigene Unternehmen gegründet. Er ist Mitglied der National Academy of Engineering und erhielt zahlreiche Auszeichnungen wie den U.C. Berkeley Distinguished Teaching Award.Aus dem Inhalt:Wie man komplexe Systeme in möglichst unabhängige Module mit einfachen Schnittstellen zerlegen kannWie Spezialisierung in Modulen zu vermeiden istWie man die Anzahl der Stellen im Code minimieren kann, an denen Exceptions behandelt werden müssenWie Kommentare und gut gewählte Namen genutzt werden können, um den Code verständlicher zu machenWie es zu vermeiden ist, dass sich Komplexität einschleicht, wenn Systeme sich weiterentwickelnWelche Warnhinweise darauf hindeuten, dass Designentscheidungen überprüft werden sollten
Learn to Program with Assembly
Many programmers have limited effectiveness because they don't have a deep understanding of how their computer actually works under the hood. In Learn to Program with Assembly, you will learn to program in assembly language - the language of the computer itself.Assembly language is often thought of as a difficult and arcane subject. However, author Jonathan Bartlett presents the material in a way that works just as well for first-time programmers as for long-time professionals. Whether this is your first programming book ever or you are a professional wanting to deepen your understanding of the computer you are working with, this book is for you. The book teaches 64-bit x86 assembly language running on the Linux operating system. However, even if you are not running Linux, a provided Docker image will allow you to use a Mac or Windows computer as well.The book starts with extremely simple programs to help you get your grounding, going steadily deeper with each chapter. At the end of the first section, you will be familiar with most of the basic instructions available on the processor that you will need for any task. The second part deals with interactions with the operating system. It shows how to make calls to the standard library, how to make direct system calls to the kernel, how to write your own library code, and how to work with memory. The third part shows how modern programming language features such as exception handling, object-oriented programming, and garbage collection work at the assembly language level.Additionally, the book comes with several appendices covering various topics such as running the debugger, vector processing, optimization principles, a list of common instructions, and other important subjects.This book is the 64-bit successor to Jonathan Bartlett's previous book, Programming from the Ground Up, which has been a programming classic for more than 15 years. This book covers similar ground but with modern 64-bit processors, and also includes a lot more information about how high level programming language features are implemented in assembly language.WHAT YOU WILL LEARN* How the processor operates * How computers represent data internally * How programs interact with the operating system* How to write and use dynamic code libraries* How high-level programming languages implement their features WHO THIS BOOK IS FORAnyone who wants to know how their computer really works under the hood, including first time programmers, students, and professionals.JONATHAN BARTLETT is a software developer, researcher, and writer. His first book, Programming from the Ground Up, has been required reading in computer science programs from DeVry to Princeton. He has been the sole or lead author for eight books on topics ranging from computer programming to calculus. He is a technical lead for ITX, where his specialty is getting stuck projects unstuck.Chapter 1: IntroductionChapter 2: The Truth About ComputersPart I: Assembly Language BasicsChapter 3: Your First ProgramChapter 4: Registers and Simple ArithmeticChapter 5: Comparison, Branching and LoopingChapter 6: Working with Data in MemoryChapter 7: Data RecordsChapter 8: Signed Numbers and Bitwise OperationsChapter 9: More Instructions You Should KnowPart II: Operating System BasicsChapter 10: Making System CallsChapter 11: The Stack and Function CallsChapter 12: Calling Functions from LibrariesChapter 13: Common and Useful Assembler DirectivesChapter 14: Dynamic Memory AllocationChapter 15: Dynamic LinkingPart III: Programming Language TopicsChapter 16: Basic Language Features Represented in Assembly LanguageChapter 17: Tracking Memory AllocationsChapter 18: Object-Oriented ProgrammingChapter 19: Conclusion and AcknowlegmentsPart IV: AppendicesAppendix A: Getting Set Up with DockerAppendix B: The Command LineAppendix C: Debugging with GDBAppendix D: Nasm (Intel) Assembly Language SyntaxAppendix E: Common x86-64 InstructionsAppendix F: Floating Point NumbersAppendix G: The Starting State of the StackAppendix H: ASCII, Unicode, and UTF-8Appendix I: OptimizationAppendix J: A Simplified Garbage CollectorAppendix K: Going to an Even Lower Level
Web App Development and Real-Time Web Analytics with Python
Learn to develop and deploy dashboards as web apps using the Python programming language, and how to integrate algorithms into web apps.Author Tshepo Chris Nokeri begins by introducing you to the basics of constructing and styling static and interactive charts and tables before exploring the basics of HTML, CSS, and Bootstrap, including an approach to building web pages with HTML. From there, he’ll show you the key Python web frameworks and techniques for building web apps with them. You’ll then see how to style web apps and incorporate themes, including interactive charts and tables to build dashboards, followed by a walkthrough of creating URL routes and securing web apps. You’ll then progress to more advanced topics, like building machine learning algorithms and integrating them into a web app. The book concludes with a demonstration of how to deploy web apps in prevalent cloud platforms.Web App Development and Real-Time Web Analytics with Python is ideal for intermediate data scientists, machine learning engineers, and web developers, who have little or no knowledge about building web apps that implement bootstrap technologies. After completing this book, you will have the knowledge necessary to create added value for your organization, as you will understand how to link front-end and back-end development, including machine learning.WHAT YOU WILL LEARN* Create interactive graphs and render static graphs into interactive ones* Understand the essentials of HTML, CSS, and Bootstrap* Gain insight into the key Python web frameworks, and how to develop web applications using themDevelop machine learning algorithms and integrate them into web apps * Secure web apps and deploy them to cloud platformsWHO THIS BOOK IS FORIntermediate data scientists, machine learning engineers, and web developers. Tshepo Chris Nokeri harnesses big data, advanced analytics, and artificial intelligence to foster innovation and optimize business performance. In his functional work, he has delivered complex solutions to companies in the mining, petroleum, and manufacturing industries. He initially completed a bachelor’s degree in information management. He then graduated with an honors degree in business science at the University of the Witwatersrand on a TATA prestigious scholarship and a Wits Postgraduate Merit Award. They unanimously awarded him the Oxford University Press Prize. He has authored the Apress book Data Science Revealed and Implementing Machine Learning for Finance. Chapter 1: Static 2D and 3D GraphsChapter Goal: This chapter introduces the basics of tabulating data and constructing staticgraphical representations. To begin with, it exhibits an approach of extracting and tabulating data by implementing the pandas and sqlalchemy library. Subsequently, it reveals a prevalent 2D and 3D charting recognized as Matplotlib, then exhibits a technique of constructing basic charts (i.e. box-whisker plot, histogram, line plot, and scatter plot).● Tabulating Data● 2D Chartingo Box-whisker-ploto Histogramo Line ploto Scatter ploto Density Plot● 3D Charting● ConclusionChapter 2: Interactive ChartingChapter Goal: This chapter introduces an approach for constructing interactive charts byimplementing the most prevalent library, recognized as Plotly.● Plotly● 2D Chartingo Box-whisker-ploto Histogramo Line ploto Scatter ploto Density Ploto Bar Charto Pie Charto Sunburst● 3D Charting● ConclusionChapter 3: Containing functionality in Interactive GraphsChapter Goal: This chapter extends to the preceding chapter. It introduces an approach toupdating interactive graphs to improve user experience. For instance, you will learn how to add buttons and range sliders, among other functionalities. Besides that, it exhibits an approach for integrating innumerable graphs into one graph with some functionality.● Updating Graph Layout● Updating Plotly Axes● Including Range Slider● Including Buttons to a Graph● Styling Interactive Graphs● Updating Plotly X-Axis● Color Sequencing● Subplots● ConclusionsChapter 4: Essentials of HTMLChapter Goal: This chapter introduces the most prevalent markup language for developingwebsites. It acquaints you with the essentials of designing websites. Besides that, it contains a richset of code and examples to support you in getting started with coding using HTML.● The Communication between a Web Browser and Web Server● Domain Hostingo Shared Hostingo Managed Hosting● HyperText Markup Languageo HTML Elements▪ Headings▪ Paragraphs▪ Div▪ Span▪ Buttons▪ Text Box▪ Input▪ File Upload▪ Label▪ Form▪ Meta Tag● Practical Example● ConclusionChapter 5: Python Web Frameworks and ApplicationsChapter Goal: The preceding chapter acquainted you with interactive visualization using Plotly. This chapter introduces key Python web frameworks (i.e., flask and dash) and how they differ.Besides that, it provides practical examples and helps you get started with Python web development.● Web Frameworks● Web Applications● Flasko WSGIo Werkzeugo Jinjao Installing Flasko Initializing a Flask Web Applicationo Flask Application Codeo Deploy a Flask Web Application● Dasho Installing Dash Dependencieso Initializing a Dash Web Applicationo Dash Application Codeo Deploy a Dash Web Application● Jupyter Dash● ConclusionChapter 6: Dash Bootstrap ComponentsChapter Goal: This chapter covers dash_bootstrap_component. It is a Python library from the Plotly family, which enables us to have key bootstrap functionalities on a dash web application, thussimplifying the web application development.● Dash Bootstrap Components (cont.)o Number Inputo Text Areaso Selecto Radio Itemso Checklisto Switcheso Tabso Buttono Table● ConclusionChapter 7: Styling and ThemingChapter Goal: This chapter introduces the basics of UX design for a web application, dash with plotly. To begin with, it introduces styling an HTML web page. Subsequently, it acquaints you with the Cascade styling sheet (css). Following that, it presents bootstrap. Afterward, it reveals bootstrapping dash web applications. It concludes by demonstrating a way of designing the layout of a dash webapplication.● Styling● Cascade Styling Sheet● Bootstrap● Dash Bootstrappingo Dash Core Componentso Dash Bootstrap Componentso Implementing Dash Bootstrap Components Themingo Dash HTML Componentso Dash Web Application Layout Design● Responsive Grid SystemChapter 8: Real-Time Web ApplicationChapter Goal: This chapter introduces you to creating a real-time web application with aresponsive navigation bar, sidebar, charts, tables, callbacks, and URL routing. After reading the contents of this chapter you should be able to develop a functional and responsive web application by implementing key Python web frameworks (i.e., dash, dash_core_components, dash_html_components). Besides that, you should be able to use the Input, State, and Output methods available for creating functional application callbacks. Equally, it acquaints you with an approach for implementing CSS to customize as a dash web application.Sub-topics:● Creating Iconso Alert Icono Messageso Profile Icon with Dropdown Menu● Search Bar● Navigation Bar● Sidebar Styling● Responsive Sidebar Styling● Content Styling● Sub Menu● Finalize Sidebar Menu● Footer Navigation Bar● Web Application Layout● Including Charts● Including a Table● Enabling Data Download● Tabs● Collapse● Callbackso Callbacks for Responsive Menu● URL Routing● ConclusionChapter 9: Basic AuthenticationChapter Goal: This chapter introduces an approach to securing a dash web application. After reading the contents of this chapter, you should be able to implement user access control, thus providing users access to some web resources and restricting them to others.Sub-topics:● Dash Authentications● Login Form● Login on Home Page● ConclusionChapter 10: Dash Into a Full WebsiteChapter Goal: Prior chapters introduced a way of building dashboards as web applications,integrated with machine learning models. This chapter takes it a step further. It introduces a way of building the front-end. After reading the contents of this chapter, you should be able to build important pages of a website, such as the home page, about us page, and contact us page, in addition to that, a page for billing/checkout.Sub-topics:● Building Home Page● Building Contact Us Page● Building Billing / Check-Out BuildingChapter 11: Integrate Machine Learning ModelsChapter Goal: This chapter introduces an approach to integrate machine learning models. Initially, it will provide an over of machine learning recognized as linear regression, including ways of preprocessing data and generating predictions. It concludes by exhibiting a technique of implementing it in web applications.Sub-topics:● An Introduction to Linear Regression● An Introduction to Scikit learn● Preprocessing● Splitting Data into Training and Test Data● Standardization● Training an Algorithm● Predictions● Integrating an Algorithm to a Web App● ConclusionsChapter 12: Deploying Web AppChapter Goal: This chapter concludes the book. It exhibits a way of deploying a web app. Initially, it summarizes an integrated development environment useful for developing, testing, and debugging Python web frameworks. Subsequently, it exhibits an approach of organizing the file structure prior to deploying a web app. Besides that, it provides a practical example that will help you better web app deployment.Sub-topics:● Integrated Development Environment○ PyCharm● Virtual Environment● File Structure● Integration among Multiple Innumerable Python Files● Hosting Web App
Soziale Roboter
Soziale Roboter sind sensomotorische Maschinen, die für den Umgang mit Menschen oder Tieren geschaffen wurden. Sie können über fünf Dimensionen bestimmt werden, nämlich die Interaktion mit Lebewesen, die Kommunikation mit Lebewesen, die Nähe zu Lebewesen, die Abbildung von (Aspekten von) Lebewesen sowie – im Zentrum – den Nutzen für Lebewesen. Bei einem weiten Begriff können neben Hardwarerobotern auch Softwareroboter wie gewisse Chatbots, Voicebots und Social Bots dazu zählen. Die Disziplin, die soziale Roboter – ob als Spielzeugroboter, als Serviceroboter (Pflegeroboter, Therapieroboter, Sexroboter, Sicherheitsroboter etc.) oder als Industrieroboter in der Art von Kooperations- und Kollaborationsrobotern (Co-Robots bzw. Cobots) – erforscht und hervorbringt, ist die Soziale Robotik.Das Buch schafft Grundlagen in technikwissenschaftlicher, wirtschaftswissenschaftlicher, philosophischer, psychologischer und soziologischer Hinsicht. Es stellt dar, was soziale Roboter ausmacht, wie sie gebaut und programmiert werden, welche Anwendungsmöglichkeiten existieren und welche Herausforderungen sich ergeben.Das Kapitel 2 wird auf link.springer.com unter der Creative Commons Namensnennung 4.0 International Lizenz veröffentlicht.Prof. Dr. Oliver Bendel promovierte an der Universität St. Gallen. Er ist Dozent für Wirtschaftsinformatik, Informationsethik und Maschinenethik und forscht in Informations-, Maschinen- und Roboterethik.
The Little Book of Artificial Intelligence
This book is a brief introduction to artificial intelligence. It is intended for readers, in business, education, government, and self-edification.The author would like to thank his wife Margaret for helping with the manuscript. As in most disciplines, some of the subject matter is new and some of the subject matter is not so new, especially to persons trained in the subject of computers. A person with a degree in computer science should know it already. Artificial intelligence is an important subject to the modern world, and some disciplines have already benefitted greatly from it.The reader can survey the subject matter in any order he or she pleases. The busy executive can benefit greatly from it their parent organization. Executives in finance and banking can use to understand what is going on in their endeavors.Artificial intelligence is not only software but uses specially prepared software to take intellectual benefit in understanding what his or her data systems are doing.Artificial intelligence is something for the future from self-driving vehicles to self-managed business.
Cryptography, Information Theory, and Error-Correction
A rich examination of the technologies supporting secure digital information transfers from respected leaders in the field As technology continues to evolve Cryptography, Information Theory, and Error-Correction: A Handbook for the 21ST Century is an indispensable resource for anyone interested in the secure exchange of financial information. Identity theft, cybercrime, and other security issues have taken center stage as information becomes easier to access. Three disciplines offer solutions to these digital challenges: cryptography, information theory, and error-correction, all of which are addressed in this book. This book is geared toward a broad audience. It is an excellent reference for both graduate and undergraduate students of mathematics, computer science, cybersecurity, and engineering. It is also an authoritative overview for professionals working at financial institutions, law firms, and governments who need up-to-date information to make critical decisions. The book’s discussions will be of interest to those involved in blockchains as well as those working in companies developing and applying security for new products, like self-driving cars. With its reader-friendly style and interdisciplinary emphasis this book serves as both an ideal teaching text and a tool for self-learning for IT professionals, statisticians, mathematicians, computer scientists, electrical engineers, and entrepreneurs. Six new chapters cover current topics like Internet of Things security, new identities in information theory, blockchains, cryptocurrency, compression, cloud computing and storage. Increased security and applicable research in elliptic curve cryptography are also featured. The book also: Shares vital, new research in the field of information theoryProvides quantum cryptography updatesIncludes over 350 worked examples and problems for greater understanding of ideas. Cryptography, Information Theory, and Error-Correction guides readers in their understanding of reliable tools that can be used to store or transmit digital information safely. CRYPTOGRAPHY, INFORMATION THEORY, AND ERROR-CORRECTION A rich examination of the technologies supporting secure digital information transfers from respected leaders in the field As technology continues to evolve Cryptography, Information Theory, and Error-Correction: A Handbook for the 21ST Century is an indispensable resource for anyone interested in the secure exchange of financial information. Identity theft, cybercrime, and other security issues have taken center stage as information becomes easier to access. Three disciplines offer solutions to these digital challenges: cryptography, information theory, and error-correction, all of which are addressed in this book. This book is geared toward a broad audience. It is an excellent reference for both graduate and undergraduate students of mathematics, computer science, cybersecurity, and engineering. It is also an authoritative overview for professionals working at financial institutions, law firms, and governments who need up-to-date information to make critical decisions. The book’s discussions will be of interest to those involved in blockchains as well as those working in companies developing and applying security for new products, like self-driving cars. With its reader-friendly style and interdisciplinary emphasis this book serves as both an ideal teaching text and a tool for self-learning for IT professionals, statisticians, mathematicians, computer scientists, electrical engineers, and entrepreneurs. Six new chapters cover current topics like Internet of Things security, new identities in information theory, blockchains, cryptocurrency, compression, cloud computing and storage. Increased security and applicable research in elliptic curve cryptography are also featured. The book also: Shares vital, new research in the field of information theoryProvides quantum cryptography updatesIncludes over 350 worked examples and problems for greater understanding of ideas. Cryptography, Information Theory, and Error-Correction guides readers in their understanding of reliable tools that can be used to store or transmit digital information safely. Aiden A. Bruen, PhD, was most-recently adjunct research professor in the School of Mathematics and Statistics at Carleton University. He was professor of mathematics and honorary professor of applied mathematics at the University of Western Ontario from 1972-1999 and has instructed at various institutions since then. Dr. Bruen is the co-author of Cryptography, Information Theory, and Error-Correction: A Handbook for the 21st Century (Wiley, 2004). Mario A. Forcinito, PhD, is Director and Chief Engineer at AP Dynamics Inc. in Calgary. He is previously instructor at the Pipeline Engineering Center at the Schulich School of Engineering in Calgary. Dr. Forcinito is co-author of Cryptography, Information Theory, and Error-Correction: A Handbook for the 21st Century (Wiley, 2004).
Small-N und Big-N-Data in der Sportwissenschaft
Im Rahmen dieses essentials legen die Autoren das Augenmerk auf die Besonderheiten des Umgangs mit kleinen und großen Datenmengen in der Sportwissenschaft. Kurz und überblickartig wird dargestellt, welche Designs im Rahmen von Single-Case-Studies zum Einsatz gelangen können und wie solche Studien ausgewertet werden. Weiterhin wird erläutert, wie man die beste wissenschaftliche Evidenz in die (medizinische) Praxis integriert und wie im Rahmen von Forschungsprojekten die erhobenen Daten gesichert und öffentlich zugänglich gemacht werden. Darüber hinaus wird dargestellt, was alles unter dem Begriff Big Data subsumiert wird und welche Möglichkeiten und Grenzen für die Wissenschaft mit Big Data verbunden sind.
Pretrained Transformers for Text Ranking
THE GOAL OF TEXT RANKING IS TO GENERATE AN ORDERED LIST OF TEXTS RETRIEVED FROM A CORPUS IN RESPONSE TO A QUERY. ALTHOUGH THE MOST COMMON FORMULATION OF TEXT RANKING IS SEARCH, INSTANCES OF THE TASK CAN ALSO BE FOUND IN MANY NATURAL LANGUAGE PROCESSING (NLP) APPLICATIONS. This book provides an overview of text ranking with neural network architectures known as transformers, of which BERT (Bidirectional Encoder Representations from Transformers) is the best-known example. The combination of transformers and self-supervised pretraining has been responsible for a paradigm shift in NLP, information retrieval (IR), and beyond.This book provides a synthesis of existing work as a single point of entry for practitioners who wish to gain a better understanding of how to apply transformers to text ranking problems and researchers who wish to pursue work in this area. It covers a wide range of modern techniques, grouped into two high-level categories: transformer models that perform reranking in multi-stage architectures and dense retrieval techniques that perform ranking directly. Two themes pervade the book: techniques for handling long documents, beyond typical sentence-by-sentence processing in NLP, and techniques for addressing the tradeoff between effectiveness (i.e., result quality) and efficiency (e.g., query latency, model and index size). Although transformer architectures and pretraining techniques are recent innovations, many aspects of how they are applied to text ranking are relatively well understood and represent mature techniques. However, there remain many open research questions, and thus in addition to laying out the foundations of pretrained transformers for text ranking, this book also attempts to prognosticate where the field is heading.* Preface* Acknowledgments* Introduction* Setting the Stage* Multi-Stage Architectures for Reranking* Refining Query and Document Representations* Learned Dense Representations for Ranking* Future Directions and Conclusions* Bibliography* Authors' Biographies
Navigating the Cybersecurity Career Path
LAND THE PERFECT CYBERSECURITY ROLE—AND MOVE UP THE LADDER—WITH THIS INSIGHTFUL RESOURCEFinding the right position in cybersecurity is challenging. Being successful in the profession takes a lot of work. And becoming a cybersecurity leader responsible for a security team is even more difficult.In Navigating the Cybersecurity Career Path, decorated Chief Information Security Officer Helen Patton delivers a practical and insightful discussion designed to assist aspiring cybersecurity professionals entering the industry and help those already in the industry advance their careers and lead their first security teams. In this book, readers will find:* Explanations of why and how the cybersecurity industry is unique and how to use this knowledge to succeed* Discussions of how to progress from an entry-level position in the industry to a position leading security teams and programs* Advice for every stage of the cybersecurity career arc* Instructions on how to move from single contributor to team leader, and how to build a security program from scratch* Guidance on how to apply the insights included in this book to the reader's own situation and where to look for personalized help* A unique perspective based on the personal experiences of a cybersecurity leader with an extensive security backgroundPerfect for aspiring and practicing cybersecurity professionals at any level of their career, Navigating the Cybersecurity Career Path is an essential, one-stop resource that includes everything readers need to know about thriving in the cybersecurity industry.HELEN E. PATTON has held several senior technical leadership positions in cybersecurity, including Advisory Chief Information Security Officer at Cisco, AVP and Chief Information Security Officer at the Ohio State University and Executive Director of IT Risk and Resiliency at JP Morgan Chase.Foreword: Navigating the Cybersecurity Career Path xvIntroduction xviiPART I ARRIVING IN SECURITY 1CHAPTER 1 HOW DO YOU BECOME A SECURITY PROFESSIONAL? 3Create Your Story 8So, You Want to Work in Security 13What’s Next? 16CHAPTER 2 WHY SECURITY? 19What Kind of People Do Security? 21What Is Your Why? 24What’s Next? 28CHAPTER 3 WHERE CAN I BEGIN? 29What Does It Mean to Be a Security Professional? 32How Can You Make Sense of It All? 35What’s Next? 39CHAPTER 4 WHAT TRAINING SHOULD I TAKE? 41For the Traditional Student 43For the Nontraditional Student 44For the Full-TimeNonsecurity Worker 45Other Things to Consider 46What’s Next? 51CHAPTER 5 WHAT SKILLS SHOULD I HAVE? 53The Entry Point —Technology 55Professional Skills 59What’s Next? 66CHAPTER 6 IS MY RÉSUMÉ OKAY? 67Linking the Résumé to the Job Posting 70Elements of a Résumé 71Digital Presence 77References 78Cover Letters 79What’s Next? 80CHAPTER 7 TRYING WITH LITTLE SUCCESS? 81Physical Location 85Your Company 85Get Specific 86Know Your Market 88Assess Your Efforts So Far 89But I’m Doing All Those Things! 91What’s Next? 92PART II THRIVING IN SECURITY 93CHAPTER 8 HOW DO I KEEP UP? 97Fitting It Into Your Schedule 99Ad Hoc and Planned Learning 102Take a Mini-Sabbatical 103Where Do I Find the Information? 103What’s Next? 105CHAPTER 9 How Can I Manage Security Stress? 107The Stress of Working in Security 109Managing Security Stress 113What’s Next? 118CHAPTER 10 HOW CAN I SUCCEED AS A MINORITY? 119Making Security Work for You 124What’s Next? 128CHAPTER 11 HOW CAN I PROGRESS? 129The Security Journey 131The Opportunist 132The Intentional Career Seeker 136How to Get Promoted 139What’s Next? 141CHAPTER 12 SHOULD I MANAGE PEOPLE? 143Leadership and Management 145Preparing for Your Next Role 150What’s Next? 152CHAPTER 13 HOW CAN I DEAL WITH IMPOSTOR SYNDROME? 153Fact-Check Your Inner Monologue 157Know Competence and Incompetence 158Know When to Ask for Help 159Keep Learning and Know When Enough Is Enough 160Keep Track of Your Successes 161What’s Next? 162CHAPTER 14 HOW CAN I KNOW IF IT’S TIME TO MOVE ON? 163Are You Happy Where You Are? 165Have You Done All You Wanted to Do? 166Have You Learned All You Wanted? 167What Are Your Long-Term Goals? 168Are You Being Pigeonholed? 169Do You Fit Into the Culture? 170Job Hopping 171Are the Other Options Better than Your Current Job? 172What’s Next? 173PART III LEADING SECURITY 175CHAPTER 15 WHERE DO I START? 179What’s on Fire? 180What Is Your Timeline to Act? 181Who Are Your Partners? 182Find the Strengths and Note the Weaknesses 183Draw the Business Risk Picture 184Do You Have a Mandate? 185What’s Next? 186CHAPTER 16 HOW DO I MANAGE SECURITY STRATEGICALLY? 187Consider Your Industry 190Know Your Business Priorities 191Be Pragmatic 193Address Stakeholder Pain Points 194Threats and Vulnerabilities 195Rinse and Repeat 197Putting It Together 198What’s Next? 200CHAPTER 17 HOW DO I BUILD A TEAM? 201It Is About the How 203Things to Consider 207Identify Important Things 209Identify Areas of Weakness 211Discontinuing a Function 212Building New Functions 213What’s Next? 215CHAPTER 18 HOW DO I WRITE A JOB POSTING? 217The Challenge of Job Postings 220What’s Next? 225CHAPTER 19 HOW DO I ENCOURAGE DIVERSITY? 227Start with Numbers 229Understand Your Cultural Issues 230Attracting Diverse Talent 232Writing the Job Description and Posting 234The Interviewing Process 235Retaining Diverse Talent 236Promotions and Career Development 237Leaving the Team 239What’s Next? 239CHAPTER 20 HOW DO I MANAGE UP? 241Who Are Senior Stakeholders? 242Help Them Understand Security 246When Things Go Wrong 250What’s Next? 251CHAPTER 21 HOW DO I FUND MY PROGRAM? 253Funding a Team 255Funding a Program 256The Big Ask 260What’s Next? 261Chapter 22 How Do I Talk About My Security Program? 263What Story Should I Tell? 264Telling Stories 271What’s Next? 273CHAPTER 23 WHAT IS MY LEGACY? 275Making an Impact on the Industry 277Making an Impact on Your Company 281What’s Next? 283Epilogue 285Appendix: Resources 287About the Author 291Acknowledgments 293Index 295
(ISC)2 SSCP Systems Security Certified Practitioner Official Practice Tests
SMARTER, FASTER PREP FOR THE SSCP EXAMThe (ISC)² SSCP Official Practice Tests, 2nd Edition is the only (ISC)²-endorsed set of practice questions for the Systems Security Certified Practitioner (SSCP). This book's first seven chapters cover each of the seven domains on the SSCP exam with sixty or more questions per domain, so you can focus your study efforts exactly where you need more review. When you feel well prepared, use the two complete practice exams from Sybex's online interactive learning environment as time trials to assess your readiness to take the exam.:Coverage of all exam objectives, including:* Security Operations and Administration* Access Controls* Risk Identification, Monitoring and Analysis* Incident Response and Recovery* Cryptography* Network and Communications Security* Systems and Application SecuritySSCP certification demonstrates you have the advanced technical skills and knowledge to implement, monitor and administer IT infrastructure using security best practices, policies and procedures. It's ideal for students pursuing cybersecurity degrees as well as those in the field looking to take their careers to the next level.MIKE CHAPPLE, PhD, CISSP, Security+, CISA, CySA+ is Teaching Professor of IT, Analytics and Operations at the University of Notre Dame. He is a leading expert on cybersecurity certification and runs CertMike.com. Mike is the author of more than 25 books including (ISC)2 CISSP Certified Information Systems Security Professional Official Study Guide, 7th, 8th, and 9th Editions.DAVID SEIDL, CISSP, GPEN, GCIH, CySA+, Pentest+ is the Vice President for Information Technology and CIO at Miami University of Ohio. During his IT career, he has served in a variety of technical and information security roles including serving as the Senior Director for Campus Technology Services at the University of Notre Dame and leading Notre Dame’s information security team as Notre Dame’s Director of Information Security. David has taught college courses on information security, and writes books on information security and cyberwarfare.Introduction xiChapter 1 Security Operations and Administration (Domain 1) 1Chapter 2 Access Controls (Domain 2) 21Chapter 3 Risk Identification, Monitoring, and Analysis (Domain 3) 37Chapter 4 Incident Response and Recovery (Domain 4) 61Chapter 5 Cryptography (Domain 5) 79Chapter 6 Network and Communications Security (Domain 6) 95Chapter 7 Systems and Application Security (Domain 7) 119Chapter 8 Practice Test 1 141Chapter 9 Practice Test 2 169Appendix Answers to Review Questions 197Chapter 1: Security Operations and Administration (Domain 1) 198Chapter 2: Access Controls (Domain 2) 204Chapter 3: Risk Identification, Monitoring, and Analysis (Domain 3) 212Chapter 4: Incident Response and Recovery (Domain 4) 221Chapter 5: Cryptography (Domain 5) 229Chapter 6: Network and Communications Security (Domain 6) 235Chapter 7: Systems and Application Security (Domain 7) 246Chapter 8: Practice Test 1 255Chapter 9: Practice Test 2 269Index 283
jQuery Recipes
jQuery is one of today’s most popular JavaScript web application development frameworks and libraries. _jQuery Recipes_ can get you started with jQuery quickly and easily, and it will serve as a valuable long-term reference.* The book begins with small initial problems that developers typically face while working with jQuery, and gradually goes deeper to explore more complex problems. * The solutions include illustrations and clear, concise explanations of the code. Using this book and jQuery, your web sites will be more dynamic and lively. Bintu Harwani is a computer programmer and web developer with several years of experience building content-driven web sites using a variety of web development technologies including PHP, Ruby, Rails, and more. JQUERY RECIPES1. jQuery Basics2. Traversing and Manipulating the DOM3. Arrays and Iteration4. Understanding the Event Model5. Implementing Animation6. Sliding and Visual Effects7. Understanding Accordion, Dialog, Slider, Date Picker & AutoComplete8. Ajax9. Working with Plugins10. Working with CSS11. Understanding Selectors and Traversing
Question Answering for the Curated Web
QUESTION ANSWERING (QA) SYSTEMS ON THE WEB TRY TO PROVIDE CRISP ANSWERS TO INFORMATION NEEDS POSED IN NATURAL LANGUAGE, REPLACING THE TRADITIONAL RANKED LIST OF DOCUMENTS. QA, posing a multitude of research challenges, has emerged as one of the most actively investigated topics in information retrieval, natural language processing, and the artificial intelligence communities today. The flip side of such diverse and active interest is that publications are highly fragmented across several venues in the above communities, making it very difficult for new entrants to the field to get a good overview of the topic.Through this book, we make an attempt towards mitigating the above problem by providing an overview of the state-of-the-art in question answering. We cover the twin paradigms of curated Web sources used in QA tasks ‒ trusted text collections like Wikipedia, and objective information distilled into large-scale knowledge bases. We discuss distinct methodologies that have been applied to solve the QA problem in both these paradigms, using instantiations of recent systems for illustration. We begin with an overview of the problem setup and evaluation, cover notable sub-topics like open-domain, multi-hop, and conversational QA in depth, and conclude with key insights and emerging topics. We believe that this resource is a valuable contribution towards a unified view on QA, helping graduate students and researchers planning to work on this topic in the near future.* Preface* Acknowledgments* Introduction* Setup* Getting Started with Simple Questions* Complex Question Answering* Conversational Question Answering* Part I: Summary and Insights* Setup* Reading Comprehension* Open-Domain Question Answering* Multi-Hop Question Answering* Conversational Question Answering* Part II: Summary and Insights* Open Directions* References* Authors' Biographies
Beginning jOOQ
Learn to use the jOOQ library to manage SQL database operations in Java and JVM applications. This book walks you through what JOOQ is, how to install and get started with it, and then gets you working with it.Practical examples and case studies demonstrate how jOOQ offers a more efficient and versatile alternative to Object-Relational Mapping frameworks like Hibernate and JPA, while providing a natural, native-SQL feeling for the developer. You'll see how to maximize the full potential of your SQL database with advanced query syntax and functions with this lightweight, SQL-friendly framework. Come see how you can use high performance approaches like reactive, data streaming and cloud-native programming to get data from SQL tables.Never write another incorrect SQL statement again and protect your application from SQL injection with the strong typing and inbuilt controls in jOOQ. Learn how to add jOOQ to your existing Hibernate, Spring Boot or Quarkus applications.When you’ve completed this book, you will be able to take the knowledge you’ve gained, along with the freely available source code, and directly apply them to your own work.WHAT YOU WILL LEARN* Comparing equivalent features between Hibernate, JPA and jOOQ* Unlock the power of your SQL database with high performing, flexible and typesafe SQL queries* Seamlessly work with many different SQL database vendors without changing your code* Effortlessly generate Java code based on the content of your database* Write reactive SQL database access code with R2DBC* Integrating jOOQ into popular frameworks and platforms like Hibernate, Spring boot and Quarkus tools like IDEs* Testing jOOQ-based code with modern integration testing frameworks like TestContainers and Docker* Learn how to safely handle data access code within frameworks like the Java Persistence API (JPA)WHO THIS BOOK IS FORIntermediate Java programmers new to jOOQ. Some prior experience with SQL may be helpful but not required.Tayo Koleoso is the Founder and CEO of LettuceWork.io, the platform dedicated to engineering culture. He created the Better Managed Development method for building and sustaining an effective product engineering culture. He's a lifelong learner, engineer, and engineering leader committed to building people and software in a healthy, sustainable, and effective ecosystem. Outside of tech, comedy is the only thing he consumes in large quantity. King of the Hill, Peep Show and 30 Rock are his comfort telly, I tell you what.He got his start in software engineering as a teenage database programmer with Oracle 8i. The jOOQ platform is therefore a natural fit and a return to his roots: his love affair with SQL.1. Welcome to jOOQ – Gives the reader a high-level overview of the jOOQ platform, the goals, features and a comparison with alternatives.• Database Operations in Java – the good parts• Database Operations in Java – the...not-good parts• You have got to be jOOQing• jOOQ Feature Tour2. Getting Started with jOOQ – Provides a crash course in core features of jOOQ• Setup jOOQ• CRUD with jOOQ◦ Lazy◦ Reactive• Transactions• Configuration• Exception Handling• Logging• Packaging and deployment◦ Maven◦ Gradle3. Working with jOOQ – This gives a guided tour of implementing specific features with jOOQ• Data Type Handling• Generating Artifacts• Advanced Database Manipulation◦ Batch Processing▪ Batch Loading▪ Batch Inserts• Advanced Query Syntax Support• SQL Joins• Database Functions• Stored Procedures4. jOOQ integrations - This shows the reader how jOOQ can be combined with specific tools, libraries and platforms• Java Persistence API• Hibernate• Spring Framework• Spring Data JPA5. Testing jOOQ – This will show the user how to execute unit and integration tests in jOOQ
Computer Vision in the Infrared Spectrum
HUMAN VISUAL PERCEPTION IS LIMITED TO THE VISUAL-OPTICAL SPECTRUM. MACHINE VISION IS NOT. Cameras sensitive to the different infrared spectra can enhance the abilities of autonomous systems and visually perceive the environment in a holistic way. Relevant scene content can be made visible especially in situations, where sensors of other modalities face issues like a visual-optical camera that needs a source of illumination. As a consequence, not only human mistakes can be avoided by increasing the level of automation, but also machine-induced errors can be reduced that, for example, could make a self-driving car crash into a pedestrian under difficult illumination conditions. Furthermore, multi-spectral sensor systems with infrared imagery as one modality are a rich source of information and can provably increase the robustness of many autonomous systems. Applications that can benefit from utilizing infrared imagery range from robotics to automotive and from biometrics to surveillance. In this book, we provide a brief yet concise introduction to the current state-of-the-art of computer vision and machine learning in the infrared spectrum. Based on various popular computer vision tasks such as image enhancement, object detection, or object tracking, we first motivate each task starting from established literature in the visual-optical spectrum. Then, we discuss the differences between processing images and videos in the visual-optical spectrum and the various infrared spectra. An overview of the current literature is provided together with an outlook for each task. Furthermore, available and annotated public datasets and common evaluation methods and metrics are presented. In a separate chapter, popular applications that can greatly benefit from the use of infrared imagery as a data source are presented and discussed. Among them are automatic target recognition, video surveillance, or biometrics including face recognition. Finally, we conclude with recommendations for well-fitting sensor setups and data processing algorithms for certain computer vision tasks. We address this book to prospective researchers and engineers new to the field but also to anyone who wants to get introduced to the challenges and the approaches of computer vision using infrared images or videos. Readers will be able to start their work directly after reading the book supported by a highly comprehensive backlog of recent and relevant literature as well as related infrared datasets including existing evaluation frameworks. Together with consistently decreasing costs for infrared cameras, new fields of application appear and make computer vision in the infrared spectrum a great opportunity to face nowadays scientific and engineering challenges.* Introduction* Cross-Spectral Image Processing* Detection, Classification, and Tracking* Applications* Summary and Outlook* Bibliography* Authors' Biographies
Econometrics and Data Science
Get up to speed on the application of machine learning approaches in macroeconomic research. This book brings together economics and data science.Author Tshepo Chris Nokeri begins by introducing you to covariance analysis, correlation analysis, cross-validation, hyperparameter optimization, regression analysis, and residual analysis. In addition, he presents an approach to contend with multi-collinearity. He then debunks a time series model recognized as the additive model. He reveals a technique for binarizing an economic feature to perform classification analysis using logistic regression. He brings in the Hidden Markov Model, used to discover hidden patterns and growth in the world economy. The author demonstrates unsupervised machine learning techniques such as principal component analysis and cluster analysis. Key deep learning concepts and ways of structuring artificial neural networks are explored along with training them and assessing their performance. The Monte Carlo simulation technique is applied to stimulate the purchasing power of money in an economy. Lastly, the Structural Equation Model (SEM) is considered to integrate correlation analysis, factor analysis, multivariate analysis, causal analysis, and path analysis.After reading this book, you should be able to recognize the connection between econometrics and data science. You will know how to apply a machine learning approach to modeling complex economic problems and others beyond this book. You will know how to circumvent and enhance model performance, together with the practical implications of a machine learning approach in econometrics, and you will be able to deal with pressing economic problems.WHAT YOU WILL LEARN* Examine complex, multivariate, linear-causal structures through the path and structural analysis technique, including non-linearity and hidden states* Be familiar with practical applications of machine learning and deep learning in econometrics* Understand theoretical framework and hypothesis development, and techniques for selecting appropriate models* Develop, test, validate, and improve key supervised (i.e., regression and classification) and unsupervised (i.e., dimension reduction and cluster analysis) machine learning models, alongside neural networks, Markov, and SEM models* Represent and interpret data and modelsWHO THIS BOOK IS FORBeginning and intermediate data scientists, economists, machine learning engineers, statisticians, and business executivesTSHEPO CHRIS NOKERI harnesses big data, advanced analytics, and artificial intelligence to foster innovation and optimize business performance. In his functional work, he has delivered complex solutions to companies in the mining, petroleum, and manufacturing industries. He initially completed a bachelor’s degree in information management. He then graduated with an honors degree in business science at the University of the Witwatersrand on a TATA Prestigious Scholarship and a Wits Postgraduate Merit Award. He was unanimously awarded the Oxford University Press Prize. He has authored two Apress books: Data Science Revealed: With Feature Engineering, Data Visualization, Pipeline Development, and Hyperparameter Tuning, and Implementing Machine Learning for Finance: A Systematic Approach to Predictive Risk and Performance Analysis for Investment Portfolios. Chapter 1 Introduction to Econometrics.- Chapter 2 Univariate Consumption Study Applying Regression.- Chapter 3 Multivariate Consumption Study Applying Regression.- Chapter 4 Forecasting Growth.- Chapter 5 Classifying Economic Data Applying Logistic Regression.- Chapter 6 Finding Hidden Patterns in World Economy and Growth.- Chapter 7 Clustering GNI Per Capita on a Continental Level.- Chapter 8 Solving Economic Problems Applying Artificial Neural Networks.- Chapter 9 Inflation Simulation.- Chapter 10 Economic Causal Analysis Applying Structural Equation Modelling.
PHP 8 Solutions
Make your websites more dynamic by adding a feedback form, creating a private area where members can upload images that are automatically resized, or storing all your content in a database. DAVID POWERS has updated his definitive book to incorporate the latest techniques and changes to PHP with the arrival of PHP 8. New features include named attributes, constructor property promotion, the stricter and more concise match expression, union types, and more.The problem is, you're not a programmer and the thought of writing code sends a chill up your spine. Or maybe you've dabbled a bit in PHP and MySQL, but you can't get past baby steps. If this describes you, then you've just found the right book. PHP powers four out of every five websites that use a server-side language. In combination with the MySQL database it’s ideal for creating dynamic websites. PHP and MySQL are free, easy to use, and provided by many web hosting companies in their standard packages. This book also covers MariaDB, a seamless replacement for MySQL that has been adopted on many web servers.Unfortunately, most PHP books either expect you to be an expert already or force you to go through endless exercises of little practical value. In contrast, this book gives you real value right away through a series of practical examples that you can incorporate directly into your sites, optimizing performance and adding functionality such as file uploading, email feedback forms, image galleries, content management systems, and much more. Each solution is created with not only functionality in mind, but also visual design.But this book doesn't just provide a collection of ready-made scripts: each PHP solution builds on what's gone before, teaching you the basics of PHP and database design quickly and painlessly. You’ll learn how to optimize your code using object-oriented programming (OOP) techniques. By the end of the book, you'll have the confidence to start writing your own scripts or—if you prefer to leave that task to others—to adapt existing scripts to your own requirements. Right from the start, you're shown how easy it is to protect your sites by adopting secure coding practices.WHAT YOU WILL LEARN* Design and build dynamic PHP-based web sites and applications * Get started right away through practical examples that you can reuse* Incorporate PHP 8 elements including named attributes, constructor property promotion, and union types* Understand the subtle, but important differences between switch and match* Work with the latest PHP 8 techniques, innovations, and best practicesWHO THIS BOOK IS FORReaders should ideally have some prior exposure to web development using PHP.DAVID POWERS is the author of more than 30 highly successful video training courses and books on PHP. He began his professional career as a radio and TV journalist for the BBC, spending a large part of it in Japan reporting on the rise and collapse of the bubble economy. His background of reporting on complex issues in plain, jargon-free language reveals itself in his writing about PHP and web development.David first became involved with web development in the early 1990s as Editor of BBC Japanese TV. With no marketing budget, he developed a bilingual web site to promote the channel. After leaving the BBC, he went on to develop a bilingual online database for an international consultancy, as well as teaching web development courses at two universities in the UK. In addition to writing and creating video training courses, he’s a Trustee of a charity in North London that provides educational facilities for retired people and those no longer in full-time employment.1. What is PHP 8?2. Getting Ready to Work with PHP3. How to Write PHP Scripts—The Basics4. PHP 8: A Quick Reference5. Lightening Your Workload with Includes6. Bringing Forms to Life7. Uploading Files8. Using PHP to Manage Files9. Arrays9. Generating Thumbnail Images10. Pages that Remember: Simple Login and Multipage Forms11. Getting Started with a Database12. Connecting to a Database with PHP and SQL13. Creating a Dynamic Photo Gallery14. Managing Content15. Formatting Text and Dates16. Pulling Data from Multiple Tables17. Managing Multiple Database Tables18. Authenticating Users with a Database
Data Science Solutions with Python
Apply supervised and unsupervised learning to solve practical and real-world big data problems. This book teaches you how to engineer features, optimize hyperparameters, train and test models, develop pipelines, and automate the machine learning (ML) process.The book covers an in-memory, distributed cluster computing framework known as PySpark, machine learning framework platforms known as scikit-learn, PySpark MLlib, H2O, and XGBoost, and a deep learning (DL) framework known as Keras.The book starts off presenting supervised and unsupervised ML and DL models, and then it examines big data frameworks along with ML and DL frameworks. Author Tshepo Chris Nokeri considers a parametric model known as the Generalized Linear Model and a survival regression model known as the Cox Proportional Hazards model along with Accelerated Failure Time (AFT). Also presented is a binary classification model (logistic regression) and an ensemble model (Gradient Boosted Trees). The book introduces DL and an artificial neural network known as the Multilayer Perceptron (MLP) classifier. A way of performing cluster analysis using the K-Means model is covered. Dimension reduction techniques such as Principal Components Analysis and Linear Discriminant Analysis are explored. And automated machine learning is unpacked.This book is for intermediate-level data scientists and machine learning engineers who want to learn how to apply key big data frameworks and ML and DL frameworks. You will need prior knowledge of the basics of statistics, Python programming, probability theories, and predictive analytics.WHAT YOU WILL LEARN* Understand widespread supervised and unsupervised learning, including key dimension reduction techniques* Know the big data analytics layers such as data visualization, advanced statistics, predictive analytics, machine learning, and deep learning* Integrate big data frameworks with a hybrid of machine learning frameworks and deep learning frameworks* Design, build, test, and validate skilled machine models and deep learning models* Optimize model performance using data transformation, regularization, outlier remedying, hyperparameter optimization, and data split ratio alterationWHO THIS BOOK IS FORData scientists and machine learning engineers with basic knowledge and understanding of Python programming, probability theories, and predictive analyticsTSHEPO CHRIS NOKERI harnesses advanced analytics and artificial intelligence to foster innovation and optimize business performance. In his functional work, he has delivered complex solutions to companies in the mining, petroleum, and manufacturing industries. He initially completed a bachelor’s degree in information management. Afterward, he graduated with an Honours degree in business science at the University of the Witwatersrand on a TATA Prestigious Scholarship and a Wits Postgraduate Merit Award. They unanimously awarded him the Oxford University Press Prize.Chapter 1: Understanding Machine Learning and Deep Learning.- Chapter 2: Big Data Frameworks and ML and DL Frameworks.- Chapter 3: The Parametric Method – Linear Regression.- Chapter 4: Survival Regression Analysis.-Chapter 5:The Non-Parametric Method - Classification.- Chapter 6:Tree-based Modelling and Gradient Boosting.- Chapter 7: Artificial Neural Networks.- Chapter 8: Cluster Analysis using K-Means.- Chapter 9: Dimension Reduction – Principal Components Analysis.- Chapter 10: Automated Machine Learning.
Game Development with MonoGame
Create a polished game that includes many levels and fights using MonoGame. This book will show you how to add AI agents and 2D physics into your game, while improving the performance of the game engine. By the end of Game Development with MonoGame, you will have created a game worthy of being published.Over the course of this book, you will be exposed to advanced game development concepts such as scripting and AI as you improve the performance of the game engine with better memory management. You will learn how to create a level editor that you will use to build game levels. You will also pick up tips and tricks for adding polish to your game project by adding a camera system, layers, menus, and improving the game’s graphics using pixel shaders and better particle effects.Upon completing this book, you will have a clear understanding of the steps required to build a game from start to finish and what it takes to create a 2D game that could ultimately be published.WHAT YOU WILL LEARN* Write a performant 2D game engine* Script the behavior of game objects* Build and use a level editor for your game* Add a UI to your gameWHO IS THIS BOOK FORIntermediate to advanced C# developers with knowledge of MonoGame. Basic knowledge of how to install and use the 2D capabilities of MonoGame is required, along with knowledge on how to use the content pipeline tool.Louis Salin has been a developer for more than 15 years in a wide variety of fields, developing on Windows in the early days in C, C++, and eventually C#. He’s also worked as a developer on Linux-based web applications using different scripting languages such as Ruby and Python. His early love for coding comes from all the time he spent as a kid copying video games written in Basic from books borrowed from the library. He wrote his first game in high school and took many classes in computer graphics.Rami Morrar is a self-taught Game Developer with several years of development experience under his belt. Morrar spent his days as a young kid hacking his Nintendo Consoles with homebrew software. In his early adult years, he has delved into languages mostly found in the family of C Programming, such as C# and C++. He is a freelance technical writer who reviews games and writes tutorials on MonoGame. He is currently working on his own independent project in the framework as well.CHAPTER 1: PERFORMANCE IMPROVEMENTSSub -Topics• Memory management and Game Object pools• Avoiding stutter and frame rates deep diveCHAPTER 2: EXTENDING THE CONTENT PIPELINE TOOLSub – Topics• Adding our level definitions to the content pipeline tool• Adding animations to the content pipeline tool• Text translationsCHAPTER 3: IMPROVING GRAPHICS QUALITYSub - Topics:• Pixel shaders• Adding a camera to the game• Layering our game objectsCHAPTER 4: LEVEL EDITORSub - Topics:• Creating a level editor• Importing levels into the game• Adding boss levels• Making game levels flow seamlesslyCHAPTER 5: SCRIPTINGSub - Topics:• What is scripting and why is it useful?• What programming language to use for scripting?• Defining game object behavior outside of the code baseCHAPTER 6: AISub - Topics:• AI techniques in video games• Algorithms• Smart boss fightsCHAPTER 7: MENUS AND OVERLAYSSub - Topics:• Using overlays in the game to display menus• Pausing the game• Add gamepad supportCHAPTER 8: IMPROVING THE GAME WITH CURVESSub - Topics:• Morphing particles as they age• Curves and tweens• Aging particles in a non-linear way, along a curve• Adding non-linear acceleration/deceleration to game objectsCHAPTER 9: TYING IT ALL TOGETHERSub-Topics:• What we’ve done so far• Getting help• Collaborating with artists, composers, and level designers• Packaging the game
Artificial Intelligence For Dummies
FORGET FAR-AWAY DREAMS OF THE FUTURE. ARTIFICIAL INTELLIGENCE IS HERE NOW!Every time you use a smart device or some sort of slick technology—be it a smartwatch, smart speaker, security alarm, or even customer service chat box—you’re engaging with artificial intelligence (AI). If you’re curious about how AI is developed—or question whether AI is real—Artificial Intelligence For Dummies holds the answers you’re looking for. Starting with a basic definition of AI and explanations of data use, algorithms, special hardware, and more, this reference simplifies this complex topic for anyone who wants to understand what operates the devices we can’t live without.This book will help you:* Separate the reality of artificial intelligence from the hype * Know what artificial intelligence can accomplish and what its limits are * Understand how AI speeds up data gathering and analysis to help you make informed decisions more quickly * See how AI is being used in hardware applications like drones, robots, and vehicles * Know where AI could be used in space, medicine, and communication fields sooner than you think Almost 80 percent of the devices you interact with every day depend on some sort of AI. And although you don’t need to understand AI to operate your smart speaker or interact with a bot, you’ll feel a little smarter—dare we say more intelligent—when you know what’s going on behind the scenes. So don’t wait. Pick up this popular guide to unlock the secrets of AI today!JOHN MUELLER has produced hundreds of books and articles on topics ranging from networking to home security and from database management to heads-down programming. If he had a nickel for every time he is asked the question, “Is the terminator real?” (No!), he could have retired years ago.LUCA MASSARON is a data scientist who specializes in organizing and interpreting big data and turning it into smart data. He has over 20 years??? experience delivering data solutions to clients in a variety of industries. Introduction 1About This Book 2Icons Used in This Book 3Beyond the Book 4Where to Go from Here 5PART 1: INTRODUCING AI 7CHAPTER 1: INTRODUCING AI 9Defining the Term AI 10Discerning intelligence 10Discovering four ways to define AI 11Understanding the History of AI 17Starting with symbolic logic at Dartmouth 17Continuing with expert systems 18Overcoming the AI winters 19Considering AI Uses 20Avoiding AI Hype and Overestimation 21Defining the five tribes and the master algorithm 21Considering sources of hype 22Understanding user overestimation 23Connecting AI to the Underlying Computer 23CHAPTER 2: DEFINING THE ROLE OF DATA 25Finding Data Ubiquitous in This Age 26Understanding Moore’s implications 27Using data everywhere 28Putting algorithms into action 30Using Data Successfully 32Considering the data sources 32Obtaining reliable data 33Making human input more reliable 33Using automated data collection 35Collecting personal data ethically 35Manicuring the Data 37Dealing with missing data 37Considering data misalignments 38Separating useful data from other data 39Considering the Five Mistruths in Data 39Commission 40Omission 40Perspective 41Bias 42Frame of reference 43Defining the Limits of Data Acquisition 43Considering Data Security Issues 45Understanding purposefully biased data 45Dealing with data-source corruption 47Cancelling botnets with sinkholing 48CHAPTER 3: CONSIDERING THE USE OF ALGORITHMS 49Understanding the Role of Algorithms 50Understanding what algorithm means 50Planning and branching: Trees and nodes 52Extending the tree using graph nodes 53Traversing the graph 54Playing adversarial games 56Using local search and heuristics 57Discovering the Learning Machine 60Leveraging expert systems 61Introducing machine learning 64Touching new heights 64CHAPTER 4: PIONEERING SPECIALIZED HARDWARE 67Relying on Standard Hardware 68Understanding the standard hardware 68Describing standard hardware deficiencies 69Relying on new computational techniques 71Using GPUs 73Considering the von Neumann bottleneck 73Defining the GPU 74Considering why GPUs work well 75Working with Deep Learning Processors (DLPs) 76Defining the DLP 76Using the mobile Neural Processing Unit (NPU) 77Accessing the cloud-based Tenser Processing Unit (TPU) 78Creating a Specialized Processing Environment 78Increasing Hardware Capabilities 79Adding Specialized Sensors 80Devising Methods to Interact with the Environment 81PART 2: CONSIDERING THE USES OF AI IN SOCIETY 83CHAPTER 5: SEEING AI USES IN COMPUTER APPLICATIONS 85Introducing Common Application Types 86Using AI in typical applications 86Realizing AI’s wide range of fields 88Considering the Chinese Room argument 88Seeing How AI Makes Applications Friendlier 89Performing Corrections Automatically 91Considering the kinds of corrections 91Seeing the benefits of automatic corrections 92Understanding why automated corrections don’t work 92Making Suggestions 93Getting suggestions based on past actions 93Getting suggestions based on groups 93Obtaining the wrong suggestions 94Considering AI-based Errors 95CHAPTER 6: AUTOMATING COMMON PROCESSES 97Developing Solutions for Boredom 98Making tasks more interesting 98Helping humans work more efficiently 99Understanding how AI reduces boredom 100Considering how AI can’t reduce boredom 101Working in Industrial Settings 101Developing various levels of automation 102Using more than just robots 103Relying on automation alone 104Creating a Safe Environment 104Considering the role of boredom in accidents 104Using AI to avoid safety issues 105Understanding that AI can’t eliminate safety issues 105CHAPTER 7: USING AI TO ADDRESS MEDICAL NEEDS 107Implementing Portable Patient Monitoring 108Wearing helpful monitors 109Relying on critical wearable monitors 109Using movable monitors 110Making Humans More Capable 111Using games for therapy 111Considering the use of exoskeletons 113Addressing a Range of Physical Abilities 114Considering the software-based solutions 115Relying on hardware augmentation 116Seeing AI in prosthetics 116Completing Analysis in New Ways 117Relying on Telepresence 118Defining telepresence 118Considering examples of telepresence 118Understanding telepresence limitations 119Devising New Surgical Techniques 120Making surgical suggestions 120Assisting a surgeon 121Replacing the surgeon with monitoring 122Performing Tasks Using Automation 122Working with medical records 123Predicting the future 123Making procedures safer 124Creating better medications 124Combining Robots and Medical Professionals 125CHAPTER 8: RELYING ON AI TO IMPROVE HUMAN INTERACTION 127Developing New Ways to Communicate 128Creating new alphabets 129Working with emoji and other meaningful graphics 129Automating language translation 130Incorporating body language .131Exchanging Ideas 133Creating connections 133Augmenting communication 133Defining trends 134Using Multimedia 134Embellishing Human Sensory Perception 135Shifting data spectrum 135Augmenting human senses 136PART 3: WORKING WITH SOFTWARE-BASED AI APPLICATIONS 139CHAPTER 9: PERFORMING DATA ANALYSIS FOR AI 141Defining Data Analysis 142Understanding why analysis is important 144Reconsidering the value of data 145Defining Machine Learning 147Understanding how machine learning works 148Understanding the benefits of machine learning 149Being useful; being mundane 150Specifying the limits of machine learning 150Considering How to Learn from Data 152Supervised learning 153Unsupervised learning 154Reinforcement learning 154CHAPTER 10: EMPLOYING MACHINE LEARNING IN AI 155Taking Many Different Roads to Learning 156Discovering five main approaches to AI learning 156Delving into the three most promising AI learning approaches 159Awaiting the next breakthrough 160Exploring the Truth in Probabilities 160Determining what probabilities can do 162Considering prior knowledge 163Envisioning the world as a graph 166Growing Trees that Can Classify 170Predicting outcomes by splitting data 170Making decisions based on trees 172Pruning overgrown trees 174CHAPTER 11: IMPROVING AI WITH DEEP LEARNING 175Shaping Neural Networks Similar to the Human Brain 176Introducing the neuron 176Starting with the miraculous perceptron 176Mimicking the Learning Brain 179Considering simple neural networks 179Figuring out the secret is in the weights 180Understanding the role of backpropagation 182Introducing Deep Learning 182Explaining the differences between deep learning and other forms of neural networks 185Finding even smarter solutions 186Detecting Edges and Shapes from Images 188Starting with character recognition 189Explaining how convolutions work 190Advancing using image challenges 191Learning to Imitate Art and Life .193Memorizing sequences that matter 193Discovering the magic of AI conversations 194Going for the state of the pretrained art 196Making one AI compete against another AI 198Pondering reinforcement learning 201PART 4: WORKING WITH AI IN HARDWARE APPLICATIONS 207CHAPTER 12: DEVELOPING ROBOTS 209Defining Robot Roles 210Overcoming the sci-fi view of robots 211Being humanoid can be hard 214Working with robots 217Assembling a Basic Robot 220Considering the components 220Sensing the world 221Controlling a robot 222CHAPTER 13: FLYING WITH DRONES 223Acknowledging the State of the Art 224Flying unmanned to missions 224Meeting the quadcopter 226Defining Uses for Drones 227Seeing drones in nonmilitary roles 229Powering up drones using AI 233Understanding regulatory issues 234CHAPTER 14: UTILIZING THE AI-DRIVEN CAR 237Getting a Short History 238Understanding the Future of Mobility 239Climbing the six levels of autonomy 239Rethinking the role of cars in our lives 241Taking a step back from unmet expectations 244Getting into a Self-Driving Car 246Putting all the tech together 247Letting AI into the scene 249Understanding that it’s not just AI 249Overcoming Uncertainty of Perceptions 251Introducing the car’s senses 252Putting together what you perceive 254PART 5: CONSIDERING THE FUTURE OF AI 257CHAPTER 15: UNDERSTANDING THE NONSTARTER APPLICATION 259Using AI Where It Won’t Work 260Defining the limits of AI 260Applying AI incorrectly 263Entering a world of unrealistic expectations 264Considering the Effects of AI Winters 265Understanding the AI winter 265Defining the causes of the AI winter 265Rebuilding expectations with new goals 267Creating Solutions in Search of a Problem 269Defining a gizmo 269Avoiding the infomercial 270Understanding when humans do it better 271Looking for the simple solution 272CHAPTER 16: SEEING AI IN SPACE 273Observing the Universe 274Seeing clearly for the first time 274Finding new places to go 275Considering the evolution of the universe 276Creating new scientific principles 276Performing Space Mining 277Harvesting water 277Obtaining rare earths and other metals 278Finding new elements 279Enhancing communication 280Exploring New Places 280Starting with the probe 281Relying on robotic missions 282Adding the human element 283Building Structures in Space 284Taking your first space vacation 285Performing scientific investigation 285Industrializing space 286Using space for storage 286CHAPTER 17: ENGAGING IN HUMAN ENDEAVORS 287Keeping Human Beings Popular 288Living and Working in Space 289Creating Cities in Hostile Environments 290Building cities in the ocean 290Creating space-based habitats 291Constructing moon-based resources 293Making Humans More Efficient 294Fixing Problems on a Planetary Scale 296Contemplating how the world works 296Locating potential sources of problems 297Defining potential solutions 298Seeing the effects of the solutions 299Trying again 299PART 6: THE PART OF TENS 301CHAPTER 18: TEN OCCUPATIONAL CATEGORIES THAT AI CAN’T REPLACE 303Performing Human Interaction 304Teaching children 304Nursing 304Addressing personal needs 305Solving developmental issues 305Creating New Things 306Inventing 306Being artistic 307Imagining the unreal 307Making Intuitive Decisions 308Investigating crime 308Monitoring situations in real time 308Separating fact from fiction 309CHAPTER 19: TEN SUBSTANTIAL CONTRIBUTIONS OF AI TO SOCIETY 311Considering Human-Specific Interactions 312Devising the active human foot 312Performing constant monitoring 313Administering medications 313Developing Industrial Solutions 314Using AI with 3-D printing 314Advancing robot technologies 314Creating New Technology Environments 315Developing rare new resources 315Seeing what can’t be seen 316Working with AI in Space 316Delivering goods to space stations 316Mining extraplanetary resources 317Exploring other planets 318CHAPTER 20: TEN WAYS IN WHICH AI HAS FAILED 319Understanding 320Interpreting, not analyzing 321Going beyond pure numbers 321Considering consequences 322Discovering 322Devising new data from old 323Seeing beyond the patterns 323Implementing new senses 324Empathizing 324Walking in someone’s shoes 325Developing true relationships 325Changing perspective 326Making leaps of faith 326Index 327
Trust in Computer Systems and the Cloud
LEARN TO ANALYZE AND MEASURE RISK BY EXPLORING THE NATURE OF TRUST AND ITS APPLICATION TO CYBERSECURITYTrust in Computer Systems and the Cloud delivers an insightful and practical new take on what it means to trust in the context of computer and network security and the impact on the emerging field of Confidential Computing. Author Mike Bursell’s experience, ranging from Chief Security Architect at Red Hat to CEO at a Confidential Computing start-up grounds the reader in fundamental concepts of trust and related ideas before discussing the more sophisticated applications of these concepts to various areas in computing.The book demonstrates in the importance of understanding and quantifying risk and draws on the social and computer sciences to explain hardware and software security, complex systems, and open source communities. It takes a detailed look at the impact of Confidential Computing on security, trust and risk and also describes the emerging concept of trust domains, which provide an alternative to standard layered security.* Foundational definitions of trust from sociology and other social sciences, how they evolved, and what modern concepts of trust mean to computer professionals * A comprehensive examination of the importance of systems, from open-source communities to HSMs, TPMs, and Confidential Computing with TEEs. * A thorough exploration of trust domains, including explorations of communities of practice, the centralization of control and policies, and monitoring Perfect for security architects at the CISSP level or higher, Trust in Computer Systems and the Cloud is also an indispensable addition to the libraries of system architects, security system engineers, and master’s students in software architecture and security.MIKE BURSELL is CEO and co-founder of Profian, a Confidential Computing company. He holds multiple security patents, is a sought-after speaker at global technology conferences, and has contributed to major reports and security specifications for the European Telecommunications Standards Institute.Introduction xvCHAPTER 1 WHY TRUST? 1Analysing Our Trust Statements 4What Is Trust? 5What Is Agency? 8Trust and Security 10Trust as a Way for Humans to Manage Risk 13Risk, Trust, and Computing 15Defining Trust in Systems 15Defining Correctness in System Behaviour 17CHAPTER 2 HUMANS AND TRUST 19The Role of Monitoring and Reporting in Creating Trust 21Game Theory 24The Prisoner’s Dilemma 24Reputation and Generalised Trust 27Institutional Trust 28Theories of Institutional Trust 29Who Is Actually Being Trusted? 31Trust Based on Authority 33Trusting Individuals 37Trusting Ourselves 37Trusting Others 41Trust, But Verify 43Attacks from Within 43The Dangers of Anthropomorphism 45Identifying the Real Trustee 47CHAPTER 3 TRUST OPERATIONS AND ALTERNATIVES 53Trust Actors, Operations, and Components 53Reputation, Transitive Trust, and Distributed Trust 59Agency and Intentionality 62Alternatives to Trust 65Legal Contracts 65Enforcement 66Verification 67Assurance and Accountability 67Trust of Non-Human or Non-Adult Actors 68Expressions of Trust 69Relating Trust and Security 75Misplaced Trust 75CHAPTER 4 DEFINING TRUST IN COMPUTING 79A Survey of Trust Definitions in Computer Systems 79Other Definitions of Trust within Computing 84Applying Socio-Philosophical Definitions of Trust to Systems 86Mathematics and Trust 87Mathematics and Cryptography 87Mathematics and Formal Verification 89CHAPTER 5 THE IMPORTANCE OF SYSTEMS 93System Design 93The Network Stack 94Linux Layers 96Virtualisation and Containers: Cloud Stacks 97Other Axes of System Design 99“Trusted” Systems 99Trust Within the Network Stack 101Trust in Linux Layers 102Trust in Cloud Stacks 103Hardware Root of Trust 106Cryptographic Hash Functions 110Measured Boot and Trusted Boot 112Certificate Authorities 114Internet Certificate Authorities 115Local Certificate Authorities 116Root Certificates as Trust Pivots 119The Temptations of “Zero Trust” 122The Importance of Systems 125Isolation 125Contexts 127Worked Example: Purchasing Whisky 128Actors, Organisations, and Systems 129Stepping Through the Transaction 130Attacks and Vulnerabilities 134Trust Relationships and Agency 136Agency 136Trust Relationships 137The Importance of Being Explicit 145Explicit Actions 145Explicit Actors 149CHAPTER 6 BLOCKCHAIN AND TRUST 151Bitcoin and Other Blockchains 151Permissioned Blockchains 152Trust without Blockchains 153Blockchain Promoting Trust 154Permissionless Blockchains and Cryptocurrencies 156CHAPTER 7 THE IMPORTANCE OF TIME 161Decay of Trust 161Decay of Trust and Lifecycle 163Software Lifecycle 168Trust Anchors, Trust Pivots, and the Supply Chain 169Types of Trust Anchors 170Monitoring and Time 171Attestation 173The Problem of Measurement 174The Problem of Run Time 176Trusted Computing Base 177Component Choice and Trust 178Reputation Systems and Trust 181CHAPTER 8 SYSTEMS AND TRUST 185System Components 185Explicit Behaviour 188Defining Explicit Trust 189Dangers of Automated Trust Relationships 192Time and Systems 194Defining System Boundaries 198Trust and a Complex System 199Isolation and Virtualisation 202The Stack and Time 205Beyond Virtual Machines 205Hardware-BasedType 3 Isolation 207CHAPTER 9 OPEN SOURCE AND TRUST 211Distributed Trust 211How Open Source Relates to Trust 214Community and Projects 215Projects and the Personal 217Open Source Process 219Trusting the Project 220Trusting the Software 222CONTENTS XIIIXIV CONTENTSSupply Chain and Products 226Open Source and Security 229CHAPTER 10 TRUST, THE CLOUD, AND THE EDGE 233Deployment Model Differences 235What Host Systems Offer 237What Tenants Need 237Mutually Adversarial Computing 240Mitigations and Their Efficacy 243Commercial Mitigations 243Architectural Mitigations 244Technical Mitigations 246CHAPTER 11 HARDWARE, TRUST, AND CONFIDENTIAL COMPUTING 247Properties of Hardware and Trust 248Isolation 248Roots of Trust 249Physical Compromise 253Confidential Computing 256TEE TCBs in detail 261Trust Relationships and TEEs 266How Execution Can Go Wrong—and Mitigations 269Minimum Numbers of Trustees 276Explicit Trust Models for TEE Deployments 278CHAPTER 12 TRUST DOMAINS 281The Composition of Trust Domains 284Trust Domains in a Bank 284Trust Domains in a Distributed Architecture 288Trust Domain Primitives and Boundaries 292Trust Domain Primitives 292Trust Domains and Policy 293Other Trust Domain Primitives 296Boundaries 297Centralisation of Control and Policies 298CHAPTER 13 A WORLD OF EXPLICIT TRUST 301Tools for Trust 301The Role of the Architect 303Architecting the System 304The Architect and the Trustee 305Coda 307References 309Index 321