Allgemein
Educational System in a Globalized World
Educational System in a Globalize World is a book that will help individual situates themselves to earn income at home in teaching online. Also, taking classes online this book is your tools on how to guide yourself in taking classes online.
GraphQL
API-Design mit GraphQL für Um- und Einsteiger- Einführung in GraphQL und die GraphQL-Spezifikation- Beispielimplementierungen in Java und JavaScript- Vorteile und Unterschiede zu REST und anderen API-DesignsIn Anwendungen, bei denen es auf komplexe aber dennoch schlanke Datenabfragen ankommt, spielt GraphQL seine Vorteile aus. Dominik Kress gibt Ihnen dafür das nötige Wissen rund um API-Design und die GraphQL-spezifischen Datenmodelle an die Hand.Entwickler*innen, die bereits Erfahrungen mit APIs und beispielsweise REST gesammelt haben, können ihr Wissen auffrischen und dann direkt mit den Details von GraphQL starten.Zwei Praxisprojekte – eins in JavaScript und eins in Java – zeigen, wie Entwickler*innen mit den Besonderheiten von GraphQL umgehen können und wie ein Datenschema und die GraphQL-Spezifikation in der Praxis umgesetzt werden. Der Code der Projekte liegt auf GitHub zum Download bereit und lässt sich als idealen Ausgangspunkt für die ersten eigenen GraphQLProjekte nutzen. Dominik Kress ist Software Engineer mit Heimat im E-Commerce. In seiner langjährigen Arbeit bei der größten Retail-Gruppe Europas hilft er bei der Modernisierung der internationalen Onlineshop-Systeme. Bei der Transformation von einem klassischen On-Premise-Monolithen zu einer Cloud-basierten Self-Contained-Systems-Architektur entwickelte und vertiefte sich seine Liebe zum Thema APIs. Sowohl im Umfeld seiner Arbeit als auch in privaten Projekten probiert er sich leidenschaftlich gerne an neuen Technologien, Spezifikationen und Methodiken. Daher ist für ihn der Austausch von Wissen und Erfahrungen auf Veranstaltungen und Konferenzen, die er auch gerne selbst nebenbei organisiert, besonders wichtig.
Machine Learning in the Oil and Gas Industry
Apply machine and deep learning to solve some of the challenges in the oil and gas industry. The book begins with a brief discussion of the oil and gas exploration and production life cycle in the context of data flow through the different stages of industry operations. This leads to a survey of some interesting problems, which are good candidates for applying machine and deep learning approaches. The initial chapters provide a primer on the Python programming language used for implementing the algorithms; this is followed by an overview of supervised and unsupervised machine learning concepts. The authors provide industry examples using open source data sets along with practical explanations of the algorithms, without diving too deep into the theoretical aspects of the algorithms employed. Machine Learning in the Oil and Gas Industry covers problems encompassing diverse industry topics, including geophysics (seismic interpretation), geological modeling, reservoir engineering, and production engineering.Throughout the book, the emphasis is on providing a practical approach with step-by-step explanations and code examples for implementing machine and deep learning algorithms for solving real-life problems in the oil and gas industry.WHAT YOU WILL LEARN* Understanding the end-to-end industry life cycle and flow of data in the industrial operations of the oil and gas industry* Get the basic concepts of computer programming and machine and deep learning required for implementing the algorithms used* Study interesting industry problems that are good candidates for being solved by machine and deep learning* Discover the practical considerations and challenges for executing machine and deep learning projects in the oil and gas industryWHO THIS BOOK IS FORProfessionals in the oil and gas industry who can benefit from a practical understanding of the machine and deep learning approach to solving real-life problems.Yogendra Pandey is a senior product manager at Oracle Cloud Infrastructure. He has more than 14 years of experience in orchestrating intelligent systems for the oil and gas, utilities, and chemical industries. He has worked in different capacities with oil and gas, and utilities companies, including Halliburton, ExxonMobil, and ADNOC. Yogendra holds a bachelor’s degree in chemical engineering from the Indian Institute of Technology (BHU), and a PhD from the University of Houston, with specialization in high-performance computing applications to complex engineering problems. He served as an executive editor for the Journal of Natural Gas Science and Engineering. Also, he has authored/co-authored more than 25 peer-reviewed journal articles, conference publications, and patent applications. He is a member of the Society of Petroleum Engineers.Ayush Rastogi is a data scientist at BPX Energy, Denver CO. His research interests are based on multi-phase fluid flow modeling and integrating physics-based and data-driven algorithms to develop robust predictive models. He has published his work in the field of machine learning and data-driven predictive modeling in the oil and gas industry. He has previously worked with Liberty Oilfield Services in the technology team in Denver, prior to which he worked as a field engineer in TX, ND, and CO as a part of his internship. He also has experience working as a petroleum engineering consultant in Houston, TX. Ayush holds a PhD in petroleum engineering with a minor in computer science from Colorado School of Mines, and is an active member of the Society of Petroleum Engineers.Sribharath Kainkaryam leads a team of data scientists and data engineers at TGS. Prior to joining TGS in 2018, he was a research scientist working on imaging and velocity model building challenges at Schlumberger. He graduated with a masters in computational geophysics from Purdue University and has an undergraduate degree from the Indian Institute of Technology, Kharagpur.Srimoyee Bhattacharya is a reservoir engineer in the Permian asset team in the Shell Exploration and Production Company. She has over 11 years of combined academic and professional experience in the oil and gas industry. She has worked in reservoir modeling, enhanced oil recovery, history matching, fracture design, production optimization, proxy modelling, and applications of multivariate analysis methods. She also worked with Halliburton as a research intern on digitalization of oil fields and field-wide data analysis using statistical methods. Srimoyee holds a PhD in chemical engineering from the University of Houston, and a bachelor’s degree from the Indian Institute of Technology, Kharagpur. She has served as a technical reviewer for the SPE Journal, Journal of Natural Gas Science and Engineering, and Journal of Sustainable Energy Engineering. She has authored/co-authored more than 25 peer-reviewed journal articles, conference publications, technical reports, and patent application.Luigi Saputelli is a reservoir management expert advisor to ADNOC and Frontender Corporation with over 28 years of experience. He worked in various operators and services companies around the world including PDVSA, Hess, and Halliburton. He is a founding member of the Real-time Optimization TIG and Petroleum Data-driven Analytics technical section of the Society of Petroleum Engineers, and recipient of the 2015 Society of Petroleum Engineers international production and operations award. He also received the 2007 employee of the year award from Halliburton. He has published more than 90 industry papers on applied technologies related to reservoir management, real-time optimization, and production operations. Saputelli is an electronic engineer with a masters in petroleum engineering, and a PhD in chemical engineering. He also serves as managing partner in Frontender Corporation, a petroleum engineering services firm based in Houston.MACHINE LEARNING IN THE OIL AND GAS INDUSTRY WITH PYTHONChapter 1: Towards Oil and Gas 4.0Chapter Goal: This chapter provides an overview of the digital transformation state-of-the-art in the Oil & Gas industry. The overview includes a literature review of the publications from the academic and industrial institutions, available in the public domain. It follows a theme of end-to-end Oil & Gas exploration and production project lifecycle.CHAPTER 2: PYTHON PROGRAMMING PRIMERChapter Goal: This chapter provides a brief primer of the Python programming language. The idea is to make the user familiar with the basic syntax on Python programming language. This chapter also briefly touches on the numpy, pandas, and a selected visualization (to be selected from matplotlib/seaborn/bokeh) library.CHAPTER 3: OVERVIEW OF MACHINE AND DEEP LEARNING CONCEPTSChapter Goal: This chapter introduces supervised and unsupervised machine learning concepts with the code examples using simplistic and clean data sets. The aim is to provide readers with understanding of practical concepts of different machine and deep learning algorithms, along with simple coding examples. Scikit-learn and Keras will be used for machine and deep learning code samples respectively.CHAPTER 4: GEOPHYSICS AND SEISMIC DATA PROCESSINGChapter Goal: This chapter will focus on using seismic data available from open data sources, e.g., Equinor Volve project, to provide two example applications for seismic data interpolation, and fault identification. Further, it will also discuss other problems, such as, horizon identification, and salt dome identification, without going in to too much details, while providing enough pointers and resources to the interested users.CHAPTER 5: GEOMODELINGChapter Goal: This chapter focuses on the geological modeling problems, including unsupervised learning for clustering different rock types based upon the petrophysical well logs, and estimation of the petrophysical properties away from the well locations by applying supervised machine learning techniques.CHAPTER 6: RESERVOIR ENGINEERINGChapter Goal: This chapter focused on the approaches for developing machine learning based proxy models to replace a full-physics reservoir simulator, and the use of these proxy models for generating production forecasts. The chapter will also cover related topics of interest including well placement optimization, and planning future wells based upon the historical production data.CHAPTER 7: PRODUCTION ENGINEERINGChapter Goal: This chapter will cover the topic of production modeling using machine learning methodologies. The topics will include identification of specific completion design for a well to achieve optimal production rates, and identifying the producing wells, which may benefit from the workover activities. A part of chapter will also provide methodology for equipment failure analytics, and predictive maintenance for production equipment, e.g., electrical submersible pumps (ESPs).CHAPTER 8: OPPORTUNITIES, CHALLENGES, AND EXPECTED FUTURE TRENDSChapter Goal: This chapters gleans over the challenges arising in the execution of the machine learning based digital transformation projects, the pitfalls leading to the project failure. Also, the opportunities that inherently lie in addressing these challenges are discussed from both the executive and practitioners’ perspective. Finally, an overview of the expected roadmap for the industry over the next decade will be discussed.
Azure SQL Revealed
Access detailed content and examples on Azure SQL, a set of cloud services that allows for SQL Server to be deployed in the cloud. This book teaches the fundamentals of deployment, configuration, security, performance, and availability of Azure SQL from the perspective of these same tasks and capabilities in SQL Server. This distinct approach makes this book an ideal learning platform for readers familiar with SQL Server on-premises who want to migrate their skills toward providing cloud solutions to an enterprise market that is increasingly cloud-focused.If you know SQL Server, you will love this book. You will be able to take your existing knowledge of SQL Server and translate that knowledge into the world of cloud services from the Microsoft Azure platform, and in particular into Azure SQL. This book provides information never seen before about the history and architecture of Azure SQL. Author Bob Ward is a leading expert with access to and support from the Microsoft engineering team that built Azure SQL and related database cloud services. He presents powerful, behind-the-scenes insights into the workings of one of the most popular database cloud services in the industry.WHAT YOU WILL LEARN* Know the history of Azure SQL* Deploy, configure, and connect to Azure SQL* Choose the correct way to deploy SQL Server in Azure* Migrate existing SQL Server instances to Azure SQL* Monitor and tune Azure SQL’s performance to meet your needs* Ensure your data and application are highly available* Secure your data from attack and theftWHO THIS BOOK IS FORThis book is designed to teach SQL Server in the Azure cloud to the SQL Server professional. Anyone who operates, manages, or develops applications for SQL Server will benefit from this book. Readers will be able to translate their current knowledge of SQL Server—especially of SQL Server 2019—directly to Azure. This book is ideal for database professionals looking to remain relevant as their customer base moves into the cloud.BOB WARD is a principal architect for the Microsoft Azure Data Server team, which owns the development for all SQL Server versions. He has worked for Microsoft for more than 27 years on every version of SQL Server shipped from OS/2 1.1 to SQL Server 2019, including Azure SQL. Bob is a well-known speaker on SQL Server, often presenting talks on new releases, internals, and performance at events such as PASS Summit, Red Hat Summit, Microsoft //build, SQLBits, SQLIntersection, Microsoft Inspire, and Microsoft Ignite. You can follow him at @bobwardms and linkedin.com/in/bobwardms. Bob is the author of the Apress books Pro SQL Server on Linux and SQL Server 2019 Revealed. 1. SQL Server Rises to the Clouds2. What is Azure SQL?3. SQL Server on Azure Virtual Machine4. Deploying Azure SQL5. Configuring Azure SQL6. Securing Azure SQL7. Monitoring and Tuning Performance for Azure SQL8. Availability for Azure SQL9. Completing Your Knowledge of Azure SQL10. Go Big with the Cloud
Cybercrime
Unter den Begriff Cybercrime werden Straftaten gefasst, die mittels Informa-tionstechnologie und IT-Strukturen begangen werden. Diese Delikte sind durch eine Vielzahl, vor dem Hintergrund der technischen Entwicklung stark wandelbarer, Tatbegehungsformen gekennzeichnet. Das mannigfache Spektrum dieser Phanomene umfasst: die Botnetzkriminalitat; den verbrecherischen Einsatz von Malware, Ransomware oder Scareware; Phishing, Pharming und Skimming; NFC-Betrug; Cybermobbing und Cybergrooming sowie vielfaltige Formen strafbarer Urheberrechtsverletzungen. Die Darstellung dieser und weiterer Spielarten der unterschiedlichen Erscheinungsformen von Cybercrime und ihre strafrechtliche Beurteilung bilden den Ausgangspunkt dieses Studienbriefs. In den nachfolgenden Kapiteln stehen die Ermittlungsmglichkeiten der Strafverfolgungsbehrden durch die Computerforensik und die Informationsgewinnung in Netzwerken im Fokus, gefolgt von Handlungsanweisungen zur polizeilichen Bekmpfung der Internetkriminalitt im sog. Ersten Angriff. In einem Ausblick wird zudem auf den ermittlungstechnischen Einsatz von Big-Data-Technologie aufmerksam gemacht. Als Einfhrungswerk richtet sich die Schrift in erster Linie an Praktiker, die einen Neueinstieg in die Materie suchen, sowie an Polizeibeamte in Ausbildung und Studium.
Basiswissen Medizinische Software (3. Auflg.)
Das Basiswerk für die Entwicklung von Software als Medizinprodukt. 3. überarbeitete und aktualisierte Auflage.Dieses Buch beschreibt den gesamten Lebenszyklus von Software als Medizinprodukt. Es deckt den kompletten CPMS-Lehrplan (Foundation Level) ab und ergänzt ihn durch weitere Informationen. Behandelt werden im Einzelnen:Rechtliche GrundlagenQualitäts- und Dokumentenmanagement (ISO 13485)Risikomanagement und -analyse (ISO 14971)Best Practices des Software Engineering (IEC 62304)Gebrauchstauglichkeit (Benutzungsschnittstellen und IEC 62366)Medizinische InformatikIT-Sicherheit bei MedizinproduktenDas Buch eignet sich zur individuellen Vorbereitung auf die CPMS-Zertifizierungsprüfung und als Begleitliteratur zu den entsprechenden Vorbereitungsschulungen.Die 3. Auflage wurde komplett überarbeitet und beinhaltet den aktuellen Stand der Normen und Richtlinien für die Medizintechnik.Über die Autoren:Professor Christian Johner unterrichtete an mehreren Hochschulen u.a. in Konstanz, Würzburg, Krems, St. Gallen und Stanford Software Engineering, Softwarearchitektur, Softwarequalitätssicherung und Medizinische Informatik. Am „Johner Institut“ bildet der promovierte Physiker im Rahmen von berufsbegleitenden Masterstudiengängen und Seminaren Personen aus, die IT-Lösungen für das Gesundheitswesen entwickeln, prüfen, anwenden und betreiben. Mit seiner Firma berät er Medizinproduktehersteller bei der Entwicklung, Qualitätssicherung und Zulassung von medizinischer Software.Matthias Hölzer-Klüpfel studierte Physik an der Universität Würzburg. Seit 2002 ist er als Entwickler, Berater und Projektleiter tätig. Er führte zahlreiche Medizintechnikprojekte durch und war dabei sowohl bei KMU-Firmen als auch in Großunternehmen im Einsatz. Heute ist er freiberuflicher Berater und unterstützt seine Kunden bei Fragen rund um die Software- und Systementwicklung in der Medizintechnik. Neben seinen beruflichen Tätigkeiten schloss er im Juli 2009 den Masterstudiengang „IT im Gesundheitswesen“ ab. Matthias Hölzer-Klüpfel ist Mitbegründer des Vereins „ICPMSB e.V.“, der die Grundlagen für die Zertifizierungen zum „Certified Professional for Medical Software“ erarbeitet, und Vorsitzender des Richtlinienausschusses „Medical SPICE“ im Verein Deutscher Ingenieure (VDI.)Sven Wittorf hat Elektro- und Informationstechnik an der TU Darmstadt studiert und einen Abschluss als Master of Science im Bereich IT im Gesundheitswesen. Er betreute und schulte Medizinproduktehersteller unterschiedlicher Größe beim Aufsetzen von deren Softwarentwicklungsprozessen. Seit 2012 ist er Geschäftsführender Gesellschafter der Medsoto GmbH, die Softwarewerkzeuge zur Unterstützung des normenkonformen und effizienten Arbeitens in der Medizintechnik erstellt und deren Einführung in Unternehmen begleitet. Er ist Gründungsmitglied des ICPMSB e. V. und Mitglied im nationalen Normungsgremium der IEC 62304 sowie im VDI Fachausschuss „Qualitätssicherung für Software in der Medizintechnik“.
Domain-Driven Laravel
Map concepts and ideas in domain-driven design (DDD) and transpose them into clean, testable, and quality code that is effective alongside the Laravel framework. This book teaches you how to implement the concepts and patterns present in DDD in the real world as a complete web application. With these tactics and concepts in place, you'll engage in a variety of example applications, built from the ground up, and taken directly from real-world domains.Begin by reviewing foundational stepping stones (with small, manageable examples to show proof of concepts as well as illustrations to conceptualize the more complex topics) of both DDD and Laravel. Specifically, such topics as entities, value objects, developing an ubiquitous language, DTOs, and knowledge discovery. Next, you will dive into some more advanced topics of DDD and use these concepts as a guide to make customizations to the default Laravel installation, giving you an understanding of why these alterations are vital to the DDD and Laravel platform. Finally, you will cover the very powerful Eloquent ORM that comes stock with Laravel and understand how it can be utilized to represent entities, handle repositories, and support domain events.Although there is a basic coverage chapter and a setup tutorial for Laravel (along with a high level intro about the components used within it), Domain-Driven Laravel is best suited to readers who have been at least exposed to the framework and have had the opportunity to tinker around with it.WHAT YOU'LL LEARN* Utilize a blazing-fast rapid development pipeline built from DDD building blocks and facilitated with Laravel* Implement value objects, repositories, entities, anti-corruption layers and others using Laravel as a web framework* Apply enhanced techniques for quick prototyping of complex requirements and quality results using an iterative and focused approach * Create a base framework (Laravel) that can serve as a template to start off any project* Gain insight on which details are important to a project’s success and how to acquire the necessary knowledge WHO THIS BOOK IS FORIdeal for for frontend/backend web developers, devops engineers, Laravel framework lovers and PHP developers hoping to learn more about either Domain Driven Design or the possibilities with the Laravel framework. Those with a working knowledge of plain PHP can also gain value from reading this book.JESSE GRIFFIN is a seasoned Laravel and Symfony developer who specializes in building e-commerce systems as well as add-ons for a variety of purposes and platforms related to shipping, packaging, warehouse management, inventory control, barcode systems, asset management/tracking, customer tracking as well as statistics and reporting. He has over 10 years of professional web application development experience and holds a bachelor's degree in computer science, although he’s been programming since he was 9 years old.DOMAIN-DRIVEN LARAVELPART 1: AN ODD COMBINATION1. Laying the Foundation2. Foundational Bootcamp3. Domain Driven What?4. Introduction to Laravel5. Advanced Laravel6. Architecting a Claim Processing System7. Modeling and Implementing the Domain8. Modularizing LaravelPART 2: A DOMAIN DRIVEN APPROACH9. A Domain Driven Approach to Claim Submission10. A Domain Driven Approach to Claim Validation11. Context MapsPART 3: TECHNICAL ASPECTS OF DDD12. DTOs, Entities, and Value Objects13. Domain Events14. Repositories15. Factories and Aggregates16. ServicesPART 4: DDD VIA LARAVEL17. Hexagon Driven Development18. Applying DDL in the Real World19. Conclusion and Additional Thoughts
Building Secure Firmware
Use this book to build secure firmware.As operating systems and hypervisors have become successively more hardened, malware has moved further down the stack and into firmware. Firmware represents the boundary between hardware and software, and given its persistence, mutability, and opaqueness to today’s antivirus scanning technology, it represents an interesting target for attackers.As platforms are universally network-connected and can contain multiple devices with firmware, and a global supply chain feeds into platform firmware, assurance is critical for consumers, IT enterprises, and governments. This importance is highlighted by emergent requirements such as NIST SP800-193 for firmware resilience and NIST SP800-155 for firmware measurement.This book covers the secure implementation of various aspects of firmware, including standards-based firmware—such as support of the Trusted Computing Group (TCG), Desktop Management Task Force (DMTF), and Unified Extensible Firmware Interface (UEFI) specifications—and also provides code samples and use cases. Beyond the standards, alternate firmware implementations such as ARM Trusted Firmware and other device firmware implementations (such as platform roots of trust), are covered.WHAT YOU WILL LEARN* Get an overview of proactive security development for firmware, including firmware threat modeling* Understand the details of architecture, including protection, detection, recovery, integrity measurement, and access control* Be familiar with best practices for secure firmware development, including trusted execution environments, cryptography, and language-based defenses* Know the techniques used for security validation and maintenanceWho This Book Is ForGiven the complexity of modern platform boot requirements and the threat landscape, this book is relevant for readers spanning from IT decision makers to developers building firmwareJIEWEN YAO is a principal engineer in the Intel Architecture, Graphics, and Software Group. He has been engaged as a firmware developer for over 15 years. He is a member of the UEFI Security sub team, and the TCG PC Client sub working group. He has presented at industry events such as the Intel Developer Forum, UEFI Plugfest, and RSA conference. He worked with co-author Vincent Zimmer to publish 30 “A Tour Beyond BIOS” technical papers for tianocore.org and firmware.intel.com. He holds 40 US patents.VINCENT ZIMMER is a senior principal engineer in the Intel Architecture, Graphics, and Software Group. He has been engaged as a firmware developer for over 25 years and leads the UEFI Security sub team. He has presented at industry events such as the Open Source Firmware Conference, Linux Fest Northwest, Intel Developer Forum, UEFI Plugfest, Open Compute Project Summit, BlackHat Las Vegas, BSides Seattle, Toorcon, and Cansecwest. In addition to collaborating with Jiewen Yao on many white papers, he has co-authored several books on firmware, papers, and over 400 issued US patents.PART 1: OVERVIEWCHAPTER 1: INTRODUCTION SECURITYThreat ModelDesignValidationCHAPTER 2: INTRODUCTION HOST FIRMWAREIndustry StandardBoot Flow / Phase hand-offMinimal Firmware RequirementHardware ROTCPU/silicon initPCI resource allocation.prepare platform info (memmap/ACPI)Jump to OS.Runtime Interface (SMM, UEFI Runtime, ASL)General Principle - Protect / Detect / RecoveryPART 2: BOOT SECURITYCHAPTER 3: FIRMWARE RESILIENCE - PROTECTIONFlash LockFlash Wear outCapsule Flow (*)Signed UpdateCHAPTER 4: FIRMWARE RESILIENCE - DETECTIONBoot Flow (*)Intel Boot GuardOBB VerificationUEFI Secure BootLocalRemoteTXT- SX(coreboot)CHAPTER 5: FIRMWARE RESILIENCE – RECOVERYRecovery Flow (*)Signed RecoveryTop SwapRollback, SVNsCHAPTER 6: OS/LOADER RESILIENCEPlatform RecoveryOS Recovery(Android Verified Boot)CHAPTER 7: TRUSTED BOOTMeasured Boot Flow (*)SRTM (Boot Guard)DRTM (TXT)TPM1.2/2.0Physical PresenceMOR / Secure MORCHAPTER 8: AUTHENTICATIONUser AuthenticationHDD PasswordOPAL PasswordCHAPTER 9: S3 RESUMES3 resume flow (*)LockBoxCHAPTER 10: DEVICE SECURITYPCI Bus (*)DMA protectionDevice MeasurementDevice AuthenticationDevice firmware updateCHAPTER 11: SILICON SECURITY CONFIGURATIONFlash SPI lockSMM LockBAR LockChapter: Supply Chain (Vincent)OEM/ODM/BIOS vendor/IHVOpen sourceFingerprintingManufacturing flow to shipmentPART 3: DATA SECURITYCHAPTER 12: UEFI KERNELDXE/PEI Core (*)Heap GuardStack GuardNX protectionEnclaveCHAPTER 13: MANAGEMENT MODESMM Core (*)SMM Communication (*)StandaloneMM (*)MMIO ProtectionSecure SMM CommunicationIntel Runtime ResilienceSTM (SMI Transfer Monitor)Chapter: UEFI Variable (Vincent)AuthenticationVariable LockVariable CheckVariable Quota ManagementConfidentialityIntegrity and RollbackTPM BindingRPMBRPMCPART 4: MISCELLANEOUSCHAPTER 14: GENERAL CODING PRACTICEBuffer OverflowBanned APIInteger OverflowSafeInt libChapter: Cryptograph (Vincent)Hash usage in firmwareEncryption usage in firmwareSigning & verification usage in firmwareChapter 15: Compiler Defensive TechnologyStack CookieNon-ExecutableAddress Space RandomizationControl Flow Integrity (CFI) / Control Flow Enforcement (CET)Runtime Check (stack/un-initialized data/integer overflow)Chapter: Race Condition (Vincent)BSP/AP handling in UEFIBSP/AP handling in SMMTOC/TOUCHAPTER 16: INFORMATION LEAKSide ChannelMDSSMMCHAPTER 17: PROGRAMMING LANGUAGEC LanguageRust LanguagePart: Security TestCHAPTER 18: HBFAHardware EmulationSecurity Unit TestFuzzing (AFL)Static analysisCHAPTER 19: CHIPSECConfiguration CheckSMI FuzzingVariable fuzzingWhitelisting/BlacklistingPART 5: OTHERCHAPTER 20: CONCLUSIONPART 6: APPENDICESSecure coding checklistSecure review checklistAPI summaryPART 7: REFERENCES
Practical System Programming with C
This book teaches system programming with the latest versions of C through a set of practical examples and problems. It covers the development of a handful of programs, implementing efficient coding examples.Practical System Programming with C contains three main parts: getting your hands dirty with multithreaded C programming; practical system programming using concepts such as processes, signals, and inter-process communication; and advanced socket-based programming which consists of developing a network application for reliable communication.You will be introduced to a marvelous ecosystem of system programming with C, from handling basic system utility commands to communicating through socket programming. With the help of socket programming you will be able to build client-server applications in no time.The “secret sauce” of this book is its curated list of topics and solutions, which fit together through a set of different pragmatic examples; each topic is covered from scratch in an easy-to-learn way. On that journey, you’ll focus on practical implementations and an outline of best practices and potential pitfalls. The book also includes a bonus chapter with a list of advanced topics and directions to grow your skills.WHAT YOU WILL LEARN* Program with operating systems using the latest version of C * Work with Linux* Carry out multithreading with C Examine the POSIX standards* Work with files, directories, processes, and signals* Explore IPC and how to work with itWHO THIS BOOK IS FORProgrammers who have an exposure to C programming and want to learn system programming. This book will help them to learn about core concepts of operating systems with the help of C programming..Sri Manikanta Palakollu is a programmer and software developer with experience in C, C++, Java, and Python as well as Linux, POSIX, and other operating system-level programming. He is a tech reviewer for various tech book publishers. Sri also contributes to various open source projects.1. Introduction to Linux Environment• Getting familiar with Linux Kernel• Linux Kernel V/S Other OS Kernels.• File Handling Utilities• Process Utilities• Network Utilities• Backup Utilities.2. Implementation of Multithreading with C• Introduction to Threads• Threads V/S process• Introduction to Multithreading.• Importance of Multithreading.• Support of Multithreading in C• Creation of threads.• Practical Examples of Multithreading.• Use cases of Multithreading.3. Getting Started with System Programming• Understanding the POSIX Standard.• Introduction to API’s• Importance of API’s• Inbuilt API’s in C4. Files and Directories• Basic concepts in files• Files meta i-nodes• System Calls for Files• I/O Operations for Files• File Permissions.• Soft and Hard Links• System call for Directories.5. Processes and Signals• Introduction to process Environment• Environment Variables• Kernel Support for Processes• Process Creation• Concept of the Zombie process• Concept of Orphan Process• System Calls for Process management• Introduction to Signals• System calls for signals• Types of Signals6. Inter process Communication (IPC)• Introduction to IPC• Types of IPC• Creation of Named PIPES• Creation of UN-Named PIPES• Concept of Message Queues• Implementation of Message Queues• Concept of Semaphore• Implementation of Semaphore.• API for Named and unnamed PIPES• API for Message Queues• API for Semaphore.7. Shared Memory• Introduction to Shared Memory.• Kernel Support for Shared Memory.• Implementation of Shared Memory.• API for Shared Memory.8. Socket Programming• Introduction to Sockets• IPC Over Networks• API for Socket Programming• OSI Layer Protocol• TCP/IP Protocol• Client Server Architecture.• System calls for Socket Programming.• Implementation of Single Client Server Architecture.• Implementation of Multiple Client Server Architecture.9. Advanced Topics and Directions.
Practical Glimpse
Learn how to edit images and create compelling digital art with Glimpse, the newest open source alternative to Adobe Photoshop and GIMP. This book explores Glimpse's broad selection of tools and features that can create beautiful (raster) digital art; painting, drawings, and art created from photos by applying one of the many filters to create artistic effects.You will quickly become acquainted with this powerful program and understand how to use workspace tools and layers. You will learn step-by-step how to correct exposure, digitally retouch and repair damaged photos, and handle just about any photo editing task—even colorizing grayscale images. Practice files are provided with step-by-step instructions to jump into photo editing and art creation.Glimpse is a powerful program that is a viable alternative to Adobe Photoshop and other proprietary software. The possibilities of the art one can create are almost limitless—get started with it using this book today.WHAT YOU'LL LEARN* Navigate the Glimpse workspace* Use layers, which are essential in any professional quality image editing program* Work with the varied tools that Glimpse offers* Enhance, retouch, and modify digital images* Restore and repair damaged family photos, and create composites such as replacing backgrounds* Create compelling digital artwork using the drawing tools and by applying artistic filtersWHO THIS BOOK IS FORAnyone desiring to learn serious image editing with Glimpse. It can be used by both fledgling and professional photographers, freelance graphic designers, students, genealogists, and more. Because it’s free, it can be especially advantageous to teachers, students, and small business owners on a budget.PHILLIP WHITT is an author, photo retouch professional and graphic designer. He is the author of several Apress books and video tutorials pertaining to image editing using GIMP and Adobe Photoshop Elements. He has edited, retouched, and restored countless digital images since the late 1990s. He has served both clients from the general public and a number of commercial clients over the years. In addition to over 20 years of image editing and graphic design experience, he also has an Expert Rating Certification in Adobe Photoshop Skills, and VTC certifications in GIMP and Scribus.PART I. ACQUIRING, INSTALLING, AND GETTING TO KNOW GLIMPSE1. An Overview of Glimpse2. Layers, Channels, Paths, and Undo History3. An Overview of the ToolsPART II. WORKING WITH DIGITAL PHOTOS4. Correcting Exposure and Contrast5. Enhancing, Correcting, and Working with Color6. Modifying, Retouching, and Restoring Photos7. Compositing ImagesPART III. CREATING DIGITAL ART.8. Drawing Basics9. Creating Digital Artwork.10. Using Artistic Filters
Systems and Network Infrastructure Integration
IT infrastructures are now essential in all areas and sectors of human activity; they are the cornerstone of any information system. Thus, it is clear that the greatest of care must be given to their design, implementation, security and supervision in order to ensure optimum functionality and better performance. Within this context, Systems and Network Infrastructure Integration presents the methodological and theoretical principles necessary to successfully carry out an integration project for network and systems infrastructures. This book is aimed at anyone interested in the field of networks in general. In particular, it is intended for students of fields relating to networks and computer systems who are called upon to integrate their knowledge and skills, gained throughout their academic study, into a comprehensive project to set up a complete infrastructure, while respecting the necessary specifications.SAIDA HELALI is a university lecturer in Information Technology (specializing in networks and information systems) at the Institut Supérieur des Etudes Technologiques de Radès (Tunisia). He holds an ACREDITE master's degree (Analysis, Conception and Research in the Domain of Educational Technology Engineering), which was jointly awarded by the Université de Cergy-Pontoise (France), the Université de MONS (Belgium) and the Université de Genève (Switzerland). In 2017, he was chair of the Tunisian branch of the IEEE Education Society and he is also an acting member of AIPU TUNISIE, an international association about university pedagogy.Preface ixCHAPTER 1. INTRODUCTION TO PROJECT MANAGEMENT 11.1. Introduction 11.2. Project management 21.3. Project management methods and tools 31.3.1. Gantt diagram 51.3.2. RACI (Responsible, Accountable, Consulted, Informed) matrix 51.3.3. The concept of specifications 61.4. Chapter summary 8CHAPTER 2. SIMULATING NETWORK ARCHITECTURES WITH GNS3 92.1. Introduction 92.2. Definition 102.3. Introduction to GNS3 112.3.1. Functionalities of GNS3 122.3.2. Limitations 122.3.3. GNS3 installation 122.3.4. Getting started with GNS3 132.4. Chapter summary 25CHAPTER 3. GREEN IT 273.1. Introduction 273.2. Introduction of concept 283.3. Green IT trigger factors 293.4. Benefits of Green IT 293.5. The lifecycle of ICTs 303.6. Mechanisms and technical solutions for the implementation of a Green IT infrastructure 313.7. Green IT labels and standards 333.8. Some examples of Eco-ICTs 343.9. Chapter summary 36CHAPTER 4. DESIGN OF NETWORK INFRASTRUCTURES 374.1. Introduction 374.2. The founding principles of networks 384.2.1. Definition and preliminaries 384.2.2. Classification of digital data networks 394.2.3. Components of a network 404.2.4. Measuring network performance 454.2.5. Concepts of collision domain/broadcast domain and VLANs 474.3. Methods and models of IT network design 484.3.1. Principles of structured engineering 484.4. Assessment of needs and choice of equipment 544.5. Chapter summary 56CHAPTER 5. NETWORK SERVICES 575.1. Introduction 575.2. DHCP service 585.2.1. Introduction 585.2.2. Operating principle 585.2.3. Renewal of lease 625.2.4. The concept of a DHCP relay 625.3. DNS service 635.3.1. Introduction 635.3.2. Operating principle 635.4. LDAP service 665.4.1. Introduction 665.4.2. LDAP protocol 675.4.3. LDAP directory 685.5. E-mail service 705.5.1. Introduction 705.5.2. Architecture and operating principle. 715.5.3. Protocols involved 725.6. Web server 735.6.1. Introduction 735.6.2. Operating principle 735.6.3. The principle of virtual hosting 745.7. FTP file transfer service 765.7.1. Definition 765.7.2. Operating principle 775.7.3. Types 775.8. Chapter summary 78CHAPTER 6. SYSTEM AND NETWORK SECURITY 796.1. Introduction 796.2. Definitions, challenges and basic concepts 806.3. Threats/attacks 826.3.1. Access attacks 826.3.2. Modification attacks 836.3.3. Saturation attacks 836.3.4. Repudiation attacks 836.4. Security mechanisms 836.4.1. Encryption tools 846.4.2. Antivirus programs 846.4.3. Firewalls/IDS and IPS 846.4.4. VPNs 866.4.5. Other means of security 896.5. Security management systems: norms and security policies 916.5.1. Norms 916.5.2. The idea of security policy 926.6. Chapter summary 93CHAPTER 7. VIRTUALIZATION AND CLOUD COMPUTING 957.1. Introduction 957.2. Virtualization 967.2.1. Definition 967.2.2. Benefits of virtualization 967.2.3. Areas of application 977.2.4. Categories of virtualization 1007.2.5. Limits of virtualization 1037.3. Cloud computing 1037.3.1. Definitions 1037.3.2. Leverage factors and generic principles 1047.3.3. Architecture models 1047.3.4. Types of cloud 1077.3.5. Areas of application 1097.3.6. Advantages and limitations 1107.4. Chapter summary 111CHAPTER 8. QUALITY OF SERVICE AND HIGH AVAILABILITY 1138.1. Introduction 1138.2. Quality of service 1148.2.1. Motivation 1148.2.2. Definition(s) 1158.2.3. Objectives of QoS 1168.2.4. Metrics of QoS 1178.2.5. General principles of QoS 1188.2.6. QoS mechanisms 1208.3. High availability 1418.3.1. Redundancy in the physical layer 1438.3.2. Redundancy in the data link layer 1438.3.3. Redundancy in the network layer 1498.3.4. Redundancy in the application layer 1548.4. Chapter summary 156CHAPTER 9. MONITORING SYSTEMS AND NETWORKS 1579.1. Introduction 1579.2. Main concepts of network and service supervision 1589.2.1. Definition 1589.2.2. Challenges of monitoring 1589.2.3. Typology 1599.3. Monitoring protocols 1619.3.1. SNMP protocol (Simple Network Management Protocol) 1619.3.2. WMI (Windows Management Instrumentation) 1649.3.3. WS-Management (Web Services for Management) 1649.3.4. IPMI (Intelligent Platform Management Interface) 1649.3.5. NetFlow/IPFIX 1659.3.6. Netconf 1659.4. Monitoring tools 1659.4.1. Commercial monitoring solutions (HP OpenView, Tivoli) and software publisher solutions 1669.4.2. Free monitoring solutions 1679.5. Chapter summary 171References 173Index 179
Learn Rails 6
Effectively learn and apply software development and engineering techniques to web application development using Rails 6 with this accelerated tutorial. This book teaches modern engineering practices including git flow, containerization, debugging, testing, and deployment. Along the way, you’ll see how to build a social network application and then deploy it on a cloud provider such as Amazon Web Services.After reading and using this book, you'll be able to effectively build and deploy your Rails application to the cloud. You’ll also have used the Ruby on Rails framework to carry out the rapid development of an idea into a product without sacrificing quality.WHAT YOU WILL LEARN* Use the Ruby on Rails 6 web development framework* Integrate Docker with your Ruby on Rails code* Apply software engineering techniques to learning the Rails framework* Design, build, and deploy a social networking application to the Amazon cloudWHO THIS BOOK IS FORBeginners with at least some prior programming experience. Ruby experience is helpful, but not required.ADAM NOTODIKROMO (formerly Adam Pahlevi Baihaqi) is a software engineer committed to creating working and technically well-written apps. With his colleagues in Indonesia and Germany, he is building their company together: Sonasign. He lives in Meguro, Tokyo to enjoy bowls of Yokohama-style ramen and also dry tantanmen. He works with kind teammates at Autify.PART 1: INTRODUCTION TO RUBY AND RAILSCHAPTER 1: HELLO, RAILS· The world before the Rails· Favorite things I gained from Rails· Increased Signal-to-Noise ratio· Testability since Day 1· Programmer happiness· Installing Docker on Windows· Installing Docker on Ubuntu Linux· Installing Docker on MacOS· Creating simple containerized Rails app· MVC architecture· Deploying to Heroku· Git workflowCHAPTER 2: RUBY QUICK CRASH COURSE· What kind of a language is Ruby?· Interactive console· Number· String· Making a Class· Public functions· Private and protected membership· Instance variables· Constants· Building on a Module· Everything is an Object· Date· Array· Hash· Symbol (after having experience building Hash with Symbol vs String)· Instantiating other objects· Make your own Block (simple way to introduce yield & block, and learn build simple DSL)· Thread· Meta-programmingPart 2: Building a Social Network· What are we building?· Use case diagram· Entity diagramCHAPTER 3: BUILDING THE MODELS· User model· Inserting data· Updating data· Seeking data· Destroying data· Unit-test the model with RSpec· Complex Query· Status model and Has One-to-One relationship· Friendship model and Many-to-Many relationship· Testing up the relationships· Adding validations· Updating table schemaCHAPTER 4: LOGIN CAPABILITIES· Installing Devise· Routing· Layout· Building Sign in and Sign up form· Wiring up the Sign out· Testing up the requestCHAPTER 5: BUILDING POST AND TIMELINE· Building the Timeline· Introduction to Helper· Post a Status!· Integration testing with Capybara· Debugging with PryCHAPTER 6: ADD AS FRIEND· AJAX request· Sending friendship request· Confirming friendship request· Sending email· Background processingCHAPTER 7: DEPLOYING TO AWS· Making an Amazon account· Making an ElasticBeanstalk instance· Setting up deploy script· Seeing it online· How to associate it with a domain name?CHAPTER 8: WHAT NEXT?· Mobile App?· API controllers· Staging environment
DevOps
DevOps, eine Zusammensetzung aus den Begriffen DEVelopment und IT OPerations, ist ein Ansatz, der in vielen Start-ups, aber auch in großen Konzernen erfolgreich ist. DevOps definiert das Zusammenspiel von IT-Entwicklung, IT-Betrieb und dem Kunden mithilfe von Kultur, Werkzeugen und Prozessen neu. Dieses essential vermittelt das Wichtigste, was man dazu wissen muss. Die Autoren sind DevOps-Master und beschäftigen sich seit vielen Jahren mit DevOps sowie der Optimierung von IT-Services.Jürgen Halstenberg ist als Berater und Trainer bei der Maxpert GmbH seit vielen Jahren Teil der DevOps-Community in Deutschland.Dr. Bernd Pfitzinger ist Senior Experte bei der Toll Collect GmbH, Buchautor und Autor zahlreicher Veröffentlichungen.Dr. Thomas Jestädt ist IT-Manager, Buchautor und Lehrbeauftragter an der Technischen Universität Berlin.Einleitung - wozu DevOps?. - Was ist DevOps? - Everything is a Remix. - DevOps-Aktivitäten. - Kulturelle organisationale und kommunikative Aspekte von DevOps. - Wie führt man DevOps ein? - oder: Machen ist wie Wollen, nur krasser!. - DevOps - Kritik. - Zusammenfassung.
Eigene Chatbots programmieren für Dummies Junior
In diesem Buch lernst du Schritt für Schritt, wie du mit dem kostenlosen MIT App Inventor einen Chatbot entwickelst. Du erfährst zuerst, was Chatbots eigentlich sind und dass diese als Alexa, Siri, Bixby, Cortana und Google schon um uns sind. Du gehst der Frage nach, auf welche Weise Chatbots intelligent sind. Die erste Chatbot-App, die du nach Anleitung entwickelst, beantwortet eine einfache Frage von dir. Am Ende erzählt der Chatbot Witze. Weitere Beispiele zeigen dir, was sonst noch alles möglich ist: Der Chatbot wird immer schlauer und geht immer besser auf seinen Chatpartner ein. Bestens geeignet für Kinder und Jugendliche ab 10 Jahren. Nadine Bergner ist Professorin für Didaktik der Informatik an der TU Dresden. Sie gründete 2010 das InfoSphere - Schülerlabor Informatik an der RWTH Aachen. Unter ihrer Leitung wurden fast 40 Informatikmodule für Schülerinnen und Schüler der Klassenstufen 3 bis 13 entwickelt, die von Eintagesworkshops bis hin zu einwöchigen Feriencamps reichen. Tausende Kinder und Jugendliche nahmen an den Workshops teil.Thiemo Leonhardt ist Postdoc an der TU Dresden im Bereich "Didaktik der Informatik". Sein wissenschaftliches Interesse gilt insbesondere den Themen e-Learning, Simulationen, Kompetenzentwicklung durch Lernspiele und Educational Datamining.EINLEITUNG 5Hallo, zukünftige Chatbot-Entwicklerin oder zukünftiger Chatbot-Entwickler! 5Über den MIT App Inventor 2 5Über dieses Buch 6Über dich 7Über die Symbole, die wir in diesem Buch verwenden 8KAPITEL 1: WAS SIND CHATBOTS? 9Was ist ein Chatbot? 10Smart Home – alles ist vernetzt 12Sind Chatbots intelligent? 13KAPITEL 2: DEIN ERSTER CHATBOT 15Account anlegen, einloggen, starten 16Starte dein erstes Chatbot-Projekt! 24Ein Chatbot muss bedient werden können: Das Design 25Mit Chatbots reden – die Funktionalität 34Schritt für Schritt zum ersten Gespräch 44Option 1: Den Chatbot auf deinem Smartphone oder Tablet testen 44Option 2: Nur das Design deines Chatbots mittels Emulator testen 50Übers Ziel hinaus – noch mehr Möglichkeiten 52KAPITEL 3: CHATBOTS FÜR EINSTEIGER 53Der Sprachverzerrer 54Der Musik-Chatbot 64Der Sensor-Chatbot 87Sensor-Chatbot mit Beschleunigungssensor 95Sensor-Chatbot mit Lichtsensor 102KAPITEL 4: FÜR FORTGESCHRITTENE 108Schnick-Schnack-Schnuck-Chatbot 109Spieldesign 110Der Chatbot spielt mit 113Timer-Chatbot 125Die Zeitanzeige 126Sensoren für den Timer-Chatbot 130Kommandos geben 132KAPITEL 5: CHATBOTS FÜR PROFIS 146Der Witze-Chatbot 147Das Design 147Die Programmierung 149Der Quiz-Chatbot 153Weitere Ideen 157KAPITEL 6: BLICK ZU DEN PROFIS 159Programmieren mit Tastatur 160Bis zum nächsten Mal 160Zum Wiederfinden 161Über die Autoren 165
Essential Excel 2019
Create, edit, sort, analyze, summarize, and format data as well as graph it in Excel 2019. Chock full of visuals, user-friendly instructions, and reader exercises, this in-depth guide makes it easy for you to get on the bandwagon taking advantage of this powerful software and what it can do. ESSENTIAL EXCEL 2019 doesn’t mess around. It provides the most clear and concise, but complete, information you need to successfully use the expansive features of Excel in your work environment.The second edition of this soup-to-nuts book delivers essential how-to and reference information for users who are new to Excel, those who want to continue building their Excel skills, or anyone who wants to get up to speed on the latest changes and features in Excel 2019. It is heavy on the practical examples and light on the theory, providing a step-by-step process of what you need to do when you are working with Excel. You will begin with the basics, advancing as each chapter builds on knowledge from previous chapters. You will appreciate real-life examples and exercises that reinforce what you have learned, and upon finishing the book, you will have the confidence to use much more than the typical 10% that most people use in Excel.WHAT YOU WILL LEARN* Create amazing visualizations of your data* Get up to speed on easy and accurate methods for entering data* Extract the information you want from imported data; manipulate and format it to meet your needs* Export your results to other programs or share with others in the cloud* Organize, summarize, filter, and consolidate your data in multiple ways* Audit, validate, and protect your dataWHO THIS BOOK IS FORAnyone new to Excel or looking to take better advantage of the advanced features of the platformDAVID SLAGER has been a computer programmer for four decades, with a focus on Excel. He also was head of the computer department of a college for many years. He is currently a software manager. David has worked with spreadsheets since their introduction. As a consultant, he developed major e-learning training projects for agriculture and steel businesses and designed a simulation program that trained feed market managers to use analytics to improve their market position. He enjoys working with analytics and solving problems and has taught learners of all ages and levels. David holds an MS in Education, specializing in Instructional Media Development, a BA in Organizational Management, and an associate’s degree in Accounting, as well as many certifications.ANNETTE SLAGER has been involved in data management and employee training in the non-profit and higher education sectors. She has been responsible for coordinating donor stewardship events and processes, and in overseeing information entered into the donor/alumni data system. She has transitioned systems from manual accounting and processing to shared databases, and created learning manuals and training for employees. Annette has a bachelor’s degree in English Literature and a post-baccalaureate certificate in Technical Writing.Chapter 1 – Becoming Acquainted with ExcelChapter 2 – Navigating and Working with WorksheetsChapter 3 – Best Ways to Enter Data and Edit DataChapter 4: Formatting and Aligning DataChapter 5: Different Ways of Viewing and Printing Your WorkbookChapter 6: Understanding BackstageChapter 7: Creating and Using FormulasChapter 8: Excel’s Pre-existing FunctionsChapter 9: Auditing, Validating, and Protecting Your DataChapter 10: Using Hyperlinks, Combining Text, and Working with theStatus BarChapter 11: Transferring and Duplicating Data to Other LocationsChapter 12: Working with TablesChapter 13: Working with ChartsChapter 14: Importing DataChapter 15: Using PivotTables and PivotChartsChapter 16: Geography and Stock Data TypesChapter 17: Enhancing Workbooks with MultimediaChapter 18: Icons, 3D Images and Object GroupingChapter 19: Automating Tasks with Macros
Software-Prüfung
Die Prüfung der Software – nicht nur des Codes, sondern auch aller Dokumente – ist nach der systematischen Entwicklung die wichtigste Voraussetzung, um gute Software-Produkte zu schaffen. Daran hat sich seit der ersten Auflage dieses Buches im Jahre 1991 nichts geändert, seit der gründlichen Überarbeitung für die fünfte Auflage im Jahre 2003 erst recht nicht.Unser Thema hat durch die Lancierung des Zertifizierungsschemas für Software-Tester in den letzten Jahren eine grössere Öffentlichkeit erhalten. In Deutschland vom German Testing Board e.V. (GTB) und in der Schweiz vom SAQ Swiss Testing Board (STB) erteilte Zertifikate basieren auf dem innerhalb des International Software Testing Qualifications Board (ISTQB) abgestimmten Schema. Mit der Überarbeitung für diese Auflage haben wir die wenigen Lücken gegenüber dem Lehrplan des Basiszertifikats (Foundation Level), die wir finden konnten, geschlossen. Was über den Lehrplan hinaus geht, haben wir, soweit wir es weiterhin für gut und gültig halten, nicht gestrichen.Die grundlegenden Aussagen zur Software-Prüfung haben Bestand. Das Buch wendet sich an die Praktiker. Wenn sie die Inhalte erlernen, können sie sich zertifizieren lassen. Wenn sie die Inhalte beherzigen, können sie ihren Unternehmen mehr Nutzen bringen und haben auch selbst mehr von der Arbeit: Kompetent verrichtete Arbeit führt zum Erfolg, und der macht Spass.
Building Better PowerShell Code
Learn to write better PowerShell code via short, example-driven tips. This book covers tips to make your PowerShell scripts faster and easier to read all while following proven best practices. Written by a six-time Microsoft MVP and one of the first Microsoft PowerShell MVPs with over a decade of PowerShell experience, Building Better PowerShell Code gives you easily digestible tips you can begin using immediately.The book starts with an overview of some of the most important tips the author can muster which segues into a deeper dive with dozens of examples throughout the book. It takes you through tips such as using community modules, writing better comments, thinking of PowerShell functions as building blocks, and more. You will also see how to use parameters the right way and how to create simple logging code to easily record script activity.You will learn not only how to write better code, but also how to implement some mindset tricks, such as being explicit and specific with code and how to write code that reads well. You’ll get into error handling and also how to make your scripts more secure. Finally, you’ll examine the concept of building PowerShell tools and how to build scripts for speed.Other tips and best practices include:* Building Pester tests* Improving performance through parallel processing * Writing cross-platform scripts* Using filtering properly After reading this book and applying these tips, you will have an expert coding mindset and be able to build PowerShell code that’s efficient, readable, and compliant with many best practices.WHAT YOU WILL LEARN* Implement error handling* Create a logging function* Use regular expressions to search stringsImplement parallel processingWHO THIS BOOK IS FORPowerShell script developers.Adam Bertram is a 20+ year veteran of IT and an experienced online business professional. He’s a consultant, Microsoft MVP, blogger, trainer, published author and content marketer for multiple technology companies.INTRODUCTIONCHAPTER 1. DO THE BASICSPlan Before you CodeDon’t Reinvent the WheelBuild Functions as Building BlocksBuild Re-usable ToolsDon’t Focus Purely on PerformanceBuild Pester testsImplement Error handlingBuild Manageable CodeDon’t Skimp on SecurityLog Script ActivityParameterize EverythingLimit Script and Function InputMaintain Coding StandardsCode in ContextReturn Informative OutputUnderstand Your CodeUse Version ControlWrite for Cross PlatformWrite for the Next PersonUse a Code EditorCHAPTER 2. DON’T REINVENT THE WHEELUse Community ModulesLeverage Others’ workCHAPTER 3: USE VISUAL STUDIO CODEPowerShell Integrated Scripting EnvironmentUsing Visual studio over PowerShell ISECHAPTER 4. PLAN BEFORE YOU CODEWrite Comments Before CodingUse your Code as a Todo ListCHAPTER 5. CREATE BUILDING BLOCKS WITH FUNCTIONSWrite Functions with One, Single GoalBuild Functions with Pipeline SupportSave Commonly-Used, Interactive Functions to Your ProfileCHAPTER 6. PARAMETERIZE EVERYTHINGDon’t Hardcode. Always Use ParametersUse Parameter Sets When All Parameters Should Not be Used at OnceUse a PSCredential Object Rather than a Separate Username and PasswordCHAPTER 7. LOG SCRIPT ACTIVITYUse a Logging FunctionClean up Verbose MessagesCHAPTER 8. BUILD WITH MANAGEABILITY IN MINDDRY: Don’t Repeat YourselfDon’t Store Configuration Items in CodeAlways Remove Dead CodeCHAPTER 9. BE SPECIFICUse Strict ModeDon’t Ignore ErrorsValidate Input ParametersExplicitly Define Parameter TypesEnforce Mandatory ParametersUse the #requires Statement .CHAPTER 10. WRITE FOR THE NEXT PERSONGive your Variables Meaningful NamesString SubstitutionDon’t use Aliases in a ScriptPut functions in Alphabetical Order in a ModuleExplain Regular Expressions with CommentsWrite Comment-Based HelpWeigh the Difference Between Performance and ReadabilityCHAPTER 11. HANDLE ERRORS GRACEFULLYForce Hard-Terminating ErrorsAvoid Using $?Copy $Error[0] to your Own VariableCHAPTER 12. DON’T SKIMP ON SECURITYSign ScriptsUse Scriptblock LoggingNever Store Sensitive Information in Clear Text in CodeDon’t use Invoke-ExpressionUse PowerShell Constrained Language ModeCHAPTER 13. STICK TO POWERSHELLUse Native PowerShell Where PossibleUse PowerShell standard cmdlet namingCHAPTER 14. BUILD TOOLSCode for PortablityWrap Command-Line Utilities in Functions .Force Functions to Return Common Object TypesEnsure Module Functions Cover all the VerbsCHAPTER 15. RETURN STANDARDIZED, INFORMATIVE OUTPUTUse Progress Bars WiselyLeave the Format Cmdlets to the ConsoleUse Write-VerboseUse Write-InformationEnsure a Command Returns One Type of ObjectOnly Return Necessary Information to the PipelineCHAPTER 16. BUILD SCRIPTS FOR SPEEDUse an ArrayList or GenericList .NET Class when Elements Need to be Added to an ArrayUse a Regular Expression to Search Multiple String ValuesDon’t use Write-Host in BulkDon’t use the PipelineUse the .foreach() and .where() Methods .Use Parallel Processing .Use the .NET StreamReader Class When Reading Large Text FilesCHAPTER 17: USE VERSION CONTROLCreate repositories based on a purposeCommit Code changes based on small goalsCreate a branch based on the futureCHAPTER 18. BUILD TESTSLearn the Pester BasicsLeverage Infrastructure TestsAutomate Pester TestsUse PSScriptAnalyzerCHAPTER 19. MISCELLANEOUS TIPSWrite for Cross Platform .Don’t Query the Win32_Product CIM ClassCreate a Shortcut to run PowerShell as Administrator . .Store ‘Formatable’ Strings for Use LaterUse Out-GridView for GUI-based Sorting and FilteringDon’t Make Automation Scripts InteractiveCHAPTER 20. SUMMARY
Beginning R 4
Learn how to use R 4, write and save R scripts, read in and write out data files, use built-in functions, and understand common statistical methods. This in-depth tutorial includes key R 4 features including a new color palette for charts, an enhanced reference counting system (useful for big data), and new data import settings for text (as well as the statistical methods to model text-based, categorical data).Each chapter starts with a list of learning outcomes and concludes with a summary of any R functions introduced in that chapter, along with exercises to test your new knowledge. The text opens with a hands-on installation of R and CRAN packages for both Windows and macOS. The bulk of the book is an introduction to statistical methods (non-proof-based, applied statistics) that relies heavily on R (and R visualizations) to understand, motivate, and conduct statistical tests and modeling.Beginning R 4 shows the use of R in specific cases such as ANOVA analysis, multiple and moderated regression, data visualization, hypothesis testing, and more. It takes a hands-on, example-based approach incorporating best practices with clear explanations of the statistics being done.You will:* Acquire and install R and RStudio* Import and export data from multiple file formats* Analyze data and generate graphics (including confidence intervals)* Interactively conduct hypothesis testing* Code multiple and moderated regression solutionsWHO THIS BOOK IS FORProgrammers and data analysts who are new to R. Some prior experience in programming is recommended.MATT WILEY is a tenured, associate professor of mathematics with awards in both mathematics education and honor student engagement. He earned degrees in pure mathematics, computer science, and business administration through the University of California and Texas A&M systems. He serves as director for Victoria College’s quality enhancement plan and managing partner at Elkhart Group Limited, a statistical consultancy. With programming experience in R, C++, Ruby, Fortran, and JavaScript, he has always found ways to meld his passion for writing with his joy of logical problem solving and data science. From the boardroom to the classroom, Matt enjoys finding dynamic ways to partner with interdisciplinary and diverse teams to make complex ideas and projects understandable and solvable.JOSHUA F. WILEY is a lecturer in the Monash Institute for Cognitive and Clinical Neurosciences and School of Psychological Sciences at Monash University and a senior partner at Elkhart Group Limited, a statistical consultancy. He earned his PhD from the University of California, Los Angeles, and his research focuses on using advanced quantitative methods to understand the complex interplays of psychological, social, and physiological processes in relation to psychological and physical health. In statistics and data science, Joshua focuses on biostatistics and is interested in reproducible research and graphical displays of data and statistical models. Through consulting at Elkhart Group Limited and former work at the UCLA Statistical Consulting Group, he has supported a wide array of clients ranging from graduate students, to experienced researchers, and biotechnology companies. He also develops or co-develops a number of R packages including varian, a package to conduct Bayesian scale-location structural equation models, and MplusAutomation, a popular package that links R to the commercial Mplus software.1: Installing R2: Installing Packages and Using Libraries3: Data Input and Output4: Working with Data5: Data and Samples6: Descriptive Statistics7: Understanding Probability and Distribution8: Correlation and Regression9: Confidence Intervals10: Hypothesis Testing11: Multiple Regression12: Moderated Regression13: Analysts of VarianceBibliography
SQL Server Data Automation Through Frameworks
Learn to automate SQL Server operations using frameworks built from metadata-driven stored procedures and SQL Server Integration Services (SSIS). Bring all the power of Transact-SQL (T-SQL) and Microsoft .NET to bear on your repetitive data, data integration, and ETL processes. Do this for no added cost over what you’ve already spent on licensing SQL Server. The tools and methods from this book may be applied to on-premises and Azure SQL Server instances. The SSIS framework from this book works in Azure Data Factory (ADF) and provides DevOps personnel the ability to execute child packages outside a project—functionality not natively available in SSIS.Frameworks not only reduce the time required to deliver enterprise functionality, but can also accelerate troubleshooting and problem resolution. You'll learn in this book how frameworks also improve code quality by using metadata to drive processes. Much of the work performed by data professionals can be classified as “drudge work”—tasks that are repetitive and template-based. The frameworks-based approach shown in this book helps you to avoid that drudgery by turning repetitive tasks into "one and done" operations. Frameworks as described in this book also support enterprise DevOps with built-in logging functionality.WHAT YOU WILL LEARN* Create a stored procedure framework to automate SQL process execution* Base your framework on a working system of stored procedures and execution logging* Create an SSIS framework to reduce the complexity of executing multiple SSIS packages* Deploy stored procedure and SSIS frameworks to Azure Data Factory environments in the cloudWHO THIS BOOK IS FORDatabase administrators and developers who are involved in enterprise data projects built around stored procedures and SQL Server Integration Services (SSIS). Readers should have a background in programming along with a desire to optimize their data efforts by implementing repeatable processes that support enterprise DevOps.ANDY LEONARD is Chief Data Engineer at Enterprise Data & Analytics, creator and Data Philosopher at DILM (Data Integration Lifecycle Management) Suite, an Azure Data Factory and SQL Server Integration Services trainer and consultant, and a BimlHero. He is a SQL Server database and data warehouse developer, community mentor, engineer, and farmer. Andy is co-author of SQL Server Integration Services Design Patterns, Data Integration Life Cycle Management with SSIS, and The Biml Book.KENT BRADSHAW is the founder or Tudor Data Solutions, LLC. With over 40 years of IT experience, he is a SQL Server database/ETL developer and database architect with a background is in Medicaid claims, public schools, government, retail, and insurance systems. In 2011, Kent founded Tudor Data Solutions, LLC to pursue new development opportunities which led to his association with Andy Leonard and Enterprise Data & Analytics. In 2017, Kent received the MPP certification for Data Science.PART I: STORED PROCEDURE-BASED DATABASE FRAMEWORKS1. Stored Procedures 1012. Automation with Stored Procedures3. Stored Procedure Orchestrators4. A Stored Procedure-Base Metadata-Driven FrameworkPART II: SSIS FRAMEWORKS5. A Simple Custom File-Based SSIS Framework6. Framework Execution Engine7. Framework Logging8. Azure-SSIS Integration Runtime9. Deploy A Simple Custom File-Based Azure-SSIS Framework10. Framework Logging in ADF11. Fault Tolerance in the ADF Framework
Learn Blockchain by Building One
As cryptocurrencies and their underlying data structure, blockchains, become further intertwined in our daily lives, a full understanding of them is essential to anyone who wants to keep up and remain informed of the future of finance. There is no better learning method than a hands-on one, and Learn Blockchain by Building One offers just that.Develop your own blockchain using Python with step-by-step instructions from author Daniel van Flymen, an expert in the field. You will come away with a confident working knowledge of popular cryptocurrencies such as Bitcoin and Ethereum and which foundations make them work. Through helpful exercises and real-world examples, you will understand the core concepts of peer-to-peer networking, proof of work, hashing, encryption, and digital signatures.Learn Blockchain by Building One gives you timely, real-world lessons in blockchain and cryptocurrencies that you will need as our modern society becomes increasingly digitally sophisticated. The lasting implications of such technology, including the security of personal transactions and the role of government regulation, are not to be underestimated. Stay ahead of the curve and become a confident blockchain builder now!WHAT YOU WILL LEARN* Develop a fully-fledged blockchain in Python* Obtain a ground-up understanding of of Proof of Work* Grasp core cryptographic concepts, such as hashing, encryption, and digital signatures* Understand how gossip protocols and peer-to-peer networking works by implementing a TCP client-server* Realize the differences and trade-offs between popular blockchains such as Bitcoin and EthereumWHO THIS BOOK IS FORThis book is aimed at intermediate programmers in any area from finance to academia. Readers should be comfortable reading and writing basic Python.Daniel van Flymen is currently a Director of Engineering at Candid in New York City. As a seasoned Python veteran, he’s a regular code contributor to popular open source projects, and is a guest on the Software Engineering Daily podcast, having been on popular episodes such as Understanding Bitcoin Transactions and Blockchain Engineering. He frequently writes on Medium and has a number of popular articles, such as “Learn Blockchains by Building One” and “Learn Blockchains using Spreadsheets.” He is passionate about making Bitcoin accessible to everyone through education.
AI and UX
As venture capital and industrial resources are increasingly poured into rapid advances in artificial intelligence, the actual usage and success of AI depends on a satisfactory experience for the user. UX will play a significant role in the adoption of AI technologies across markets, and AI and UX explores just what these demands will entail.Great effort has been put forth to continuously make AI “smarter.” But, will smarter always equal more successful AI? It is not just about getting a product to market, but about getting the product into a user’s hands in a form that will be embraced. This demands examining the product from the perspective of the user. Authors Gavin Lew and Robert Schumacher have written AI and UX to examine just how product managers and designers can best strike this balance. From exploring the history of the parallel journeys of AI and UX, to investigating past product examples and failures, to practical expert knowledge on how to best execute a positive user experience, AI and UX examines all angles of how AI can best be developed within a UX framework.The new world of AI necessitates an equally new UX lens through which to see all potential products. While massive inroads have created strides in AI technology, it must be accessible and easy to use for the consumer. Innovators in the field need to shift thinking from “it works” to “it works well,” which makes all the difference in increasing adoption. Let your users enhance your data, and let the UX of your product do the selling for you. AI and UX is your roadmap for the future.WHAT YOU'LL LEARN* Understand how the usage and success of AI depends on a great user experience * Discover how technology can advance beyond “it works” to “it works well,” which subsequently increases its adoption* Determine what ways can we let the users enhance the data to make AI better attuned to their needs* Realize how you can make humans smarter in their interactions with AIWHO THIS BOOK IS FORThose interested in AI and future implications; these can be futurists, technophiles, or product designers and product managers working on AI productsGAVIN LEW has 25 years of experience in the corporate and academic environment. He founded User Centric and grew the company to be the largest private UX consultancy in the United States. After selling the company, he continued to lead a North American UX team to become one of the most profitable business units of the parent organization. He is a frequent presenter at national and international conferences and the inventor of several patents. He is an adjunct professor at DePaul and Northwestern Universities. Gavin has a Masters in Experimental Psychology from Loyola University, and is currently the Managing Partner of Bold Insight, part of ReSight Global, a globally funded UX consulting practice across North America, Europe and Asia.ROBERT M. SCHUMACHER, JR. has more than 30 years of experience in academic, agency and corporate worlds. He co-owned User Centric with Gavin from its early stages until it was sold to GfK in 2012. While at User Centric, Bob helped found the User Experience Alliance, a global alliance of UX agencies. As well he founded User Experience Ltd, a UX agency in Beijing. He is Co-founder, co-owner, and Managing Partner of Bold Insight, part of ReSight Global, a global UX company. He has several patents and dozens of technical publications, including user interface standards for health records for the US government. He also is an Adjunct Professor at Northwestern University. Bob has a Ph.D. in Cognitive and Experimental Psychology from the University of Illinois at Urbana-Champaign.1. Introduction to AI and UX2. AI and UX: Parallel Journeys3. AI-Enabled Products are Emerging All around Us4. Garbage In; Garbage Out5. Applying a UX Framework
Creating Game Environments in Blender 3D
Discover how to create a simple game environment in Blender 3D, from modeling and texturing game assets, to placing them in a scene. You’ll export and import game assets as well as look at open-source game engines that will work with your game assets. Creating Game Environments in Blender 3D introduces the power of Blender 3D when creating a low poly game environment.The book starts by discussing the basics of game terminology, such as knowing the difference between low poly and high poly assets and the types of game you’re likely to work on. You’ll also take a brief look at Blender's background and installation. The following chapters talk about the process for creating a simple game environment. This is discussed in detail along with a sample project. These chapters discuss the common tools for starting a game environment and the methods for enhancing your game environment, such as color fundamentals. The final chapter shows how you can export the game assets you created in Blender, how you can import game assets in Blender, and how to evaluate the different game engines available.This book shows you the exciting side of creating a game environment while showing the power of Blender. After reading it, you will feel confident about creating a game environment.WHAT YOU WILL LEARN* Use Blender to create low poly game environments* Work with the common Blender tools for game environment design and developmentDiscover how to use Blender features in depth * Compare the Eevee and Cycles game engines WHO THIS BOOK IS FORGame environment artists who want to use Blender 3D to create a game environment. Some previous exposure to game design and development would be helpful, but not required.Ezra Thess Mendoza Guevarra graduated with a bachelor of science in information technology from STI College, the Philippines. Though she graduated with knowledge in web development, her passion for the arts that started in her childhood never faded away. In 2016, she got interested in 3D modeling.Despite being epileptic, she continues to pursue her dreams and “break the walls”. A researcher and a passionate artist, Ezra is currently using her skills as both freelance writer and artist.CHAPTER 1: GETTING STARTEDChapter Goal: The goal of this chapter is to introduce the readers to some of the fundamentals that will help them to create a game environment they desire.Sub-Topics* What is a game environment?* What does a game environment artist do?* What is game asset?* Skills and tools that can help you in creating a game environment* Types of games* Low poly vs high poly* About Blender and its installationCHAPTER 2: LET’S CREATE!Chapter Goal: The goal of this chapter is to introduce readers to the features of Blender for modeling game assets together with a sample project.Sub-Topics* In-depth learning of modeling workspace* Common tools for modeling a game environmentCHAPTER 3: COLOR IT!Chapter Goal: The goal of this chapter is to introduce readers to texturing a low poly asset along with a sample project.Sub-Topics* Color fundamentals* In-depth learning of UV workspace* In-depth learning of Texture Paint workspace* Common tools for texturing a game environmentCHAPTER 4: TEXTURE IT!CHAPTER 5: THE FINALEChapter Goal: This chapter shows the reader how to export and import game assets from Blender as well as introduces the different game engines where the reader can use their created game environment.Sub-Topics:* Process of exporting game assets* Types of file format* Game engines* Importing game assets for modification
The Common Lisp Condition System
Discover the functioning and example uses of the Common Lisp condition system. This book supplements already existing material for studying Common Lisp as a language by providing detailed information about the Lisp condition system and its control flow mechanisms; it also describes an example ANSI-conformant implementation of the condition system.In part 1 of The Common Lisp Condition System, the author introduces the condition system using a bottom-up approach, constructing it piece by piece. He uses a storytelling approach to convey the foundation of the condition system, dynamically providing code to alter the behavior of an existing program. Later, in part 2, you’ll implement a full and complete ANSI-conformant condition system while examining and testing each piece of code that you write.Throughout, the author demonstrates how to extend Lisp using Lisp itself by using the condition system as an example. This is done while paying proper attention to the CL restart subsystem, giving it attention on a par with the handler subsystem. After reading and using this book, you'll have learned about the inner functioning of the condition system, how to use it in your own Common Lisp coding and applications, and how to implement it from scratch, should such a need arise.WHAT YOU WILL LEARN* Examine the condition system and see why it is important in Common Lisp* Construct the condition system from scratch using foundational mechanisms provided by Common Lisp* Program the condition system and its control flow mechanisms to achieve practical results* Implement all parts of a condition system: conditions, restarts, handler- and restart-binding macros, signalling mechanisms, assertions, a debugger, and moreWHO THIS BOOK IS FORBeginning and intermediate Lisp programmers, as well as intermediate programmers of other programming languages.MICHAŁ "PHOE" HERDA is a programmer with contributions to multiple parts of the Common Lisp ecosystem: CL implementations, existing and widely-used CL utilities, documentation, and some of the new library ideas that he slowly pushes forwards and works on. The book The Common Lisp Condition System is his first work -- an attempt to create a tutorial on the condition system that was missing, even all the years after which ANSI Common Lisp was standardized.1: Basic Concepts2: Introducing the Condition System3: Implementing the Common Lisp Condition System4: Wrapping UpAppendix A: Implementation of Dynamic Variables in CAppendix B: Additional Utilities for Working with Common Lisp ConditionsAppendix C: Lisp Macros 101Appendix D: Condition System Reference