Software
Building Quality Shaders for Unity®
Understand what shaders are and what they’re used for: Shaders are often seen as mystical and difficult to develop, even by skilled programmers, artists, and developers from other game design disciplines. This book dispels that idea by building up your shader knowledge in stages, starting with fundamental shader mathematics and how shader development mindset differs from other types of art and programming, and slowly delves into topics such as vertex and fragment shaders, lighting, depth-based effects, texture mapping, and Shader Graph.This book presents each of these topics with a comprehensive breakdown, the required theory, and some practical applications for the techniques learned during each chapter. The HLSL (High Level Shading Language) code and Shader Graphs will be provided for each relevant section, as well as plenty of screenshots.By the end of this book, you will have a good understanding of the shader development pipeline and you will be fully equipped to start making your own aesthetic and performant shader effects for your own games!YOU WILL LEARN TO• Use shaders across Unity’s rendering pipelines• Write shaders and modify their behavior with C# scripting• Use Shader Graph for codeless development• Understand the important math behind shaders, particularly space transformations• Profile the performance of shaders to identify optimization targetsWHO IS THIS BOOK FORThis book is intended for beginners to shader development, or readers who may want to make the jump from shader code to Shader Graph. It will also include a section on shader examples for those who already know the fundamentals of shaders and are looking for specific use cases. Daniel Ilett is an ambitious and motivated PhD student at the University of Warwick. He is a passionate game developer, specialising in shaders and technical art. He publishes a range of educational and tutorial content, including videos and written work, aimed at beginners and intermediate developers. He also does freelance work on shaders and visual effects for games. Chapter 1: Introduction to Shaders in UnitySub-topics:• Brief overview of shader fundamentals• Unity’s built-in pipeline• URP (Universal Render Pipeline)• HDRP (High Definition Render Pipeline)Chapter 2: Maths for Shader DevelopmentSub-topics:• Vectors in 2D and 3D• Dot product, cross product, and other vector operations• Matrices• Multiplication, transpose, inverse, and common matrix operations• Important spaces in computer graphics• Homogeneous coordinate systems• Transformation between spacesChapter 3: Your Very First ShaderSub-topics:• The shader pipeline, and data flow• ShaderLab, SubShaders and Fallbacks• Shader Tags• The appdata struct: Input to the vertex shader• The vertex shader• The v2f struct: Data passed between the vertex and fragment shader• The fragment shaderChapter 4: Shader GraphSub-topics:• The argument for node-based editors• The vertex and fragment stages• Shader nodes & properties• Your first Shader GraphChapter 5: Textures, UV Coordinates & Normal MappingSub-topics:• What is texture mapping?• What are UV coordinates?• Scaling, rotating and offsetting UVs• Sampler states• Normal mapping & tangent spaceChapter 6: TransparencySub-topics:• Transparency vs opacity• Alpha-blended transparency• Sorting• Screen-door (“dithered”) transparencyChapter 7: The Depth Buffer• What is the depth buffer?• Depth-testing and culling• Depth-based shader effectsChapter 8: More Shader FundamentalsSub-topics:• Shader keywords and variants• Single- and multi-pass shaders• GrabPass and UsePass• Unity’s standard shader librariesChapter 9: Lighting & ShadowsSub-topics:• Lighting theory: Diffuse, specular, ambient, and Fresnel light• Phong shading• Physically based rendering• Shadow castingChapter 10: Image Effects & Post ProcessingSub-topics:• Post Processing in the Built-in pipeline, URP and HDRP• Convolution kernels, Gaussian blur and multi-pass effects.• Edge detection with a Sobel kernel• Better edge detection using the depth texture and normal textureChapter 11: Advanced ShadersSub-topics:• Geometry shaders: adding or modifying vertices• Tessellation shaders: subdividing a mesh• Building an LOD system with tessellation shaders• Compute shaders: arbitrary computation on the GPUChapter 12: Profiling & OptimizationSub-topics:• The Unity Profiler and Frame Debugger• Branching in shaders• Avoiding overdraw• Multi-material objects• BatchingChapter 13: Shader Recipes For Your GamesSub-topics:• World-space reconstruction in post processing shaders• Custom lighting: cel-shading (toon shading)• Vertex displacement – realistic water (Gerstner waves)• Refraction by modifying the framebuffer• Interactive snow layers (modifying the height of a mesh based on gameplay actions)• Holograms using emissive colour• Using Voronoi noise to make marble
Datenbasiert entscheiden
Dieses Buch befasst sich mit der zielgerichteten Auswertung von vorhandenen Daten im Unternehmen. Während früher viele Entscheidungen aus dem Bauch heraus getroffen wurden, sind heute die resultierenden Erfolge durch das gestiegene Datenvolumen so gut messbar wie nie zuvor. Doch nicht jede Entscheidung wird durch Daten automatisch besser. Es gilt, Daten im Unternehmen zu identifizieren, Ziele zu definieren und die vorhandenen Daten sinnvoll auszuwerten. Damit dieser Schritt gelingt, zeigt dieses Buch anhand praktischer Tipps, wie auf Grundlage von Daten bessere Entscheidungen getroffen werden können. Neben den Grundlagen zur Datenanalyse werden Praxisbeispiele vorgestellt, aus denen anschließend Anregungen für Unternehmen abgeleitet werden.PAUL NIEBLER ist IT-Berater mit Schwerpunkt auf Data Science und unterstützt Kunden hauptsächlich in der Automobilbranche. Sein Ziel ist es, aus den bestehenden Daten neues Wissen zu extrahieren und diesen Erkenntnisgewinn verständlich an Fachabteilungen und Entscheidungsträger zu kommunizieren.DOMINIC LINDNER ist Associate Manager bei einem Rechenzentrumsprovider und promoviert im Bereich der Mittelstandsforschung an der FAU Erlangen-Nürnberg. Vor allem die Speicherung und schnelle Auswertung aus Sicht der Infrastruktur sind eine wichtige Herausforderung in seiner täglichen Arbeit.Vorbereitung der Daten im Unternehmen.- Daten im Unternehmen zielführend auswerten.- Objectives and Key Results (OKR).- Praxisbeispiele und Tipps für Entscheider.
Beginning Software Engineering
DISCOVER THE FOUNDATIONS OF SOFTWARE ENGINEERING WITH THIS EASY AND INTUITIVE GUIDEIn the newly updated second edition of Beginning Software Engineering, expert programmer and tech educator Rod Stephens delivers an instructive and intuitive introduction to the fundamentals of software engineering. In the book, you’ll learn to create well-constructed software applications that meet the needs of users while developing the practical, hands-on skills needed to build robust, efficient, and reliable software. The author skips the unnecessary jargon and sticks to simple and straightforward English to help you understand the concepts and ideas discussed within. He also offers you real-world tested methods you can apply to any programming language. You’ll also get:* Practical tips for preparing for programming job interviews, which often include questions about software engineering practices* A no-nonsense guide to requirements gathering, system modeling, design, implementation, testing, and debugging* Brand-new coverage of user interface design, algorithms, and programming language choicesBeginning Software Engineering doesn’t assume any experience with programming, development, or management. It’s plentiful figures and graphics help to explain the foundational concepts and every chapter offers several case examples, Try It Out, and How It Works explanatory sections. For anyone interested in a new career in software development, or simply curious about the software engineering process, Beginning Software Engineering, Second Edition is the handbook you’ve been waiting for. ROD STEPHENS is a former Microsoft MVP, programmer, and award-winning instructor who speaks regularly at programming conferences and users’ group meetings. He has written more than 250 magazine articles as well as 37 books that have been translated into at least ten different languages on topics including C#, Python, and other languages. He runs the popular C# Helper and VB Helper web sites. Introduction xxviiPART I: SOFTWARE ENGINEERING STEP- BY- STEPChapter 1: Software Engineering From 20,000 Feet 3Chapter 2: Before the Beginning 15Chapter 3: the Team 29Chapter 4: Project Management 53Chapter 5: Requirements Gathering 81Chapter 6: High- Level Design 117Chapter 7: Low- Level Design 155Chapter 8: Security Design 185Chapter 9: User Experience Design 209Chapter 10: Programming 245Chapter 11: Algorithms 273Chapter 12: Programming Languages 307Chapter 13: Testing 327Chapter 14: Deployment 359Chapter 15: Metrics 371Chapter 16: Maintenance 401PART II: PROCESS MODELSChapter 17: Predictive Models 427Chapter 18: Iterative Models 445Chapter 19: Rad 465PART III: ADVANCED TOPICSChapter 20: Software Ethics 523Chapter 21: Future Trends 547Appendix: Solutions to Exercises 559Glossary 631Index 663
Introducing Micronaut
The microservice architecture has been adopted by many developer teams around the world. To be successful, it's crucial that you understand how to program a microservice and get it running in the cloud. This book will walk you through the process of how to build, test, and deploy a Java-based Micronaut microservice to the Oracle Cloud with GitHub Actions.You'll learn how to create a Virtual Machine (with both the Oracle Cloud Infrastructure (OCI) CLI and the OCI Gradle Plugin), as well as create and deploy the microservice as a Docker container that can be stored in Oracle Container Infrastructure Registry (OCIR) and deployed to an Oracle Kubernetes Engine (OKE) cluster. The microservice will use Micronaut Data for persistence, Testcontainers for testing, and Liquibase to manage your Oracle DB production schema.After reading or using this book, you'll be able to build, test and deploy your first microservices using the Micronaut framework, Oracle Cloud and more.WHAT YOU'LL LEARN* Build and deploy Java-based microservices using Micronaut and Oracle Cloud* Run tests and publishing reports* Deploy to Oracle Cloud using OCI CLI and the OCI Gradle plug-in* Add a persistence tier to the microservice* Distribute a microservice with persistenceWHO THIS BOOK IS FORProgrammers and software developers with experience in Java and microservices programming who are new to Micronaut.Todd Sharp is a software/web developer advocate for Oracle focusing on Oracle Cloud. He works with Micronaut and other Java frameworks to build, test and deploy microservices, web services and other web applications. He has worked with dynamic Java scripting languages, JVMs and various JavaScript frameworks for more than 14 years, originally with ColdFusion and more recently with Java/Groovy/Grails on the server side.1. Creating a Micronaut Application & Getting Started with GitHub Actions2. Building & Publishing a JAR3. Running Tests and Publishing Test Reports4. Deploying a Microservice to the Oracle Cloud with GitHub Actions and the OCI CLI5. Deploying a Microservice to the Oracle Cloud with GitHub Actions and the OCI Gradle Plugin6. Adding a Persistence Tier to the Microservice7. Testing the Persistence Tier with Testcontainers8. Deploying the Microservice with a Tested Persistence Tier in Place9. Deploying the Microservice as a Docker Container10. Deploying the Microservice Docker Container to Kubernetes.
Office für Senioren
Die Highlights von Office 2021 und Microsoft 365: Was ist neu, was ist anders?Dieses Buch mit großer, gut lesbarer Schrift führt Sie in das Office-Paket bzw. Microsoft 365 ein. In einfachen Schritt-für-Schritt-Anleitungen nimmt Sie Erfolgsautor Philip Kiefer mit auf eine Reise rund um das Thema Microsoft Office.Ob Sie in Word Briefe schreiben, in Excel Ihre Haushaltskosten in einer übersichtlichen Tabelle aufschlüsseln, Präsentationen in PowerPoint darstellen wollen oder in Outlook E-Mails an Ihre Enkel schreiben, der umfangreiche Einblick in die wichtigen Office-Funktionen hilft Ihnen, schon nach kurzer Zeit routiniert mit Microsoft Office umzugehen.Aus dem Inhalt:Ihre ersten Schritte mit Microsoft OfficeTexte verfassen: mit Word ganz einfachWeitere Inhalte in einen Text einfügenSeiten gestalten und ausdruckenMit Excel Tabellen erstellen und Berechnungen durchführenPräsentationen mit PowerPointE-Mails, Termine und Adressen mit OutlookDokumente in der Cloud speichern und mit anderen teilenLeseprobe (PDF-Link)
Beginning Software Engineering
DISCOVER THE FOUNDATIONS OF SOFTWARE ENGINEERING WITH THIS EASY AND INTUITIVE GUIDEIn the newly updated second edition of Beginning Software Engineering, expert programmer and tech educator Rod Stephens delivers an instructive and intuitive introduction to the fundamentals of software engineering. In the book, you’ll learn to create well-constructed software applications that meet the needs of users while developing the practical, hands-on skills needed to build robust, efficient, and reliable software. The author skips the unnecessary jargon and sticks to simple and straightforward English to help you understand the concepts and ideas discussed within. He also offers you real-world tested methods you can apply to any programming language. You’ll also get:* Practical tips for preparing for programming job interviews, which often include questions about software engineering practices* A no-nonsense guide to requirements gathering, system modeling, design, implementation, testing, and debugging* Brand-new coverage of user interface design, algorithms, and programming language choicesBeginning Software Engineering doesn’t assume any experience with programming, development, or management. It’s plentiful figures and graphics help to explain the foundational concepts and every chapter offers several case examples, Try It Out, and How It Works explanatory sections. For anyone interested in a new career in software development, or simply curious about the software engineering process, Beginning Software Engineering, Second Edition is the handbook you’ve been waiting for. ROD STEPHENS is a former Microsoft MVP, programmer, and award-winning instructor who speaks regularly at programming conferences and users’ group meetings. He has written more than 250 magazine articles as well as 37 books that have been translated into at least ten different languages on topics including C#, Python, and other languages. He runs the popular C# Helper and VB Helper web sites. Introduction xxviiPART I: SOFTWARE ENGINEERING STEP- BY- STEPCHAPTER 1: SOFTWARE ENGINEERING FROM 20,000 FEET 3Requirements Gathering 4High- Level Design 5Low- Level Design 6Development 6Testing 7Deployment 9Maintenance 10Wrap- Up 10Everything All at Once 11Summary 12What You Learned in This Chapter 13CHAPTER 2: BEFORE THE BEGINNING 15Document Management 16Historical Documents 19Email 19Code 22Code Documentation 22Application Documentation 25Summary 26What You Learned in This Chapter 27CHAPTER 3: THE TEAM 29Team Features 30Clear Roles 30Effective Leadership 30Clear Goals 31Consensus 32Open Communication 32Support for Risk- Taking 33Shared Accountability 33Informal Atmosphere 34Trust 34Team Roles 34Common Roles 35More- Specialized Roles 36Informal Roles 36Roles Wrap- Up 37Team Culture 37Interviews 40Interview Puzzles 40The Bottom Line 41Physical Environment 41Creativity 41Office Space 43Ergonomics 43Work- Life Balance 45Collaboration Software 46Searching 46Overload 47Outsourcing 47Summary 48What You Learned in This Chapter 50CHAPTER 4: PROJECT MANAGEMENT 53Executive Support 54Project Management 56PERT Charts 57Critical Path Methods 62Gantt Charts 65Scheduling Software 67Predicting Times 68Get Experience 69Break Unknown Tasks into Simpler Pieces 70Look for Similarities 71Expect the Unexpected 71Track Progress 73Risk Management 74Summary 76What You Learned in This Chapter 79CHAPTER 5: REQUIREMENTS GATHERING 81Requirements Defined 82Clear 82Unambiguous 83Consistent 84Prioritized 84Verifiable 88Words to Avoid 89Requirement Categories 89Audience- Oriented Requirements 90Business Requirements 90User Requirements 90Functional Requirements 91Nonfunctional Requirements 92Implementation Requirements 92FURPS 92FURPS+ 93Common Requirements 96Gathering Requirements 96Listen to Customers (and Users) 97Use the Five Ws (and One H) 98Who 98What 98When 98Where 98Why 99How 99Study Users 99Refining Requirements 100Copy Existing Systems 101Clairvoyance 102Brainstorm 103Recording Requirements 106UML 107User Stories 107Use Cases 108Prototypes 108Requirements Specification 109Validation and Verification 110Changing Requirements 110Digital Transformation 111What to Digitize 111How to Digitize 112Summary 113What You Learned in This Chapter 116CHAPTER 6: HIGH- LEVEL DESIGN 117The Big Picture 118What to Specify 119Security 119Hardware 120User Interface 121Internal Interfaces 122External Interfaces 123Architecture 124Monolithic 124Client/Server 125Component- Based 127Service- Oriented 128Data- Centric 130Event- Driven 130Rule- Based 130Distributed 131MIX and Match 132Reports 133Other Outputs 134Database 135Audit Trails 136User Access 136Database Maintenance 137NoSQL 137Cloud Databases 138Configuration Data 138Data Flows and States 139Training 139UML 141Structure Diagrams 142Behavior Diagrams 145Activity Diagrams 145Use Case Diagram 146State Machine Diagram 147Interaction Diagrams 148Sequence Diagram 148Communication Diagram 150Timing Diagram 150Interaction Overview Diagram 151UML Summary 151Summary 151What You Learned in This Chapter 152CHAPTER 7: LOW- LEVEL DESIGN 155Design Approaches 156Design- to- Schedule 157Design- to- Tools 158Process- Oriented Design 158Data- Oriented Design 159Object- Oriented Design 159Hybrid Approaches 159High, Low, and Iterative Design 160OO Design 160Identifying Classes 161Building Inheritance Hierarchies 162Refinement 163Generalization 165Hierarchy Warning Signs 167Object Composition 167Database Design 168Relational Databases 168First Normal Form 170Second Normal Form 174Third Normal Form 176Higher Levels of Normalization 179When to Optimize 180Summary 180What You Learned in This Chapter 182CHAPTER 8: SECURITY DESIGN 185Security Goals 186Security Types 186Cybersecurity 188Shift- Left Security 189Malware Menagerie 189Phishing and Spoofing 193Social Engineering Attacks 195Crapware 197Password Attacks 198User Access 201Countermeasures 201Cyber Insurance 202Summary 203What You Learned in This Chapter 207CHAPTER 9: USER EXPERIENCE DESIGN 209Design Mindset 210UI vs. UX 210UX Designers 211Platform 212User Skill Level 214Beginners and Beyond 216Configuration 217Hidden Configuration 218Models 219Metaphors and Idioms 220Case Study: Microsoft Word 221Design Guidelines 225Allow Exploration 225Make the Interface Immutable 227Support Commensurate Difficulty 227Avoid State 228Make Similar Things Similar 228Provide Redundant Commands 230Do the Right Thing 231Show Qualitative Data, Explain Quantitative Data 232Give Forms Purpose 232Gather All Information at Once 233Provide Reasonable Performance 234Only Allow What’s Right 235Flag Mistakes 235Form Design 236Use Standard Controls 236Decorating 237Displaying 237Arranging 237Commanding 238Selecting 238Entering 239Display Five Things 240Arrange Controls Nicely 241Summary 241What You Learned in This Chapter 242CHAPTER 10: PROGRAMMING 245Tools 246Hardware 246Network 247Development Environment 248Source Code Control 249Profilers 249Static Analysis Tools 249Testing Tools 249Source Code Formatters 250Refactoring Tools 250Training 250Collaboration Tools 250Algorithms 251Top- Down Design 252Programming Tips and Tricks 255Be Alert 255Write for People, Not the Computer 255Comment First 256Write Self- Documenting Code 259Keep It Small 259Stay Focused 261Avoid Side Effects 261Validate Results 262Practice Offensive Programming 264Use Exceptions 266Write Exception Handlers First 266Don’t Repeat Code 267Defer Optimization 267Summary 269What You Learned in This Chapter 270CHAPTER 11: ALGORITHMS 273Algorithm Study 274Algorithmic Approaches 275Decision Trees 275Knapsack 275The Eight Queens Problem 276Exhaustive Search 277Backtracking 278Pruning Trees 279Branch and Bound 279Heuristics 280Greedy 281Divide and Conquer 282Recursion 283Dynamic Programming 285Caching 287Randomization 287Monte Carlo Algorithms 287Las Vegas Algorithms 288Atlantic City Algorithms 289State Diagrams 289Design Patterns 290Creational Patterns 291Structural Patterns 291Behavioral Patterns 292Design Pattern Summary 293Parallel Programming 293Artificial Intelligence 295Definitions 295Learning Systems 296Natural Language Processing 297Artificial Neural Network 297Deep Learning 297Expert System 298Artificial General Intelligence 298Algorithm Characteristics 301Summary 302What You Learned in This Chapter 304CHAPTER 12: PROGRAMMING LANGUAGES 307The Myth of Picking a Language 308Language Generations 311First Generation 311Second Generation 311Third Generation (3GL) 312Fourth Generation 313Fifth Generation 314Sixth Generation 314IDEs 315Language Families 316Assembly 316Imperative 317Procedural 317Declarative 318Object- Oriented 318Functional 319Specialized 319Language Family Summary 319The Best Language 319Summary 323What You Learned in This Chapter 324CHAPTER 13: TESTING 327Testing Goals 329Reasons Bugs Never Die 330Diminishing Returns 330Deadlines 330Consequences 330It’s Too Soon 330Usefulness 331Obsolescence 331It’s Not a Bug 331It Never Ends 332It’s Better Than Nothing 333Fixing Bugs Is Dangerous 333Which Bugs to Fix 334Levels of Testing 334Unit Testing 335Integration Testing 336Regression Testing 337Automated Testing 337Component Interface Testing 338System Testing 339Acceptance Testing 340Other Testing Categories 341Testing Techniques 342Exhaustive Testing 342Black- Box Testing 343White- Box Testing 344Gray- Box Testing 344Testing Habits 345Test and Debug When Alert 345Test Your Own Code 346Have Someone Else Test Your Code 346Fix Your Own Bugs 348Think Before You Change 349Don’t Believe in Magic 349See What Changed 350Fix Bugs, Not Symptoms 350Test Your Tests 350How to Fix a Bug 351Estimating Number of Bugs 351Tracking Bugs Found 352Seeding 353The Lincoln Index 353Summary 355What You Learned in This Chapter 357CHAPTER 14: DEPLOYMENT 359Scope 360The Plan 361Cutover 362Staged Deployment 362Gradual Cutover 363Incremental Deployment 365Parallel Testing 365Deployment Tasks 365Deployment Mistakes 366Summary 368What You Learned in This Chapter 370CHAPTER 15: METRICS 371Wrap Party 372Defect Analysis 372Species of Bugs 373Discoverer 373Severity 374Creation Time 374Age at Fix 374Task Type 375Defect Database 376Ishikawa Diagrams 376Software Metrics 379Qualities of Good Attributes and Metrics 381Using Metrics 382Process Metrics 384Project Metrics 384Things to Measure 385Size Normalization 387Function Point Normalization 389Count Function Point Metrics 390Multiply by Complexity Factors 391Calculate Complexity Adjustment Value 392Calculate Adjusted FP 394Summary 395What You Learned in This Chapter 398CHAPTER 16: MAINTENANCE 401Maintenance Costs 402Task Categories 404Perfective Tasks 404Feature Improvements 406New Features 406The Second System Effect 407Adaptive Tasks 408Corrective Tasks 410Preventive Tasks 414Clarification 414Code Reuse 415Improved Flexibility 416Bug Swarms 417Bad Programming Practices 417Individual Bugs 418Not Invented Here 418Task Execution 419Summary 420What You Learned in This Chapter 423PART II: PROCESS MODELSCHAPTER 17: PREDICTIVE MODELS 427Model Approaches 428Prerequisites 428Predictive and Adaptive 429Success and Failure Indicators for Predictive Models 430Advantages and Disadvantages of Predictive Models 431Waterfall 432Waterfall with Feedback 433Sashimi 434Incremental Waterfall 436V- model 438Software Development Life Cycle 439Summary 442What You Learned in This Chapter 444CHAPTER 18: ITERATIVE MODELS 445Iterative vs. Predictive 446Iterative vs. Incremental 448Prototypes 449Types of Prototypes 451Pros and Cons 451Spiral 453Clarifications 455Pros and Cons 456Unified Process 457Pros and Cons 459Rational Unified Process 459Cleanroom 460Cowboy Coding 461Summary 461What You Learned in This Chapter 463CHAPTER 19: RAD 465RAD Principles 467James Martin RAD 470Agile 471Self- Organizing Teams 473Agile Techniques 474Communication 474Incremental Development 475Focus on Quality 478XP 478XP Roles 479XP Values 480XP Practices 481Have a Customer On-Site 481Play the Planning Game 482Use Stand- Up Meetings 483Make Frequent Small Releases 483Use Intuitive Metaphors 484Keep Designs Simple 484Defer Optimization 484Refactor When Necessary 485Give Everyone Ownership of the Code 485Use Coding Standards 486Promote Generalization 486Use Pair Programming 486Test Constantly 486Integrate Continuously 486Work Sustainably 487Use Test- Driven and Test- First Development 487Scrum 488Scrum Roles 489Scrum Sprints 490Planning Poker 491Burndown 492Velocity 494Lean 494Lean Principles 494Crystal 495Crystal Clear 498Crystal Yellow 498Crystal Orange 499Feature- Driven Development 500FDD Roles 501FDD Phases 502Develop a Model 502Build a Feature List 502Plan by Feature 503Design by Feature 503Build by Feature 504FDD Iteration Milestones 504Disciplined Agile Delivery 506DAD Principles 506DAD Roles 506DAD Phases 507Dynamic Systems Development Method 508DSDM Phases 508DSDM Principles 510DSDM Roles 511Kanban 512Kanban Principles 513Kanban Practices 513Kanban Board 514Summary 515What You Learned in This Chapter 517PART III: ADVANCED TOPICSCHAPTER 20: SOFTWARE ETHICS 523Ethical Behavior 524IEEE- CS/ACM 524ACS 525CPSR 526Business Ethics 527Nada 528Hacker Ethics 529Hacker Terms 530Responsibility 531Gray Areas 533Software Engineering Dilemmas 535Misusing Data and the Temptation of Free Data 535Disruptive Technology 536Algorithmic Bias 537False Confidence 537Lack of Oversight 538Getting Paid 539Thought Experiments 539The Tunnel Problem 540The Trolley Problem 542Summary 544What You Learned in This Chapter 545CHAPTER 21: FUTURE TRENDS 547Security 548UX/UI 549Code Packaging 550Cloud Technology 551Software Development 552Algorithms 553Tech Toys 554Summary 555What You Learned in This Chapter 556Appendix: Solutions to Exercises 559Glossary 631Index 663
The Absolute Beginner's Guide to Python Programming
Written as an illustrated, step-by-step guide, this book will introduce you to Python with examples using the latest version of the language.You'll begin by learning to set up your Python environment. The next few chapters cover the basics of Python such as language classifications, Python language syntax, and how to write a program. Next, you will learn how to work with variables, basic data types, arithmetic, companion, and Boolean operators, followed by lab exercises. Further, the book covers flow control, using functions, and exception handling, as well as the principles of object-oriented programming and building an interface design. The last section explains how to develop a game by installing PyGame and how to use basic animation, and concludes with coverage of Python web development with web servers and Python web frameworks.The Absolute Beginners Guide to Python Programming will give you the tools, confidence, and inspiration to start writing Python programs. If you are a programmer, developer, or a student, or someone who wants to learn on their own, this book is for you.WHAT YOU WILL LEARN* Gain an understanding of computer programming * Understand different data and data types* Work with Classes and OOP* Build interfaces, simple games, and web development with PythonWHO THIS BOOK IS FORSoftware programmers, developers or students, or anyone who wants to learn Python programming on their own. With over 20 years’ experience in the computer industry, Kevin Wilson has made a career out of technology and showing others how to use it. After earning a master's degree in computer science, software engineering, and multimedia systems, Kevin has held various positions in the IT industry including graphic & web design, digital film & photography, programming & software engineering, developing & managing corporate networks, building computer systems, and IT support. He currently teaches computer science at college and works as an IT trainer in England while researching for his PhD. CHAPTER 1: WHAT IS PYTHON.Goal: About Python, what it is, how to set up the interpreter on machineSub-topicsSetting UpCHAPTER 2: THE BASICSGoal: Covers basics, syntax, writing a basic program and executing the codeSub-topicsLanguage ClassificationLow-Level LanguageHigh-Level LanguagePython Language SyntaxReserved WordsIdentifiersIndentationCommentsInputOutputEscape CharactersWriting a ProgramCHAPTER 3: WORKING WITH DATAGoal: Covers data types: integers, lists, strings, etc, etc , variables, operatorsSub-topicsVariablesLocal VariablesGlobal VariablesBasic Data TypesIntegersFloating Point NumbersStringsListsTwo Dimensional ListsSetsTuplesDictionariesCasting Data TypesArithmetic OperatorsOperator PrecedencePerforming ArithmeticComparison OperatorsBoolean OperatorsBitwise OperatorsLab ExercisesCHAPTER 4: FLOW CONTROLGoal: Explains flow control, sequence, if/elif, for/whileSub-topicsSequenceSelectionif...elseelifIteration (Loops)For loopWhile loopBreak and ContinueLab ExercisesCHAPTER 5: HANDLING FILESGoal: Explains file handling, reading files, writing to files, text files, binary filesFile TypesText FileBinaryText File OperationsOpen FilesWrite to a FileRead from a FileBinary File OperationsOpen FilesWrite to a FileRead a FileRandom File AccessLab ExercisesCHAPTER 6: USING FUNCTIONSSub-topicsDeclaring FunctionsRecursionLab ExercisesCHAPTER 7: EXCEPTION HANDLINGGoal: Covers exception and error handlingSub-topicsTypes of ExceptionCatching ExceptionsRaising your Own ExceptionsCHAPTER 8: OBJECT ORIENTED PROGRAMMINGGoal: OOP principles, classes, objects and inheritanceSub-topicsPrinciples of OOPEncapsulationInheritancePolymorphismAbstractionClasses & ObjectsClass InheritancePolymorphic ClassesMethod OverridingCHAPTER 9: BUILDING AN INTERFACEGoal: Building an interface using tkinterSub-topicsCreating a WindowAdding WidgetsMenusThe CanvasImagesButtonsMessage BoxesText FieldListboxCheckboxLabelsLabel FrameInterface DesignCHAPTER 10: DEVELOPING A GAMESub-topicsInstalling PyGameOpening a WindowAdding an ImageThe Game LoopThe Event LoopShapesBasic AnimationCHAPTER 11: PYTHON WEB DEVELOPMENTSub-topicsWeb ServersExecuting a ScriptPython Web FrameworksQUICK REFERENCEData TypesNumeric OperatorsComparison OperatorsBoolean OperatorsString OperatorsList OperatorsDictionary OperatorsString MethodsList MethodsDictionary MethodsFunctionsFilesConditionalMulti ConditionalWhile LoopFor LoopLoop ControlModulesBuilt in FunctionsDeclare a ClassChild ClassCreate ObjectCall Object Method
Modern C Up and Running
Learn how to program in modern C, from the basics through the advanced topics required for proficiency. This book is the fastest path to C fluency for anyone experienced in a general-purpose programming language. From start to finish, code examples highlight the idioms and best practices behind efficient, robust programs in a variety of areas.The book opens with a thorough coverage of syntax, built-in data types and operations, and program structure. C has quirks and presents challenges, which are covered in detail. The coverage of advanced features is what sets this book apart from others. Among the advanced topics covered are floating-point representation in the IEEE 754 standard; embedded assembly language in C code for overflow detection; regular expressions, assertions, and internationalization; WebAssembly through C; and software libraries for C and other clients.Memory efficiency and safety are the two major challenges in C programming, and you’ll explore these challenges through a series of C examples. Arrays and structures, which are the means to high-level data representation, are covered in connection with pointers, which provide efficiency. The book again uses code examples in covering networking and wire-level security; concurrency (multiprocessing and multithreading); instruction-level parallelism; and interprocess communication through shared memory and files, pipes, message queues, and signals.Many books introduce C, but few also explain how to use it properly and optimally. Essential C does just that.WHAT YOU'LL LEARN* Accelerate your path to C mastery with this book for experienced programmers* Refresh your approach to program structure and data types* Dive into aggregates and pointers using modern C language* Revisit storage classes and scope* Dive into concurrency (multiprocessing and multithreading) and instruction-level parallelism* Finish with regular expressions, assertions, signals, locales and moreWHO THIS BOOK IS FORProfessional programmers or software developers who has prior experience with C or in general wanting an accelerated learning guide to modern C programming language.Martin Kalin has a Ph.D. from Northwestern University and is a professor in the College of Computing and Digital Media at DePaul University. He has co-written a series of books on C and C++ and written a book on Java for programmers. He enjoys commercial programming and has co-developed large distributed systems in process scheduling and product configuration.1. Program Structure2. Basic Data Types3. Aggregates and Pointers4. Storage Classes5. Input and Output6. Networking7. Concurrency and Parallelism8. Miscellaneous Topics
Usability und User Experience Design
Gute Usability und User Experience sind niemals Zufall. Dahinter stecken systematische Prozesse und Know-how aus verschiedenen Disziplinen. Produkte zu schaffen, die Menschen nicht nur leicht und sicher bedienen können, sondern rundum schätzen – wenn das Ihr professionelles Ziel ist, sind Sie hier richtig. Lernen Sie mit diesem Handbuch das Fach gründlich kennen, vertiefen Sie Ihre Expertise oder steigen Sie in eine stärker datengetriebene Arbeitsweise ein. Die Autoren sind erfolgreiche Spezialisten für die Usability und UX technischer Produkte. Sie stellen Ihnen Grundlagen aus Psychologie und Design vor und geben Ihnen ein umfassendes Methodenrepertoire an die Hand. Inklusive praktischer Auswahlhilfe und konkreter Anleitungen. So evaluieren und optimieren Sie Ihre Produkte oder unterstützen Ihre Kunden mit professionellen Usability- und UX-Projekten. Für B2B, B2C, verschiedene Branchen und Budgets haben Sie damit immer eine effiziente Methode parat. Dr. Michaela Kauer-Franz und Dr. Benjamin Franz betreuen auch komplexe Anwendungen und solche mit speziellen Anforderungen wie Medizinprodukte. Profitieren Sie von ihrem Erfahrungsschatz! Aus dem Inhalt: Übersicht über Prozesse und VorgehenDer richtige "Mindset"User Researcher Skills: Beobachten, Fragenstellen, ZuhörenPsychologische GrundlagenNutzer*innen, Kund*innen und wirDesigngrundlagenData Driven UX DesignInhaltspunktLösungen evaluierenEin Glossar mit allen wichtigen Fachbegriffen 1. Für wen ist dieses Buch? Warum und wie sollten Sie das Buch lesen? ... 21 1.1 ... Für wen ist dieses Buch geschrieben? ... 21 1.2 ... Warum sollten Sie dieses Buch lesen? ... 22 1.3 ... Wie sollten Sie dieses Buch lesen? ... 26 1.4 ... Ihre ständigen Begleiter: Unsere drei Beispiele ... 27 2. Die wichtigsten Begriffe und ihre Historie ... 33 2.1 ... Die (Vor-)Geschichte von Usability und User Experience ... 33 2.2 ... Usability und User Experience Design -- die Kernbegriffe ... 40 2.3 ... Das Zusammenspiel von Ergonomie, Usability und User Experience ... 52 3. Usability und User Experience als Erfolgsfaktor herausragender Produkte ... 67 3.1 ... Was ist der Return on Investment (ROI)? ... 68 3.2 ... Metriken für den unternehmerischen Erfolg ... 68 3.3 ... ROI planen statt ROI »entdecken« ... 75 3.4 ... Unterschiede zwischen Metriken für den unternehmerischen Erfolg im B2C- vs. B2B-Bereich ... 78 3.5 ... Was sind typisch erreichbare ROIs durch Usability und User Experience Design? ... 80 3.6 ... Praxisbeispiel: Messung des ROI bei MoveHub ... 83 3.7 ... Praxisbeispiel: Messung des ROI bei BusinessBooster ... 84 3.8 ... Praxisbeispiel: Messung des ROI bei Healthyfy ... 86 4. Wie »mache« ich Usability und User Experience Design? ... 87 4.1 ... Die Norm ISO 9241-210 -- Menschzentrierte Gestaltung interaktiver Systeme ... 88 4.2 ... Design Thinking ... 95 4.3 ... Minimum Viable Product (MVP) -- das kleinste, sinnvolle Produkt ... 108 4.4 ... Double Diamond ... 113 4.5 ... Usability Engineering bei Medizinprodukten nach der Norm IEC 62366-1 ... 117 4.6 ... Gemeinsamkeiten der beschriebenen Verfahren ... 120 5. Data-Driven UX Design ... 127 5.1 ... Das Ziel des Data-Driven UX Design-Prozesses ... 128 5.2 ... Der Data-Driven UX Design-Prozess (3DUX) im Überblick ... 129 5.3 ... Die Flexibilitäts- und Risikomatrix -- oder: Wie viele Daten brauchen Sie wirklich? ... 143 5.4 ... Objektive versus subjektive Daten ... 151 5.5 ... Quantitative versus qualitative Daten ... 154 5.6 ... Daten kritisch bewerten ... 155 5.7 ... Schnelle Hilfestellung zur Einordnung ... 160 6. Ein hilfreiches Mindset für Usability und User Experience Design ... 165 6.1 ... Annahmen vs. Wissen ... 166 6.2 ... Die Nutzer wissen nicht, was sie wollen! ... 182 6.3 ... Die wichtigsten Skills der User Researcher: beobachten, Fragen stellen, zuhören ... 190 6.4 ... Gestaltung als lernbarer Prozess ... 204 6.5 ... Testen und Unternehmenskultur ... 208 7. Grundlagen ... 211 7.1 ... Psychologische Grundlagen -- keine Angst, es geht um Menschen ... 211 7.2 ... Wahrnehmung -- die menschliche Sensorik ... 212 7.3 ... Menschliche Informationsverarbeitung ... 253 7.4 ... Designgrundlagen ... 275 8. Der Data-Driven UX Design-Prozess im Detail -- Vorbereitung ... 343 8.1 ... Die Planung des Data-Driven UX Design-Prozesses ... 344 8.2 ... Integration von Data-Driven UX Design in agile Entwicklungsprojekte ... 353 8.3 ... Den Aufwand von Data-Driven UX Design angemessen auswählen ... 357 9. Der Data-Driven UX Design-Prozess im Detail -- Nutzungskontextanalyse ... 361 9.1 ... Welche Fragen muss die Nutzungskontextanalyse beantworten? ... 362 9.2 ... Was ist überhaupt der Nutzungskontext? ... 364 9.3 ... Methoden der Nutzungskontextanalyse ... 376 9.4 ... Analytische Methoden der Nutzungskontextanalyse ... 423 9.5 ... Praxisbeispiele zur Kontextanalyse ... 443 10. Der Data-Driven UX Design-Prozess im Detail -- Nutzungsanforderungen spezifizieren ... 455 10.1 ... Betrachten Sie Ihre Personas oder Empathy Maps ... 456 10.2 ... Use Cases und User Stories -- wie es nicht geht und wie es doch geht ... 458 10.3 ... Von der User Story zur Anforderung ... 466 10.4 ... Anforderungen formulieren für MoveHub ... 475 10.5 ... Anforderungen formulieren für BusinessBooster ... 477 10.6 ... Anforderungen formulieren für Healthyfy ... 479 11. Der Data-Driven UX Design-Prozess im Detail -- Gestaltungslösungen entwickeln ... 481 11.1 ... Erinnerung: Was ist das Ziel der Gestaltung und wie gehen wir dabei vor? ... 481 11.2 ... Design Research ... 482 11.3 ... Vom Groben zum Feinen ... 486 11.4 ... Grundsätzliche Lösungsmöglichkeiten entwickeln ... 487 11.5 ... Arbeit mit Prototypen ... 491 11.6 ... Wireframes ... 496 11.7 ... Die Qualität von User-Interface-Konzepten mit dem Designgrid prüfen ... 543 11.8 ... Screenflows ... 546 11.9 ... Klickdummys ... 548 11.10 ... Desktop, Mobile oder Smartwatch first? ... 554 11.11 ... Responsive Design ... 559 11.12 ... Visual Design ... 560 11.13 ... Ausflug: Low-Code und No-Code ... 573 11.14 ... Beispiel: Mögliche Design-Steps für MoveHub ... 574 11.15 ... Beispiel: Mögliche Design-Steps für BusinessBooster ... 576 11.16 ... Beispiel: Mögliche Design-Steps für Healthyfy ... 577 12. Der Data-Driven UX Design-Prozess im Detail -- Gestaltungslösungen evaluieren ... 581 12.1 ... Formatives vs. summatives Testen ... 581 12.2 ... Wissenslücken identifizieren ... 586 12.3 ... Nutzerevaluation vs. Expertenevaluation ... 587 12.4 ... Remote vs. vor Ort ... 589 12.5 ... Test-Cases gestalten ... 593 12.6 ... Die vorgestellten Methoden ... 598 12.7 ... Der Usability- und der User Experience-Test ... 599 12.8 ... Usability und User Experience-Sprint ... 609 12.9 ... Rapid User-Tests ... 615 12.10 ... A/B-Testing ... 620 12.11 ... UX-Benchmarking ... 625 12.12 ... 5-Sekunden-Test ... 630 12.13 ... Standardisierte Fragebögen ... 635 12.14 ... Analyse von quantitativen Nutzungsdaten ... 648 12.15 ... Webtracking/Klickanalyse ... 652 12.16 ... Tagebuchstudie ... 653 12.17 ... Card Sorting ... 660 12.18 ... Experten-Review ... 665 12.19 ... Assoziationsraumtest (ARTTest) ... 670 12.20 ... Eyetracking ... 673 12.21 ... Physiologische Messverfahren ... 680 12.22 ... Fehler analysieren mithilfe der Root-Cause-Analyse ... 683 12.23 ... Aus den Daten lernen und begründete Entscheidungen treffen ... 689 12.24 ... Evaluationen in der Medizinprodukteentwicklung ... 692 12.25 ... Beispiel: Evaluationsmethoden für MoveHub ... 693 12.26 ... Beispiel: Evaluationsmethoden für BusinessBooster ... 694 12.27 ... Beispiel: Evaluationsmethoden für Healthyfy ... 697 13. Design, Get Data, Repeat -- wann ist Schluss? ... 699 13.1 ... Den Übergang anhand der Qualität bestimmen ... 700 13.2 ... Den Übergang anhand der Zeit bestimmen ... 702 13.3 ... Nachsteuern ja oder nein? Die Flexibilitäts- und Risikomatrix als Hilfestellung ... 703 13.4 ... Den richtigen Ansatz wählen ... 704 13.5 ... So geht es weiter mit MoveHub, der B2C-Mobilitäts-App für jede Gelegenheit ... 706 13.6 ... So geht es weiter mit BusinessBooster, dem B2B-CRM-BI-Tool für kleine und mittelständische Unternehmen ... 706 13.7 ... So geht es weiter mit Healthyfy, dem Vermittlungsportal für Gesundheitsexperten (B2B- und B2C-Medizinprodukt) ... 707 14. Entscheidungsmatrix für die Methodenauswahl ... 709 14.1 ... Fragestellungen ... 710 15. Wrap-up und Fazit ... 719 15.1 ... Es geht um die Nutzenden ... 719 15.2 ... Usability und User Experience Design ist interdisziplinär ... 720 15.3 ... User Experience designt man nicht, sondern sie wird erlebt ... 720 15.4 ... Der Weg zu einem herausragenden Produkt ist iterativ ... 721 15.5 ... Man fängt zwar irgendwann mit Usability und User Experience Design an, aber man hört nie wieder damit auf ... 721 15.6 ... Gestalten Sie anhand von Daten ... 722 15.7 ... Schlusswort und Aufruf zur Mitgestaltung ... 722 Anhang ... 725 A ... Glossar ... 725 B ... Literaturverzeichnis ... 738 Index ... 746
TikTok-Marketing
Fehlt TikTok noch in deinem Online-Marketing-Baukasten? Dann ist es Zeit, das zu ändern! In diesem Praxisbuch zeigt Anja Spägele dir, wie du dein Unternehmen erfolgreich auf TikTok positionierst und mit Challenges und viralem Content deine Zielgruppe begeisterst. Lerne Anhand praxisnaher Beispiele, wie du einen TikTok-Kanal konzipierst,die richtige Strategie für dein Unternehmen findest, deinen Content optimierst und deine Views, Watchtime und Kampagnen analysierst. So integrierst du TikTok spielend leicht in deine Online-Marketing-Strategie. Aus dem Inhalt: Die richtige Strategie für dein UnternehmenTikTok-Kanal konzipieren und aufbauenDie verschiedenen Formate im ÜberblickContent erstellen und optimierenEffekte, Sounds und Memes nutzenReichweite steigernChallenges und Influencer-Kampagnen betreuenCommunity-ManagementAdManager, Analytics etc. auswerten und analysieren Bildrechte, Tonrechte, Jugend- und Datenschutz Geleitwort ... 13 1. Einführung ins TikTok-Marketing ... 15 2. #GetToKnowMeBetter -- wie funktioniert TikTok? ... 21 2.1 ... Die Besonderheiten von TikTok ... 23 2.2 ... For You, Watch, Interact -- die Customer Journey auf TikTok ... 32 2.3 ... Warum TikTok die ideale Plattform für Unternehmen und Influencer ist ... 35 2.4 ... Ist TikTok für meine Branche interessant? ... 45 2.5 ... Was du vor deinem Start über TikTok wissen solltest ... 49 3. Mit strategischer Planung zum erfolgreichen TikTok-Kanal ... 51 3.1 ... Lerne die Zielgruppe von TikTok kennen ... 52 3.2 ... Leg deine Zielgruppe bei TikTok fest ... 60 3.3 ... Zieldefinition -- was möchtest du auf TikTok erreichen? ... 65 4. Dein Unternehmensprofil bei TikTok -- erste Schritte ... 71 4.1 ... Privates Konto, Erstellerkonto oder Unternehmenskonto? ... 72 4.2 ... Privates Konto in Unternehmenskonto oder Erstellerkonto umwandeln ... 75 4.3 ... Richte dein Business-Konto richtig ein ... 76 4.4 ... So bekommst du den blauen Haken ... 81 4.5 ... So richtest du eine zweistufige Authentifizierung ein ... 83 5. Das Kanalkonzept ... 85 5.1 ... #ItsAMatch -- der passende Content für dein Unternehmen und deine Zielgruppe ... 86 5.2 ... #TellYourStory -- heb deine Marke erfolgreich hervor ... 102 5.3 ... #BrandIt -- finde dein Markenzeichen ... 113 5.4 ... Praxisbeispiel: Hey Leute, Hausbautipp -- das Branding von @flovombauherrenforum ... 118 6. Influencer bei TikTok ... 121 6.1 ... Wie TikTok Creators an sich bindet ... 123 6.2 ... Influencer Marketing ... 130 7. Optimiere deine Inhalte für den Algorithmus ... 145 7.1 ... Den TikTok-Algorithmus verstehen ... 146 7.2 ... Mit den richtigen Hashtags Sichtbarkeit schaffen ... 148 8. Die verschiedenen TikTok-Formate ... 157 8.1 ... TikTok Live ... 158 8.2 ... Die verschiedenen Formate im Überblick ... 167 8.3 ... Strategische Planung der verschiedenen Formate ... 184 9. Memes bei TikTok ... 197 9.1 ... Was sind Memes? ... 198 9.2 ... Wie werden Memes bei TikTok verwendet? ... 199 9.3 ... Wie kann ich Memes in mein Content Marketing einbauen? ... 202 10. Dein Weg zum erfolgreichen Unternehmensprofil -- Videos erstellen ... 205 10.1 ... Das richtige Set-up ... 206 10.2 ... Video erstellen ... 207 11. TikTok Analytics ... 231 11.1 ... Was ist TikTok Analytics? ... 232 11.2 ... So findest du die Analytics ... 233 11.3 ... Einfach erklärt: TikTok Analytics ... 234 11.4 ... Erfolge messen ... 242 11.5 ... Reporting erstellen ... 245 12. #ReachThemAll -- wie du deine Reichweite steigern kannst ... 247 12.1 ... Welche Arten von Reichweite gibt es? ... 248 12.2 ... Reichweite organisch steigern ... 249 12.3 ... Reichweite kaufen ... 254 13. Werbung auf TikTok ... 257 13.1 ... Kampagne erstellen -- eine Anleitung für den Ads-Manager ... 260 13.2 ... Kampagne planen ... 263 13.3 ... Kampagnen verwalten und optimieren ... 272 13.4 ... Für Experten -- das TikTok Pixel ... 277 13.5 ... Best Practice: Gestalten von Werbevideos ... 281 13.6 ... Weitere Werbemöglichkeiten bei TikTok ... 285 14. Mit Followern kommunizieren -- warum gutes Community Management den Unterschied macht ... 289 14.1 ... Die TikTok-Community ... 290 14.2 ... Community Management ... 295 14.3 ... Community Monitoring ... 303 15. Bonus: Hilfreiche Tipps und Tricks ... 307 15.1 ... Weitere Einsatzmöglichkeiten deines TikTok-Contents ... 307 15.2 ... Nützliche Einstellungen ... 309 15.3 ... Hilfreiche Tools und ihre Einsatzgebiete ... 312 15.4 ... TikTok-Workflow -- alle wichtigen Aufgaben auf einen Blick ... 318 16. #GetItRight -- TikTok aus rechtlicher Sicht ... 325 16.1 ... Private und geschäftliche Nutzung von TikTok ... 325 16.2 ... Welches Recht und welche Regeln gelten bei TikTok? ... 326 16.3 ... Datenschutz ... 327 16.4 ... Jugendschutz (Mitverantwortung für die Plattformen) ... 329 16.5 ... Video- und Bildrechte (Urheberrecht: Bibliotheken, Stockmaterial, Remixes) ... 329 16.6 ... Abbildung von Personen und Sachen ... 335 16.7 ... Aufnahmen von Sachen und Gebäuden ... 339 16.8 ... Influencer und Werbekennzeichnung ... 339 16.9 ... Namens- und Markenrechte ... 343 16.10 ... Gewinnspiele und Wettbewerbe ... 345 16.11 ... Äußerungsrecht und Werbeaussagen ... 347 16.12 ... Haftung für Links, Kommentare und fremde Inhalte ... 348 Index ... 351
Penetration Tester werden für Dummies
Pentests sind für Unternehmen unverzichtbar geworden, denn nur wer die Schwachstellen kennt, kann auch dagegen vorgehen. Robert Shimonski erklärt Ihnen in diesem Buch alles, was Sie brauchen, um selbst Pentests durchzuführen. Von den nötigen Vorbereitungen über Risikoanalyse und rechtliche Belange bis hin zur eigentlichen Durchführung und späteren Auswertung ist alles dabei. Versetzen Sie sich in Hacker hinein und lernen Sie, wo Unternehmen angreifbar sind. Werden Sie selbst zum Penetration Tester.Autor:Robert Shimonski ist Leiter des Service-Managements bei Northwell Health und ein erfahrener Autor. Er hat bereits über 20 Bücher geschrieben. Seine Themen reichen von Penetration Testing über Netzwerksicherheit bis hin zu digitaler Kriegsführung.Leseprobe (PDF-Link)
Enterprise Systems Architecture
Enhance your technical and business skills to better manage your organization’s technology ecosystem. This book aims to explain how to align the technology landscape to service your company’s business operating model.The book begins by exploring different architectural approaches before taking a deep dive into multiple layers of the architectural stack and the methodology of each component. You’ll also learn about the many products delivered by enterprise architecture. To complete the book, author Daljit Banger delves into the various roles and responsibilities of an enterprise architect.After completing Enterprise Systems Architecture, you will understand how to develop an ICT (Information Communication Technology) strategy to meet the needs of your organization.WHAT WILL YOU LEARN* Gain a complete understanding of enterprise architecture* Conceptualize the enterprise ecosystem using the EsA canvas* Master the products and services of an enterprise architecture functionWHO THIS BOOK IS FORArchitects (Enterprise, Solution, or Technical), CTOs, Business Analysts, or any stakeholder in delivering technology services to their organization.DALJIT BANGER has 40 years of solid IT Industry experience, having undertaken assignments in locations across the globe, including the UK, USA, Sweden, Switzerland, Finland, Hong Kong, and Brazil on behalf of large multinational companies.Daljit has successfully managed several large professional teams of Architects, written in several publications and is the author of several freeware software products for Enterprise Architecture.Daljit holds a Master of Science (MSc) Degree and is a Chartered IT Fellow of the British Computer Society and Chairs the British Computer Society Enterprise Architecture Specialist Group.Chapter 1: Architectural Approaches* MODAF (Ministry of Defense Architecture Framework)* DODAF (Department of Defense Architecture Framework)* TOGAF (The Open Group Architecture Framework)* Zachman Framework* Federal Enterprise Architecture* Meta ModelsChapter 2: Layers Expanded and Explores* Layer 0 (Business Operating Model)* Layer 1 (Business Process Later)* Layer 2 (Capabilities and Services)* Layer 3 (Applications)* Layer 4 (Data/Information Services)* Layer 5 (Technological Services)Chapter 3: Products for Delivering the EA.* Background* Contributing Factors* IT Governance * Technical Debt Management Chapter 4: Roles and Responsibilities* Enterprise Architect * Solutions Architect* Technical Architect* Aligning Architect Chapter 5: Developing the ICT Strategy* Simple Strategy Plan * Strategy CycleChapter 6: Final Note
Programming and GUI Fundamentals
PROGRAMMING AND GUI FUNDAMENTALSDISCOVER THE FOUNDATIONS OF TCL PROGRAMMING AND GUI DEVELOPMENTProgramming and GUI Fundamentals: Tcl-Tk for Electronic Design Automation (EDA), delivers a comprehensive exploration of the major design challenges and potential present in application and tool development with Tcl-Tk. Accessibly written and easy-to-understand, the book can be used by students at a variety of levels, as well as researchers and working professionals. The authors present the fundamental concepts of Tcl programming and graphic user interface (GUI) development using images, and photographs, assisting with concept understanding and retention. They describe real-time system designs and offer students and designers the opportunity to learn about critical concepts in scripting and GUI development. Readers will learn to design their own GUI, place and package widgets on the GUI, and allow EDA professionals, chip designers and students to code and design in TCL-TK. They will also benefit from:* A thorough introduction to scripting languages and wish interpreters, including their fundamental concepts, TCL tips and tricks, and command, variable, and procedure examples* Comprehensive explorations of the TCL data structure, including datatypes, strings and commands, lists and commands, and arrays and commands* Practical discussions of TCL control flow, including conditional commands, multi-condition commands, and loop commands* In-depth examinations of file input/output processing, including TCL file read-write, open and close commands, gets, and puts.Perfect for undergraduate and graduate students studying programming or computer science, as well as professionals working on electronic design automation and chip design, Programming and GUI Fundamentals: Tcl-Tk for Electronic Design Automation (EDA) is also an indispensable resource for programming professionals seeking to upskill. SUMAN LATA TRIPATHI, PHD, is Professor of VLSI Design at Lovely Professional University. She is a Senior Member of the IEEE and obtained her doctorate in Microelectronics and VLSI Design from Motilal Nehru National Institute of Technology, Allahabad, India. ABHISHEK KUMAR, PHD, is Associate Professor at Lovely Professional University. He received his doctorate in VLSI Design for Low Power and Secured Architecture from Lovely Professional University, Punjab, India. JYOTIRMOY PATHAK is Assistant Professor at Lovely Professional University, Punjab India. He has published over 10 research papers, holds 9 patents, and 1 copyright. Author BiographiesChapter 1 - IntroductionChapter 2 – Basic CommandChapter 3 - Program Flow ControlChapter 4 - Tcl Data StructureChapter 5 - Tcl Object-Oriented ProgrammingChapter 6: File ProcessingChapter 7: Toolkit WidgetChapter 8 - Binding Command and Other WidgetChapter 9 - Canvas Widget and Tk CommandsChapter 10 - Tcl-Tk for EDA ToolIndex
Einführung in Domain-Driven Design
Hands-On DDD: von der Strategie bis zum technischen DesignSoftwareentwicklung ist heutzutage anspruchsvoller denn je: Als Entwicklerin oder Entwickler müssen Sie technologische Trends im Blick behalten, aber genauso die Fachdomänen hinter der Software verstehen. Dieses Praxisbuch beschreibt zentrale Patterns, Prinzipien und Praktiken, mit denen Sie Geschäftsbereiche analysieren, die Business-Strategie verstehen und, was am wichtigsten ist, Ihr Softwaredesign besser an den Geschäftsanforderungen ausrichten.DDD-Experte Vlad Khononov zeigt, wie diese Praktiken helfen, von der Geschäftslogik ausgehend zu einem robusten Softwaredesign und einer zukunftsfähigen Softwarearchitektur zu kommen. Er beschreibt, wie DDD mit anderen Methoden kombiniert werden kann, um geeignete Architekturentscheidungen zu treffen. Das reale Beispiel eines Start-ups, das DDD einführt, bietet dabei viele praxisnahe Einblicke.In diesem Buch erfahren Sie, wie Sie:die Fachdomäne analysieren, um herauszufinden, welche Anforderungen an Ihr Systemdie strategischen und taktischen Werkzeuge von DDD nutzen, um effektive Softwarelösungen zu entwickeln, die diesen Geschäftsanforderungen entsprechenein gemeinsames Verständnis der Fachdomänen entwickelnein System in Bounded Contexts aufgliederndie Arbeit mehrerer Teams koordinierenDDD schrittweise in Brownfield-Projekten einführenAutor:Vlad (Vladik) Khononov ist Softwareentwickler mit über 20 Jahren Branchenerfahrung, in denen er für große und kleine Firmen gearbeitet hat – in unterschiedlichsten Rollen vom Webmaster bis zum Chefarchitekten. Vlad ist zudem als Sprecher, Blogger und Autor unterwegs. Er ist überall auf der Welt aktiv, um zu beraten und über Domain-Driven Design, Microservices und Softwarearchitektur ganz allgemein zu sprechen. Vlad hilft Firmen dabei, aus ihren Fachdomänen Sinn zu ziehen, Legacy-Systeme zu entwirren und komplexe Architekturaufgaben anzugehen. Er lebt im Norden Israels zusammen mit seiner Frau und einer fast vernünftigen Anzahl an Katzen.Zielgruppe:Softwareentwickler*innenSoftwarearchitekt*innenProjektleitung(IT-)Manager*innenLeseprobe (PDF-Link)
Python für Excel
Befreien Sie sich aus dem Chaos der riesigen Arbeitsmappen, Tausenden von Formeln und hässlichen VBA-HacksExcel ist nach wie vor ein unverzichtbares Analysetool und hat in den letzten Jahren viele neue Funktionen hinzubekommen, doch die Automatisierungssprache VBA hat sich nicht parallel weiterentwickelt. Viele Excel-Poweruser nutzen daher bereits Python, um Routinearbeiten zu automatisieren. Felix Zumstein zeigt in diesem praktischen Leitfaden erfahrenen Excel-Benutzerinnen und -Benutzern, wie sich Python als Skriptsprache für Excel effizient verwenden lässt.Dieses Buch bietet Ihnen einen schnell zugänglichen Einstieg in Python, sodass Sie direkt in die Praxis starten können:Verwenden Sie Python ohne fortgeschrittene ProgrammierkenntnisseArbeiten Sie mit modernen Tools wie Jupyter-Notebooks und Visual Studio CodeNutzen Sie pandas zum Erfassen, Bereinigen und Analysieren von Daten und ersetzen Sie typische Excel-BerechnungenAutomatisieren Sie mühsame Aufgaben wie die Konsolidierung von Excel-Arbeitsmappen und das Erstellen von Excel-BerichtenSetzen Sie xlwings ein, um interaktive Excel-Tools zu erstellen, die Python als Berechnungsmodul verwendenVerbinden Sie Excel mit Datenbanken und CSV-Dateien und rufen Sie mit Python-Code Daten aus Internetquellen abVerwenden Sie Python als Universalwerkzeug, um VBA, Power Query und Power Pivot zu ersetzenAutor:Felix Zumstein ist der Schöpfer und Betreuer von xlwings, einem beliebten Open-Source-Paket, das die Automatisierung von Excel mit Python unter Windows und macOS ermöglicht. Er organisiert auch die xlwings-Treffen in London und New York City, um eine breite Palette innovativer Lösungen für Excel zu fördern.Als CEO von xltrail, einem Versionskontrollsystem für Excel-Dateien, hat er mit Hunderten von Anwendern gesprochen, die Excel für geschäftskritische Aufgaben verwenden, und ist daher mit den typischen Excel-Anwendungsfällen und -Problemen in verschiedenen Branchen bestens vertraut.Zielgruppe:Excel-Praktiker*innenBusiness-Analyst*innenVBA-Entwickler*innenData ScientistsLeseprobe (PDF-Link)
Test Your Skills in C# Programming
Review the fundamental constructs in C# using Q&As and program segments to boost your confidence and gain expertise. This book will help you analyze your programs more efficiently and enhance your programming skills.The book is divided into three parts, where you will learn the fundamentals, object-oriented programming, and some advanced features of C#. In the first part, you will review C# and .NET basics along with the important constructs such as strings, arrays, and structures. In the second part, you'll review the concepts of object-oriented programming in detail. Here, you will go through various program segments in class and objects, inheritance, polymorphism, abstraction, encapsulation, and much more. You will also analyze the output of the given programs with the help of Q&A sections. The uses of interfaces, static class, and exception handling are discussed in the book along with some other important concepts in C#. In the third and last part, you will learn advanced features of C# programming such as delegates, events, lambdas, generics, and multithreading. Here, you'll also cover some of the latest features of C#.After reading this book, you will be able to analyze and apply the basic and frequently used features along with the advanced features of C#.WHAT WILL YOU LEARN* Understand the core and some of the latest features in C#* Review your programming skills along with some of the latest features in C#* Know how object-oriented programming (OOP) is used in C#* Get up and running on the advanced features of C# such as delegates, lambdas, generics, and moreWHO THIS IS BOOK FORProgrammers with basic knowledge of C#VASKARAN SARCAR obtained his Master of Engineering in software engineering from Jadavpur University, Kolkata (India) and an MCA from Vidyasagar University, Midnapore (India). He was a National Gate Scholar (2007-2009) and has more than 12 years of experience in education and the IT industry. Vaskaran devoted his early years (2005-2007) to the teaching profession at various engineering colleges, and later he joined HP India PPS R&D Hub Bangalore. He worked there until August 2019. At the time of his retirement from HP, he was a Senior Software Engineer and Team Lead at HP. To follow his dream and passion, Vaskaran is now an independent full-time author. Other Apress books by him include: _Java Design Patterns Third Edition, _Simple and Efficient Programming in C#, _Design Patterns in C# Second Edition, __Getting Started with Advanced C#, __Interactive Object-Oriented Programming in Java Second Edition,__ __Java Design Patterns Second Edition, __Design Patterns in C#, __Interactive C#, __Interactive Object-Oriented Programming in Java, _Java Design Patterns.PART I FUNDAMENTALSCHAPTER 1: LANGUAGE BASICSCHAPTER GOAL: THIS CHAPTER DISCUSSES THE FOLLOWING TOPICS:The important concepts in .NETThe basic programming constructs in C#.Use of some useful data types including the var type.Use of some useful operators and explicit-casting.Use of the selection statements and case guards.Use of iteration statements.Use of the jump statements.Use of the ternary operator.No of pages: 28SUB - TOPICS NCHAPTER 2: STRING AND ARRAYSCHAPTER GOAL:ONCE YOU FINISH THIS CHAPTER, YOU CAN ANSWER THE FOLLOWING QUESTIONS AND RELATED AREAS:How can you use string datatype in your program?How can you use the common in-built methods from the String class?How a String variable is different from a StringBuilder?How can you convert a string to an int?How can you use nullable reference type in a program?How to create arrays in C#?What are the different types of C# arrays and how to use them?How to use common in-built methods from the System.Array class?How can you iterate over a string or an array?NO OF PAGES 23SUB - TOPICS NACHAPTER 3: ENUMERATION AND STRUCTURESCHAPTER GOAL: This chapter discusses the following topics:The enum fundamentalsFlags enumerationDefaut value expressionsThe struct fundamentalsNon-destructive mutationsNO OF PAGES: 26SUB - TOPICS NAPART II OBJECT-ORIENTED PROGRAMMINGCHAPTER 4: CLASS AND OBJECTSCHAPTER GOAL: This chapter focuses on the following topics:Classes and objects creations.Instance fields and methods.Constructors and their usage.Optional parameters.Object initializers.Nested classes.The uses of private, internal, and public modifiers inside a class.NO OF PAGES: 17SUB - TOPICS NACHAPTER 5: INHERITANCECHAPTER GOAL: This chapter covers the following topics:Inheritance and types.Method and constructor overloading.Method overriding.Use of virtual, override, and new keywords.Use of the sealed keyword.Introductory discussion on covariance and contravarianceNO OF PAGES 33Sub - Topics NAChapter 6: PolymorphismCHAPTER GOAL: This chapter helps you to review:Polymorphism and its benefits.Abstract classes and their uses.Interfaces and their uses.Different types of interfaces.Writing polymorphic codes using abstract classes and interfacesNO OF PAGES: 30SUB - TOPICS NAChapter 7: EncapsulationCHAPTER GOAL: This chapter covers the following topics:What is encapsulation? How is it different from an abstraction?Properties and their usage.Different ways to create a property.The usage of the get and set accessors.Virtual and abstract properties.The discussion of the init accessor.Indexers and their usage.How can the indexers and properties work with an interface?Discussion on different aspects of properties and indexers.NO OF PAGES: 26SUB - TOPICS NAChapter 8: Exception HandlingCHAPTER GOAL: This chapter covers the following topics:Exception and its uses in C# programming.Use of the try, catch, and finally blocks.Use of multiple catch blocks in a program.Use of a general catch block.How to throw and re-throw an exception.Use of exception filters.Custom exception class and its usage.NO OF PAGES: 23SUB - TOPICS NAChapter 9: Useful ConceptsChapter Goal: Q&A and program segments on some useful constructs such as casting and boxing, static class and methods, passing value type by value, passing value type by references(using ref and out keyword), extension methods, and so on.NO OF PAGES: 15-25+SUB - TOPICS NAPart III Advanced Features Chapter 10: DelegatesCHAPTER GOAL: This chapter covers the following topics:Delegates and their usesMulticast delegatesSome commonly used in-built delegatesCovariance and contravariance using delegatesNO OF PAGES: 20SUB - TOPICS NAChapter 11: EventsCHAPTER GOAL: This chapter helps you to review your understanding of events and discusses the following:Events creation and their uses.How to pass the event data.Use of event accessors.Use of interface events (both implicit and explicit).Simplified coding with events.NO OF PAGES: 22SUB - TOPICS NAChapter 12: LambdasCHAPTER GOAL: This chapter focuses on this and covers the following topics:Lambda expressions and their useExpression-bodied membersUse of local variables inside lambda expressions.Event handling using lambda expressions.Use of a static lambda.Understanding natural type.NO OF PAGES: 22SUB - TOPICS NACHAPTER 13: GENERICSCHAPTER GOAL: This chapter focuses on the following topics:The motivation behind generics.The fundamentals of generic programs.Use of generic interfaces.Use of generic constraints.Use of covariance and contravariance using generics.Self-referencing generic type.Experimenting with generic method’s overloading and overriding.Analyzing the static data in the context of generics.NO OF PAGES: 35SUB - TOPICS NACHAPTER 14: MULTITHREADINGChapter Goal: Upon completion of this chapter, you’ll be able to answer the following questions:What are the threads and how can you create them?What is a multithreaded program? How does it differ from a single-threaded application?Why are the ThreadStart and ParameterizedThreadStart delegates important in thread programming?How to block a thread using Sleep or Join methods?How can you use lambda expressions in a multithreaded program?How to use important Thread class members?How a foreground thread is different from a background thread?What is synchronization and why is it needed?How can you implement thread safety in C# using lock statements?How can you implement an alternative approach to lock statements using Monitor’s Entry and Exit Method?What is a deadlock and how can you detect the deadlock in your system?What is the purpose of using the ThreadPool class? What are the associative pros and cons of using it?How to cancel a running thread in the managed environment?And many more.NO OF PAGES: 40SUB - TOPICS NACHAPTER 15: MISCELLANEOUSCHAPTER GOAL: Q&A and program segments on the related latest features that are covered in the previous chapters and any other important topics(if any).NO OF PAGES: 10-20+SUB - TOPICS NA
Data Science and Analytics for SMEs
Master the tricks and techniques of business analytics consulting, specifically applicable to small-to-medium businesses (SMEs). Written to help you hone your business analytics skills, this book applies data science techniques to help solve problems and improve upon many aspects of a business' operations.SMEs are looking for ways to use data science and analytics, and this need is becoming increasingly pressing with the ongoing digital revolution. The topics covered in the books will help to provide the knowledge leverage needed for implementing data science in small business. The demand of small business for data analytics are in conjunction with the growing number of freelance data science consulting opportunities; hence this book will provide insight on how to navigate this new terrain.This book uses a do-it-yourself approach to analytics and introduces tools that are easily available online and are non-programming based. Data science will allow SMEs to understand their customer loyalty, market segmentation, sales and revenue increase etc. more clearly. Data Science and Analytics for SMEs is particularly focused on small businesses and explores the analytics and data that can help them succeed further in their business.WHAT YOU'LL LEARN* Create and measure the success of their analytics project* Start your business analytics consulting career* Use solutions taught in the book in practical uses cases and problems WHO THIS BOOK IS FORBusiness analytics enthusiasts who are not particularly programming inclined, small business owners and data science consultants, data science and business students, and SME (small-to-medium enterprise) analystsAfolabi Ibukun is a Data Scientist and is currently a Senior Lecturer in the Department of Computer and Information Sciences, Covenant University. She holds a B.Sc in Engineering Physics, an M.Sc and Ph.D in Computer Science. Afolabi Ibukun has over 15 years working experience in Computer Science research, teaching and mentoring. Her specific areas of interest are Data & Text Mining, Programming and Business Analytics. She has supervised several undergraduate and postgraduate students and published several articles in international journals and conferences. Afolabi Ibukun is also a Data Science Nigeria Mentor and currently runs a Business Analytics Consulting and Training firm named I&F Networks SolutionsINTRODUCTIONWe introduce data science generally and narrow it down to data science for business which is also referred to as business analytics. We then give a detailed explanation of the process involved in business analytics in form of the business analytics journey. In this journey, we explain what it takes from start to finish to carry out an analytics project in the business world, focusing on small business consulting, even though the process is generic to all types of business, small or large. We also give a description of what small business refers to in this book and the peculiarities of navigating an analytics project in such a terrain. To conclude the chapter, we talk about the types of analytics problems that is common to small business and the tools available to solve these problems given the budget situation of small businesses when it comes to analytics project.· DATA SCIENCE· DATA SCIENCE FOR BUSINESS· BUSINESS ANALYTICS JOURNEY· SMALL AND MEDIUM BUSINESS (SME)· BUSINESS ANALYTICS IN SMALL BUSINESS· TYPES OF ANALYTICS PROBLEMS IN SME· ANALYTICS TOOLS FOR SMES· ROAD MAPS TO THIS BOOK· PROBLEMS· REFERENCESCHAPTER 1: DATA FOR ANALYSIS IN SMALL BUSINESSIn this chapter, we would look at the various sources of data generally and in small business. This chapter is important because the major challenge of consulting for small business is the lack of data or quality data for analysis. This chapter will therefore detail the sources of data for analysis explaining first the type or form that data exists and some general ideas of how to collect such data. It gives an overview on data quality and integrity issues and touches on data literacy. The chapter also includes the typical data preparation procedures for the common types of techniques used in small business analytics and by extension used in this book. To conclude the chapter, we look at data visualization, particularly towards preparing data for various analytics task as explained in section 1.3.· SOURCE OF DATA· DATA QUALITY & INTEGRITY· DATA GOVERNANCE· DATA PREPARATION· DATA VISUALIZATION· PROBLEMS· REFERENCESCHAPTER 2: BUSINESS ANALYTICS CONSULTINGIn this chapter, we will look at business analytics consulting, particularly what the concept implies and how to build such a career path. We will explain the types of business analytics consulting that exist and then narrow it down to how to navigate the world of business analytics consulting for small business. In this chapter, we will look at how to manage a typical analytics project and measure the success of analytics projects. In conclusion, we will discuss issues revolving around how to bill analytics project particularly as a consultant.· BUSINESS ANALYTICS CONSULTING· MANAGING ANALYTICS PROJECT· SUCCESS METRICS IN ANALYTICS PROJECT· BILLING ANALYTICS PROJECT· PROBLEMS· REFERENCESCHAPTER 3: BUSINESS ANALYTICS CONSULTING PHASESIn this chapter we will look at the stages involved business analytics consulting, particularly when the analytics service is offered as a product from either within or outside the business. We will look at the proposal and initial analysis stage which gives direction to the analytics project. Then we look at the details involved in the pre-engagement, engagement and post engagement phase. It is important to know that the stages are presented in a typical or generic way but when implemented, there might be reason to modify or customize them for the application scenario.· PROPOSAL & INITIAL ANALYSIS· PRE- ENGAGEMENT PHASE· ENGAGEMENT PHASE· POST ENGAGEMENT PHASE· PROBLEMS· REFERENCESCHAPTER 4: DESCRIPTIVE ANALYTICS TOOLSThis chapter is focused on the mostly common descriptive analytics tools used in business generally and specifically in small businesses. The chapter will help to use descriptive analytics tools to understand your business and make recommendations that can improve your business profits. For small business, descriptive analytics helps SMEs to make sense of available data in order to monitor business indicators at a glance, helps SME owners to observe sales trends and patterns on an overall basis, as well as deep-dive into product categories and customer groups. It also helps SME’s to plan product strategy, pricing policies that will maximize their projected revenues and derive a lot of valuable insights for getting more customers.· INTRODUCTION· BAR CHART· HISTOGRAM· LINE GRAPHS· SCATTER PLOTS· PACKED BUBBLES CHARTS· HEAT MAPS· GEOGRAPHICAL MAPS· A PRACTICAL BUSINESS PROBLEM I· PROBLEMS· REFERENCESCHAPTER 5: PREDICTION TECHNIQUESIn this chapter, we will explore the popular techniques used for prediction, particularly in retails business. The approach used in explaining these techniques us to use them in solving a business problem. The second business problem to be addressed is the sales prediction problem which is common in retail business. The chapter first explain the fundamental concept of prediction techniques, next we look at how such techniques are evaluated. After this, we describe the business problem we intend solving. We then pick each of the selected techniques one by one and explain the algorithms involved and how they can be used to solve the problem described. The prediction techniques used and compared are the Multiple linear regression, the Regression Trees and the Neural Network. To conclude the chapter, we compare the results of the three algorithms and conclude on the problem in question. In this chapter therefore, the analytics products being offered is to solve sales prediction problem for small retail business.· INTRODUCTION· PRACTICAL BUSINESS PROBLEM II (SALES PREDICTION)· MULTIPLE LINEAR REGRESSION· REGRESSIN TREES· NEURAL NETWORK (PREDICTION)· CONCLUSION ON SALES PREDICTION· PROBLEMS· REFERENCESCHAPTER 6: CLASSIFICATION TECHNIQUESIn this chapter, even though there are several classification techniques, we will explore the popular ones used for classification in the business domain. In doing this, we will use the third business problem centered on customer loyalty comparing neural network, classification tree and random forest algorithms. In solving this problem, we are particular about how to get and retain more customers for our small business. We will also introduce some other classification based techniques such as K-nearest neighbour logistic regression and persuasion modelling. We will use persuasion modelling for the fourth practical business problem. In using these techniques to solve the problem we explain the fundamental concepts in the chosen algorithms and use them to demonstrate how this problems solving process can be adopted in real business scenarios.· CLASSIFICATION MODELS & EVALUATION· PRACTICAL BUSINESS PROBLEM III (CUSTOMER LOYALTY)· NEURAL NETWORK· CLASSIFICATION TREE· RANDOM FOREST & BOOSTED TREES· K NEAREST NEIGHBOUR· LOGISTIC REGRESSION· PROBLEMS· REFERENCESCHAPTER 7: ADVANCED DESCRIPTIVE ANALYTICSThis chapter is focused mainly on advanced descriptive analytics techniques. In this chapter, we will first explain the concept of clustering which is a type of unsupervised learning approach. We will then pick one clustering technique which is the K means clustering. Using the fourth practical business problem, we will explain how we can use the K means clustering technique to solve a real business problem. Next will explain the association rule example and finally Network analysis. We conclude with the fifth business problem which is focused on using network analytics for employee efficiency.· CLUSTERING· K MEANS· PRACTICAL BUSINESS PROBLEM IV (Customer Segmentation)· ASSOCIATION ANALYSIS· NETWORK ANALYSIS· PRACTICAL BUSINESS PROBLEM V (Staff Efficiency)· PROBLEMS· REFERENCESCHAPTER 8: CASE STUDY PART IThis chapter is the beginning part of major consulting case study for this book. We will explain what transpired during a typical business analytics consulting and help to create a road map or an example of how to navigate a business analytics consulting project. We start with a description of the SME Ecommerce environment generally, since this is the business environment of our selected case study, we then talk about the sources of data for analytics peculiar this environment. Next we describe the business to be used as case study briefly, followed by the analytics road map peculiar to consulting for this business. This chapter ends with the results of the initial analysis and pre engagement phase which forms the bases for the detailed analytics and implementation phase in chapter 10.· SME ECORMERCE· INTRODUCTION TO SME CASE STUDY· INITIAL ANALYSIS· ANALYTICS APPROACH· PRE –ENGAGEMENT· PROBLEMS· REFERENCESCHAPTER 9: CASE STUDY PART IIIn this chapter, we will conclude the case study used for illustration of a typical business analytics consulting for an SME by presenting the details of the engagement phase for the case study in question. The post engagement phase is left out as the implementation of the recommendations is determined by the systems and procedures of the business. It is important to note that the consulting steps can be customized for any small business based on the intended problem. The whole steps described in chapter 9 and 10 have been made simple for understanding, though in real life business application there might be need to iterate the process until satisfactory results have been gotten. This is because you constantly need to incorporate feedback from the stakeholders and domain experts.· GOAL 1: INCREASE WEBSITE TRAFFIC· GOAL 2: INCREASE WEBSITE SALES REVENUE· PROBLEMS· REFERENCES
Practical Haskell
Get a practical, hands-on introduction to the Haskell language, its libraries and environment, and to the functional programming paradigm that is fast growing in importance in the software industry. This updated edition includes more modern treatment of Haskell's web framework and APIs.This book contains excellent coverage of the Haskell ecosystem and supporting tools, including Cabal and Stack for managing projects, HUnit and QuickCheck for software testing, WAI and Elm to develop the back end and front end of web applications, Persistent and Esqueleto for database access, and parallel and distributed programming libraries.You’ll see how functional programming is gathering momentum, allowing you to express yourself in a more concise way, reducing boilerplate, and increasing the safety of your code. Haskell is an elegant and noise-free pure functional language with a long history, having a huge number of library contributors and an active community.This makes Haskell the best tool for both learning and applying functional programming, and Practical Haskell, Third Edition takes advantage of this to show off the language and what it can do. Free source code available on the Apress GitHub page for this book.WHAT YOU WILL LEARN* Get started programming with Haskell* Examine the different parts of the language* Gain an overview of the most important libraries and tools in the Haskell ecosystem* Apply functional patterns in real-world scenarios* Understand monads and monad transformers* Proficiently use laziness and resource managementWHO THIS BOOK IS FORExperienced programmers who may be new to the Haskell programming language. However, some prior exposure to Haskell is recommended.ALEJANDRO SERRANO MENA has more than a decade of experience as a developer, trainer, and researcher in functional programming, with an emphasis on Haskell and related languages. He holds a Ph.D. from Utrecht University on the topic of error message customization in compilers. He's an active member of the community, maintaining a few open-source projects, writing books about Haskell, and collaborating on podcasts and conferences.PART I: FIRST STEPS1. Going Functional2. Declaring the Data Model3. Increasing Code Reuse4. Using Containers and Type Classes5. Laziness and Infinite StructuresPART II: DATA MINING6. Knowing Your Clients Using Monads7. More Monads: Now for Recommendations8. Working in Several CoresPART III: RESOURCE HANDLING9. Dealing with Files: IO and Conduit10. Building and Parsing Text11. Safe Database Access12. Web ApplicationsPART IV: DOMAIN SPECIFIC LANGUAGES13. Strong Types14. Interpreting Offers with AttributesPART V: ENGINEERING THE STORE15. Documenting, Testing, and Verifying16. Architecting Your Application17. Looking Further
Produktion und Logistik in der digitalen Transformation
Dieses Buch beschreibt zahlreiche Erfahrungen, die in Produktionsunternehmen und in der Lehre mit der Umsetzung der Digitalisierung gesammelt wurden. Es werden unterschiedliche Entwicklungspfade aufgezeigt, die nicht alle beim Industrie-4.0-Musterunternehmen enden. Einbezogen werden dabei beispielsweise auch die neuen Anforderungen an Mitarbeiter und das Zusammenwirken mit anderen Unternehmen. Reifegradmodelle, Kennzahlensysteme sowie Praxisbeispiele bieten mögliche Wege, um die Digitalisierung in Unternehmen zu analysieren und neue Strategien umzusetzen. Zudem werden Kompromisslösungen und Maßnahmen beschrieben, die Wirtschaftlichkeit, Wettbewerbsfähigkeit und Weiterentwicklung bieten.
ESP32 steuert Roboterfahrzeug
• Open-Source-Code mit Arduino IDE und PlatformIO• Autonomes Fahren: GPS, Accelerometer, Gyroskop• PS3-ControllerMikrocontroller wie der Arduino und Einplatinenrechner wie der Raspberry Pi haben sich zu beliebten Komponenten entwickelt. Dritter im Bunde ist der ESP32 der Firma Espressif. Mikrocontroller dieser Baureihe zeichnen sich durch eine Vielzahl implementierter Funktionen aus, die bei einem Arduino konventioneller Prägung mit einem Atmel-AVR-Mikrocontroller erst mit weiterer Hardware möglich sind. Prominentes Beispiel sind hier die WiFi- und Bluetooth- Funktionalitäten. Gegenüber einem Raspberry Pi zeichnen sie sich durch einen deutlich geringeren Preis aus.Allgemeine Informationen für die Realisierung eines Roboterauto- Projekts mit dem ESP32 sind leicht zu finden. Dabei handelt es sich aber oft nur um Ausführungen zu einem Teilaspekt, ohne inhaltliche oder funktionale Abstimmung. So ist nicht nur die Beschaffung der benötigten Informationen mühselig und zeitaufwändig, sie kann auch außerordentlich fehlerträchtig sein.Ansatzpunkt dieses Buches ist, diese Lücke zu schließen. Es geht auf verschiedene Möglichkeiten eines Chassis ein, vermittelt nötige Kenntnisse und führt schrittweise von einer einfachen Motorsteuerung zu einem komplexen sensor- und sprachgesteuerten Roboterauto. Hacks rund um GPS und eine Playstation 3 runden die Sache ab.InhaltBei der Reihenfolge der Kapitel wurde versucht – beginnend bei der Darstellung von grundlegenden Informationen – über die Lösung einfacher Aufgaben zu etwas anspruchsvolleren Techniken zu führen.> Der Mikrocontroller ESP32> Die Software erstellen> Die Stromversorgung> Rund um die Hardware> Das Chassis> Der Gleichstrommotor> Kabellose Steuerung über WiFi> Mit Sensoren Hindernisse erkennen> Eine eigene Roboterauto-App> Servo und Lichtsensor> GPS> Accelerometer / Gyroskop> PS3-Controller> Roboterauto-AppUdo Brandes war lange Jahre als Systementwickler beim Rechenzentrum der Finanzverwaltung des Landes Nordrhein-Westfalen tätig. Verschiedene Aufgaben bei der Stadt Wuppertal markierten seinen weiteren beruflichen Weg. Seit einigen Jahren arbeitet er als selbstständiger Programmierer, IT-Entwickler und Autor. Ansätze und Möglichkeiten der Mikrocontrollerprogrammierung sind Zukunftsthemen, die den Autor faszinieren und mit deren Chancen und Risiken er sich seit langem intensiv befasst.
Drawing Product Ideas
EXPLORE STRAIGHTFORWARD DRAWING SKILLS TO HELP YOU COMMUNICATE PRODUCT IDEAS EXPONENTIALLY FASTER THAN YOU COULD WITH TEXTIn Drawing Product Ideas: Fast and Easy UX Drawing for Anyone, RSA Fellow and Google Data Visualization Lead, Kent Eisenhuth delivers a new and exciting guide to effectively communicating product ideas by drawing just two simple things: boxes and lines! In the book, you'll learn why drawing is important and how it supports the design thinking process. You'll also discover how to build your drawing toolkit by exploring your own personal drawing style.The author also includes:* Strategies for how to use your drawing to support your solutions to real-world problems* Tips and tricks for applying your new drawing skills in a workshop setting, in real-time* An illuminating foreword by the celebrated Manuel Lima, a Fellow of the Royal Society of ArtsAn essential volume for engineers, researchers, and product managers, Drawing Product Ideas is also an indispensable blueprint for anyone seeking to improve their public, ad-hoc drawing skills.Foreword ixPreface xiIntroduction xvCHAPTER 1 WHY DRAW? 1Explore an Idea 2Gain a Shared Understanding 5Improve Collaboration 7Anyone Can Draw 7Right Time and Place 10CHAPTER 2 REFRAMING OUR THINKING 15Breaking It Down 17Introducing the System 19Common Drawings 23CHAPTER 3 LINES AND POINTS 33Telling Stories with Lines 34Making Meaning with Points 42Tools and Materials 45CHAPTER 4 BUILDING FROM RECTANGLES 47Creating Diagrams 48Content Elements 55Navigation Elements 58Forms 65CHAPTER 5 BUILDING FROM CIRCLES, TRIANGLES, AND MORE 81Circular Elements 81Triangular Elements 89Advanced Icons and Symbols 92Representing Interactions 98CHAPTER 6 ILLUSTRATING LIGHT, MOTION, AND OTHER CONCEPTS 103Shading Techniques 103Using Accent Marks 105Looking at Lighting 105Using Elevation 110Using Texture 116Capturing Motion 119Conveying Luminance 120Communicating Sound 121CHAPTER 7 THE SYSTEM 127Putting It Together 128Creating Something New 134CHAPTER 8 USING FLOWS TO TELL STORIES 139Starting with the Syntax 139Showing Interactions 142Just Enough Information 144Depicting Transitions 145Labels and Annotations 147Being Conscious of Composition 150CHAPTER 9 TELLING ENGAGING STORIES 157Real-WorldConstraints 160Invoking Emotion 166Adapting the Visual Language 170Wayfinding and Landmarks 174Choreography and Timing 178Packaging Your Drawings 180CHAPTER 10 MOVING FORWARD 183Works Cited 185Index 187
C# für Kids
Einfacher Einstieg in die C#-Programmierung mit vielen Schritt-für-Schritt-Anleitungen Zahlreiche kleine Spiele programmieren wie ein Quiz, ein Würfel-Glücksspiel und eine Spinnen-Animation Mit Fragen und Aufgaben am Ende jedes Kapitels sowie Code zum Download Hans-Georg Schumann zeigt in einfachen Schritten, wie du in die Programmiersprache C# einsteigst und schnell erste Programme schreibst. Anhand selbst programmierter Spiele erfährst du, wie du Buttons und Labels anlegst, mit Variablen umgehst und Klassen festlegst. Die frei verfügbare Community-Version der Entwicklungsumgebung Visual Studio hilft dir, wie ein Profi zu programmieren bis hin zur Objektorientierten Programmierung. Du lernst, Schaltflächen zu verwenden, ein Quiz zu entwickeln und sogar eine Spinne über den Bildschirm zu jagen. So wird dir das Programmieren richtig Spaß machen! Zwischendurch kannst du immer wieder Fragen und Aufgaben beantworten, um das Gelernte zu festigen. Die richtigen Antworten und Lösungen sowie alle Codebeispiele findest du im Internet zum Download. Aus dem Inhalt: Mit C# ein erstes kleines Programm schreiben Was eine Entwicklungsumgebung ist und wie du z.B. mit Visual Studio programmierst Variablen und Kontrollstrukturen im ersten Projekt kennenlernen Kleine Spiele entwickeln: Zensuren umrechnen und Zahlen raten Grundlagen der Objektorientierten Programmierung Eine Lottoziehung und ein Rätselspiel programmieren Den Wortschatz von C# selber erweitern Mit Kapselung und Vererbung umgehen lernen Hilfreiche Buttons und andere optische Komponenten verwenden Die grafischen Möglichkeiten von C# nutzen Gleichzeitig spielen und lernen: ein größeres Quizprojekt programmieren Viele Anregungen für eigene Spiele: vom Würfel-Glücksspiel bis zur Spinnen-Animation Ausführlicher Anhang zur Installation und zur Fehlersuche Hans-Georg Schumann war Informatik- und Mathematiklehrer an einer Gesamtschule. Er hat bereits viele erfolgreiche Bücher in der mitp-Buchreihe »... für Kids« geschrieben.
Drawing Product Ideas
EXPLORE STRAIGHTFORWARD DRAWING SKILLS TO HELP YOU COMMUNICATE PRODUCT IDEAS EXPONENTIALLY FASTER THAN YOU COULD WITH TEXTIn Drawing Product Ideas: Fast and Easy UX Drawing for Anyone, RSA Fellow and Google Data Visualization Lead, Kent Eisenhuth delivers a new and exciting guide to effectively communicating product ideas by drawing just two simple things: boxes and lines! In the book, you'll learn why drawing is important and how it supports the design thinking process. You'll also discover how to build your drawing toolkit by exploring your own personal drawing style.The author also includes:* Strategies for how to use your drawing to support your solutions to real-world problems* Tips and tricks for applying your new drawing skills in a workshop setting, in real-time* An illuminating foreword by the celebrated Manuel Lima, a Fellow of the Royal Society of ArtsAn essential volume for engineers, researchers, and product managers, Drawing Product Ideas is also an indispensable blueprint for anyone seeking to improve their public, ad-hoc drawing skills.Foreword ixPreface xiIntroduction xvCHAPTER 1 WHY DRAW? 1Explore an Idea 2Gain a Shared Understanding 5Improve Collaboration 7Anyone Can Draw 7Right Time and Place 10CHAPTER 2 REFRAMING OUR THINKING 15Breaking It Down 17Introducing the System 19Common Drawings 23CHAPTER 3 LINES AND POINTS 33Telling Stories with Lines 34Making Meaning with Points 42Tools and Materials 45CHAPTER 4 BUILDING FROM RECTANGLES 47Creating Diagrams 48Content Elements 55Navigation Elements 58Forms 65CHAPTER 5 BUILDING FROM CIRCLES, TRIANGLES, AND MORE 81Circular Elements 81Triangular Elements 89Advanced Icons and Symbols 92Representing Interactions 98CHAPTER 6 ILLUSTRATING LIGHT, MOTION, AND OTHER CONCEPTS 103Shading Techniques 103Using Accent Marks 105Looking at Lighting 105Using Elevation 110Using Texture 116Capturing Motion 119Conveying Luminance 120Communicating Sound 121CHAPTER 7 THE SYSTEM 127Putting It Together 128Creating Something New 134CHAPTER 8 USING FLOWS TO TELL STORIES 139Starting with the Syntax 139Showing Interactions 142Just Enough Information 144Depicting Transitions 145Labels and Annotations 147Being Conscious of Composition 150CHAPTER 9 TELLING ENGAGING STORIES 157Real-WorldConstraints 160Invoking Emotion 166Adapting the Visual Language 170Wayfinding and Landmarks 174Choreography and Timing 178Packaging Your Drawings 180CHAPTER 10 MOVING FORWARD 183Works Cited 185Index 187
Make: Elektronik (3. Auflage)
Eine unterhaltsame Einführung für Maker, Kids, Tüftlerinnen und Bastler in 3. Auflage.Dinge verheizen, Sachen vermasseln – so lernt man. Beginnend mit den grundlegenden Konzepten können Sie anhand eigener praktischer Experimente und unter Verwendung erschwinglicher Teile und Werkzeuge lernen.Auf dem Weg dorthin können Sie eine Sicherung durchbrennen lassen, ein Relais zum Summen bringen und eine Leuchtdiode durchbrennen lassen. In Make: Elektronik gibt es kein misslungenes Experiment, denn alle Experimente sind ein wertvoller Lernprozess. Mit dieser dritten Auflage wird das bewährte Buch jetzt noch besser.Innerhalb weniger Stunden bauen Sie einen Reflexionstester, einen Einbruchsalarm, ein Quizspiel oder ein Zahlenschloss – und modifizieren sie, um noch viel mehr zu tun. Nachdem Sie die Grundlagen von Spannung, Strom, Widerstand, Kapazität und Induktivität kennengelernt haben, werden Sie die Grundlagen von Logikchips, Funk, Mikrocontrollern und Elektromagnetismus entdecken. Jedes Projekt passt auf ein einziges Breadboard, und die meisten erfordern keine Lötarbeiten.Alle Experimente arbeiten mit sicheren, niedrigen Spannungen, die meist von einer einzigen 9-Volt-Batterie geliefert werden. Make:-Elektronik zieht Leserinnen und Leser aller Altersgruppen angezogen, von 10-Jährigen bis hin zu Rentnerinnen und Rentnern, die endlich freie Zeit haben, um ihre Neugierde an Elektronik zu befriedigen.Zum Autor:Charles Platts erstes Elektronik-Projekt war ein Telefonanrufbeantworter, den er mit 15 selbst baute. Er wurde Science-Fiction-Autor (The Silicon Man), brachte Leuten das Erstellen von Computergrafiken bei und war Redakteur bei der Zeitschrift Wired, ehe er wieder zu seiner ersten Liebe, der Elektronik, zurückkehrte. Er ist Editor beim amerikanischen Make:-Magazin.