Python Programming Using Problem Solving
Python is a robust, procedural, object-oriented, and functional language. The features of the language make it valuable for web development, game development, business, and scientific programming. This book deals with problem-solving and programming in Python. It concentrates on the development of efficient algorithms, the syntax of the language, and the ability to design programs in order to solve problems. In addition to standard Python topics, the book has extensive coverage of NumPy, data visualization, and Matplotlib. Numerous types of exercises, including theoretical, programming, and multiple-choice, reinforce the concepts covered in each chapter. FEATURES: Concentrates on the development of efficient algorithms, the syntax of the language, and theability to design programs in order to solve problemsFeatures both standard Python topics and also extensive coverage of NumPy, data visualization, and Matplotlib problem-solving techniques
Python Made Easy
Python Made Easy: A First Course in Computer Programming is a full color, step by step, hands-on introduction to the world of computer programming using Python. With a focus on practical application, this book is designed to equip anyone seeking an interactive introduction to Python with the essential skills and knowledge needed to start their programming journey.This book adopts a "learn by doing" approach, providing a rich set of lab exercises at the end of each section and larger programming projects for you to try. By actively engaging with coding exercises along with step-by-step guidance, illustrations, and video demos, you'll develop a solid understanding of Python and build your skills. Here's what you'll learnInstall Python on Windows, Mac, and LinuxPython syntax and basicsData types and Data structuresFile HandlingPython FunctionsException and Error Handling in PythonObject Oriented ProgrammingUsing Modules and Libraries in your Python ProgramsBuilding GUIs and using GraphicsTurtle GraphicsGame DevelopmentTesting and Debugging your ProgramsHow to deploy your Python ProgramsWeb Development using Python FrameworksPython Made Easy: A First Course in Computer Programming using Python is the ideal companion for anyone seeking an interactive introduction to Python programming. Whether you are a student, an aspiring programmer, or a professional from a non-technical background, this book will empower you to master the fundamentals of Python and the world of computer programming.Have Fun!
SvelteKit Up and Running
Learn how to leverage the officially supported Svelte framework to build faster and more powerful web applications by following along with real-world scenarios.Key Features: Develop JavaScript applications with an intuitive and beginner-friendly frameworkGrasp the core concepts of SvelteKit effortlessly with real-world examplesDiscover how SvelteKit minimizes obstacles in building modern web applications, enhancing productivity and efficiencyBook Description: The JavaScript ecosystem has grown vast, complex, and daunting for newcomers. Fortunately, SvelteKit has emerged, simplifying the process of building JavaScript-based web applications. This book aims to demystify SvelteKit, making it as approachable as it makes web app development.With SvelteKit Up and Running you'll be introduced to the philosophy and technologies underlying SvelteKit. First, you'll follow a standard educational programming approach, progressing to a 'Hello World' application. Next, you'll explore the fundamental routing techniques, data loading management, and user submission, all through real-world scenarios commonly encountered in day-to-day development, before discovering various adapters employed by SvelteKit to seamlessly integrate with diverse environments. You'll also delve into advanced concepts like dynamic route management, error handling, and leveraging SvelteKit to optimize SEO and accessibility.By the end of this book, you'll have mastered SvelteKit and will be well-equipped to navigate the complexities of web app development.What You Will Learn: Gain a comprehensive understanding of the core technologies of SvelteKitDive deep into SvelteKit's file-based routing system and uncover basic and advanced conceptsMaster code organization in SvelteKit through effective data-loading techniquesElevate your application's visibility by incorporating SEO and accessibilityStreamline the deployment process of your SvelteKit apps by using adaptersOptimize your SvelteKit app by exploring various configuration and tooling optionsWho this book is for: This book is for web developers aiming to enhance their SvelteKit skills. Whether you're selecting your first JavaScript framework or seeking to stand out among job applicants by adding the latest technology to your resume, this book is your ultimate guide to becoming a SvelteKit master. A solid understanding of HTML, CSS, JavaScript, and Svelte is a must.
Get Your Hands Dirty on Clean Architecture
Gain insight into how Hexagonal Architecture can help to increase maintainability.Key Features: Explore ways to make your software flexible, extensible, and adaptableLearn new concepts that you can easily blend with your own software development styleDevelop the mindset of making conscious architecture decisionsBook Description: Building for maintainability is key to keep development costs low (and developers happy). The second edition of "Get Your Hands Dirty on Clean Architecture" is here to equip you with the essential skills and knowledge to build maintainable software.Building upon the success of the first edition, this comprehensive guide explores the drawbacks of conventional layered architecture and highlights the advantages of domain-centric styles such as Robert C. Martin's Clean Architecture and Alistair Cockburn's Hexagonal Architecture. Then, the book dives into hands-on chapters that show you how to manifest a Hexagonal Architecture in actual code. You'll learn in detail about different mapping strategies between the layers of a Hexagonal Architecture and see how to assemble the architecture elements into an application. The later chapters demonstrate how to enforce architecture boundaries, what shortcuts produce what types of technical debt, and how, sometimes, it is a good idea to willingly take on those debts.By the end of this second edition, you'll be armed with a deep understanding of the Hexagonal Architecture style and be ready to create maintainable web applications that save money and time. Whether you're a seasoned developer or a newcomer to the field, "Get Your Hands Dirty on Clean Architecture" will empower you to take your software architecture skills to new heights and build applications that stand the test of time.What You Will Learn: Identify potential shortcomings of using a layered architectureApply varied methods to enforce architectural boundariesDiscover how potential shortcuts can affect the software architectureProduce arguments for using different styles of architectureStructure your code according to the architectureRun various tests to check each element of the architectureWho this book is for: This book is for you if you care about the architecture of the software you are building. To get the most out of this book, you must have some experience with web development. The code examples in this book are in Java. If you are not a Java programmer but can read object-oriented code in other languages, you will be fine. In the few places where Java or framework specifics are needed, they are thoroughly explained.
Python Programming Language for Beginners
Python Programming Language for Beginners: Learn Python from Scratch and Kickstart Your Programming Journey" is an insightful and comprehensive guide that will take you on a journey from understanding the basics of Python to mastering its applications. Authored by seasoned software engineer Bert Daniels, the book covers a range of topics, from the history of artificial intelligence to the intricacies of object-oriented programming and the Django framework. Whether you're a novice programmer or looking to refresh your Python skills, this book serves as a valuable resource to navigate the Python landscape.
gRPC Go for Professionals
Build robust, production-ready microservices in gRPC Go to enhance the scalability and efficiency of your APIs in real-world applicationsPurchase of the print or Kindle book includes a free PDF eBookKey Features: Discover essential guidelines to steer clear of pitfalls when designing and evolving your gRPC servicesDevelop your understanding of advanced gRPC concepts such as authentication and securityPut your knowledge into action as you build, test, and deploy a TODO list microserviceBook Description: In recent years, the popularity of microservice architecture has surged, bringing forth a new set of requirements. Among these, efficient communication between the different services takes center stage, and that's where gRPC shines. This book will take you through creating gRPC servers and clients in an efficient, secure, and scalable way. However, communication is just one aspect of microservices, so this book goes beyond that to show you how to deploy your application on Kubernetes and configure other tools that are needed for making your application more resilient. With these tools at your disposal, you'll be ready to get started with using gRPC in a microservice architecture.In gRPC Go for Professionals, you'll explore core concepts such as message transmission and the role of Protobuf in serialization and deserialization. Through a step-by-step implementation of a TODO list API, you'll see the different features of gRPC in action. You'll then learn different approaches for testing your services and debugging your API endpoints. Finally, you'll get to grips with deploying the application services via Docker images and Kubernetes.What You Will Learn: Understand the different API endpoints that gRPC lets you writeDiscover the essential considerations when writing your Protobuf filesCompile Protobuf code with protoc and Bazel for efficient developmentGain insights into how advanced gRPC concepts workGrasp techniques for unit testing and load testing your APIGet to grips with deploying your microservices with Docker and KubernetesDiscover tools for writing secure and efficient gRPC codeWho this book is for: Whether you're interested in microservices or looking to use gRPC in your product, this book is for you. To fully benefit from its contents, you'll need a solid grasp of Go programming and using a terminal. If you're already familiar with gRPC, this book will help you to explore the different concepts and tools in depth.
Data Structures and Algorithms Using Python
Efficiently using data structures to collect, organise and retrieve information is one of the core abilities modern computer engineers are expected to have. This student-friendly textbook provides a complete view of data structures and algorithms using the Python programming language, striking a balance between theory and practical application. All major algorithms have been discussed and analysed in detail, and the corresponding codes in Python have been provided. Diagrams and examples have been extensively used for better understanding. Running time complexities are also discussed for each algorithm, allowing the student to better understand how to select the appropriate one. Written with both undergraduate and graduate students in mind, the book will also be helpful with competitive examinations for engineering in India such as GATE and NET. As such, it will be a vital resource for students as well as professionals who are looking for a handbook on data structures in Python.
Pro Cryptography and Cryptanalysis with C++23
Develop strong skills for writing cryptographic algorithms and security schemes/modules using C++23 and its new features. This book will teach you the right methods for writing advanced cryptographic algorithms, such as elliptic curve cryptography algorithms, lattice-based cryptography, searchable encryption, and homomorphic encryption. You'll also examine internal cryptographic mechanisms and discover common ways in which the algorithms can be implemented and used correctly in practice. The authors explain the mathematical basis of cryptographic algorithms in terms that a programmer can easily understand. They also show how "bad" cryptography can creep in during implementation and what "good" cryptography should look like by comparing advantages and disadvantages based on processing time, execution time, and reliability. What You Will Learn Discover what modern cryptographic algorithms and methods are used for Design and implement advanced cryptographic mechanisms See how C++23 and its new features are impact the implementation of cryptographic algorithms Practice the basics of public key cryptography, including ECDSA signatures and more See how most of the algorithms can be broken Who This Book Is For Professional programmers, developers, and software engineers who are developing cryptography algorithms and security schemes/modules in C++. Prior C++ programming and IDE experience and some basic experience of cryptography concepts (symmetric and asymmetric) highly recommended.
Programming the ESP32 in MicroPython
There is a new edition of this book: Programming the ESP32 in MicroPython Second Edition The ESP32 is a remarkable device. It is low cost but with many different subsystems that make it more powerful than you might think. You can use it for simple applications because it is cheap, but you can also use it for more sophisticated applications because it is capable. MicroPython is a good choice of language to program the ESP32. Although it is a slower language than C, most of the time this doesn't matter and it is much easier to use. As a high-level language, MicroPython is based on Python 3 and is fully object-oriented. In general, you can take an existing Python 3 program and simply run it under MicroPython. If there are any changes to make, they are generally minor.Another good thing about MicroPython on the ESP32 is that it is very easy to get started. After a simple installation procedure you have a working MicroPython machine which you can program almost at once using the Thonny IDE or PyCharm which has more extensive syntax checking and input prompting.The purpose of the book is to reveal what you can do with the ESP's GPIO lines together with widely used sensors, servos and motors and ADCs. After covering the GPIO, outputs and inputs, events and interrupts, it gives you hands-on experience of PWM (Pulse Width Modulation), the SPI bus, the I2C bus and the 1-Wire bus. We also cover direct access to the hardware, adding an SD Card reader, sleep states to save power, the RTC, RMT and touch sensors, not to mention how to use WiFi.The ESP32 has so many resources that a comprehensive account would fill a book twice this size. In order to make things fit in the space available we have concentrated on things that are accessible from MicroPython and that are basic to getting started. We have avoided "advanced" topics which generally lead the beginner into deep water far too quickly. However, we do cover of use of uasyncio, and asynchronous programming, in general as they are essential to networking. Jointly authored by Harry Fairhead and Mike James, this book combines Harry's expertise in electronics and the IoT with Mike's knowledge of Python. Their previous books include Programming the Raspberry Pi Pico/W in MicroPython, Raspberry Pi IoT In Python, Raspberry Pi IoT In Python Using Linux Drivers while Harry Fairhead is the author of the C language counterparts. His other books include Fundamental C: Getting Closer To The Machine, Applying C For The IoT With Linux, and Micro: bit IoT in C. Mike James is the author of the Programmer's Python: Something Completely Different series of books and several other programming and computer science titles in the I Programmer Library.
Learn Enough Python to Be Dangerous
All You Need to Know, and Nothing You Don't, to Solve Real Problems with Python Python is one of the most popular programming languages in the world, used for everything from shell scripts to web development to data science. As a result, Python is a great language to learn, but you don't need to learn "everything" to get started, just how to use it efficiently to solve real problems. In Learn Enough Python to Be Dangerous, renowned instructor Michael Hartl teaches the specific concepts, skills, and approaches you need to be professionally productive. Even if you've never programmed before, Hartl helps you quickly build technical sophistication and master the lore you need to succeed. Hartl introduces Python both as a general-purpose language and as a specialist tool for web development and data science, presenting focused examples and exercises that help you internalize what matters, without wasting time on details pros don't care about. Soon, it'll be like you were born knowing this stuff--and you'll be suddenly, seriously dangerous. Learn enough about . . . Applying core Python concepts with the interactive interpreter and command line Writing object-oriented code with Python's native objects Developing and publishing self-contained Python packages Using elegant, powerful functional programming techniques, including Python comprehensions Building new objects, and extending them via Test-Driven Development (TDD) Leveraging Python's exceptional shell scripting capabilities Creating and deploying a full web app, using routes, layouts, templates, and forms Getting started with data-science tools for numerical computations, data visualization, data analysis, and machine learning Mastering concrete and informal skills every developer needs Michael Hartl's Learn Enough Series includes books and video courses that focus on the most important parts of each subject, so you don't have to learn everything to get started--you just have to learn enough to be dangerous and solve technical problems yourself. Like this book? Don't miss Michael Hartl's companion video tutorial, Learn Enough Python to Be Dangerous LiveLessons. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Quantitative Trading Strategies Using Python
Build and implement trading strategies using Python. This book will introduce you to the fundamental concepts of quantitative trading and shows how to use Python and popular libraries to build trading models and strategies from scratch. It covers practical trading strategies coupled with step-by-step implementations that touch upon a wide range of topics, including data analysis and visualization, algorithmic trading, backtesting, risk management, optimization, and machine learning, all coupled with practical examples in Python.Part one of Quantitative Trading Strategies with Python covers the fundamentals of trading strategies, including an introduction to quantitative trading, the electronic market, risk and return, and forward and futures contracts. Part two introduces common trading strategies, including trend-following, momentum trading, and evaluation process via backtesting. Part three covers more advanced topics, including statistical arbitrage using hypothesistesting, optimizing trading parameters using Bayesian optimization, and generating trading signals using a machine learning approach. Whether you're an experienced trader looking to automate your trading strategies or a beginner interested in learning quantitative trading, this book will be a valuable resource. Written in a clear and concise style that makes complex topics easy to understand, and chock full of examples and exercises to help reinforce the key concepts, you'll come away from it with a firm understanding of core trading strategies and how to use Python to implement them.What You Will LearnMaster the fundamental concepts of quantitative tradingUse Python and its popular libraries to build trading models and strategies from scratchPerform data analysis and visualization, algorithmic trading, backtesting, risk management, optimization, and machine learning for trading strategies using PythonUtilize common trading strategies such as trend-following, momentum trading, and pairs tradingEvaluate different quantitative trading strategies by applying the relevant performance measures and statistics in a scientific manner during backtestingWho This Book Is ForAspiring quantitative traders and analysts, data scientists interested in finance, and researchers or students studying quantitative finance, financial engineering, or related fields.
The Potential of Wearables to Automatically Detect Depression
Master's Thesis from the year 2022 in the subject Computer Science - Commercial Information Technology, grade: 1,7, University of Hannover (Institut f羹r Wirtschaftsinformatik), language: English, abstract: Wearable devices are frequently used to continuously collect physiological and behavioral data using integrated sensors. The strong correlation between activity levels and psychiatric disorders implies that these data offer potential in the diagnosis of depression. The objective of this master thesis is to answer the question of how activity data from wearables can be used to diagnose depression. To this end, the following research question is posed: How can wearables be applied to automatically detect depression states? To answer the research question, a secondary data analysis of the Depresjon dataset was conducted. The dataset includes motor activity data from 23 unipolar and bipolar depressed subjects and 32 healthy controls. Statistical features were extracted from the motor activity data to subsequently feed a random forest classifier. Using the motor activity signal from the wearable, the results show a sensitivity value of 0.941, indicating that depressed subjects are correctly classified 94.1% of the time, and a specificity value of 0.936, indicating that healthy control subjects are correctly classified 93.6% of the time.
Metaprogramming in C#
Master advanced techniques for dynamic .NET programming and accelerate productivity by automating tasks, generating adaptable code, and morePurchase of the print or Kindle book includes a free PDF eBookKey Features: Employ metaprogramming to automate your tasks and increase your productivityWrite maintainable, scalable, and adaptable code using metaprogramming techniquesLeverage the .NET runtime for complex problem-solvingBook Description: Metaprogramming is an advanced technique that helps developers to automate repetitive tasks, generate scalable code, and enhance productivity in software development. Metaprogramming in C# is a comprehensive guide that will help you reap the full potential of metaprogramming in .NET runtime.You'll start by learning about the .NET runtime environment and how you can use it to become a more productive developer. You'll learn how to infer types using reflection, use attributes, and create dynamic proxies. You'll also explore the use of expressions to create and execute code and how to take advantage of Dynamic Language Runtime.But that's not all! You'll also learn to go beyond inheritance and use method signature conventions to create easily maintainable code. Finally, you'll dive into the world of compiler magic with Roslyn, where you'll discover how to use Roslyn to generate code, perform static code analysis, and write your own compiler extensions.By the end of this book, you'll have a deep understanding of metaprogramming concepts and how to apply them to your C# code. You'll be able to think about types, use attributes and expressions to generate code, and apply crosscutting concerns to improve code quality.What You Will Learn: Explore how to leverage the .NET runtimeImprove code quality and increase productivityWrite adaptable code for changing requirementsLearn Roslyn for code generation and static analysisMaster metaprogramming and its practical implementationsUse Dynamic Language Runtime for flexible and expressive programmingWho this book is for: This book is for C# developers interested in learning about the .NET runtime and how to leverage it for writing maintainable, scalable, and secure code. Software architects who are responsible for designing and managing complex software solutions will also benefit from the book.
Functional Programming in R 4
Master functions and discover how to write functional programs in R. In this book, updated for R 4, you'll learn to make your functions pure by avoiding side effects, write functions that manipulate other functions, and construct complex functions using simpler functions as building blocks.In Functional Programming in R 4, you'll see how to replace loops, which can have side-effects, with recursive functions that can more easily avoid them. In addition, the book covers why you shouldn't use recursion when loops are more efficient and how you can get the best of both worlds.Functional programming is a style of programming, like object-oriented programming, but one that focuses on data transformations and calculations rather than objects and state. Where in object-oriented programming you model your programs by describing which states an object can be in and how methods will reveal or modify that state, in functional programming you model programs by describing how functions translate input data to output data. Functions themselves are considered to be data you can manipulate and much of the strength of functional programming comes from manipulating functions; that is, building more complex functions by combining simpler functions.What You'll LearnWrite functions in R 4, including infix operators and replacement functions Create higher order functionsPass functions to other functions and start using functions as data you can manipulateUse Filer, Map and Reduce functions to express the intent behind code clearly and safelyBuild new functions from existing functions without necessarily writing any new functions, using point-free programmingCreate functions that carry data along with themWho This Book Is ForThose with at least some experience with programming in R.
Modern Android 13 Development Cookbook
Save months of trial and error with concise guided recipes in this part-color guide and build exceptional Android applications and wearables and support the new foldable technology by using the latest Jetpack librariesKey Features: - Leverage the power of the latest Jetpack libraries in your day-to-day Android development tasks- Explore Wear OS and build large screens to support the foldable world using the declarative approach- Write tests and debug your code as you discover the most useful tips, tricks, and best practices- Purchase of the print or Kindle book includes a free PDF eBookBook Description: Android is a powerful operating system widely used in various devices, phones, TVs, wearables, automobiles, and more. This Android cookbook will teach you how to leverage the latest Android development technologies for creating incredible applications while making effective use of popular Jetpack libraries. You'll also learn which critical principles to consider when developing Android apps.The book begins with recipes to get you started with the declarative UI framework, Jetpack Compose, and help you with handling UI states, Navigation, Hilt, Room, Wear OS, and more as you learn what's new in modern Android development. Subsequent chapters will focus on developing apps for large screens, leveraging Jetpack's WorkManager, managing graphic user interface alerts, and tips and tricks within Android studio. Throughout the book, you'll also see testing being implemented for enhancing Android development, and gain insights into harnessing the integrated development environment of Android studio. Finally, you'll discover best practices for robust modern app development.By the end of this book, you'll be able to build an Android application using the Kotlin programming language and the newest modern Android development technologies, resulting in highly efficient applications.What You Will Learn: - Use Kotlin programming to build your Android applications- Leverage modern Android development (MAD) libraries to create exceptional apps- Explore modern app architecture concepts such as model-view-viewmodel (MVVM)- Utilize dependency injection, clean architecture, and module organization- Discover how to write UI and unit tests for your applications- Get to grips with paging, data binding, and datastore- Build large screens to support the new foldable world- Explore principles of Wear OS in modern Android developmentWho this book is for: This book is for active junior-to-mid-level Android developers with one to two years of professional experience in developing Android applications who are interested in advancing their knowledge of Android development. The recipes in this book use Kotlin and not Java.Table of Contents- Getting Started with Modern Android Development Skills- Creating Screens Using a Declarative UI and Exploring Compose Principles- Handling the UI State in Jetpack Compose and Using Hilt- Navigation in Modern Android Development- Using Datastore to Store Data and Testing- Using the Room Database and Testing- Getting Started with WorkManager- Getting Started with Paging- Building for Large Screens- Implementing Your First Wear OS Using Jetpack Compose- GUI Alerts - What's New in Menus, Dialog, Toast, Snackbars, and More in Modern Android Development- Android Studio Tips and Tricks to Help You during Development
Fundamental Concepts of C++ Programming
The Book, "FUNDAMENTAL CONCEPTS OF C++ PROGRAMMING" is simple and easy to learn. This Book is useful for UG, PG, PhD students and professionals of Computer Science and Engineering, Software, Information Technology. This book contains- Introduction to Programming Language- Object Oriented Programming Paradigms- C++ Tokens and Data Types, Operators- Control Statements, Functions, Local Versus Global Variables- Function Overloading, Functions with Default Arguments, Inline Functions- Storage Classes, Arrays, Structures, Union- Classes and Objects - Static Data Members and Methods- Friend Functions, Friend Classes, Constructors & Destructors- Inheritance, Function Overriding, Single Inheritance - Multiple Inheritance, Multilevel Inheritance, Hierarchical Inheritance, - Hybrid Inheritance- Pointers, The & (AND) Operator, The * Operator- Strings, Operator Overloading, Polymorphism, Compile Time Polymorphism- Virtual Functions, Run Time Polymorphism, Pure Virtual Functions- Input/Output, Stream I/O Classes, File Handling- File Opening Modes, Classification of Files, - Exception Handling, Errors and Error Handling, Exception Handling Building Blocks- Exercises
Pearls of Algorithm Engineering
There are many textbooks on algorithms focusing on big-O notation and basic design principles. This book offers a unique approach to taking the design and analyses to the level of predictable practical efficiency, discussing core and classic algorithmic problems that arise in the development of big data applications, and presenting elegant solutions of increasing sophistication and efficiency. Solutions are analyzed within the classic RAM model, and the more practically significant external-memory model that allows one to perform I/O-complexity evaluations. Chapters cover various data types, including integers, strings, trees, and graphs, algorithmic tools such as sampling, sorting, data compression, and searching in dictionaries and texts, and lastly, recent developments regarding compressed data structures. Algorithmic solutions are accompanied by detailed pseudocode and many running examples, thus enriching the toolboxes of students, researchers, and professionals interested in effective and efficient processing of big data.
Explainable AI and User Experience. Prototyping and Evaluating an UX-Optimized XAI Interface in Computer Vision
Master's Thesis from the year 2023 in the subject Computer Science - SEO, Search Engine Optimization, grade: 1,0, University of Regensburg (Professur f羹r Wirtschaftsinformatik, insb. Internet Business & Digitale Soziale Medien), language: English, abstract: This thesis presents a toolkit of 17 user experience (UX) principles, which are categorized according to their relevance towards Explainable AI (XAI). The goal of Explainable AI has been widely associated in literature with dimensions of comprehensibility, usefulness, trust, and acceptance. Moreover, authors in academia postulate that research should rather focus on the development of holistic explanation interfaces instead of single visual explanations. Consequently, the focus of XAI research should be more on potential users and their needs, rather than purely technical aspects of XAI methods. Considering these three impediments, the author of this thesis derives the assumption to bring valuable insights from the research area of User Interface (UI) and User Experience design into XAI research. Basically, UX is concerned with the design and evaluation of pragmatic and hedonic aspects of a user's interaction with a system in some context. These principles are taken into account in the subsequent prototyping of a custom XAI system called Brain Tumor Assistant (BTA). Here, a pre-trained EfficientNetB0 is used as a Convolutional Neural Network that can divide x-ray images of a human brain into four classes with an overall accuracy of 98%. To generate factual explanations, Local Interpretable Model-agnostic Explanations are subsequently applied as an XAI method. The following evaluation of the BTA is based on the so-called User Experience Questionnaire (UEQ) according to Laugwitz et al. (2008), whereby single items of the questionnaire are adapted to the specific context of XAI. Quantitative data from a study with 50 participants in each control and treatment group is used to present a standardized way of quantif
PHP
Discover how you can secure your website and applications now, understand how security and session get managed.Do you want to know how your website can be secured? Are you getting attacks on your websites? Are you getting tired of apply tricks they show in YouTube but it's still not working? If so, the simple solution is right below: PHP Security and Session Management will answer all your queries and help you understand the core issues and how you can solve them. It will educate your about the threats your site can face once it's live. This book will address the issues and the solutions as well.Imagine not worrying about getting your site hijacked, having abundant knowledge about the threat you've just faced. Imagine being able to help a fellow or junior programmer. Imagine your site fully secure and not having to worry about getting robbed while you sleep. With PHP Security and Session Management you can gain vital information on the issues and get their solutions as well.You'll receive the basic yet curtail information regarding PHP security, from threats to attacks. After reading this book you'll understand the core steps you need to take in order to prevent these attacks.In this book, you'll discover- You'll understand what injections are how it can steal your data.- Introduction to the attacks, hijacking and hacking of php and its prevention.- XSRF/CSRF threats and it's prevention- Session hijacking, what causes it and the steps you need to take for the prevention.- How you can secure the sessions of your php site.- How to create a session along with how you can access one and how to destroy them.- Cross site scripting, what it can do to your site and what kind of attacks you can receive from xss. - What's the purpose of the BRUTE-FORCE ATTACK and how you can prevent them- What is php manual- Best practices for session management and security management.Along with these amazing discoveries you'll be able to secure your php website. By the end of this book, if you keep it in practice along with reading it, you'll end up being a master of security and session management. The PHP Security and Session Management is for anyone who's looking to secure their website or want to understand the sessions in depth. Whether you are a hustler, an intermediate coder or an advanced one, the teachings you'll discover in this book will help you with the security and sessions of your website/applications.Grab your copy of PHP Security and Session Management today to finally take over those filthy attacks which may be one of the reasons of your sleepless nights.
Python for Information Professionals
Python for Information Professionals: How to Design Practical Applications to Capitalize on the Data Explosion is an introduction to the Python programming language for library and information professionals with little or no prior experience. As opposed to the many Python books available today that focus on the language only from a general sense, this book is designed specifically for information professionals who are seeking to advance their career prospects or challenge themselves in new ways by acquiring skills within the rapidly expanding field of data science. Readers of Python for Information Professionals will learn to: Develop Python applications for the retrieval, cleaning, and analysis of large datasets. Design applications to support traditional library functions and create new opportunities to maximize library value. Consider data security and privacy relevant to data analysis when using the Python language.
Python for Information Professionals
Python for Information Professionals: How to Design Practical Applications to Capitalize on the Data Explosion is an introduction to the Python programming language for library and information professionals with little or no prior experience. As opposed to the many Python books available today that focus on the language only from a general sense, this book is designed specifically for information professionals who are seeking to advance their career prospects or challenge themselves in new ways by acquiring skills within the rapidly expanding field of data science. Readers of Python for Information Professionals will learn to: Develop Python applications for the retrieval, cleaning, and analysis of large datasets. Design applications to support traditional library functions and create new opportunities to maximize library value. Consider data security and privacy relevant to data analysis when using the Python language.
Pro Jakarta Ee 10
Welcome to your in-depth professional guide to the open source Eclipse Jakarta EE 10 platform. This book will help you build more complex native enterprise Java-based cloud and other applications that can run in corporate and other mission-critical settings. The majority of the key Jakarta EE 10 APIs or features are dissected in this book, including JSF, JSP, JPA, CDI, REST, Microprofiles, WebSockets, and many more. Along the way, various open source Apache, Eclipse, and other projects are integrated and used for more complete workflows and treatment in general. Jakarta EE 10 comes with a significant number of improvements over Java EE 9 technologies and adopts a series of new technologies. This book starts out with a concise development procedure proposal and shows NetBeans as an alternative IDE to Eclipse. It also talks about versioning, software repositories, and continuous integration techniques. The web tier of enterprise application architectures is covered, including state-of-the-art techniques such as web sockets and front end (JavaScript) related frameworks. The book presents a survey of architecture-related advanced topics, including micro profiles. In a supporting technologies chapter, JSON and XML processing methods are revisited and deepened, and the usage of scripting engines is introduced. A resources chapter discusses enterprise resource integration, such as resource adapters and Hibernate as a mapper between the SQL and the Java world. Also covered is the usage of no-SQL databases. A security chapter shows advanced security enhancement techniques for use of Jakarta EE in corporate environments. The last chapter talks about advanced logging and monitoring techniques, serving both developers and operations staff. What You Will Learn Build complex Jakarta EE applications that run in corporate or other enterprise settingsCreate a professional development workflow using Jakarta EEBuild more advanced web development applicationsWork with more advanced supporting technologies to increase application maturity and stability in a corporate environment Do enterprise resource integration, including custom resource adaptersUtilize security enhancements of enterprise-level Jakarta EE applicationsLeverage techniques to monitor and log in a corporate environment, including memory usage and performance troubleshooting Who This Book is ForExperienced Java programmers and web developers, especially those with some prior experience with the Java EE platform
Designing Applications for Google Cloud Platform
Learn how to use Google Cloud Platform (GCP) and its services to design, build, and deploy applications. This book includes best practices, practical examples, and code snippets written in Java, making it a key resource for developers seeking hands-on experience with GCP. You'll begin with an introduction to GCP services and a review of what Java offers while developing applications for GCP. Next, you'll be walked through how to set up Google App Engine, Google Storage Cloud, and Google Cloud SQL with use cases, as well as application development and deployment. As the book progresses, you'll be exposed to advanced GCP services, deploying and scaling applications on GCP services, and troubleshooting and optimization of Java applications on GCP. The book uses real-world examples to help you understand how GCP services can solve everyday problems. After completing this book, you will understand Google Cloud Platform and its services, and will have the knowledge needed to design, build, and deploy your own applications on GCP using Java. What You'll Learn Create a GCP project, configure authentication and authorization, and deploy a sample application.Use GCP services to solve common problems and apply them to real-world scenariosImplement GCP services such as Datastore, SQL, and SpannerLeverage GCP tools such as the SDK and Cloud Shell Who This Book Is For Software developers, Cloud architects, and managers looking to design and build applications for Google Cloud Platform. This book is for those with software development experience who are familiar with Java programming. It is also suitable for those new to GCP who have a basic understanding of cloud computing concepts.
Css: The Definitive Guide
If you're a web designer or app developer interested in sophisticated page styling, improved accessibility, and less time and effort expended, this book is for you. This revised fifth edition provides a comprehensive guide to CSS implementation along with a thorough review of the latest CSS specifications. Authors Eric Meyer and Estelle Weyl show you how to improve user experience, speed development, avoid potential bugs, and add life and depth to your applications through layout, transitions and animations, borders, backgrounds, text properties, and many other tools and techniques. We read the specs so you don't have to! This guide covers: Selectors, specificity, and the cascade, including information on the new cascade layers New and old CSS values and units, including CSS variables and ways to size based on viewports Details on font technology and ways to use any available font variants Text styling, from basic decoration to changing the entire writing mode Padding, borders, outlines, and margins, now discussed in terms of the new block- and inline-direction layout paradigm used by modern browsers Colors, backgrounds, and gradients, including the conic gradients Accessible data tables Flexible box and grid layout systems, including new subgrid capabilities 2D and 3D transforms, transitions, and animation Filters, blending, clipping, and masking Media, feature, and container queries
Python for Scientific Computing and Artificial Intelligence
Python for Scientific Computing and Artificial Intelligence is split into 3 parts: in Section 1, the reader is introduced to the Python programming language and shown how Python can aid in the understanding of advanced High School Mathematics. In Section 2, the reader is shown how Python can be used to solve real-world problems from a broad range of scientific disciplines. Finally, in Section 3, the reader is introduced to neural networks and shown how TensorFlow (written in Python) can be used to solve a large array of problems in Artificial Intelligence (AI). This book was developed from a series of national and international workshops that the author has been delivering for over twenty years. The book is beginner friendly and has a strong practical emphasis on programming and computational modelling. Features: No prior experience of programming is required Online GitHub repository available with codes for readers to practice Covers applications and examples from biology, chemistry, computer science, data science, electrical and mechanical engineering, economics, mathematics, physics, statistics and binary oscillator computing Full solutions to exercises are available as Jupyter notebooks on the Web Support Material GitHub Repository of Python Files and Notebooks: https: //github.com/proflynch/CRC-Press/ Solutions to All Exercises: Section 1: An Introduction to Python: https: //drstephenlynch.github.io/webpages/Solutions_Section_1.html Section 2: Python for Scientific Computing: https: //drstephenlynch.github.io/webpages/Solutions_Section_2.html Section 3: Artificial Intelligence: https: //drstephenlynch.github.io/webpages/Solutions_Section_3.html
Applied Evolutionary Algorithms for Engineers Using Python
This book meant for students, scientists and engineers to help in the application of evolutionary algorithms to practical optimization problems. The presentation of theoretical background is complemented with didactical Python implementations of evolutionary algorithms that researchers have recently applied to complex optimization problems.
Flutter Cookbook - Second Edition
Write, test and publish your web, desktop, and embedded apps with this most up-to-date book on Flutter using the Dart programming language.Key Features: Thoroughly updated to cover the latest features in Flutter 3.x and Dart 3 (alpha)Practical recipes to publish responsive, multi-platform apps from a single databaseCovers not just the 'hows' but the 'whys' of Flutter's features with examplesBook Description: Discover how to master Flutter and become a skilled app developer with the Flutter Cookbook, Second Edition! This recipe-based guide is the ultimate solution for creating cutting-edge, high-performance mobile apps that stand out in the market.With the latest features of Flutter 3.x, you'll learn how to set up and customize the Flutter SDK for macOS and Windows, build a robust architecture for your application, and master state management solutions and networking techniques. From mastering widgets and creating effective UI/UX design to implementing hot reload and re-start techniques, this book covers all the aspects of developing a successful app.You'll dive deep into the fundamentals of Dart programming and gain expert knowledge on managing incoming and outgoing data, and adding interactivity, animations, and essential Flutter plugins like maps, camera, voice, and more. Moreover, you'll explore custom machine learning solutions with a dedicated chapter on implementing MLkit, which runs on TensorFlow Lite.By the end of this book, you'll have the confidence to write fully functional Flutter apps that are ready to hit the market. Take your Flutter development skills to the next level with the Flutter Cookbook, Second Edition!What You Will Learn: Familiarize yourself with Dart fundamentals and set up your development environmentEfficiently track and eliminate code errors with proper toolsCreate various screens using multiple widgets to effectively manage dataCraft interactive and responsive apps by incorporating routing, page navigation, and input field text readingDesign and implement a reusable architecture suitable for any appMaintain control of your codebase through automated testing and developer toolingDevelop engaging animations using the necessary toolsEnhance your apps with ML features using Firebase MLKit and TensorFlow LiteWho this book is for: Developers who are familiar with the OOP language and prefer learning-by-doing will get the most out of this book. If you have some experience building apps on Flutter or have been playing around with the framework for some time now and have set eyes on developing mobile apps using Dart, then this book is for you.
Online News Recommendation Systems in Machine Learning
Research Paper (postgraduate) from the year 2018 in the subject Computer Science - Applied, grade: A, National University of Modern Languages, Islamabad (Institute of Management Sciences), course: IT, language: English, abstract: Bearing in mind the increasing need for access to personalized news, the current research study aims at developing an online news recommendation system that could offer an optimum online news reading experience in a highly personalized fashion. The study considers major methodologies and perspectives, such as reinforced learning, Q-Learning, Collaborative Filtering and User Profiling, within this domain in order to implement the ONRS system. Online news reading has gained more attention in recent years than ever, particularly based on the increasing dependence of users on smartphones and the internet. Leading a busy lifestyle, end-users find it hard to search for relevant news articles online, and require tools that could provide them with the most needed news feed on the go. Although legacy news recommendation systems do exist, yet they do not offer optimum efficiency and accuracy.
Building Modern SaaS Applications with C# and .NET
Embark on a tech-tastic adventure and build Software as a Service (SaaS) applications using the Microsoft tech stackPurchase of the print or Kindle book includes a free PDF eBookKey Features: Understand the core concepts of Software as a Service and their importance in building modern applicationsBuild a wide array of key elements for SaaS applications using practical examplesLearn to test, deploy, upgrade, and maintain a SaaS applicationBook Description: There are several concepts that must be mastered to deliver functional and efficient SaaS applications. This book is perfect for developers and teams with experience in traditional application development looking to switch to SaaS and deliver slick and modern applications. You'll start with a general overview of SaaS as a concept and learn with the help of an example throughout the book to bring life to the technical descriptions. You'll use the Microsoft .NET tech stack for development and C# as the programming language to develop your desired SaaS application.Delivering SaaS requires a deep understanding of all layers in the application stack. As you progress, you'll learn how to approach the database layer, the API, and the UI to confidently approach application development using the SaaS model. Additionally, you'll explore how to test, deploy, maintain, and upgrade each component of the application.By the end of this book, you will be well equipped to approach all aspects of delivering software using the SaaS paradigm.What You Will Learn: Explore Software as a Service and understand its importance in modern application developmentDiscover multi-tenancy and its impact on design decisions for SaaSBuild, test, and deploy a database, API, and UI for a SaaS applicationApproach authentication and authorization like a proScale a SaaS applicationEmploy C# and .NET to build SaaS applicationsWho this book is for: If you are a software developer with an interest in developing apps using the 'SaaS' paradigm, or a tech lead, scrum master, or a director and founder - this book will help you understand how to build a SaaS application. If you are a Java developer looking to start fresh with distributed systems, this book is for you. A basic understanding of Java, Spring/Spring Boot, and Web services will help you get the most out of this book.
Effective Data Mining Techniques for Unstructured Data in Big Data
Master's Thesis from the year 2017 in the subject Computer Science - Applied, grade: 10, Rajiv Gandhi University (PATEL COLLEGE OF SCIENCE AND TECHNOLOGY), course: COMPUTER SCIENCE, language: English, abstract: In this paper I collect healthcare data, which consists of all the details of the patients' symptoms, disease etc. After the collection of data, there will be pre-processing on all the details of the patients' data, as we need only filtered data for our analysis. The data will be stored in Hadoop. A user can retrieve the data by symptoms, disease etc. Big Data is a collection of large and complex data. It consists of structured, semi-structured, and unstructured types of data. Data gets generated from various sources and from different fields. In today's era, data is being generated in huge amounts. The whole world is moving towards the digitalization. Social media sites, digital pictures and videos, and many others. All this type of data is known as big data. Data mining is a useful technique for extracting a pattern. This is helpful from large scale data sets. Useful and meaningful data can be extracted from this big data with the help of data mining by processing on that data.
Android Studio Flamingo Essentials - Java Edition
Fully updated for Android Studio Flamingo, this book aims to teach you how to develop Android-based applications using the Java programming language.This book begins with the basics and outlines how to set up an Android development and testing environment, followed by an overview of areas such as tool windows, the code editor, and the Layout Editor tool. An introduction to the architecture of Android is followed by an in-depth look at the design of Android applications and user interfaces using the Android Studio environment.Chapters are also included covering the Android Architecture Components, including view models, lifecycle management, Room database access, the Database Inspector, app navigation, live data, and data binding.More advanced topics such as intents are also covered, as are touch screen handling, gesture recognition, and the recording and playback of audio. This book edition also covers printing, transitions, and foldable device support.The concepts of material design are also covered in detail, including the use of floating action buttons, Snackbars, tabbed interfaces, card views, navigation drawers, and collapsing toolbars.Other key features of Android Studio and Android are also covered in detail, including the Layout Editor, the ConstraintLayout and ConstraintSet classes, MotionLayout Editor, view binding, constraint chains, barriers, and direct reply notifications. Chapters also cover advanced features of Android Studio, such as App Links, Dynamic Delivery, Gradle build configuration, in-app billing, and submitting apps to the Google Play Developer Console.Assuming you already have some Java programming experience, are ready to download Android Studio and the Android SDK, have access to a Windows, Mac, or Linux system, and have ideas for some apps to develop, you are ready to get started.
Python Networking 101
Python Networking 101 is the ultimate guide for aspiring network administrators looking to build their network management and automation skills using Python. With a comprehensive and hands-on approach, this book covers the most important aspects of networking, including network fundamentals, network automation, monitoring, security, topology, and testing.The book begins with an overview of the Python language and its libraries used for networking tasks. Each chapter then focuses on a specific networking task, providing readers with a deep understanding of the topic and practical demonstrations using Python libraries. By the end of each chapter, readers will be well-versed in the execution and implementation of these tasks.Throughout the book, readers will learn about the best Python libraries network administrators prefer, including Netmiko, Paramiko, SNMP, Flask, AsyncIO, and more. Practical examples and exercises will help them gain hands-on experience working with these libraries to achieve various networking objectives. The book also discusses advanced network automation techniques, providing insights into network automation frameworks, such as Ansible, and how to build custom network automation solutions using Python. By the end of the book, readers will be equipped with the knowledge to integrate Python with network management tools, making them efficient and effective network administrators.Key LearningsMaster Python language and its networking libraries for network administration tasks.Monitor and analyze network performance and troubleshoot issues effectively.Enhance network security using Python libraries and best practices.Get well-versed with Netmiko, Paramiko, Socket, PySNMP, AsyncIO, and SimPy.Develop custom network services and interact with RESTful APIs using Python.Improve performance with asynchronous programming using AsyncIO in network applications.Get hands-on with Ansible to create playbooks and perform every possible network automation.Perform network testing and simulation, and analyze results for optimized performance.Manage and automate network configuration changes and ensure compliance.Leverage advanced network automation techniques and frameworks for efficient administration.Table of ContentIntroduction to Python and Networking LibrariesTCP, UDP and Socket ProgrammingWorking with Application LayerExploring Network AutomationNetwork Monitoring and AnalysisNetwork Security and PythonWorking with APIs and Network ServicesNetwork Programming with AsyncIONetwork Testing and SimulationNetwork Configuration ManagementAnsible and PythonAudience"Python Networking 101" is designed to provide readers with the skills required to excel as a network administrators. The practical approach, coupled with real-world examples, ensures readers can implement the techniques learned in their professional careers. Knowing Python and the basics of computer networks is sufficient, to begin with this book.
PHP Cookbook
If you're a PHP developer looking for proven solutions to common problems, this cookbook provides code recipes to help you resolve numerous scenarios. By leveraging modern versions of PHP through version 8.1, these self-contained recipes provide fully realized solutions that can help you solve similar problems in your day-to-day work. Whether you're new to development or merely new to PHP, these recipes will help you unpack the most powerful features of this programming language. Author Eric Mann, a regular contributor to php[architec magazine, frequently makes presentations on software architecture and has built scalable projects for startups and Fortune 500 companies alike. Learn the type system of modern PHP Build efficient applications composed of functions and objects Understand key concepts such as encryption, error handling, debugging, and performance tuning Explore the PHP package/extension ecosystem Learn how to build basic web and basic command-line applications Work securely with files on a machine, both encrypted and in plain text
Modern X86 Assembly Language Programming
This book is an instructional text that will teach you how to code x86-64 assembly language functions. It also explains how you can exploit the SIMD capabilities of an x86-64 processor using x86-64 assembly language and the AVX, AVX2, and AVX-512 instruction sets.This updated edition's content and organization are designed to help you quickly understand x86-64 assembly language programming and the unique computational capabilities of x86 processors. The source code is structured to accelerate learning and comprehension of essential x86-64 assembly language programming constructs and data structures. Modern X86 Assembly Language Programming, Third Edition includes source code for both Windows and Linux. The source code elucidates current x86-64 assembly language programming practices, run-time calling conventions, and the latest generation of software development tools.What You Will LearnUnderstand important details of the x86-64 processor platform, including its core architecture, data types, registers, memory addressing modes, and the basic instruction setUse the x86-64 instruction set to create assembly language functions that are callable from C++Create assembly language code for both Windows and Linux using modern software development tools including MASM (Windows) and NASM (Linux)Employ x86-64 assembly language to efficiently manipulate common data types and programming constructs including integers, text strings, arrays, matrices, and user-defined structuresExplore indispensable elements of x86 SIMD architectures, register sets, and data types.Master x86 SIMD arithmetic and data operations using both integer and floating-point operandsHarness the AVX, AVX2, and AVX-512 instruction sets to accelerate the performance of computationally-intense calculations in machine learning, image processing, signal processing, computer graphics, statistics, and matrix arithmetic applicationsApply leading-edge coding strategies to optimally exploit the AVX, AVX2, and AVX-512 instruction sets for maximum possible performance Who This Book Is ForSoftware developers who are creating programs for x86 platforms and want to learn how to code performance-enhanced algorithms using the core x86-64 instruction set; developers who need to learn how to write SIMD functions or accelerate the performance of existing code using the AVX, AVX2, and AVX-512 instruction sets; and computer science/engineering students or hobbyists who want to learn or better understand x86-64 assembly language programming and the AVX, AVX2, and AVX-512 instruction sets.
SQL 101 Crash Course
SQL 101 Crash Course is a comprehensive beginner's guide that takes you through the world of SQL, right from understanding databases to mastering complex queries. This book is designed to provide you with a solid foundation in SQL, along with practical examples and real-world scenarios to reinforce your learning. In this book, you'll explore the key concepts of databases and their structure while getting started with SQLite Studio, a versatile SQL tool. You'll dive deep into the fundamentals of SQL queries, turning raw data into meaningful information, and working with tables, multiple tables, and their relationships.You'll also learn how to harness the power of SQL functions and subqueries to optimize your queries and retrieve data more efficiently. As you progress, you'll delve into the world of views, joins, and advanced SQL topics such as transactions, stored procedures, and performance tuning. The book concludes with two sample databases, where you'll put your newfound knowledge to the test and gain hands-on experience.This book promises a smooth learning journey for aspiring SQL developers, enabling them to build robust and efficient databases. The book's step-by-step approach ensures that even complete beginners can grasp complex concepts with ease. By the end of this book, you'll emerge as a smart SQL developer, equipped with the skills and knowledge to tackle real-world database challenges.Key LearningsMaster SQL fundamentals and best practices.Learn to create, modify, and optimize tables.Understand and implement table relationships.Execute complex queries with ease and confidence.Leverage SQL functions for powerful data manipulation.Utilize subqueries and derived tables effectively.Create and manage views for enhanced data access.Apply advanced SQL techniques for optimized performance.Hands-on experience with real-world sample databases.Begin your journey as a skilled SQL developer.Table of ContentIntroduction to Databases and SQLSetting Up Your SQL EnvironmentSQL Queries BasicsTurning Data into InformationWorking with TablesMultiple Tables and JoinsSQL FunctionsSubqueries and Derived TablesViews and Materialized ViewsAdvanced SQL TopicsSample Programs & Executing SQLAudienceThis book requires no prior knowledge to get started, making it an ideal read for those looking to pursue careers in database administration, business analytics, or business intelligence. Its accessibility ensures that an unwavering passion for learning SQL is all you need to effortlessly progress through the book's content.
A Language Unfolded-How History, Culture, and Language Converged
"A Language Unfolded: How History, Culture, and Language Converged" is a fascinating journey through the evolution of the English language. From its ancient roots to its modern-day global influence, this book takes readers on a thrilling ride through the history, culture, and linguistic influences that have shaped English into the language we know today.Through six carefully crafted chapters, the book explores the origins of English, from its Germanic roots to its transformation during the Middle Ages. It delves into the social, cultural, and historical factors that influenced the language, such as the impact of the British Empire, the rise of American cultural dominance, and the advent of technology and globalization.The book offers an engaging and accessible overview of the evolution of the English language, making it the perfect resource for students, educators, and anyone interested in language and culture. It is packed with interesting facts, anecdotes, and insights, making it an enjoyable read for language enthusiasts and casual readers alike.But "A Language Unfolded" is more than just a history book. It is a reflection on the ongoing significance of the English language in today's world. The book explores the challenges and opportunities of teaching and learning English, as well as the role of English as a global language. It also looks to the future, considering the potential impact of digital technology and social media on the language.The book draws on a range of academic sources, including linguistics, history, anthropology, and cultural studies, making it a comprehensive and authoritative resource on the English language. It is written in an engaging and accessible style, making it easy for readers of all levels to follow.In short, "A Language Unfolded" is a must-read for anyone interested in the history, culture, and evolution of the English language. It offers a comprehensive and engaging overview of the subject, making it an invaluable resource for students, educators, and language enthusiasts alike. So, if you want to discover the fascinating story of one of the world's most influential languages, this book is the perfect place to start.
Murach’s C# (8th Edition)
The 8th Edition of Murach's C# does a better job than ever of teaching the C# programming language. Each section features clear examples and easy-to-understand explanations that walk you through crucial skills, best practices, and helpful tips.Using this book as your guide, you'll get off to a fast start by taking advantage of the best features of Visual Studio, C#, and the .NET classes to develop Windows Forms apps. Because of its self-paced approach, this book works equally well whether you're new to programming or an experienced developer.After presenting some essential C# skills, this book shows how to write object-oriented code the way it's done in the real world. It also shows you how to work with a database using EF (Entity Framework) or ADO.NET. When you're done, you'll be able to develop 3-tier, object-oriented, Windows Forms apps that work with a database. More importantly, you'll have a solid set of C# skills that you can apply to any C# app whether it's for the desktop, the web, or mobile devices.Every Murach book guarantees high quality. The complete apps show how each feature works in context. The exercises at the end of each chapter let you practice your new skills and gain valuable hands-on experience. And the distinctive "paired-pages" format is ideal for learning and reference.
Introduction to Choreographies
In concurrent and distributed systems, processes can complete tasks together by playing their parts in a joint plan. The plan, or protocol, can be written as a choreography: a formal description of overall behaviour that processes should collaborate to implement, like authenticating a user or purchasing an item online. Formality brings clarity, but not only that. Choreographies can contribute to important safety and liveness properties. This book is an ideal introduction to theory of choreographies for students, researchers, and professionals in computer science and applied mathematics. It covers languages for writing choreographies and their semantics, and principles for implementing choreographies correctly. The text treats the study of choreographies as a discipline in its own right, following a systematic approach that starts from simple foundations and proceeds to more advanced features in incremental steps. Each chapter includes examples and exercises aimed at helping with understanding the theory and its relation to practice.
A Functional Approach to Java
Java developers usually tackle the complexity of software development through object-oriented programming (OOP). But not every problem is a good match for OOP. The functional programming (FP) paradigm offers you another approach to solving problems, and Java provides easy-to-grasp FP tools such as lambda expressions and Streams. If you're interested in applying FP concepts to your Java code, this book is for you. Author Ben Weidig highlights different aspects of functional programming and shows you how to incorporate them into your code without going "fully functional." You'll learn how, when, and why to use FP concepts such as immutability and pure functions to write more concise, reasonable, and future-proof code. Many developers seek to expand their horizons by using OOP and FP together. It's no longer either-or; it's both. In this book, you will: Get a high-level overview of functional programming, including the types already available to Java developers Explore different FP concepts and learn how to use them Learn how to augment your code and use Java's new functional features in your daily work without going fully functional Develop a functional mindset and improve your programming skills regardless of language or paradigm
Android Studio Flamingo Essentials - Kotlin Edition
Fully updated for Android Studio Flamingo, this book aims to teach you how to develop Android-based applications using the Kotlin programming language.This book begins with the basics and outlines how to set up an Android development and testing environment, followed by an introduction to programming in Kotlin, including data types, control flow, functions, lambdas, and object-oriented programming. Asynchronous programming using Kotlin coroutines and flow is also covered in detail.An overview of Android Studio covers areas such as tool windows, the code editor, and the Layout Editor tool. An introduction to the architecture of Android is followed by an in-depth look at the design of Android applications and user interfaces using the Android Studio environment.Chapters are also included covering the Android Architecture Components, including view models, lifecycle management, Room database access, the Database Inspector, app navigation, live data, and data binding.More advanced topics such as intents are also covered, as are touch screen handling, gesture recognition, and the recording and playback of audio. This book edition also covers printing, transitions, and foldable device support.The concepts of material design are also covered in detail, including the use of floating action buttons, Snackbars, tabbed interfaces, card views, navigation drawers, and collapsing toolbars.Other key features of Android Studio and Android are also covered in detail, including the Layout Editor, the ConstraintLayout and ConstraintSet classes, MotionLayout Editor, view binding, constraint chains, barriers, and direct reply notifications. Chapters also cover advanced features of Android Studio, such as App Links, Dynamic Delivery, Gradle build configuration, in-app billing, and submitting apps to the Google Play Developer Console.Assuming you already have some programming experience, are ready to download Android Studio and the Android SDK, have access to a Windows, Mac, or Linux system, and have ideas for some apps to develop, you are ready to get started.
Resilient Oracle Pl/SQL
As legacy and other critical systems continue to migrate online, the need for continuous operation is imperative. Code has to handle data issues as well as hard external problems today, including outages of networks, storage systems, power, and ancillary systems. This practical guide provides system administrators, DevSecOps engineers, and cloud architects with a concise yet comprehensive overview on how to use PL/SQL to develop resilient database solutions. Integration specialist Stephen B Morris helps you understand the language, build a PL/SQL toolkit, and collect a suite of reusable components and patterns. You'll dive into the benefits of synthesizing the toolkit with a requirements-driven, feature-oriented approach and learn how to produce resilient solutions by synthesizing the PL/SQL toolkit in conjunction with a scale of resilience. Build solid PL/SQL solutions while avoiding common PL/SQL antipatterns Learn why embedding complex business logic in SQL is often a brittle proposition Learn how to recognize and improve weak PL/SQL code Verify PL/SQL code by running data-driven, in-database tests Understand the safe operation, maintenance, and modification of complex PL/SQL systems Learn the benefits of thinking about features rather than just use cases Define good requirements for PL/SQL and hybrid solutions involving PL/SQL and high level languages
Enterprise Social for the Java Platform
Learn everything you need to know about frameworks that help developers to integrate their solutions with social networks or APIs, from general purpose (Facebook, Twitter, Google, Mastodon) to specialized (LinkedIn, Xing, WhatsApp, YouTube, Instagram, Flickr, TikTok) to vertical (eToro, Fitbit, Strava). This book will teach you how to add social media features to web applications or services developed using Java, Jakarta EE, or generally running on a Java Virtual Machine (JVM). Jam-packed with practical examples of social integration into enterprise applications, you'll learn how to address common requirements such as social login, identity federation, single sign-on via social accounts, OpenID Connect, and mashups. You'll also see how to leverage Java social frameworks like Facebook Business SDK, Twitter4J, Agorava, Keycloak, and Spring Security. Enterprise Social for the Java Platform is an excellent companion to books covering Jakarta EE Security, Spring Security, portals, and related frameworks. Upon completing it, you'll be armed with the expertise you need to integrate your own Java enterprise applications with social media networks. What You Will Learn Harness the reach and power of social media platforms by integrating your enterprise Java applications with themUnderstand social media standards for different platformsAddress common security issues Who This Book Is For Developers, architects, and managers of projects involving the use of APIs or Social Networks.
SQL
Do you use SQL at work or at home and want to learn how to use the right functions and queries to extract the relevant details in the database? Do you want to learn how to generate the right views and more? If you answered yes, then you are in the right place. Many companies collect information from different sources and use that information to improve their revenue. It is difficult to work with large volumes of data, but companies have to learn how to collect that information in data warehouses or databases. Only when the data is stored can it be analyzed and used to improve business decisions. If you are using SQL for the first time, then this book is for you. You can use it as your guide through the various and needed aspects of querying. In this book, you will learn more about the language and how you can use it to extract the necessary information from the dataset. You will learn about: ● SQL and its benefits ● Various data types used in SQL ● How to manage and retrieve the relevant objects and data from the database ● Common mistakes and how to overcome them ● How to protect the database from hacking ● Using Joins, Subqueries, and Set Operators ● And more! If you want to master SQL, then a little practice is required. Use the examples and exercises in this book to improve your skills and learn how to build complex SQL queries. So, what are you waiting for? Grab a copy of this book now!
SQL
Are you thinking about learning SQL, but not sure where to start?Big data is prevalent now, with more data than we ever dreamed possible being made available . And all that data needs to be stored in such a way it can be easily accessed.That's where databases and SQL come in, providing the means to manage and interpret data easily. SQL is the go-to language for database management, the most reliable and widely used, and it's showing no signs of losing its popularity. This SQL guide for beginners covers all the basics you need to know about working with data and databases. The book is divided into six parts and includes instructions on downloading a sample database to work with throughout.In this guide, you will learn: - How to install SQL Oracle- How to query data- How to sort and filter tables- Using the SELECT statement- Using the ORDER BY and WHERE clauses- Oracle operators- All the different Oracle Joins, including INNER, OUTER, LEFT, RIGHT, and more- How to create and alter tables- SQL data types- And much moreIf you are interested in learning SQL, this is the best place to begin and set yourself on course to become a master SQL programmer.
Agile Web Development with Rails 7
Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single-page applications - at a fraction of the complexity. Rails 7 integrates the Hotwire frameworks of Stimulus and Turbo directly as the new defaults, together with that hot newness of import maps. The result is a toolkit so powerful that it allows a single individual to create modern applications upon which they can build a competitive business. The way it used to be. Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly - you concentrate on creating the application, and Rails takes care of the details. Rails 7 brings many improvements, and this edition is updated to cover the new features and changes in best practices. We start with a step-by-step walkthrough of building a real application, and in-depth chapters look at the built-in Rails features. Follow along with an extended tutorial as you write a web-based store application. Eliminate tedious configuration and housekeeping, seamlessly incorporate JavaScript, send and receive emails, manage background jobs with ActiveJob, and build real-time features using WebSockets and ActionCable. Test your applications as you write them using the built-in unit, integration, and system testing frameworks, internationalize your applications, and deploy your applications easily and securely. Rails 1.0 was released in December 2005. This book was there from the start, and didn't just evolve alongside Rails, it evolved with Rails. It has been developed in consultation with the Rails core team. In fact, Rails itself is tested against the code in this book. What You Need: All you need is a Windows, Mac OS X, or Linux machine to do development on. This book will take you through the steps to install Rails and its dependencies. If you aren't familiar with the Ruby programming language, this book contains a chapter that covers the basics necessary to understand the material in the book.
Principles of Soft Computing Using Python Programming
Principles of Soft Computing Using Python Programming An accessible guide to the revolutionary techniques of soft computing Soft computing is a computing approach designed to replicate the human mind's unique capacity to integrate uncertainty and imprecision into its reasoning. It is uniquely suited to computing operations where rigid analytical models will fail to account for the variety and ambiguity of possible solutions. As machine learning and artificial intelligence become more and more prominent in the computing landscape, the potential for soft computing techniques to revolutionize computing has never been greater. Principles of Soft Computing Using Python Programming provides readers with the knowledge required to apply soft computing models and techniques to real computational problems. Beginning with a foundational discussion of soft or fuzzy computing and its differences from hard computing, it describes different models for soft computing and their many applications, both demonstrated and theoretical. The result is a set of tools with the potential to produce new solutions to the thorniest computing problems. Readers of Principles of Soft Computing Using Python Programming will also find: Each chapter accompanied with Python codes and step-by-step comments to illustrate applicationsDetailed discussion of topics including artificial neural networks, rough set theory, genetic algorithms, and moreExercises at the end of each chapter including both short- and long-answer questions to reinforce learning Principles of Soft Computing Using Python Programming is ideal for researchers and engineers in a variety of fields looking for new solutions to computing problems, as well as for advanced students in programming or the computer sciences.
Pro Spring 6 with Kotlin
Master the fundamentals of Spring Framework 6 while learning from the real-world experiences of Spring experts. Over the course of this book, you'll learn how to leverage Spring 6 in tandem with the Kotlin programming language to build complex enterprise applications from top to bottom. From monoliths to cloud native apps for streaming microservices, you'll gain insight into every aspect of the process, including transactions, data access, persistence, and web and presentation tiers. As you progress through the book, the authors demonstrate how to run Kotlin with a single command, deploy new utility methods in String class, use Local-Variable Syntax for Lambda Parameters Nested Based Access Control, read/write strings to and from files, and using Flight Recorder. Also, a whole new generation of dependencies are available, and you'll see exactly how to make optimal use of them. A full sample application will show you how to apply Spring 6's new tools and techniques and see how they work together. After reading this comprehensive book, you'll be ready to build your own Spring applications using Kotlin. What You Will Learn Explore what's new in Spring Framework 6 and the Kotlin APIs it supportsLeverage a new generation of dependenciesBuild complex enterprise monoliths, cloud-native applications, and microservicesMaster data access, persistence, and transactionsUse with Spring Batch, Integration, and other key Spring modulesIntegrate Spring 6 with Hibernate and other third party APIs and packages Who This Book Is For Experienced Kotlin and Java software developers and programmers. Some previous experience with Spring is highly recommended.
Programming Languages: Principles and Paradigms
This textbook is a thorough, up-to-date introduction to the principles and techniques that guide the design and implementation of modern programming languages. The goal of the book is to provide the basis for a critical understanding of most modern programming languages. Thus, rather than focusing on a specific language, the book identifies the most important principles shared by large classes of languages. The notion of 'abstract machine' is a unifying concept that helps to maintain an accurate and elementary treatment. The book introduces, analyses in depth, and compares the imperative, object-oriented, functional, logic, concurrent, constraint-based, and service-oriented programming paradigms. All material coming from the first English edition has been updated and extended, clarifying some tricky points, and discussing newer programming languages. This second edition contains new chapters dedicated to constraint, concurrent, and service-oriented programming.Topics and features: Requires familiarity with one programming language is a prerequisiteProvides a chapter on history offering context for most of the constructs in use todayPresents an elementary account of semantical approaches and of computabilityIntroduces new examples in modern programming languages like Python or ScalaOffers a chapter that opens a perspective on applications in artificial intelligenceConceived as a university textbook, this unique volume will also be suitable for IT specialists who want to deepen their knowledge of the mechanisms behind the languages they use. The choice of themes and the presentation style are largely influenced by the experience of teaching the content as part of a bachelor's degree in computer science.