Green Software Engineering
Craft sustainable software and reduce digital environmental impact with practical strategies and principlesKey Features: - Discover practical strategies for developing energy-efficient digital solutions across various domains- Learn effective strategies to measure and mitigate the environmental impact of digital solutions- Explore real-world examples of integrating sustainable design patterns into the software development cycle- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Embark on a transformative journey toward sustainable software engineering, exploring the vital intersection of technology and environmental responsibility. Authored by Santiago Fontanarrosa, a Green Software Foundation member with 20+ years in software engineering, this book explores practical strategies and use cases to help you assess and mitigate digital product environmental impact.Through real-world examples and hands-on experiences, you'll gain the skills you need to craft environmentally responsible solutions aligned with green software engineering principles. As you progress, you'll assess and optimize software architecture for sustainability within a sustainable software delivery framework schema. Beyond technical insights, the book delves into ethical implications and societal impacts, fostering a deeper understanding of the broader implications of technology usage.As you approach the conclusion, you'll have gained the ability to comprehend, measure, and craft energy-efficient digital solutions aligned with green software engineering principles.What You Will Learn: - Optimize software and infrastructure for sustainability- Integrate green software principles into the Agile Software Development Life Cycle- Explore emerging trends and technologies shaping the future of green software engineering- Reflect on tech ethics as well as address societal and environmental concerns- Implement industry standards and reporting methodologies for software emissions- Measure digital operations' environmental footprint with methodologies- Mitigate software's ecological impact with strategic approachesWho this book is for: If you're a software developer, software architect, or IT professional who wants to integrate sustainability into your organization, this book is for you. Whether you're a seasoned professional or a sustainability-focused tech enthusiast, this book provides the knowledge and tools you need to drive positive change in the software industry. A basic understanding of IT concepts and programming is recommended, and familiarity in modern digital technologies like cloud computing will also be helpful.Table of Contents- Digital Carbon Footprint- Sustainable Software Engineering and Digital Sobriety Principles- Green Architecture and Measuring Impact- User Experience and Design- Algorithms and Programming Languages- Development and Testing- Infrastructure and Deployment- Data Management- Sustainable Software Delivery Framework- Regulations, Standards, and Future Perspectives
8088 Microprocessor - Practical Applications and Solutions
This is "8088 Microprocessor - Practical Applications and Solutions". It is intended as a reference manual and working reference for prospective and current programmers and end-users of the 8088 microprocessor who wish to gain and apply a thorough understanding of the principles of programming and application development processes.One of these is the 8088 microprocessor commonly associated with Intel Corporation, which is considered as one of the main milestones in the field of computing technology. It has proven to be very flexible and highly reliable, it has been instrumental in defining modern compute systems. It also helps to get an understanding of processes at the low system level and know the basics of working with embedded systems, even today, when the processors' technological background has developed significantly over the years. This book is intended to bring the theorist component into reality by demonstrating what it takes to be there and do it. It carries information on topics that range from assembly language programming to system-level information such as handling peripherals, mapping the memory and system optimization among others. Every chapter is designed to be highly interconnected and progressively contributed and checked to provide clear explanations, Actual code examples and practical exercise to support the understanding. Happy learning and happy coding!
Because Sometimes Bureaucracy Gets in the Way
Information Systems influence the way we live our lives, integrate into our careers, and are the services we offer. Unfortunately, the issues faced by those involved in constructing those systems are often masked and poorly understood by those on the outside.This book introduces some of those issues to those that may be crossing the boundary from outside into the world Software Engineering or Information System development. Whether you are a manager trying to gain insight into the problems faced by your departments, or a student facing the daunting task of entering the corporate world, this book shows you some of contrasting needs, desires and expections of customers, managers, and organziations. It offers a general perspective of the world of information systems and how they integrate (or don't) directly into our lives, with a healthy dose of eye-rolling and sarcasm throughout... because whether we like it or not, sometimes bureaucracy gets in the way.
Kotlin Crash Course
Quickly master Kotlin by practicing what you learnDESCRIPTION Kotlin Crash Course is a fast-paced, hands-on introduction to Kotlin, preparing readers to build robust applications efficiently using the latest language features and best practices.The book is divided into comprehensive chapters that cover key Kotlin programming topics such as object-oriented and functional programming, collections, concurrency, and unit testing. Each chapter takes a learning by doing approach, focusing on practical projects rather than solely theoretical knowledge. This strategy improves knowledge retention by simulating real-life experiences, allowing students to apply concepts in practice as they learn them. Furthermore, the book is interwoven with an abundance of best practices obtained from industry experience. This approach ensures that even beginners can gain seasoned insights and apply their knowledge confidently to real-world challenges.By the end of this comprehensive course, you will not only possess a strong foundation in Kotlin programming but also the practical skills to build real-world applications, including REST APIs and serverless applications leveraging Kotlin's cloud capabilities.WHAT YOU WILL LEARN● Understand Kotlin syntax and basic coding conventions.● Master object-oriented and functional programming concepts.● Utilize Kotlin's collection framework effectively.● Implement concurrency and parallelism with coroutines.● Build robust applications with best practices.● Develop diverse applications, including REST APIs and serverless solutions.WHO THIS BOOK IS FORThis book is suitable for students, programmers from other languages, Java developers, back-end developers, full-stack developers, and mobile developers. The book is appropriate for both new and experienced programmers wishing to acquire or refresh their Kotlin skills.
PHP Programming Solutions - Practical Applications and Examples
"PHP Programming Solutions-Practical Applications and Examples" Welcome to this book! PHP which stands for Hypertext Preprocessor is a strong scripting language that offers support for web development solutions. Due to its ease of use, versatility and reliability it is a go to option for the creation of web application interfaces. Starting from simple personal weblogs and ending with large-scale business systems, PHP has become an indispensable instrument in the creation of Internet applications. This book is intended to give you realistic solutions and examples of actual PHP programming problems that you are ever likely to face during the course of your development in the profession. This beginners guide to PHP has been written to allow anyone who is learning PHP, whether a new comer or a professional developer, to gain something useful from it.
Kotlin Coroutines
Kotlin coroutines revolutionized JVM development, especially on Android and the backend. They let us easily make efficient and reliable multithreading. Its cutting-edge design and features are suited ideally for modern use cases. In this book, we will explore Kotlin coroutines - both built-in support and kotlinx.coroutines library.
Software Architecture. Ecsa 2023 Tracks, Workshops, and Doctoral Symposium
This book constitutes the refereed proceedings of the tracks and workshops which complemented the 17th European Conference on Software Architecture, ECSA 2023, held in Istanbul, Turkey, in September 2023. The 29 full papers included in this book were carefully reviewed and selected from 32 submissions. They were organized in topical sections as follows: AMP; CASA; DE & I Track; DeMeSSA; FAACS; QUALIFIER; TwinArch; Tools and Demos; Industry Track; and Doctoral Symposium.
Model-Driven Engineering and Software Development
This book constitutes the refereed post-proceedings of the 11th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2023, which took place in Lisbon, Portugal during February 19-21, 2023. The 8 full papers included in this book were carefully reviewed and selected from 41 submissions. The papers are categorized under the topical sections as follows: Applications and System Development and Modeling Languages, Tools and Architectures.
Engineering of Complex Computer Systems
This book constitutes of the proceedings from the 28th International Conference on Engineering of Complex Computer Systems, ICECCS 2024, held in Limassol, Cyprus, during June 19-21, 2024. The 18 full papers and 4 short papers presented here were carefully reviewed and selected from 68 submissions. These papers have been categorized into the following sections: Machine Learning and Complex Systems; Neural Network Verification; A.I. for Software Engineering; Smart Contract; Formal Methods; Security & Program Analysis.
Programming Backend with Go
Quickly introducing readers to Go and its ecosystem, the book walks them through installing and creating a development environment with VS Code. Next, it takes a baby step into learning the basics of building web servers with the net/http package, going over topics like routing, handling various HTTP methods, and the structures of requests and responses. Path variables, regex-based routing, custom handlers, and middleware are some of the advanced routing topics covered, which uses the robust gorilla/mux package. The book then moves on to user authentication, covering topics such as OAuth2 integration, JWT for secure APIs, and more.The book then teaches various aspects of database integration with GORM, covering topics such as connecting to SQL databases, performing CRUD operations, managing migrations, and handling transactions and concurrency control. The Gin framework for designing and implementing microservices, REST and gRPC for inter-service communication, and Kubernetes for containerizing applications are also covered in detail. Also covered is message brokering with Apache Kafka and NSQ for asynchronous systems, which guarantees resilient systems and efficient message delivery. Secure coding practices, HTTPS with crypto/tls, avoiding SQL injections and XSS attacks, and configuration management with Viper are also one of the main goal of the book.Key LearningsUse gorilla/mux to implement advanced routing techniques and implement strong API security using OAuth2 and JWT.Make use of GORM's advanced capabilities of migrations and transactions, to integrate SQL databases.Use Gin, Kubernetes, and gRPC to build and launch scalable microservices.Make use of NSQ and Kafka for asynchronous processing.Use Testify, GoMock, and Delve to streamline testing and debugging.Use AWS CodeDeploy with blue-green and canary deployment strategies to deploy applications.
Formal Techniques for Distributed Objects, Components, and Systems
This book constitutes the refereed proceedings of the 44th IFIP WG 6.1 International Conference on Formal Techniques for Distributed Objects, Components, and Systems, FORTE 2024, held in Groningen, The Netherlands, in June 2024, as part of the 19th International Federated Conference on Distributed Computing Techniques, DisCoTec 2024 during June 17-21, 2024. The 11 full papers and 2 short papers included in this book were carefully reviewed and selected from 33 submissions. They focus on fundamental research on theory, models, tools, and applications for distributed systems.
Making Futures Work
Learn how to get started with Futures Thinking. With this practical guide, Phil Balagtas, founder of the Design Futures Initiative and the global Speculative Futures network, shows you how designers and futurists have made futures work at companies such as Atari, IBM, Apple, Disney, Autodesk, Lufthansa, and McKinsey & Company. This book demystifies the process of Futures Thinking into a language that's practical and useful for both designers and strategists. You'll learn about Strategic Foresight for using ideas about the future to anticipate and prepare for change; explore Speculative Design to deal with the relationship between science, technology, and humans; and Design Fiction to explore and critique possible futures. Balagtas also shares stories from his journey to build a global community and describes how he works with clients to reshape the futures vocabulary. With this guide, you'll learn how to: Prepare your client, team, and/or audience for futures Facilitate and work with the fundamental methods and frameworks Gain advocacy and support within your organization Provide measurable value from the process and outcomes Build a futures culture and team Sustain a culture and support system beyond projects
Distributed Applications and Interoperable Systems
This book constitutes the refereed proceedings of the 24th International Conference on Distributed Applications and Interoperable Systems, DAIS 2024, held in PhGroningen, The Netherlands, as Part of the 19th International Federated Conference on Distributed Computing Techniques, DisCoTec 2024, during June 17-21, 2024. The 5 full papers included in this book were carefully reviewed and selected from 17 submissions. They focus on all practical and conceptual aspects of distributed applications, including their design, modeling, implementation, and operation; the supporting middleware; appropriate software engineering methodologies and tools; and experimental studies and applications.
Computer Aided Verification
This open access 3-volume set constitutes the proceedings of the 36th International Conference on Computer-Aided Verification, CAV 2024, which took place in Montreal, Canada, during July 24-27, 2024. The primary focus of CAV is to extend the frontiers of verification techniques by expanding to new domains such as security, quantum computing, and machine learning.
Computer Aided Verification
This open access book constitutes the proceedings of the 36th International Conference on Computer-Aided Verification, CAV 2024, which took place in Montreal, Canada, during July 24-27, 2024.The primary focus of CAV is to extend the frontiers of verification techniques by expanding to new domains such as security, quantum computing, and machine learning.
Rewriting Logic and Its Applications
This book constitutes revised selected papers from the refereed proceedings of the 15th International Workshop on Rewriting Logic and Its Applications, WRLA 2024, held in Luxembourg City, Luxembourg, during April 6-7, 2024. The 11 full papers included in this book were carefully reviewed and selected from 16 submissions. They focus on several topics, e.g., foundations; rewriting as a logical and semantic framework; rewriting languages; verification techniques; applications; and education.
Computer Aided Verification
This open access 3-volume set constitutes the proceedings of the 36th International Conference on Computer-Aided Verification, CAV 2024, which took place in Montreal, Canada, during July 24-27, 2024. The primary focus of CAV is to extend the frontiers of verification techniques by expanding to new domains such as security, quantum computing, and machine learning.
More Boot Sector Games
After the success of Programming Boot Sector Games, inside this book you'll find even more deep secrets of 8086/8088 assembler programming, and of course: More boot sector games!!! Prepare to be surprised by the following programs in only 510 bytes: - bootOS, operating system. - Follow the Lights game. - bootRogue, a rogue-like RPG. - Bricks, paddle and ball game. - CubicDoom, a 3D ray-casting game.
Ultimate Git and GitHub for Modern Software Development
Unlock the Power of Git and GitHub for Seamless Collaboration Book DescriptionUltimate Git and GitHub for Modern Software Development is a comprehensive guide that empowers developers to harness the full potential of Git and GitHub for efficient version control and seamless collaboration. This book takes you on a journey through the fundamentals of Git, exploring its commands, branching strategies, and conflict resolution techniques. It then delves into the world of GitHub, teaching you how to create repositories, collaborate with teams, and contribute to open-source projects. Whether you're a beginner or an experienced developer, this handbook equips you with the skills and knowledge to streamline your development workflow, ensure code integrity, and foster a collaborative coding environment. With clear explanations, real-world examples, and best practices, you will learn to leverage the power of these tools to enhance your coding experience and elevate your projects to new heights. Table of Contents1. Introduction2. Setting Up Git3. Understanding Git Repositories4. Basic Git Commands5. Branching and Merging6. Introduction to GitHub7. Working Seamlessly With Both Git and GitHub8. Advanced Git Techniques9. GitOps: The Future of Operations10. Best Practices with Git and GitHub Index
Cloud Native Architecture
How to plan, design, manage, build, and run monoliths and microservices in an agnostic, scalable, and highly available cloud-native architecture with Kubernetes DESCRIPTION The book "Cloud Native Architecture" explains how to plan, manage, build, and run monoliths and microservices in an agnostic, scalable, and highly available cloud-native runtime such as Kubernetes. This is done by effectively applying DevOps principles through the tactical use of CNCF tools. You will start by learning about cloud-native technology's history and business reasons. This will help you understand its five key pillars: open-source, containers, distributed architectures, operational benefits, and DevOps integration. We will introduce a framework for adopting cloud-native best practices, focusing on technical and cultural changes. You will learn how to adapt processes like DevOps, Chaos Engineering, Automation, and API First. We will cover automating infrastructure with tools like Prometheus and Grafana, using Kubernetes for container management, and designing applications with microservices. Practical exercises will include setting up CI/CD pipelines with Jenkins and ensuring Kubernetes security. By the end of this book, you will be empowered to navigate the Cloud-Native landscape confidently, equipped with the knowledge and practical skills to design, develop, deploy, and migrate applications for the modern cloud era.WHAT YOU WILL LEARN● Learn about cloud native's background and its impact on culture and processes.● Understand Kubernetes concepts, components, and best practices with an agnostic framework.● Design and build monoliths incrementally on Kubernetes following twelve-factor app principles.● Transition from monoliths to microservices using specific tools for lifecycle management.● Address Kubernetes security during application development and deployment.WHO THIS BOOK IS FORThis book is for developers, architects, and solution consultants who are now exploring cloud-native architecture principles for design and development with Agile and DevOps to modernize existing applications or create brand-new cloud-native products.
Mastering Customer Success
Explore strategies, methods, critical skills that top CSMs exhibit in delivering well-designed, proactive customer success services, fostering lasting customer relationships and sowing the seeds for advocacyKey Features- Master the art of driving measurable customer value, a cornerstone of business success- Explore techniques to ensure your work is relevant, stimulating, and aligns with the evolving needs of your customers and business- Ratchet up your understanding of building and operating dynamic and resilient CS organizations- Purchase of the print or Kindle book includes a free PDF eBookBook DescriptionThe rapidly evolving customer success landscape has left many Customer Success Managers (CSMs) struggling to keep pace with the complexities of this dynamic role. This Customer Success book bridges the gap by providing a comprehensive framework for mastering the essential skills required to excel.You'll find out why the Customer Success function is indispensable today and gain expert insights into account segmentation, financial tiering, ideal customer profiles, and the complexity of customer engagement process design. You'll then delve into playbook development, where you'll find practical guidance for CSMs and Customer Success Operations Managers who want to improve their ability to drive desired business outcomes. Through insightful case studies, the authors illustrate their own experience of successful Customer Success implementation, showing you what it takes to exceed customer expectations with well-designed, proactive services. The journey doesn't end there-it extends to highlighting the resilience required to build and operate successful Customer Success organizations.By the end of this guide, you'll be equipped with the tactics and mindset necessary to stand out as a world-class Customer Success leader in your organization, driving growth at every turn.What you will learn- Drive higher customer retention and expansion rates with a customer-centric strategy- Understand the essential role of measurement in achieving service delivery excellence- Recognize the importance of the human dimension in vendor-customer relationships in the age of AI- Refine engagement models by incorporating observations of customer behavior- Discover techniques for creating ideal customer profiles- Leverage technology to boost business relevance of CSMs- Identify how to drive successful customer outcomes through collaborationWho this book is forThis book is for aspiring and established Customer Success professionals who want to learn how to develop and refine service delivery in customer engagements. Professionals embarking on a journey to excellence will be able to master the evolving business landscape of Customer Success and foster relationships with other internal organizations and external partners.A foundational understanding of business basics, typical B2B structures, and Customer Success concepts is necessary to get started. Intermediate to advanced customer engagement skills from customer-facing roles will prove useful.Table of Contents- Optimizing Your Key Metrics for Growth- Building a Strong Foundation - Key Knowledge for Success- Strategies for Effective Book of Business Management- Streamlining Onboarding and Boosting Engagement- Building Referenceable Customers- Leveraging Data for Customer Success- Building Your Customer Success Inner Circle- Strategies for Retention and Expansion in Your Business- Mastering Crisis Management for Business Resilience- The Exciting Future of Customer Success
Advances in Optimization and Linear Programming
This new volume provides the information needed to understand the simplex method, the revised simplex method, dual simplex method, and more for solving linear programming problems.
Object Oriented Programming Demystified
A practical guide to designing and developing software using object-oriented principles.The core topics of object-oriented principles covered include abstraction, encapsulation, inheritance and polymorphism.Additionally, other topics that aid in the development of object-oriented solutions include generic programming, naming, types, invariants, coupling, and cohesion.
Evaluation of Novel Approaches to Software Engineering
This book constitutes the refereed post-conference proceedings of the 18th International Conference on Evaluation of Novel Approaches to Software Engineering, ENASE 2023, held in Prague, Czech Republic, during April 24-25, 2023. The 15 revised full papers presented in these proceedings were carefully reviewed and selected from 121 submissions. They contribute to the understanding of relevant trends of current research on Evaluation of Novel Approaches to Software Engineering, including: requirements engineering, artificial intelligence development, natural language processing, autonomous systems, model-driven development, product line engineering, software patterns, software metrics, quality assurance, and process management.
Python 3 and Machine Learning Using ChatGPT / GPT-4
This book is designed to bridge the gap between theoretical knowledge and practical application in the fields of Python programming, machine learning, and the innovative use of ChatGPT-4 in data science. The book is structured to facilitate a deep understanding of several core topics. It begins with a detailed introduction to Pandas, a cornerstone Python library for data manipulation and analysis. Next, it explores a variety of machine learning classifiers from kNN to SVMs. In later chapters, it discusses the capabilities of GPT-4, and how its application enhances traditional linear regression analysis. Finally, the book covers the innovative use of ChatGPT in data visualization. This segment focuses on how AI can transform data into compelling visual stories, making complex results accessible and understandable. It includes material on AI apps, GANs, and DALL-E. Companion files are available for downloading with code and figures from the text. FEATURES: Includes practical tutorials designed to provide hands-on experience, reinforcing learning through practiceProvides coverage of the latest Python tools using state-of-the-art libraries essential for modern data scientistsCompanion files with source code, datasets, and figures are available for downloading
Functional and Logic Programming
This book constitutes the proceedings of the 17th International Symposium on Functional and Logic Programming, FLOPS 2024, held in Kumamoto, Japan, in May 2024. The 15 papers presented in this volume were carefully reviewed and selected from 28 submissions. The scope includes all aspects of the design, semantics, theory, applications, implementations, and teaching of declarative programming. FLOPS speci cally aims to promote cross-fertilization between theory and practice and among di erent styles of declarative programming.
TypeScript Crash Course
Navigating the dynamic landscape of web development can be a daunting task, "TypeScript Crash Course" is a guide to help you on the journey of mastering TypeScript, one of today's most sought-after skills in the tech market. Starting from the basics and core principles to gradually building up to more advanced concepts, this book will help you move to practical examples of converting an application from JavaScript, React, and Node to TypeScript. This book also offers insights into leveraging TypeScript for both front-end and back-end development, ensuring readers can tackle any project with confidence, from development to deployment.
SQL Essentials for Dummies
A right-to-the-point guide on all the key topics of SQL programming SQL Essentials For Dummies is your quick reference to all the core concepts of SQL--a valuable common standard language used in relational databases. This useful guide is straightforward--with no excess review, wordy explanations, or fluff--so you get what you need, fast. Great for a brush-up on the basics or as an everyday desk reference, this book is one you can rely on. Strengthen your understanding of the basics of SQL Review what you've already learned or pick up key skills Use SQL to create, manipulate, and control relational databases Jog your memory on the essentials as you work and get clear answers to your questions Perfect for supplementing classroom learning, reviewing for a certification, and staying knowledgeable on the job, SQL Essentials For Dummies is the convenient, direct, and digestible reference you've been looking for.
Coordination Models and Languages
This book constitutes the refereed proceedings of the 26th IFIP WG 6.1 International Conference on Coordination Models and Language, COORDINATION 2024, held in Groningen, The Netherlands, in June 2024, as part of the 19th International Federated Conference on Distributed Computing Techniques, DisCoTec 2024. The 8 full papers, 7 tool papers, 1 short paper and 1 survey paper included in this book were carefully reviewed and selected from 28 submissions. This conference provides a well-established forum for the growing community of researchers interested in models, languages, architectures, and implementation techniques for coordination.
Protocol Buffers Handbook
Delve into Google Protobuf with the help of practical examples and exercises for streamlined communication and seamless integration with gRPC Key FeaturesEncode and decode complex data structures, enhancing data interchange efficiency across systemsUnderstand Protobuf by mastering the syntax, schema evolution, customizations, and moreIntegrate Protobuf into your preferred language ecosystem, ensuring interoperability and effective collaborationPurchase of the print or Kindle book includes a free PDF eBookBook DescriptionExplore how Protocol Buffers (Protobuf) serialize structured data and provides a language-neutral, platform-neutral, and extensible solution. With this guide to mastering Protobuf, you'll build your skills to effectively serialize, transmit, and manage data across diverse platforms and languages.This book will help you enter the world of Protocol Buffers by unraveling the intricate nuances of Protobuf syntax and showing you how to define complex data structures. As you progress, you'll learn schema evolution, ensuring seamless compatibility as your projects evolve. The book also covers advanced topics such as custom options and plugins, allowing you to tailor validation processes to your specific requirements. You'll understand how to automate project builds using cutting-edge tools such as Buf and Bazel, streamlining your development workflow. With hands-on projects in Go and Python programming, you'll learn how to practically apply Protobuf concepts. Later chapters will show you how to integrate data interchange capabilities across different programming languages, enabling efficient collaboration and system interoperability.By the end of this book, you'll have a solid understanding of Protobuf internals, enabling you to discern when and how to use and redefine your approach to data serialization.What you will learnFocus on efficient data interchange with advanced serialization techniquesMaster Protocol Buffers syntax and schema evolutionPerform custom validation via Protoc plugins for precise data integrityIntegrate languages seamlessly for versatile system developmentAutomate project building with Buf and BazelGet to grips with Go and Python integration for real-world Protobuf applicationsStreamline collaboration through system interoperability with ProtobufWho this book is forThis book is for software developers, from novices to experienced programmers, who are interested in harnessing the power of Protocol Buffers. It's particularly valuable for those seeking efficient data serialization solutions for APIs, microservices, and data-intensive applications. The content covered in this book accommodates diverse programming backgrounds, offering essential knowledge to both beginners and seasoned developers.Table of ContentsSerialization PrimerProtoBuf is a LanguageDescribing Data with Protobuf's Text FormatProtoc: The Protobuf CompilerSerialization InternalsSchema Evolution Over TimeAdress Book- GoAdress Book- PythonDeveloping a Protoc PluginAdvanced Build
Kotlin Design Patterns and Best Practices - Third Edition
Dive deep into Kotlin design patterns, explore idiomatic functional programming, and master microservices with frameworks like Arrow, Ktor, and Vert.x.Key FeaturesStart from basic Kotlin syntax and go all the way to advanced topics like Coroutines and structural concurrencyLearn how to select and implement the right design pattern for your next Kotlin projectGet to grips with concurrent and reactive microservices with Ktor and Vert.xBook DescriptionFor developers who are working with Design Patterns in Kotlin, this practical guide offers an opportunity to put their knowledge into practice. The book covers classical and modern design patterns, and provides a hands-on approach to implementation, along with associated methodologies.The third edition stays current with Kotlin updates, spanning from version 1.6 onwards, and offers in-depth insights into topics like Structured Concurrency and Context Receivers. The book starts by introducing essential Kotlin syntax and the significance of design patterns, covering classic Creational, Structural, and Behavioral patterns. It then progresses to explore functional programming, Reactive, and Concurrent patterns, including detailed discussions on Coroutines and Structured Concurrency. As you navigate through these advanced concepts, you'll enhance your Kotlin coding skills. The book also delves into the latest architectural trends, focusing on microservices design patterns and aiding your decision-making process when choosing between architectures.By the end of the book, you will have a solid grasp of these advanced concepts and be able to apply them in your own projects.What you will learnUtilize functional programming and coroutines with the Arrow frameworkUse classical design patterns in the Kotlin programming languageScale your applications with reactive and concurrent design patternsDiscover best practices in Kotlin and explore its new featuresApply the key principles of functional programming to KotlinFind out how to write idiomatic Kotlin code and learn which patterns to avoidHarness the power of Kotlin to design concurrent and reliable systems with easeCreate an effective microservice with Kotlin and the Ktor frameworkWho this book is forThis book is for developers who want to apply design patterns they've learned from other languages in Kotlin and build reliable, scalable, and maintainable applications. You'll need a good grasp on at least one programming language before you get started with this book. Familiarity with classical design patterns from your language of choice would be helpful, but you'll still be able to follow along if you code in other languagesTable of ContentsGetting Started with KotlinWorking with Creational PatternsUnderstanding Structural PatternsGetting Familiar with Behavioral PatternsIntroducing Functional ProgrammingThreads and CoroutinesControlling the Data FlowDesigning for ConcurrencyIdioms and Anti-PatternsPractical Functional Programming with ArrowConcurrent Microservices with KtorReactive Microservices with Vert.x
HTML Essentials - Practical Programming
Hi there! Thank you for joining us in "HTML Essentials - Practical Programming". Following HTML, this book serves as a step-by-step guide that directs individuals through the basic concepts of HTML, as well as its practical usage in website development. HTML (Hypertext Markup Language) is still regarded as a key element of the web and the basis for all websites construction. Whether you are a beginner with no experience or a developer who wants to brush up your skills, this book is written for you to give you knowledge of the basics of HTML or refresh and equip you with the tools to create impeccable web content. Through a practical way we intend on discovering some of HTML features with advanced techniques from categorizing the web pages with semantic elements using media content to implementing interactive forms. Every chapter of our HTML course comes with practical exercises and examples that will help you grasp the topics quickly and deeply. By finishing of this book you will have got the necessary abilities for creating web pages, which have a good structure, visual appearance and responsiveness with the help of HTML. Furthermore, you will get an idea about what is a standard for the industry and produce modern websites that are user-friendly and function well. I do hope you find this book both informative and enjoyable. Let's go ahead and begin working with HTML for practical applications. Happy coding!
A Guide to Software Quality Engineering
In today's fast-paced digital world, delivering high-quality software is not just a goal; it's an absolute necessity. A Guide to Software Quality Engineering is a companion book for anyone involved in software development, testing, or quality assurance.This comprehensive book takes you on a transformative journey through the world of software quality engineering, providing invaluable insights, practical methodologies, and expert advice that will elevate your projects to new levels of excellence.The book features the following points: - Performance Testing Security Testing- Usability Testing- Continuous Integration and Continuous Testing- Requirements Engineering and Quality- Code Quality and Static Analysis- Defect Management and Root Cause Analysis- Release and Deployment ManagementDive into the fundamental principles of software quality engineering, understanding the critical role it plays in ensuring customer satisfaction, user experience, and the overall success of your software products. Whether you're a seasoned professional or a budding enthusiast, this book caters to all levels of expertise.
Rust In Practice, Second Edition
Learn to Build Rust Programs, Test Applications and Create Your Own Cargo Packages with latest Rust 1.77"Rust In Practice, Second Edition" is an updated book that builds on the previous edition's excellent foundation and is intended to help readers progress from novice to proficient Rust developers. This new edition comes with Rust 1.77 version that goes deeper into Rust's core and advanced capabilities, making it suitable for learners at all levels.Beginning with a basic introduction to Rust syntax and semantics, the Second Edition provides a clearer and more detailed explanation of Rust's distinctive ownership model and type system.Readers will thoroughly explore control flow, error management, and Rust's main data types, laying a solid foundation for more advanced topics. The book includes additional chapters on smart pointers, sophisticated error handling techniques, and the complexities of concurrency and parallelism, which address real-world programming issues. The book covers how to incorporate asynchronous programming features into projects, how to utilize and maintain Cargo, and a more in-depth look at Rust's standard library and the external crates ecosystem."Rust In Practice, Second Edition" is intended to serve as both a learning tool and a reference for developing high-performance applications. It is packed with professional advice, clear explanations, and practical examples. This book will not only teach you Rust programming, but it will also help you design software that is strong, simple, efficient, and easily maintainable. Key LearningsMaster Cargo and its extensive command suite to streamline project builds and dependency management.Deepen your grasp of Rust's type system, emphasizing ownership and borrowing to efficiently manage memory.Utilize advanced traits and generics to create flexible, reusable software components.Leverage closures, iterators, and asynchronous programming for high-performance, multi-threaded applications.Utilize collections, enhance string operations, and execute effective I/O.Explore sophisticated macro usage for metaprogramming and strategies to avoid unsafe code.75+ practical examples showcasing Rust's latest features and best practices.Apply rigorous testing methods across diverse Rust applications, with new testing frameworks and methodologies. Table of ContentWhy Rust!Getting Ready with Rust EnvironmentMost Essentials of RustStructsEnums and Pattern MatchingExploring Ownership and BorrowingCargo, Crates and PackagesCargo CommandsRust Standard LibrarySmart Pointers and Reference Cycles
Programming
An Introduction to Programming by the Inventor of C++ Programming: Principles and Practice Using C++, Third Edition, will help anyone who is willing to work hard learn the fundamental principles of programming and develop the practical skills needed for programming in the real world. Previous editions have been used successfully by many thousands of students. This revised and updated edition Assumes that your aim is to eventually write programs that are good enough for others to use and maintain Focuses on fundamental concepts and techniques, rather than on obscure language-technical details Is an introduction to programming in general, including procedural, object-oriented, and generic programming, rather than just an introduction to a programming language Covers both contemporary high-level techniques and the lower-level techniques needed for efficient use of hardware Will give you a solid foundation for writing useful, correct, type-safe, maintainable, and efficient code Is primarily designed for people who have never programmed before, but even seasoned programmers have found previous editions useful as an introduction to more effective concepts and techniques Covers a wide range of essential concepts, design and programming techniques, language features, and libraries Uses contemporary C++ (C++20 and C++23) Covers the design and use of both built-in types and user-defi ned types, complete with input, output, computation, and simple graphics/GUI Offers an introduction to the C++ standard library containers and algorithms Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Building Data-Driven Applications with LlamaIndex
Solve real-world problems easily with artificial intelligence (AI) using the LlamaIndex data framework to enhance your LLM-based Python applicationsKey Features- Examine text chunking effects on RAG workflows and understand security in RAG app development- Discover chatbots and agents and learn how to build complex conversation engines- Build as you learn by applying the knowledge you gain to a hands-on projectBook DescriptionDiscover the immense potential of Generative AI and Large Language Models (LLMs) with this comprehensive guide. Learn to overcome LLM limitations, such as contextual memory constraints, prompt size issues, real-time data gaps, and occasional 'hallucinations'. Follow practical examples to personalize and launch your LlamaIndex projects, mastering skills in ingesting, indexing, querying, and connecting dynamic knowledge bases. From fundamental LLM concepts to LlamaIndex deployment and customization, this book provides a holistic grasp of LlamaIndex's capabilities and applications. By the end, you'll be able to resolve LLM challenges and build interactive AI-driven applications using best practices in prompt engineering and troubleshooting Generative AI projects.What you will learn- Understand the LlamaIndex ecosystem and common use cases- Master techniques to ingest and parse data from various sources into LlamaIndex- Discover how to create optimized indexes tailored to your use cases- Understand how to query LlamaIndex effectively and interpret responses- Build an end-to-end interactive web application with LlamaIndex, Python, and Streamlit- Customize a LlamaIndex configuration based on your project needs- Predict costs and deal with potential privacy issues- Deploy LlamaIndex applications that others can useWho this book is forThis book is for Python developers with basic knowledge of natural language processing (NLP) and LLMs looking to build interactive LLM applications. Experienced developers and conversational AI developers will also benefit from the advanced techniques covered in the book to fully unleash the capabilities of the framework.Table of Contents- Understanding Large Language Models- LlamaIndex: The Hidden Jewel - An Introduction to the LlamaIndex Ecosystem- Kickstarting Your Journey with LlamaIndex- Ingesting Data into Our RAG Workflow- Indexing with LlamaIndex- Querying Our Data, Part 1 - Context Retrieval- Querying Our Data, Part 2 - Postprocessing and Response Synthesis- Building Chatbots and Agents with LlamaIndex- Customizing and Deploying Our LlamaIndex Project- Prompt Engineering Guidelines and Best Practices- Conclusions and Additional Resources
Practical Database Programming with SQL and PL/SQL
The book "Practical Database Programming with SQL and PL/SQL" is the result of my enthusiasm on database technologies, the need to write a guide to SQL and PL/SQL programming that can be practical and complete. Today in the digital world, databases have become a core element of all applications of software development, data managing and business intelligence. SQL, the language of relational databases, and PL/SQL, the extended PL/SQL procedure, the languages needed by functional IT personnel working with Oracle databases. I have written this book to cater for individuals who have just started learning database programming and also those who want to learn more about SQL and PL/SQL. Whether you are a student, looking for a job as a professional developer, or you an IT expert already and you need to add skills in database programming, this book has something to enrich your skills.
Microservices for Machine Learning
Explore the link between microservices and ML in Microservices for Machine Learning. Through this book, you will learn to build scalable systems by understanding modular software construction principles. You will also discover ML algorithms and tools like TensorFlow and PyTorch for developing advanced models. It equips you with the technical know-how to design, implement, and manage high-performance ML applications using microservices architecture. It establishes a foundation in microservices principles and core ML concepts before diving into practical aspects. You will learn how to design ML-specific microservices, implement them using frameworks like Flask, and containerize them with Docker for scalability. Data management strategies for ML are explored, including techniques for real-time data ingestion and data versioning. This book also addresses crucial aspects of securing ML microservices and using CI/CD practices to streamline development and deployment. Finally, you will discover real-world use cases showcasing how ML microservices are revolutionizing various industries, alongside a glimpse into the exciting future trends shaping this evolving field.
Mastering Practical C Programming Techniques
I would like to invite you to our delightfully informative session on ""Mastering Practical C Programming Techniques". This book is made with the belief that you don't need a complicated textbook with theoretical concepts to start programming in C language, from zero level up. Whether you are just embarking on your journey into the realm of programming or you are an expert developer wanting to improve your C programming skills, this book is created to be your guide, offering the practical examples needed to develop efficiently and well-organized C programs. Why C?The C programming language, has undoubtedly earned a well-deserved place in the history of programming as one of the most vital and as a result the most used programming languages. This sharpness, efficiency, and proximity-to-the machine characteristics make it fit for system programming included in embedded systems and many applications. Applying of C language to any program can be made well if the several components of that language are understood fully, and with the aim of this book it is to accomplish a full understanding of C language in a way that it can also be enjoyable. What This Book Offers ""Mastering Practical C Programming Techniques" does it very practically by moving on from one practical program to the next, making you a better programmer each time. Every strategy in our programs are supported by in depth instructional material which covers three areas saliently, key concepts, appropriate methods, and what not to do. The examples segment comprise different case studies from the creation of a basic console program up to more complex projects from which you will gain hands-on experience and immediately use it in your own projects. Key Features - Progressive Learning: The organized curriculum is structured in a logical order, first presenting new concepts and then gradually increasing the complexity and adding to the previous items. - Clear Explanations: Every program will have a detailed explanation with it so you not only will know how to do it right but also the concept behind the lines of code. - Practical Tips: As we get through the book, you will encounter various tips, hints, and examples that will improve your coding practices and make your code cleaner and more efficient. - Challenges: By the way, at the end of every chapter, we give you some challenges as well to reinforce your learning. This is aim of the exercises, they are intended for critical thinking and practical application of the principles exposed. Who This Book Is For This book is therefore meant for the general public, including the newbies as well as programmers who want to add C language to their programming skills. Either as a student, an amateur or a professional developer, with the illustrative character of every chapter, you are sure to find something of interest. Programming is a blend of art and science and the more you practice, you will be able to master C operations. Hence, go along on this path with us and let's see what practical C programming scenarios are waiting for us. Happy Coding !
Requirements Engineering: Foundation for Software Quality
This book constitutes the refereed proceedings of the 30th International Working Conference on Requirements Engineering: Foundation for Software Quality, REFSQ 2024, held in Winterthur, Switzerland, during April 8-12, 2024.The 14 full papers and 8 short papers included in this book were carefully reviewed and selected from 59 submissions. They are organized in topical sections as follows: quality models for requirements engineering; quality requirements; explainability with and in requirements engineering; artificial intelligence for requirements engineering; natural language processing for requirements engineering; requirements engineering for artificial intelligence; crowd-based requirements engineering; and emerging topics and challenges in requirements engineering.
Design Patterns using Kotlin
Design Patterns Using Kotlin by Hemant JainIn a world dominated by design pattern books tailored for C++ or Java, Design Patterns Using Kotlin stands out by harnessing the power of Kotlin. With its clear and concise syntax, Kotlin simplifies the implementation and utilization of design patterns, making them more intuitive than ever.This book takes you on a journey that showcases how Kotlin can be employed to implement design patterns in a sophisticated and highly efficient manner, often with fewer lines of code.Beginning with a thorough exploration of the core goals of design patterns and the SOLID principles, this book delves into all 24 of the classic "Gang of Four" patterns, providing clear and concise Kotlin implementations for each. From Creational Patterns and Structural Patterns to Behavioral Patterns, we cover them all. We also explore Concurrency Patterns and Architectural Patterns, along with a discussion of the importance of recognizing Anti-Patterns.Design Patterns Using Kotlin is your definitive guide to mastering design patterns in the Kotlin programming language. Whether you're a seasoned developer looking to expand your repertoire or a newcomer eager to learn the ropes, this book will empower you to build better, more maintainable software with confidence.Don't just code - design with purpose. Unlock the potential of Kotlin and design patterns, and take your programming skills to the next level.Hemant Jain is a seasoned software engineer with a passion for teaching and sharing knowledge. With years of industry experience and a knack for simplifying complex concepts, Hemant has authored several books and online courses on various programming topics. His love for Kotlin and design patterns inspired him to write this book, and he hopes it will help readers harness the true potential of both.Connect with Hemant on LinkedIn: https: //www.linkedin.com/in/hjain1011 to stay updated on his latest projects and insights.For more information and bulk orders, visit: www.taaran.inExplore related GitHub repositories: https: //github.com/Hemant-Jain-Author
NASA Formal Methods
This LNCS 14627 conference volume constitutes the proceedings of the 16th International Symposium on NASA Formal Methods, NFM 2024, held in Moffett Field, CA, USA in June 2024. The 20 full papers together with 6 short papers included in this volume were carefully reviewed and selected from 68 submissions. The conference focuses on the on formal techniques for software and system assurance for applications in space, aviation, robotics, and other NASA-relevant safety-critical systems.
Design Patterns using JavaScript
Design Patterns Using JavaScript by Hemant JainIn a world dominated by design pattern books tailored for C++ or Java, Design Patterns Using JavaScript stands out by harnessing the power of JavaScript. With its clear and concise syntax, JavaScript simplifies the implementation and utilization of design patterns, making them more intuitive than ever.This book takes you on a journey that showcases how JavaScript can be employed to implement design patterns in a sophisticated and highly efficient manner, often with fewer lines of code.Beginning with a thorough exploration of the core goals of design patterns and the SOLID principles, this book delves into all 24 of the classic "Gang of Four" patterns, providing clear and concise JavaScript implementations for each. From Creational Patterns and Structural Patterns to Behavioral Patterns, we cover them all. We also explore Concurrency Patterns and Architectural Patterns, along with a discussion of the importance of recognizing Anti-Patterns.Design Patterns Using JavaScript is your definitive guide to mastering design patterns in the JavaScript programming language. Whether you're a seasoned developer looking to expand your repertoire or a newcomer eager to learn the ropes, this book will empower you to build better, more maintainable software with confidence.Don't just code - design with purpose. Unlock the potential of JavaScript and design patterns, and take your programming skills to the next level.Hemant Jain is a seasoned software engineer with a passion for teaching and sharing knowledge. With years of industry experience and a knack for simplifying complex concepts, Hemant has authored several books and online courses on various programming topics. His love for JavaScript and design patterns inspired him to write this book, and he hopes it will help readers harness the true potential of both.Connect with Hemant on LinkedIn: linkedin.com/in/hjain1011 to stay updated on his latest projects and insights.For more information and bulk orders, visit: www.taaran.inExplore related GitHub repositories: https: //github.com/Hemant-Jain-Author
Github Copilot For Developers
���� Welcome to the GitHub Copilot for Developers book bundle! ����Are you ready to take your coding skills to the next level with AI-assisted programming? Look no further! Our comprehensive bundle offers everything you need to become a master developer with GitHub Copilot.���� Book 1: GitHub Copilot Companion ���� Get started on your journey to smart coding with an introduction to AI-assisted programming. Learn how GitHub Copilot generates contextually relevant code suggestions, speeding up your development process and reducing errors.���� Book 2: Mastering AI Pair Programming ���� Ready to advance your skills? Dive into advanced techniques for developers and discover how to maximize productivity with Copilot. From optimizing code generation to seamlessly integrating Copilot into your workflow, become a coding pro in no time!���� Book 3: Efficient Coding with GitHub Copilot ���� Intermediate developers, this one's for you! Explore strategies for writing cleaner, more maintainable code and enhancing your coding efficiency with Copilot. Streamline your development process and take your projects to the next level.���� Book 4: Expert Insights ���� Unlock the secrets of leveraging Copilot for complex development tasks with expert insights and real-world use cases. From refactoring legacy codebases to scaling Copilot for large-scale projects, conquer any coding challenge with confidence.With GitHub Copilot for Developers, you'll revolutionize your development workflow, write code faster and smarter, and unlock endless possibilities for innovation. Don't miss out on this opportunity to become a coding master! Get your bundle today and embark on a journey to coding excellence.