SwiftUI Cookbook
Unleash the power of declarative programming in SwiftUI with practical recipes for building cross-platform Apple applications for iOS 14, macOS, and watchOS using Swift 5.3, Xcode 12, and SwiftUI 2.0Key FeaturesApply the declarative programming paradigm for building cross-platform UIs for Apple devicesLearn to integrate UIKit, Core Data, Sign in with Apple, and Firebase with SwiftUIAdopt the new SwiftUI 2.0 features to build visually appealing UIs at speedBook DescriptionSwiftUI is an innovative and simple way to build beautiful user interfaces (UIs) for all Apple platforms, right from iOS and macOS through to watchOS and tvOS, using the Swift programming language. In this recipe-based book, you'll work with SwiftUI and explore a range of essential techniques and concepts that will help you through the development process. The recipes cover the foundations of SwiftUI as well as the new SwiftUI 2.0 features introduced in iOS 14. Other recipes will help you to make some of the new SwiftUI 2.0 components backward-compatible with iOS 13, such as the Map View or the Sign in with Apple View.The cookbook begins by explaining how to use basic SwiftUI components. Then, you'll learn the core concepts of UI development such as Views, Controls, Lists, and ScrollViews using practical implementation in Swift. By learning drawings, built-in shapes, and adding animations and transitions, you'll discover how to add useful features to the SwiftUI. When you're ready, you'll understand how to integrate SwiftUI with exciting new components in the Apple development ecosystem, such as Combine for managing events and Core Data for managing app data. Finally, you'll write iOS, macOS, and watchOS apps while sharing the same SwiftUI codebase.By the end of this SwiftUI book, you'll have discovered a range of simple, direct solutions to common problems found in building SwiftUI apps.What you will learnExplore various layout presentations in SwiftUI such as HStack, VStack, LazyHStack, and LazyVGridCreate a cross-platform app for iOS, macOS, and watchOSGet up to speed with drawings in SwiftUI using built-in shapes, custom paths, and polygonsDiscover modern animation and transition techniques in SwiftUIAdd user authentication using Firebase and Sign in with AppleHandle data requests in your app using Core DataSolve the most common SwiftUI problems, such as integrating a MapKit map, unit testing, snapshot testing, and previewing layoutsWho this book is forThis book is for mobile developers who want to learn SwiftUI as well as experienced iOS developers transitioning from UIKit to SwiftUI. The book assumes knowledge of the Swift programming language. Knowledge of object-oriented design and data structures is useful but not necessary.
Advances in Computer Games
This book constitutes the refereed post-conference proceedings of the 16th International Conference on Advances in Computer Games, ACG 2019, held in Macao, China, in August 2019. The 12 full papers presented together with 2 invited papers were carefully reviewed and selected from 19 submissions. The selected papers are devoted to topics such as cooperation; single player games; mathematical approaches; nonogram: general and specific approaches; and deep learning.
Practical Azure SQL Database for Modern Developers
Here is the expert-level, insider guidance you need on using Azure SQL Database as your back-end data store. This book highlights best practices in everything ranging from full-stack projects to mobile applications to critical, back-end APIs. The book provides instruction on accessing your data from any language and platform. And you learn how to push processing-intensive work into the database engine to be near the data and avoid undue networking traffic. Azure SQL is explained from a developer's point of view, helping you master its feature set and create applications that perform well and delight users. Core to the book is showing you how Azure SQL Database provides relational and post-relational support so that any workload can be managed with easy accessibility from any platform and any language. You will learn about features ranging from lock-free tables to columnstore indexes, and about support for data formats ranging from JSON and key-values to the nodes and edges in the graph database paradigm. Reading this book prepares you to deal with almost all data management challenges, allowing you to create lean and specialized solutions having the elasticity and scalability that are needed in the modern world. What You Will LearnMaster Azure SQL Database in your development projects from design to the CI/CD pipelineAccess your data from any programming language and platformCombine key-value, JSON, and relational data in the same databasePush data-intensive compute work into the database for improved efficiencyDelight your customers by detecting and improving poorly performing queriesEnhance performance through features such as columnstore indexes and lock-free tablesBuild confidence in your mastery of Azure SQL Database's feature set Who This Book Is ForDevelopers of applications and APIs that benefit from cloud database support, developers who wish to master their tools (including Azure SQL Database, and those who want their applications to be known for speedy performance and the elegance of their code
Technologies and Innovation
This book constitutes the proceedings of the 6th International Conference on Technologies and Innovation, CITI 2020, held in Guayaquil, Ecuador, in November-December 2020.The 16 full papers presented in this volume were carefully reviewed and selected from 41 submissions. They are organized in topical sections named: semantic technologies and machine learning; ICT for agronomy and environment; mobile and collaborative technologies.
Leveraging Applications of Formal Methods, Verification and Validation: Applications
The three-volume set LNCS 12476 - 12478 constitutes the refereed proceedings of the 9th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2020, which was planned to take place during October 20-30, 2020, on Rhodes, Greece. The event itself was postponed to 2021 due to the COVID-19 pandemic. The papers presented were carefully reviewed and selected for inclusion in the proceedings. Each volume focusses on an individual topic with topical section headings within the volume: Part I, Verification Principles: Modularity and (De-)Composition in Verification; X-by-Construction: Correctness meets Probability; 30 Years of Statistical Model Checking; Verification and Validation of Concurrent and Distributed Systems. Part II, Engineering Principles: Automating Software Re-Engineering; Rigorous Engineering of Collective Adaptive Systems. Part III, Applications: Reliable Smart Contracts: State-of-the-art, Applications, Challenges and Future Directions; Automated Verification of Embedded Control Software; Formal methods for DIStributed COmputing in future RAILway systems.
Algorithms for Sensor Systems
This book constitutes revised selected papers from the 16th International Symposium on Algorithms and Experiments for Wireless Sensor Networks, ALGOSENSORS 2020, held in Pisa, Italy*, in September 2020.The 12 full papers presented in this volume were carefully reviewed and selected from 27 submissions. ALGOSENSORS is an international symposium dedicated to the algorithmic aspects of wireless networks.*The conference was held virtually due to the COVID-19 pandemic.
Leveraging Applications of Formal Methods, Verification and Validation: Verification Principles
The three-volume set LNCS 12476 - 12478 constitutes the refereed proceedings of the 9th International Symposium on Leveraging Applications of Formal Methods, ISoLA 2020, which was planned to take place during October 20-30, 2020, on Rhodes, Greece. The event itself was postponed to 2021 due to the COVID-19 pandemic. The papers presented were carefully reviewed and selected for inclusion in the proceedings. Each volume focusses on an individual topic with topical section headings within the volume: Part I, Verification Principles: Modularity and (De-)Composition in Verification; X-by-Construction: Correctness meets Probability; 30 Years of Statistical Model Checking; Verification and Validation of Concurrent and Distributed Systems. Part II, Engineering Principles: Automating Software Re-Engineering; Rigorous Engineering of Collective Adaptive Systems. Part III, Applications: Reliable Smart Contracts: State-of-the-art, Applications, Challenges and Future Directions; Automated Verification of Embedded Control Software; Formal methods for DIStributed COmputing in future RAILway systems.
Conceptual Modeling
This book constitutes the refereed proceedings of the 39th International Conference on Conceptual Modeling, ER 2020, which was supposed to be held in Vienna, Austria, in November 2020, but the conference was held virtually due to the COVID-19 pandemic.The 28 full and 16 short papers were carefully reviewed and selected from 143 submissions. This events covers a wide range of topics, and the papers are organized in the following sessions: foundations of conceptual modeling; process mining and conceptual modeling; conceptual modeling of business rules and processes; modeling chatbots, narratives and natural language; ontology and conceptual modeling; applications of conceptual modeling; schema design, evolution, NoSQL; empirical studies of conceptual modeling; networks, graphs and conceptual modeling; and conceptual modeling of complex and data-rich systems.
Serverless SwiftApache Openwhisk for IOS Developers
Decrease development time to market with Serverless Swift--the event-based modern architecture for full stack developers. This book reviews how to use the Apache OpenWhisk framework to enrich your standalone applications with cloud-based functionalities from data sources up to Artificial Intelligence. You'll leverage serverless in your mobile apps with use case scenarios and gain the skills that will allow you to create robust, performant, secure yet economically viable systems in a cloud native environment. Finally, you'll see how to participate in the creation and further development of this open source project with Apache Foundation, which is supported by IBM, Google, and othersServerless has become a new style of coding, and it can be used to offload your mobile apps without incurring unnecessary costs. Get a solid, hands-on introduction into serverless, function-as-a-service, and cloud function technologies and learn why startups and enterprises are so excitedabout using them. What You'll LearnEmploy Apache OpenWhisk in your appsExpand your iOS skills with Cloud Native Serverless programmingUse a Docker container as a Polyglot actionWho This Book Is ForDevelopers, development leaders in the enterprise, and startup CTOs who want to learn a leading technology for the cloud in order to enrich applications with SaaS, Social Networks, and cloud based AI and APIs.
Formal Modeling and Analysis of Timed Systems
This book constitutes the refereed proceedings of the 18th International Conference on Formal Modeling and Analysis of Timed Systems, FORMATS 2020, held in Vienna, Austria, in September 2020. The 16 full papers and 2 short papers presented in this volume were carefully reviewed and selected from 42 submissions. The papers focus on topics such as foundations and semantics, methods and tools, techniques, algorithms, data structures, and software tools for analyzing timed systems and resolving temporal constraints.Due to the Corona pandemic this conference was held as a virtual event.
Quality of Information and Communications Technology
This book constitutes the refereed proceedings of the 13th International Conference on the Quality of Information and Communications Technology, QUATIC 2020, held in Faro, Portugal*, in September 2020.The 27 full papers and 12 short papers were carefully reviewed and selected from 81 submissions. The papers are organized in topical sections: quality aspects in machine learning, AI and data analytics; evidence-based software quality engineering; human and artificial intelligences for software evolution; process modeling, improvement and assessment; software quality education and training; quality aspects in quantum computing; safety, security and privacy; ICT verification and validation; RE, MDD and agile.*The conference was held virtually due to the COVID-19 pandemic.
AlgorithmsDesign and Analysis
Algorithms play a central role both in the theory and in the practice of computing. The goal of the authors was to write a textbook that would not trivialize the subject but would still be readable by most students on their own. The book contains over 120 exercises. Some of them are drills; others make important points about the material covered in the text or introduce new algorithms not covered there. The book also provides programming projects. From the Table of Contents: Chapter 1: Basic knowledge of Mathematics, Relations, Recurrence relation and Solution techniques, Function and Growth of functions. Chapter 2: Different Sorting Techniques and their analysis. Chapter 3: Greedy approach, Dynamic Programming, Branch and Bound techniques, Backtracking and Problems, Amortized analysis, and Order Statics. Chapter 4: Graph algorithms, BFS, DFS, Spanning Tree, Flow Maximization Algorithms. Shortest Path Algorithms. Chapter 5: Binary search tree, Red black Tree, Binomial heap, B-Tree and Fibonacci Heap. Chapter 6: Approximation Algorithms, Sorting Networks, Matrix operations, Fast Fourier Transformation, Number theoretic Algorithm, Computational geometry Randomized Algorithms, String matching, NP-Hard, NP-Completeness, Cooks theorem.
Pro IOS Testing
Discover what tools there are for unit testing in iOS, and how to work in a test-driven environment. This book reveals how testing is a crucial capability in any iOS developer's toolset, and a minimum requirement in iOS interviews.A few years ago, tests on mobile platforms were not very popular. It wasn't a technical constraint, more a cultural one. But these days it's a crucial skill set, especially when projects become big and hard to maintain. This book shows you how to set up a testing target in XCode unit tests. You'll learn how to write unit tests properly and incorporate concepts like spies and mocks and code coverage. You'll also learn the philosophy behind the architecture of UI tests, and how to mock network and DB layers in testing. Write unbreakable UI tests performance tests, as well. And learn the difference between integration tests and snapshot testing.This book will show you how to maintain code that's not only bug-free butwill also remain high quality over time and maintainable while you make changes and refactors during an app's life. Testing in all its aspects is the best way of maintaining iOS projects to run fast and reliably long after you've released them. Many iOS developers working today lack an understanding of the advantages of testing, and might be unfamiliar with tools that make the job easier, such as XCTest framework. With Pro iOS Testing you'll see how to develop and test apps that work and stay working for a long time. What You'll LearnSet up a stable testing systemExtend an app's lifetime with testing before releaseIncorporate testing into your everyday development routineWrite unbreakable UI tests performance testsUnderstand the difference between integration tests and snapshot testingWho This Book Is ForProfessional iOS developers with extensive experience in the basics of building apps.
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 strings Implement parallel processing Who This Book Is For PowerShell script developers.
Software Architecture
This book constitutes the refereed proceedings of the tracks and workshops which complemented the 14th European Conference on Software Architecture, ECSA 2020, held in L'Aquila, Italy*, in September 2020. The 30 full papers and 9 short papers presented in this volume were carefully reviewed and selected from 72 submissions. Papers presented were accepted into the following tracks and workshops: ECSA 2020 Doctoral Symposium track; ECSA 2020 Tool Demos track; ECSA 2020 Gender Diversity in Software Architecture &Software Engineering track; CASA - 3rd International Workshop on Context-aware, Autonomous and Smart Architecture; CSE/QUDOS - Joint Workshop on Continuous Software Engineering and Quality-Aware DevOps; DETECT - 3rd International Workshop on Modeling, Verication and Testing of Dependable Critical Systems; FAACS-MDE4SA - Joint Workshop on Formal Approaches for Advanced Computing Systems and Model-Driven Engineering for Software Architecture; IoT-ASAP - 4th International Workshop on Engineering IoT Systems: Architectures, Services, Applications, and Platforms; SASI4 - 2nd Workshop on Systems, Architectures, and Solutions for Industry 4.0; WASA - 6th International Workshop on Automotive System/Software Architecture.*The conference was held virtually due to the COVID-19 pandemic.
Euro-Par 2020: Parallel Processing
This book constitutes the proceedings of the 26th International Conference on Parallel and Distributed Computing, Euro-Par 2020, held in Warsaw, Poland, in August 2020. The conference was held virtually due to the coronavirus pandemic. The 39 full papers presented in this volume were carefully reviewed and selected from 158 submissions. They deal with parallel and distributed computing in general, focusing on support tools and environments; performance and power modeling, prediction and evaluation; scheduling and load balancing; high performance architectures and compilers; data management, analytics and machine learning; cluster, cloud and edge computing; theory and algorithms for parallel and distributed processing; parallel and distributed programming, interfaces, and languages; multicore and manycore parallelism; parallel numerical methods and applications; and accelerator computing.
Beginning Power Apps
Teaches you how to build data-centric mobile applications for your business, regardless of your technical knowledge Shows you how to leverage the complexities of building a real-word application with the same ease of writing a simple spreadsheet Uses a hands-on approach complete with context, explanatory screenshots, and non-technical terminology Instructs you how to write apps that manage complex data, take pictures, or retrieve GPS coordinates
Windows Containers for It Pros
This book has everything you need to know about Windows Containers, from an IT pro and ops perspective. Containers are the next big thing in IT infrastructure. More and more, we see companies relying on Kubernetes implementations to run their workloads on-premises, in the cloud, or even in hybrid deployments. IT pros and ops teams are now faced with the challenge of getting up to speed on container architecture, knowing how it differs from virtual machines (VMs), and the best means and practices for managing their applications in containers. Windows Containers for IT Pros explores all of that, from the IT pro experience. You will approach learning about containers through the optics of an author who is accustomed to deploying virtual machines (VMs). You will learn about differences, parallel practices, use cases, and how to get started and go deep into day 2 operations. What You Will Learn Architect and deploy Windows Containers leveraging existing skills Containerize existing applications Know best practices for managing resources in Windows Containers Get comfortable moving containers to the cloud with Azure Understand the options for using containers on Azure Who This Book Is For Windows IT pros and technical professionals deploying Windows Server and server applications today, such as .NET, ASP.NET, IIS, and more. This book assumes little to no experience with scripting as readers deploy their workloads via one of the Windows UIs (Hyper-V, Server Manager, Windows Admin Center, etc.). Knowledge of VMs and infrastructure, such as clustered operating systems, is recommended but not required.
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 standardsWork with files, directories, processes, and signals Explore IPC and how to work with it Who This Book Is For Programmers 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. .
Swarm Intelligence
This book constitutes the proceedings of the 12th International Conference on Swarm Intelligence, ANTS 2020, held online -due to COVID-19- in Barcelona Spain, in October 2020. The 20 full papers presented, together with 8 short papers and 5 extended abstracts were carefully reviewed and selected from 50 submissions. ANTS 2020 contributions are dealing with any aspect of swarm intelligence.
Graph-Theoretic Concepts in Computer Science
This book constitutes the revised papers of the 46th International Workshop on Graph-Theoretic Concepts in Computer Science, WG 2020, held in Leeds, UK, in June 2020. The workshop was held virtually due to the COVID-19 pandemic. The 32 full papers presented in this volume were carefully reviewed and selected from 94 submissions. They cover a wide range of areas, aiming to present emerging research results and to identify and explore directions of future research of concepts on graph theory and how they can be applied to various areas in computer science.
The Sam Coupe User’s Guide
The SAM Coup矇 was an 8-bit British home computer first released in late 1989. Designed to offer backwards compatibility with the ZX Spectrum, it was marketed as a logical upgrade for owners of the much-loved range of Sinclair machines. Originally manufactured by Miles Gordon Technology, the SAM Coup矇 promised a great deal. Sadly, however, it was not a financial success due to a lack of commercial software and tough competition from the faster 16-bit processors of its rivals.This 30th Anniversary Edition User's Guide features a new foreword from Mel Croucher, the original author. The manual is Illustrated throughout by Robin Evans, his memorable creation Sam the Robot always on hand to help users get the most out of their wonder machine.Offered as both a collector's piece and a valuable resource for lucky owners of a SAM Coup矇 today, we are excited to bring this slice of computing history back to life for the first time in thirty years.
Theoretical Aspects of Computing - Ictac 2020
This book constitutes the proceedings of the 17th International Colloquium on Theoretical Aspects of Computing, ICTAC 2020, which took place during November 30-December 4, 2020. The conference was originally planned to take place in Macau, China, but changed to a virtual only format due to the COVID-19 pandemic. The 15 papers presented in this volume were carefully reviewed and selected from 40 submissions. The book also contains one invited talk in full paper length. The book deals with challenges in both theoretical aspects of computing and the exploitation of theory through methods and tools for system development.
Mastering the Commodore 64
First published in 1983, this user-friendly guide to the Commodore 64 helped many owners of the much-loved home computer understand their machine to a whole new level. The details within the book enabled users to go further than the confines of programming purely in BASIC and is still a highly useful guide for those interested in retro gaming on the classic machine.* * *As the original publisher Interface Publications wrote: This book is a manual for all Commodore 64 users who wish to increase their understanding of how their computer works and how to program it proficiently in BASIC and machine code. The author explains how sound and music synthesis, programmable characters, high resolution graphics, function key programming, animation and sprites are done in both BASIC and machine code. It also contains a full memory map of the Commodore 64 and explains how the full 64K can be used and how to correct errors in both BASIC and the KERNAL ROMs.* * *Acorn Books is proud to present its Retro Reproductions series, a collection of classic computing works from the 80s and 90s given a new lease of life in the 21st century. From standards of programming reference no self-respecting microcomputer coder would be without, to obscure works unavailable for many years, these modern re-prints are perfect for any connoisseur of retro computing.
Mastering the Commodore 64
First published in 1983, this user-friendly guide to the Commodore 64 helped many owners of the much-loved home computer understand their machine to a whole new level. The details within the book enabled users to go further than the confines of programming purely in BASIC and is still a highly useful guide for those interested in retro gaming on the classic machine.* * *As the original publisher Interface Publications wrote: This book is a manual for all Commodore 64 users who wish to increase their understanding of how their computer works and how to program it proficiently in BASIC and machine code. The author explains how sound and music synthesis, programmable characters, high resolution graphics, function key programming, animation and sprites are done in both BASIC and machine code. It also contains a full memory map of the Commodore 64 and explains how the full 64K can be used and how to correct errors in both BASIC and the KERNAL ROMs.* * *Acorn Books is proud to present its Retro Reproductions series, a collection of classic computing works from the 80s and 90s given a new lease of life in the 21st century. From standards of programming reference no self-respecting microcomputer coder would be without, to obscure works unavailable for many years, these modern re-prints are perfect for any connoisseur of retro computing.
Fast Fourier Transform Algorithms for Parallel Computers
Following an introduction to the basis of the fast Fourier transform (FFT), this book focuses on the implementation details on FFT for parallel computers. FFT is an efficient implementation of the discrete Fourier transform (DFT), and is widely used for many applications in engineering, science, and mathematics. Presenting many algorithms in pseudo-code and a complexity analysis, this book offers a valuable reference guide for graduate students, engineers, and scientists in the field who wish to apply FFT to large-scale problems.Parallel computation is becoming indispensable in solving the large-scale problems increasingly arising in a wide range of applications. The performance of parallel supercomputers is steadily improving, and it is expected that a massively parallel system with hundreds of thousands of compute nodes equipped with multi-core processors and accelerators will be available in the near future. Accordingly, the book also provides up-to-date computational techniquesrelevant to the FFT in state-of-the-art parallel computers. Following the introductory chapter, Chapter 2 introduces readers to the DFT and the basic idea of the FFT. Chapter 3 explains mixed-radix FFT algorithms, while Chapter 4 describes split-radix FFT algorithms. Chapter 5 explains multi-dimensional FFT algorithms, Chapter 6 presents high-performance FFT algorithms, and Chapter 7 addresses parallel FFT algorithms for shared-memory parallel computers. In closing, Chapter 8 describes parallel FFT algorithms for distributed-memory parallel computers.
Raku Recipes
Explore Raku problems and solutions using the latest version of the Raku programming language. In Raku Recipes, the emphasis is on applying Raku code to various important tasks and applications including data science, analytics, microservices, and desktop/console applications. There are also fun one-liner script recipes and instructions on how to create mini-languages of your very own. All in all, over 70 recipes cover a broad range of the tasks and problems encountered by a modern Raku developer. You'll be able to solve problems starting from basics such as input/output and math, to more complex domains such as microservices web sockets, web hooks, and mini-bots. What You Will LearnPut Raku to use in a real world environmentWork with Raku modules, including design classes, roles, and moreQuery a GeoIP database and extract information from the webCarryout text processing such as creating a dictionary with fast searches over it and scraping markdown documentsWork with MongoDB, WikiData, and other data sourcesBuild data science and analytics applications using RakuIntegrate with Python, C, and other languages and librariesCreate mini-languages and shell scripting languages Who This Book Is For While some prior experience in Raku may be useful, it is not required. Prior programming experience using other scripting languages, such as Perl, is recommended, however.
The Art of High Performance Computing for Computational Science, Vol. 2
Chapter 1: Supercomputers and application performance.- Chapter 2: Performance optimization of applications.- Chapter 3: Case studies of performance optimization of applications.- Chapter 4: O(N) methods.- Chapter 5: Acceleration of Classical Molecular Dynamics Simulations.- Chapter 6: Large scale quantum chemical calculation.
Product-Focused Software Process Improvement
This book constitutes the refereed proceedings of the 21st International Conference on Product-Focused Software Process Improvement, PROFES 2020, held in Turin, Italy, in November 2020. Due to COVID-19 pandemic the conference was held virtually. The 19 revised full papers and 3 short papers presented were carefully reviewed and selected from 68 submissions. The papers cover a broad range of topics related to professional software development and process improvement driven by product and service quality needs. They are organized in topical sections on Agile Software Development.
Innovations in Digital Economy
This book constitutes the revised and extended papers of the First International Conference on Innovations in Digital Economy, SPBU IDE 2019, held in St. Petersburg, Russia, in October 2019.The 8 papers presented were thoroughly reviewed and selected for publication from 78 submissions. The papers are organized according the following topical sections: economic efficiency and social consequences of digital innovations implementation; industrial, service and agricultural digitalization; regional innovation systems and clusters as drivers of the economic growth during the Fourth Industrial Revolution; response of an educational system and labor market to the digital-driven changes in the economic system.
Runtime Verification
This book constitutes the refereed proceedings of the 20th International Conference on Runtime Verification, RV 2020, held in Los Angeles, CA, USA, in October 2020. The conference was held virtually due to the COVID-19 pandemic. The 14 regular papers and 2 short papers presented in this book were carefully reviewed and selected from 43 submissions. Also included are an invited paper, 5 tutorial papers, 6 tool papers, and a benchmark paper. The RV conference is concerned with all aspects of monitoring and analysis of hardware, software and more general system executions. The papers are organized in the following topical sections: runtime verification for autonomy; runtime verification for software; runtime verification with temporal logic specifications; stream-based monitoring; and runtime verification for cyber-physical systems.
Foundations of Software Science and Computation Structures
This open access book constitutes the proceedings of the 22nd International Conference on Foundations of Software Science and Computational Structures, FOSSACS 2019, which took place in Prague, Czech Republic, in April 2019, held as part of the European Joint Conference on Theory and Practice of Software, ETAPS 2019. The 29 papers presented in this volume were carefully reviewed and selected from 85 submissions. They deal with foundational research with a clear significance for software science. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
The Essence of Software Engineering
This open access book includes contributions by leading researchers and industry thought leaders on various topics related to the essence of software engineering and their application in industrial projects. It offers a broad overview of research findings dealing with current practical software engineering issues and also pointers to potential future developments.Celebrating the 20th anniversary of adesso AG, adesso gathered some of the pioneers of software engineering including Manfred Broy, Ivar Jacobson and Carlo Ghezzi at a special symposium, where they presented their thoughts about latest software engineering research and which are part of this book. This way it offers readers a concise overview of the essence of software engineering, providing valuable insights into the latest methodological research findings and adesso's experience applying these results in real-world projects. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Open Source Systems
This book constitutes the refereed proceedings of the 13th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2017, held in Buenos Aires, Argentina, in May 2017.The 16 revised full papers and 3 short papers presented were carefully reviewed and selected from 32 submissions. The papers cover a wide range of topics related to free, libre, and open source software (FLOSS), including: licensing, strategies, and practices; case studies; projects, communication, and participation; tools; and project management, development and evaluation. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Agile Processes in Software Engineering and Extreme Programming
The volume constitutes the proceedings of the 18th International Conference on Agile Software Development, XP 2017, held in Cologne, Germany, in May 2017.The 14 full and 6 short papers presented in this volume were carefully reviewed and selected from 46 submissions. They were organized in topical sections named: improving agile processes; agile in organization; and safety critical software. In addition, the volume contains 3 doctoral symposium papers (from 4 papers submitted). This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Computer Aided Verification
This open access two-volume set LNCS 10980 and 10981 constitutes the refereed proceedings of the 30th International Conference on Computer Aided Verification, CAV 2018, held in Oxford, UK, in July 2018. The 52 full and 13 tool papers presented together with 3 invited papers and 2 tutorials were carefully reviewed and selected from 215 submissions. The papers cover a wide range of topics and techniques, from algorithmic and logical foundations of verification to practical applications in distributed, networked, cyber-physical, and autonomous systems. They are organized in topical sections on model checking, program analysis using polyhedra, synthesis, learning, runtime verification, hybrid and timed systems, tools, probabilistic systems, static analysis, theory and security, SAT, SMT and decisions procedures, concurrency, and CPS, hardware, industrial applications. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Fundamental Approaches to Software Engineering
This book constitutes the proceedings of the 21st International Conference on Fundamental Approaches to Software Engineering, FASE 2018, which took place in Thessaloniki, Greece in April 2018, held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2018.The 19 papers presented in this volume were carefully reviewed and selected from 63 submissions. The papers are organized in topical sections named: model-based software development; distributed program and system analysis; software design and verification; specification and program testing; family-based software development. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Agile Processes in Software Engineering and Extreme Programming
This open access book constitutes the proceedings of the 19th International Conference on Agile Software Development, XP 2018, held in Porto, Portugal, in May 2018.XP is the premier agile software development conference combining research and practice, and XP 2018 provided a playful and informal environment to learn and trigger discussions around its main theme - make, inspect, adapt.The 21 papers presented in this volume were carefully reviewed and selected from 62 submissions. They were organized in topical sections named: agile requirements; agile testing; agile transformation; scaling agile; human-centric agile; and continuous experimentation. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Formal Methods: Foundations and Applications
This book constitutes the refereed proceedings of the 23rd Brazilian Symposium on Formal Methods, SBMF 2020, which was supposed to take place in Ouro Preto, Brazil, in November 2020. Instead the symposium took place virtually due to the COVID-19 pandemic. The 10 regular papers presented together with 3 invited talks in this book were carefully reviewed and selected from 17 submissions. The papers are organized in topical sections such as: experience reports; models, languages and semantics; and software product lines. Chapter 'Safety Assurance of a High Voltage Controller for an Industrial Robotic System' is available open access under a Creative Commons Attribution 4.0 International License via link.springer.com.
Agile Processes in Software Engineering and Extreme Programming
This open access book constitutes the proceedings of the 19th International Conference on Agile Software Development, XP 2018, held in Porto, Portugal, in May 2018.XP is the premier agile software development conference combining research and practice, and XP 2018 provided a playful and informal environment to learn and trigger discussions around its main theme - make, inspect, adapt.The 21 papers presented in this volume were carefully reviewed and selected from 62 submissions. They were organized in topical sections named: agile requirements; agile testing; agile transformation; scaling agile; human-centric agile; and continuous experimentation. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
The Future of Software Quality Assurance
This open access book, published to mark the 15th anniversary of the International Software Quality Institute (iSQI), is intended to raise the profile of software testers and their profession. It gathers contributions by respected software testing experts in order to highlight the state of the art as well as future challenges and trends. In addition, it covers current and emerging technologies like test automation, DevOps, and artificial intelligence methodologies used for software testing, before taking a look into the future. The contributing authors answer questions like: "How is the profession of tester currently changing? What should testers be prepared for in the years to come, and what skills will the next generation need? What opportunities are available for further training today? What will testing look like in an agile world that is user-centered and fast-paced? What tasks will remain for testers once the most important processes are automated?" iSQI has been focused on the education and certification of software testers for fifteen years now, and in the process has contributed to improving the quality of software in many areas. The papers gathered here clearly reflect the numerous ways in which software quality assurance can play a critical role in various areas. Accordingly, the book will be of interest to both professional software testers and managers working in software testing or software quality assurance. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
The Future of Software Quality Assurance
This open access book, published to mark the 15th anniversary of the International Software Quality Institute (iSQI), is intended to raise the profile of software testers and their profession. It gathers contributions by respected software testing experts in order to highlight the state of the art as well as future challenges and trends. In addition, it covers current and emerging technologies like test automation, DevOps, and artificial intelligence methodologies used for software testing, before taking a look into the future. The contributing authors answer questions like: "How is the profession of tester currently changing? What should testers be prepared for in the years to come, and what skills will the next generation need? What opportunities are available for further training today? What will testing look like in an agile world that is user-centered and fast-paced? What tasks will remain for testers once the most important processes are automated?" iSQI has been focused on the education and certification of software testers for fifteen years now, and in the process has contributed to improving the quality of software in many areas. The papers gathered here clearly reflect the numerous ways in which software quality assurance can play a critical role in various areas. Accordingly, the book will be of interest to both professional software testers and managers working in software testing or software quality assurance. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Agile Processes in Software Engineering and Extreme Programming
This open access book constitutes the proceedings of the 20th International Conference on Agile Software Development, XP 2019, held in Montreal, QC, Canada, in May 2019. XP is the premier agile software development conference combining research and practice. It is a hybrid forum where agile researchers, academics, practitioners, thought leaders, coaches, and trainers get together to present and discuss their most recent innovations, research results, experiences, concerns, challenges, and trends. Following this history, for both researchers and seasoned practitioners XP 2019 provided an informal environment to network, share, and discover trends in Agile for the next 20 years The 15 full papers presented in this volume were carefully reviewed and selected from 45 submissions. They were organized in topical sections named: agile adoption, agile practices; large-scale agile; agility beyond IT, and the future of agile.; This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Computer Aided Verification
This open access two-volume set LNCS 10980 and 10981 constitutes the refereed proceedings of the 30th International Conference on Computer Aided Verification, CAV 2018, held in Oxford, UK, in July 2018. The 52 full and 13 tool papers presented together with 3 invited papers and 2 tutorials were carefully reviewed and selected from 215 submissions. The papers cover a wide range of topics and techniques, from algorithmic and logical foundations of verification to practical applications in distributed, networked, cyber-physical, and autonomous systems. They are organized in topical sections on model checking, program analysis using polyhedra, synthesis, learning, runtime verification, hybrid and timed systems, tools, probabilistic systems, static analysis, theory and security, SAT, SMT and decisions procedures, concurrency, and CPS, hardware, industrial applications. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Solving PDEs in Python
This book offers a concise and gentle introduction to finite element programming in Python based on the popular FEniCS software library. Using a series of examples, including the Poisson equation, the equations of linear elasticity, the incompressible Navier-Stokes equations, and systems of nonlinear advection-diffusion-reaction equations, it guides readers through the essential steps to quickly solving a PDE in FEniCS, such as how to define a finite variational problem, how to set boundary conditions, how to solve linear and nonlinear systems, and how to visualize solutions and structure finite element Python programs. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Open Source Systems
This book constitutes the refereed proceedings of the 13th IFIP WG 2.13 International Conference on Open Source Systems, OSS 2017, held in Buenos Aires, Argentina, in May 2017.The 16 revised full papers and 3 short papers presented were carefully reviewed and selected from 32 submissions. The papers cover a wide range of topics related to free, libre, and open source software (FLOSS), including: licensing, strategies, and practices; case studies; projects, communication, and participation; tools; and project management, development and evaluation. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Principles of Security and Trust
This book constitutes the proceedings of the 7th International Conference on Principles of Security and Trust, POST 2018, which took place in Thessaloniki, Greece, in April 2018, held as part of the European Joint Conference on Theory and Practice of Software, ETAPS 2018.The 13 papers presented in this volume were carefully reviewed and selected from 45 submissions. The papers are organized in topical sections named: information flow and non-intereference; leakage, information flow, and protocols; smart contracts and privacy; firewalls and attack-defense trees. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.
Fundamental Approaches to Software Engineering
This open access book constitutes the proceedings of the 23rd International Conference on Fundamental Approaches to Software Engineering, FASE 2020, which took place in Dublin, Ireland, in April 2020, and was held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020. The 23 full papers, 1 tool paper and 6 testing competition papers presented in this volume were carefully reviewed and selected from 81 submissions. The papers cover topics such as requirements engineering, software architectures, specification, software quality, validation, verification of functional and non-functional properties, model-driven development and model transformation, software processes, security and software evolution. This work was published by Saint Philip Street Press pursuant to a Creative Commons license permitting commercial use. All rights not granted by the work's license are retained by the author or authors.