Computer programming / software engineering Books
No Starch Press,US The Artist's Guide To Gimp, 2nd Edition
Book SynopsisAs a full-featured, free alternative to Adobe Photoshop, GIMP is one of the world's most popular open source projects. The latest version of GIMP (2.8) brings long-awaited improvements and powerful new tools to make graphic design and photo manipulation even easier but it's still a notoriously challenging program to use. The Artist's Guide to GIMP teaches you how to use GIMP without a tedious list of menu paths and options. Instead, as you follow along with Michael J. Hammel's step-by-step instructions, you'll learn to produce professional-looking advertisements, apply impressive photographic effects, and design cool logos and text effects. These extensively illustrated tutorials are perfect for hands-on learning or as templates for your own artistic experiments. After a crash course in GIMP's core tools like brushes, patterns, selections, layers, modes, and masks, you'll learn: Photographic techniques to clean up blemishes and dust, create sepia-toned antique images, swap colors, prTrade Review"A really instructive book that is expanding my knowledge of the program. Users who are looking to get more out of the GIMP might want to check it out."—Ryan Paul, Ars Technica"All in all I feel this is a brilliant book."—Jayson Broughton, Linux Journal"For anyone wanting to familiarize themselves with GIMP, The Artist's Guide, either as paper or an ebook, is one of the best resources on its subject available in any medium."—Bruce Byfield, Linux Magazine"This resource is a solid stepping stone."—Oma Dial, GIMP Magazine"The design is clear and concise, while the structure of the book will take the reader from a complete GIMP beginner to a confident designer."—Graham Morrison, Linux Format"This is a really, really good book. It explains everything well, in detail, without expecting any prior knowledge from you."—Tony Mobily, Free Software Magazine"A very good book if you want to create your own artistic pieces with GIMP. It's well explained with big photos, good design and it will teach you lot of things covering a wide range of GIMP's uses."—Ramon Miranda, creator of GIMP Paint Studio"It's a good book, with decent instructions and engaging projects that any competent computer user should be able to handle, whether or not they have previous experience with an image editing package."—Phil Bull, author of the official Ubuntu documentation"I highly recommend this book for anyone who wants to learn photo manipulation, advertising style and creating your own web graphics, such as buttons, logos or mouseover menus."—Ken Hess, The Frugal Networker"The Artist's Guide to GIMP, 2nd Edition was easy for me to read and helped me do exactly what I set out to do in a short amount of time."—Beginlinux.com"I would definitely recommend The Artist's Guide to GIMP to those who want an all-round, practical book on how to use GIMP."—Kevin Unhammer, Software Engineer"Hammel has done an excellent job of creating a number of chapters focused on creating beautiful artwork with GIMP. The chapter on setting up GIMP would be especially useful to absolute beginners."—Partha Bagchi, GIMP advocate and blogger"The material is extremely solid, well organized, and pertinent for new or mid-level GIMP practitioners."—Matt Paddock, Game Vortex"This is what I want from a book."—John D. Cook, The EndeavourTable of ContentsAbout the AuthorAbout the Technical ReviewerAcknowledgmentsIntroductionChapter 1: Fundamental TechniquesChapter 2: Photographic EffectsChapter 3: Web DesignChapter 4: Advertising and Special EffectsChapter 5: Type EffectsChapter 6: Creative Inspiration
£30.39
No Starch Press,US Ruby Wizardry
Book SynopsisThe Ruby programming language is perfect for beginners: easy to learn, powerful, and fun to use! But wouldn't it be more fun if you were learning with the help of some wizards and dragons? Ruby Wizardry is a playful, illustrated tale that will teach you how to program in Ruby by taking you on a fantastical journey. As you follow the adventures of young heroes Ruben and Scarlet, you ll learn real programming skills, like how to: Use fundamental concepts like variables, symbols, arrays, and strings Work with Ruby hashes to create a programmable breakfast menu Control program flow with loops and conditionals to help the Royal Plumber Test your wild and crazy ideas in IRB and save your programs as scripts Create a class of mini-wizards, each with their own superpower! Organize and reuse your code with methods and lists Write your own amazing interactive stories using Ruby Along the way, you ll meet colorful characters from around the kingdom, like the hacker Queen, the Off-White KnTable of ContentsForeword by Steve Klabnik AcknowledgmentsChapter 1: What This Book’s AboutChapter 2: The King and His StringChapter 3: Pipe DreamsChapter 4: Staying in the LoopChapter 5: Array of Sunshine and Hash on the RangeChapter 6: The (Chunky) Bacon to Ruby’s HashChapter 7: The Magic of Methods and BlocksChapter 8: Everything Is an Object (Almost)Chapter 9: Inheriting the Magic of RubyChapter 10: A Horse of a Different ColorChapter 11: Second Time’s the CharmChapter 12: Reading, Writing, and Ruby MagicChapter 13: Follow the WEBrick RoadChapter 14: Where to Go NextAppendix A: Installing Ruby on Mac and LinuxAppendix B: TroubleshootingIndex
£23.19
No Starch Press,US Rails Crash Course
Book SynopsisRails is a robust, flexible development platform that lets you build complex websites quickly. Major websites like GitHub, Hulu, and Twitter have run Rails under the hood, and if you know just enough HTML and CSS to be dangerous, Rails Crash Course will teach you to harness Rails for your own projects and create web applications that are fast, stable, and secure. In Part I, you ll learn Ruby and Rails fundamentals and then dive straight into models, controllers, views, and deployment. As you work through the basics, you ll learn how to: Craft persistent models with Active Record Build view templates with Embedded Ruby Use Git to roll back to previous versions of your code base Deploy applications to Heroku In Part II, you ll take your skills to the next level as you build a social networking app with more advanced Ruby tools, such as modules and metaprogramming, and advanced data modeling techniques within Rails s Active Record. You ll learn how to: Implement an authentication syTrade Review"A succinct guide to Ruby."—Hacker NoonTable of ContentsIntroductionPart I: Ruby on Rails FundamentalsChapter 1: Ruby FundamentalsChapter 2: Rails FundamentalsChapter 3: ModelsChapter 4: ControllersChapter 5: ViewsChapter 6: DeploymentPart II: Building a Social Networking AppChapter 7: Advanced RubyChapter 8: Advanced Active RecordChapter 9: AuthenticationChapter 10: TestingChapter 11: SecurityChapter 12: PerformanceChapter 13: DebuggingChapter 14: Web APIsChapter 15: Custom DeploymentSolutionsIndex
£26.39
No Starch Press,US The Smart Girl's Guide To Privacy
Book SynopsisThe whirlwind of social media, online dating, and mobile apps can make life a dream or a nightmare. For every trustworthy website, there are countless jerks, bullies, and scam artists who want to harvest your personal information for their own purposes. But you can fight back, right now. In The Smart Girl s Guide to Privacy, award-winning author and investigative journalist Violet Blue shows you how women are targeted online and how to keep yourself safe. Blue s practical, user-friendly advice will teach you how to: Delete personal content from websites Use website and browser privacy controls effectively Recover from and prevent identity theft Figure out where the law protects you and where it doesn t Set up safe online profiles Remove yourself from people-finder websites Even if your privacy has already been compromised, don t panic. It s not too late to take control. Let The Smart Girl s Guide to Privacy help you cut through the confusion and start protecting your online lifeTrade Review“An illuminating handbook for women.”—ELLE Magazine“A must-read for women of all ages.”—ChicagoNow"One of the best resources for learning to protect your online communications is Violet Blue’s The Smart Girl’s Guide to Privacy. The book is relevant for both men and women who want to strengthen their cybersecurity and online privacy."—Joe Kukura, SF Weekly“The Smart Girl’s Guide to Privacy is specifically geared toward women and other vulnerable members of the online population who need guidance navigating the murky, often treacherous waters of the Internet.”—The Daily Dot"If you have someone in your life who might be unaware of the various dangers lurking online (like a parent, child, or friend), gift them a copy of this book that covers online security and privacy basics. Blue does a commendable job of ensuring the reader stays informed, but far from overwhelmed."—Britt Kemp, Bishop Fox Labs“Women face unique threats and have to deal with safety and privacy issues that few–if any–men will ever even be aware of, much less concerned about. Violet Blue does an excellent job of describing what those issues are and providing simple, actionable advice to help readers stay safe online.”—Tony Bradley, techspective“In this must-read for anyone who uses their laptop or phone to go online, Blue details the numerous ways women and LGBT people especially face security risks . . . including identity theft, revenge porn, stalking, and all manner of scams.”—DAME Magazine“It’s up to each one of us to protect our own privacy, and The Smart Girl’s Guide to Privacy is a crucial weapon in that fight.”—Book Riot“The internet can be both an exciting and a scary place, so consider going through The Smart Girl's Guide to Privacy with your parents when you’re ready to start exploring widely.”—New Moon Girls“The Smart Girl's Guide To Privacy is ‘the talk’ 2.0 that all girls need. Heck, everybody needs this book. We all want our privacy, the majority just don’t realize how much we have already lost on that front.”—404 Tech Support“A smart, engaging read that's also super useful.”—SFist“Violet Blue is not just a writer and journalist; she’s also a friend and advocate to every female* who has a computer or smart phone...This book is highly recommended for public and school libraries, as well as social science and technology classes.”—Becky Walton, Ingram Collection Development Librarian
£15.29
No Starch Press,US Facebook For Seniors
Book SynopsisFacebook is the world s largest internet community. It s used by millions of people like you to connect with family and friends, share photos, and stay in touch. But if you re new to Facebook, getting started can be a little tricky. Based on award-winning computer classes for seniors, the 12 lessons in Facebook for Seniors will show you how to do things like: Sign up for Facebook and connect with family members and old friends Instantly share photos and messages Keep up-to-date with friends and loved ones Chat about cars, gardening, travel, or anything else that interests you Play games, and RSVP to parties and other events Keep your account safe and secure Step-by-step instructions and full-color images make it easy to follow along. Activities throughout help you practice what you ve learned, and if you get stuck, just flip to the solutions at the back of the book! Why let the kids have all the fun? Join the party.Table of ContentsPrefaceLesson 1: Joining FacebookLesson 2: Meeting FacebookLesson 3: Your ProfileLesson 4: Facebook FriendsLesson 5: Creating Text PostsLesson 6: Posting Photos and VideosLesson 7: Posting with FriendsLesson 8: Playing GamesLesson 9: GroupsLesson 10: Messenger and ChatLesson 11: EventsLesson 12: Privacy and Security Solutions
£20.39
No Starch Press,US Make Your Own Scratch Games
Book SynopsisAnna Anthropy, game designer extraordinaire, will show you how to do everything from building a game map to creating animations and debugging the end product. Take a peek inside the history of video game design, learn programming basics, and turn your ideas into creative games that you can play and share with your friends.Trade Review“Recommended, for anyone wanting to get properly to grips with Scratch”—Alun Williams, Electronics Weekly "This is a great book for STEM oriented kids"—Greg Laden's Blog
£15.29
ISTE Ltd and John Wiley & Sons Inc Ant Colony Optimization and Constraint
Book SynopsisAnt colony optimization is a metaheuristic which has been successfully applied to a wide range of combinatorial optimization problems. The author describes this metaheuristic and studies its efficiency for solving some hard combinatorial problems, with a specific focus on constraint programming. The text is organized into three parts. The first part introduces constraint programming, which provides high level features to declaratively model problems by means of constraints. It describes the main existing approaches for solving constraint satisfaction problems, including complete tree search approaches and metaheuristics, and shows how they can be integrated within constraint programming languages. The second part describes the ant colony optimization metaheuristic and illustrates its capabilities on different constraint satisfaction problems. The third part shows how the ant colony may be integrated within a constraint programming language, thus combining the expressive power of constraint programming languages, to describe problems in a declarative way, and the solving power of ant colony optimization to efficiently solve these problems.Trade Review"In this volume, Solnon (U. of Lyon, France) introduces ant colony optimization and its application to a range of combinatorial problems, with a focus on constraint programming." (Book News, September 2010) Table of ContentsForeword xi Acknowledgements xiii Chapter 1. Introduction 1 1.1. Overview of the book 2 Chapter 2. Computational Complexity 7 2.1. Complexity of an algorithm 8 2.2. Complexity of a problem 10 2.3. Where the most difficult instances can be found 15 2.4. Solving NP-hard problems in practice 21 PART I. CONSTRAINT PROGRAMMING 27 Introduction to Part I 29 Chapter 3. Constraint Satisfaction Problems 31 3.1. What is a constraint? 31 3.2. What is a constraint satisfaction problem? 33 3.3. Optimization problems related to CSPs 35 3.4. The n-queens problem 37 3.5. The stable marriage problem 43 3.6. Randomly generated binary CSPs 46 3.7. The car sequencing problem 47 3.8. Discussion 50 Chapter 4. Exact Approaches 53 4.1. Construction of a search tree 53 4.2. Constraint propagation 57 4.3. Ordering heuristics 60 4.4. From satisfaction to optimization problems 63 4.5. Discussion 65 Chapter 5. Perturbative Heuristic Approaches 69 5.1. Genetic algorithms 70 5.2. Local search 73 5.3. Particle swarm optimization 78 5.4. Discussion 80 Chapter 6. Constructive Heuristic Approaches 85 6.1. Greedy randomized approaches 86 6.2. Estimation of distribution algorithms 88 6.3. Ant colony optimization 90 6.4. Discussion 91 Chapter 7. Constraint Programming Languages 93 7.1. Constraint logic programming 94 7.2. Constraint programming libraries 96 7.3. Constraint-based local search 96 7.4. Discussion 99 PART II. ANT COLONY OPTIMIZATION 101 Introduction to Part II 103 Chapter 8. From Swarm Intelligence to Ant Colony Optimization 105 8.1. Complex systems and swarm intelligence 106 8.2. Searching for shortest paths by ant colonies 108 8.3. Ant system and the traveling salesman problem 111 8.4. Generic ACO framework 116 Chapter 9. Intensification versus Diversification 125 9.1. ACO mechanisms for intensifying the search 125 9.2. ACO mechanisms for diversifying the search 127 9.3. Balancing intensification and diversification 128 9.4. Measures of diversification/intensification 135 Chapter 10. Beyond Static Combinatorial Problems 141 10.1. Multi-objective problems 141 10.2. Dynamic optimization problems 145 10.3. Optimization problems over continuous domains 147 Chapter 11. Implementation Issues 151 11.1. Data structures 151 11.2. Selection of a component with respect to probabilities 154 11.3. Implementation of a local search procedure 157 11.4. Computation of diversification/intensification measures 157 PART III. CP WITH ACO 161 Introduction to Part III 163 Chapter 12. Sequencing Cars with ACO 165 12.1. Notation 165 12.2. A first pheromone structure for identifying good car sequences 166 12.3. A second pheromone structure for identifying critical cars 171 12.4. Combining the two pheromone structures 173 12.5. Comparison of the different ACO algorithms 174 12.6. Comparison of ACO with state-of-the-art approaches 178 12.7. Discussion 182 Chapter 13. Subset Selection with ACO 185 13.1. Subset selection problems 186 13.2. Description of Ant-SSP 189 13.3. Instantiations of Ant-SSP with respect to two pheromone strategies 192 13.4. Instantiation of Ant-SSP to solve CSPs 196 13.5. Experimental results 197 13.6. Discussion 202 Chapter 14. Integration of ACO in a CP Language 205 14.1. Framework for integrating ACO within a CP library 206 14.2. Illustration of ACO-CP on the car sequencing problem 210 14.3. Discussion 214 Chapter 15. Conclusion 215 15.1. Towards constraint-based ACO search 215 15.2. Towards a reactive ACO search 216 Bibliography 219 Index 231
£132.00
ISTE Ltd and John Wiley & Sons Inc Trends in Constraint Programming
Book SynopsisThis title brings together the best papers on a range of topics raised at the annual International Conference on Principles and Practice of Constraint Programming. This conference provides papers and workshops which produce new insights, concepts and results which can then be used by those involved in this area to develop their own work.Table of ContentsIntroduction 17 Frédéric Benhamou, Narendra Jussien, Barry O’Sullivan Part I. The Past, Present and Future of Constraint Programming 23 Frédéric Benhamou, Narendra Jussien , Barry O’Sullivan Chapter 1. Constraint Programming as Declarative Algorithmics 25 Pascal Van Hentenryck 1.1. The CHIP project 26 1.2. The Numerica project 32 1.3. The OPL project 34 1.4. The Comet project 35 1.5. The future of constraint programming 38 Chapter 2. Constraint Programming Tools 41 Laurent Michel, Christian Schulte, Pascal Van Hentenryck 2.1. Introduction 41 2.2. Invited talks 43 2.2.1. The development of an industrial CP tool (Jean-François Puget) 43 2.2.2. System design: taking informed decisions (Christian Schulte) 45 2.3. System presentations 48 2.3.1. ECLiPSe 48 2.3.2. SICStus FD 48 2.3.3. G12 49 2.3.4. DiSolver 49 2.3.5. MINION 50 2.3.6. Choco 50 2.3.7. Gecode 51 2.3.8. Comet 52 2.3.9. JaCoP 53 2.3.10. Borderwijk 54 2.4. Panels 54 2.5. Conclusion 56 2.6. References 57 Chapter 3. The Next 10 Years of Constraint Programming 59 Lucas Bordeaux, Barry O’Sullivan, Pascal Van Hentenryck 3.1. Pedro Barahona 61 3.2. Christian Bessiere 63 3.3. Peter Jeavons 64 3.4. Pedro Meseguer 66 3.5. Gilles Pesant 68 3.6. Francesca Rossi 70 3.7. Thomas Schiex 72 3.8. Christian Schulte 74 3.9. Meinolf Sellmann 75 3.10. Mark Wallace 77 3.11. Toby Walsh 79 3.12. Roland Yap 80 3.13. References 81 Chapter 4. Constraint Propagation and Implementation 83 Marc van Dongen, Christophe Lecoutre 4.1. Filtering algorithms for precedence and dependency constraints (by Roman Barták and Ondøej Èepek) 84 4.1.1. Problem description and related works 84 4.1.2. Filtering rules for precedence and dependency constraints 85 4.1.3. Summary 87 4.2. A study of residual supports in arc consistency (by Christophe Lecoutre and Fred Hemery) 87 4.3. Maintaining singleton arc consistency (by Christophe Lecoutre and Patrick Prosser) 89 4.3.1. Mixed consistency 90 4.3.2. Checking existential-SAC 91 4.3.3. Conclusion 92 4.4. Probabilistic singleton arc consistency (by Deepak Mehta and Marc van Dongen) 93 4.5. Simplification and extension of the SPREAD constraint (by Pierre Schaus, Yves Deville, Pierre Dupont and Jean-Charles Régin) 95 4.5.1. Filtering of π 96 4.5.2. Filtering of X 97 4.5.3. Conclusion 99 4.6. A new filtering algorithm for the graph isomorphism problem (by Sébastien Sorlin and Christine Solnon) 99 4.6.1. A global constraint for the graph isomorphism problem 99 4.6.2. ILL-consistency and ILL-filtering 100 4.6.3. Experimental results 102 4.7. References 103 Chapter 5. On the First SAT/CP Integration Workshop 105 Youssef Hamadi, Lucas Bordeaux 5.1. The technical program 106 5.1.1. The invited talk 106 5.1.2. Contributions related to SMT and solver integration 106 5.1.3. Contributions related to the use of SAT techniques to improve CSP/CP solvers 107 5.1.4. Other contributions 108 5.2. The panel session 109 5.2.1. Are SAT and CP different or similar? 109 5.2.2. Why has SAT succeeded in reducing the tuning issue? 111 5.2.3. How long can the current generation of SAT solvers evolve? 113 5.2.4. Were performance issues correctly addressed by CP? 115 5.2.5. Was CP too ambitious? 118 5.2.6. Do we still need CP? 119 5.3. Summary, future directions and conclusion 121 5.4. References 122 Chapter 6. Constraint-Based Methods for Bioinformatics 125 Alessandro Dal Palù, Agostino Dovier, Franæois Fages, Sebastian Will 6.1. On using temporal logic with constraints to express biological properties of cell processes (by François Fages) 126 6.2. Modeling biological systems in stochastic concurrent constraint programming (by Luca Bortolussi and Alberto Policriti) 129 6.3. Chemera: constraints in protein structural problems (by Pedro Barahona and Ludwig Krippahl) 132 6.4. Exploiting model checking in constraint-based approaches to the protein folding problem (by Elisabetta De Maria, Agostino Dovier, Angelo Montanari and Carla Piazza) 134 6.5. Global constraints for discrete lattices (by Alessandro Dal Palù, Agostino Dovier and Enrico Pontelli) 136 6.6. Counting protein structures by DFS with dynamic decomposition (by Sebastian Will and Martin Mann) 138 6.7. Suffix array and weighted CSPs (by Matthias Zytnicki, Christine Gaspin and Thomas Schiex) 141 6.8. Supertree construction with constraint programming: recent progress and new challenges (by Patrick Prosser) 143 6.9. References 145 Part II. Constraint Modeling and Reformulation 147 Ian Miguel, Steven Prestwich Chapter 7. Improved Models for Graceful Graphs 151 Jean-François Puget, Barbara Smith 7.1. Introduction 151 7.2. A direct model 152 7.3. The edge-label model 154 7.4. A combined model 156 7.5. Experimental results 157 7.6. Discussion 160 7.7. References 161 Chapter 8. The Automatic Generation of Redundant Representations and Channeling Constraints 163 Bernadette Martínez-Hernández, Alan M. Frisch 8.1. Introduction 163 8.2. Representations 167 8.3. Alternative representations and channels 168 8.3.1. Alternative representations 168 8.3.2. Constraint-wise quasi-representations and channeling constraints 169 8.4. Refinement 174 8.5. Systematic generation of channeling constraints 177 8.6. Producing the best alternative for channeling 179 8.7. Conclusions and future work 180 8.8. References 180 Part III. Symmetry in Constraint Satisfaction Problems 183 Alastair Donaldson, Peter Gregory, Karen Petrie Chapter 9. GAPLex: Generalized Static Symmetry Breaking 187 Chris Jefferson, Tom Kelsey, Steve Linton, Karen Petrie 9.1. Background and introduction 188 9.1.1. Group theory for CSPs 190 9.1.2. Using GAP to break CSP symmetries 191 9.2. GAPLex 192 9.2.1. Motivation and rationale 192 9.2.2. Motivating example 193 9.2.3. The GAPLex algorithms 193 9.3. Empirical evaluation 196 9.3.1. Combining GAPLex with incomplete static SB methods 197 9.3.2. Combining GAPLex with Puget’s all-different constraints 198 9.4. Conclusions and future work 199 9.5. References 199 Chapter 10. Symmetry Breaking in Subgraph Pattern Matching 203 Stéphane Zampelli, Yves Deville, Pierre Dupont 10.1. Background and definitions 205 10.2. Variable symmetries 207 10.2.1. Detection 207 10.2.2. Breaking 207 10.3. Value symmetries 208 10.3.1. Detection 208 10.3.2. Breaking 208 10.4. Experimental results 209 10.5. Local value symmetries 211 10.5.1. Dynamic target graph 212 10.5.2. Partial dynamic graphs 214 10.6. Conclusion 215 10.7. References 216 Part IV. Interval Analysis, Constraint Propagation and Applications 219 Christophe Jermann, Yahia Lebbah, Djamila Sam-Haroud Chapter 11. Modeling and Solving of a Radio Antenna Deployment Sup-port Application 223 Michael Heusch 11.1. Two simple models for the application 224 11.1.1. A first finite domain model 224 11.1.2. Shifting the model to mixed domains 225 11.1.3. Description of the search algorithm 225 11.1.4. Analysis of the performance on progressive deployment problems 226 11.2. Introducing the distn constraint 227 11.3. Modeling the application with the distn constraint 228 11.3.1. Revised model of the application 228 11.3.2. Numerical results when solving the LocRLFAP with distn 230 11.3.3. Qualitative analysis of the results 231 11.4. Conclusion 231 11.5. References 232 Chapter 12. Guaranteed Numerical Injectivity Test via Interval Analysis 233 Sébastien Lagrange, Nicolas Delanoue, Luc Jaulin 12.1. Interval analysis 235 12.2. Injectivity 236 12.2.1. Partial injectivity 236 12.2.2. Partial injectivity condition 238 12.3. ITVIA algorithm 241 12.4. Examples 242 12.4.1. Spiral function 243 12.4.2. Ribbon function 243 12.5. Conclusion 244 12.6. References 244 Chapter 13. An Interval-based Approximation Method for Discrete Changes in Hybrid cc 245 Daisuke Ishii, Kazunori Ueda, Hiroshi Hosobe 13.1. An overview of Hybrid cc 246 13.1.1. The Hybrid cc language 246 13.1.2. Implementation of Hybrid cc 247 13.2. The objective of the chapter 248 13.3. Background of interval arithmetic 248 13.3.1. Basic notions of interval arithmetic 249 13.3.2. ODE solving based on interval arithmetic 249 13.4. The proposed method 249 13.4.1. Assumptions on the proposed method 249 13.4.2. Trace algorithm 250 13.4.3. PruneAndMerge algorithm 251 13.5. Experimental results 252 13.6. Related work 253 13.7. Conclusion 254 13.8. References 254 Part V. Local Search Techniques in Constraint Satisfaction 257 Andrea Roli, Yehuda Naveh Chapter 14. Combining Adaptive Noise and Look-Ahead in Local Search for SAT 261 Chu Min Li, Wanxia Wei, Harry Zhang 14.1. Implementation of the adaptive noise mechanism in G2WSAT 262 14.2. Look-Ahead for promising decreasing variables 262 14.2.1. Promising score of a variable 262 14.2.2. Integrating limited look-ahead in adaptG2WSAT 263 14.3. Evaluation 264 14.4. Conclusion 266 14.5. References 266 Chapter 15. Finding Large Cliques using SAT Local Search 269 Steven Prestwich 15.1. SAT-encoding the clique problem 270 15.2. Notes on the bitwise at-most-one encoding 271 15.3. Experiments 272 15.4. Conclusion 273 15.5. References 274 Chapter 16. Multi-Point Constructive Search for Constraint Satisfac-tion: An Overview 275 Ivan Heckman, J. Christopher Beck 16.1. Background 276 16.2. Empirical study 277 16.3. Conclusion 279 16.4. References 280 Chapter 17. Boosting SLS Using Resolution 283 Anbulagan, Duc Nghia Pham, John Slaney, Abdul Sattar 17.1. SLS solvers 284 17.2. Preprocessors 285 17.3. Empirical evaluation 286 17.3.1. Clause weighting versus random walk 286 17.3.2. Matching preprocessors to solver-problem pairs 287 17.3.3. Multiple preprocessing and preprocessor ordering 287 17.4. Conclusion 288 17.5. References 288 Chapter 18. Growing COMET 291 Pascal Van Hentenryck, Laurent Michel 18.1. Constraint-based local search 291 18.2. COMET 292 18.3. Modeling 293 18.4. Search 295 18.5. References 296 Part VI. Preferences and Soft Constraints 299 Thomas Schiex Chapter 19. The Logic Behind Weighted CSP 303 Carlos Ansótegui, María L. Bonet, Jordi Levy, Felip Manyà 19.1. Preliminaries 304 19.2. The inference rule – soundness and completeness 307 19.3. Global consistency in WCSP 310 19.4. Local consistency in WCSP 311 19.5. Conclusions 314 19.6. References 316 Chapter 20. Dynamic Heuristics for Branch and Bound on Tree-Decomposition of Weighted CSPs 317 Philippe Jégou, Samba Ndojh Ndiaye, Cyril Terrioux 20.1. Introduction 317 20.2. Preliminaries 319 20.3. Dynamic orders in O(exp(w + 1)) 322 20.4. Bounded extensions of dynamic orders 324 20.5. Heuristics 325 20.5.1. Cluster orders 325 20.5.2. Variable orders 327 20.5.3. Heuristics for grouping variables in Classes 4 and 5 327 20.6. Experimental study 328 20.7. Discussion and conclusion 330 20.8. References 331 Part VII. Constraints in Software Testing, Verification and Analysis 333 Benjamin Blanc, Arnaud Gotlieb, Claude Michel Chapter 21. Extending a CP Solver with Congruences as Domains for Program Verification 337 Michel Leconte, Bruno Berstel 21.1. Related work 339 21.2. Congruences as domains 339 21.3. Propagation of congruences as domains 340 21.4. Cooperation of congruences and intervals 342 21.5. Conclusion 342 21.6. References 343 Chapter 22. Generating Random Values Using Binary Decision Dia-grams and Convex Polyhedra 345 Erwan Jahier, Pascal Raymond 22.1. BDD and convex polyhedra 346 22.2. The resolution algorithm 346 22.3. Choosing solutions 348 22.4. Available tools 349 22.5. Related work 350 22.6. Conclusion 351 22.7. References 351 Chapter 23. A Symbolic Model for Hash-Collision Attacks 353 Yannick Chevalier, Mounira Kourjieh 23.1. Terms and subterms 354 23.2. Analysis of reachability properties of cryptographic protocols 356 23.3. Model of a collision-aware intruder 357 23.3.1. Intruder on words 357 23.3.2. Intruder on words with free function symbols 358 23.3.3. Hash-colliding intruder 358 23.4. Conclusion 359 23.5. References 359 Chapter 24. Strategy for Flaw Detection Based on a Service-driven Model for Group Protocols 361 Najah Chridi, Laurent Vigneron 24.1. Protocol modeling and attack search 362 24.1.1. Input of the method 362 24.1.2. Searching for attacks in group protocols 363 24.1.3. Intruder knowledge management 365 24.1.4. Constraint management 366 24.2. Verification results 366 24.3. Summary and future work 367 24.4. References 368 Part VIII. Constraint Programming for Graphical Applications 369 Marc Christie, Hiroshi Hosobe and Kim Marriott Chapter 25. Trends and Issues in using Constraint Programming for Graphical Applications 371 Marc Christie, Hiroshi Hosobe and Kim Marriott 25.1. More powerful constraint-solving techniques 373 25.1.1. Mixture of discrete and continuous constraints 373 25.1.2. Mixture of linear, polynomial, geometric and non-linear constraints 373 25.1.3. Managing user interaction 374 25.1.4. Managing preferences 374 25.1.5. Generic techniques 375 25.2. Better modeling and understanding of constraint systems by the end-user 376 25.2.1. Model specification 376 25.2.2. Extensibility 377 25.2.3. Constraint representation 377 25.2.4. Understanding constraint interaction during solving 377 25.3. Bridging the gap between the solver and the application semantics 378 25.3.1. High-level modeling 379 25.3.2. Support for interaction 379 25.4. Conclusion 379 25.5. References 380 Chapter 26. A Constraint Satisfaction Framework for Visual Problem Solving 383 Bonny Banerjee, Balakrishnan Chandrasekaran 26.1. The framework 384 26.1.1. A language for expressing visual problems 384 26.1.2. A visual problem solver 388 26.2. Applications 390 26.3. Conclusion 393 26.4. References 393 Chapter 27. Computer Graphics and Constraint Solving: An Applica-tion to Virtual Camera Control 395 Jean-Marie Normand 27.1. Overview 397 27.2. A semantic space partitioning approach 398 27.2.1. Projection property 398 27.2.2. Orientation property 399 27.2.3. Occlusion property 399 27.3. Numerical solving stage 400 27.4. Exploitation of semantic volumes 401 27.4.1. Making requests on the volumes 401 27.4.2. Making requests on the scene 401 27.5. Results 401 27.6. Discussion 403 27.7. References 404 Index 405
£201.35
Transworld Publishers Ltd How AI Thinks: How we built it, how it can help
Book Synopsis'Artificial intelligence is going to have a massive impact on everyone’s lives... an accessible and sensible read that helps demystify AI' Deborah Meaden, entrepreneur and star of Dragon's Den'Nigel Toon is a visionary leader in the field of artificial intelligence... a must-read' Marc Tremblay, Distinguished Engineer, MicrosoftThose who understand how AI thinks are about to win big.We are used to thinking of computers as being a step up from calculators - very good at storing information, and maybe even at playing a logical game like chess. But up to now they haven't been able to think in ways that are intuitive, or respond to questions as a human might. All that has changed, dramatically, in the past few years.Our search engines are becoming answer engines. Artificial intelligence is already revolutionising sectors from education to healthcare to the creative arts. But how does an AI understand sentiment or context? How does it play and win games that have an almost infinite number of moves? And how can we work with AI to produce insights and innovations that are beyond human capacity, from writing code in an instant to unfolding the elaborate 3D puzzles of proteins?We stand at the brink of a historic change that will disrupt society and at the same time create enormous opportunities for those who understand how AI thinks. Nigel Toon shows how we train AI to train itself, so that it can paint images that have never existed before or converse in any language. In doing so he reveals the strange and fascinating ways that humans think, too, as we learn how to live in a world shared by machine intelligences of our own creation.Trade ReviewFew books are more timely than How AI Thinks, an accessible guide that walks the reader through the technology’s developmental history right back to the days before the computer... This is a fascinating read. -- Simon Hunt * Evening Standard *I believe that AI is going to have a massive impact on everyone’s lives; it’s such a hugely important topic that we can’t just leave it to technologists and governments to think about. Business people, teachers, students and parents - everyone needs to learn more about it. In How AI Thinks, Nigel Toon provides us with an accessible and sensible read that helps demystify AI and lets us all understand more about this incredibly powerful tool. -- Deborah Meaden, entrepreneur and star of Dragon's DenNigel Toon is not only a visionary leader in the field of artificial intelligence, but also a captivating storyteller who takes us on a journey through his own fascinating history and the evolution of our young industry. He has a gift for explaining complex concepts in simple terms, making this book accessible and engaging for anyone interested in AI. He also offers a prescriptive and optimistic view of the future of AI, showing how it can transform our lives and society for the better. This book is a must-read for anyone who wants to understand the past, present and future of artificial intelligence. -- Marc Tremblay PhD, Distinguished Engineer, MicrosoftAn insightful, informative, inspiring book which takes the reader on a journey of discovery, it ultimately paints a hopeful and reasoned vision of how humanity can move on from a position of fear and trepidation, and embrace AI, deriving profound benefit from all it makes possible. Nigel has a skill in taking highly technical content and making AI not just comprehensible, but also engaging. -- Professor Evelyn Welch, Vice-Chancellor and President, University of BristolAs a business leader, it was great to have all the strands that have created AI pulled together. Nigel Toon synthesizes everything so clearly, simply and in such an inspiring way. How AI Thinks delivers the perspective that leaders and politicians need so that they can regulate AI well. -- Sir Andrew MacKenzie, Chairman of Shell
£22.92
J Ross Publishing Software Engineering
Book Synopsis
£81.70
Amphorae Publishing Group, LLC Facehooked: How Facebook Affects Our Emotions,
Book SynopsisThe number of Facebook users worldwide exceeded one billion in August of 2012. With the increase in Facebook users, psychologists have seen an alarming increase in the number of Facebook related complaints from their clients. Dr. Suzana Flores, clinical psychologist, has interviewed Facebook users of all ages for three years exploring the positive and negative features of Facebook and evaluating the effect it has on our lives. Facehooked explores the problems most commonly found on Facebook, including controversial topics such as self-esteem, privacy, peer pressure, stalking, emotional manipulation, among others. Readers are not only provided with practical tools to help identify and avoid unhealthy behaviors, but also suggestions for healthier interaction on Facebook.Trade Review"Facehooked, while most definitely a critique of contemporary media driven culture, looks at the issues associated with social media and other forms of technological communication from a very realistic and level-headed viewpoint ... Flores does an excellent job of recognizing both sides of the social media coin ... Further, [her] use of case studies and her own life experiences makes the book a very real and often emotionally charged piece of non-fiction." Chicagoist" Facehooked talks about how teens connect through social-media networks like Facebook, Twitter, Snapchat, and YouTube. Now more than ever, teens have a voice in the world and can even make a serious social impact! The only problem issome people get into trouble when they share too much. Kids seem to feel obligated and addicted to responding and uploading to Facebook when it's not really necessary; doing so just adds more pressure and raises the potential of posting things they normally wouldn't or shouldn't. Whether online or logged off, I think people can express themselves any way they want as long as they treat each other with respect and stay true to themselves." Sean Giambrone, Actor, The Goldbergs"When it comes to understanding the world of teen online interaction, Dr. Flores gets it. Facehooked sums up what I've suspected is happening with today's teens. Dr. Flores provides a valuable wealth of information regarding smartphone and social-media addiction, digital expression, and the negative (and positive) effects of sharing personal information through various social networks. She clearly explains the influence social media can have on teen expression and self-perception, and provides clear guidelines for parents on how they can protect their teens' privacy. Facehooked is an intelligent, comfortable, and important read for any student, parent, school administrator and policy-maker who wishes to understand how social media is shaping today's 'Digital Natives.'" Dr. Matthew Clark, Child and Adolescent Psychologist, Director of The Clark Institute"Dr. Flores offers a compelling and genius look at what is really going on when seeking that Facebook fix. Is your hidden agenda personal validation? Creating a fantasy life? Or are you actually addicted? Her explanations are eye-opening and will make you rethink how and why you interact on Facebook every time you log on." Shawne Duperon, Six Time EMMY winner and Founder of Project: Forgive"Casual, approachable, and insightfulDr. Suzana Flores's book illuminates the myriad of impacts that social media can have on psychological and social well being. Unlike much that's been written on this topic, Dr. Flores also explores the positive effects that healthy social-media use can produce. Noting that 'Facebook is not the problem,' she takes readers on a case-driven exploration of what drives the distressful consequences of maladaptive social-media use and how to avoid them. Facehooked is a must read for anyone affected by social media, which is everyone." Omar Manejwala, MD, Author of Craving: Why We Can't Seem to Get Enough
£13.25
Springer-Verlag Berlin and Heidelberg GmbH & Co. KG Programming for Game Design: A Hands-On Guide with Godot
Book SynopsisCreate video game elements using the Godot game engine, gaining practical experience in programming and video game development. The Godot game engine uses a simplified programming language called GDScript, which closely resembles Python. By learning GDScript, you can focus more on learning the basics of programming. You’ll explore concepts such as variables and data structures variables used to store information about video game objects that can be manipulated using a keyboard or a mouse. You’ll also learn about user interface design, branching statements, and looping statements, enabling you to actively engage in programming and create your own interactive games. By the end of the book, you’ll have a solid understanding of how video game elements work and how the basic principles of programming work as well. By programming simple video game elements in the Godot game engine, you’ll learn both programming and the principles of 2D video game design.What You Will Learn Understand the basics of programming by creating simple video game elements in the Godot game engine. Explore variables and data structures to actively store and modify information about video game objects. Gain a deeper understanding of user interface design. Master simplified programming languages like GDScript. Who This Book Is For Aspiring programmers and game enthusiasts seeking an engaging introduction to programming through video game creation.Table of ContentsChapter 1: Why learn programming with the Godot game engine Chapter 2: Getting to know Godot Chapter 3: Writing scripts Chapter 4: Storing data in variables Chapter 5: Mathematical operations Chapter 6: Branching statements Chapter 7: Looping statements Chapter 8: Understanding arrays Chapter 9: Understanding dictionaries Chapter 10: Functions Chapter 11: Object-oriented programming Chapter 12: Getting input from the user Chapter 13: Shooting projectiles Chapter 14: Adding projectiles to a player Chapter 15: Hitting enemies with projectiles Chapter 16: Displaying a user interface Chapter 17: Adding physics Chapter 18: Playing audio Chapter 19: Creating and using scenes Chapter 20: Using Signals Chapter 21: Creating a Simple Tic-Tac-Toe Game
£39.99
Apress PHP by Example
£39.99
Apress The Embedded Project Cookbook
Book SynopsisChapter 1: Introduction.- Chapter 2: Requirements.- Chapter 3: Analysis.- Chapter 4: Software Development Plan.- Chapter 5: Preparation.- Chapter 6: Foundation.- Chapter 7: Building Applications with the Main Pattern.- Chapter 8: Continuous Integration Builds.- Chapter 9: Requirements Revisited.- Chapter 10: Tasks.- Chapter 11: Just in Time Detailed Design.- Chapter 12: Coding, Unit Tests, and Pull Requests.- Chapter 13: Integration Testing.- Chapter 14: Broad Support Package.- Chapter 15: Drivers.- Chapter 16: Release.- Appendix A: Getting started with the Source Code.- Appendix B: Running the Example Code.- Appendix C: Introduction to the Data Model Architecture.- Appendix D: LHeader and LConfig Patterns.- Appendix E: CPL C++ framework.- Appendix F: LHeader and LConfig Patterns.- Appendix G: Ratt.- Appendix H: GM6000 Requirements.- Appendix I: GM6000 System Architecture.- Appendix J: GM6000 Software Architecture.- Appendix K: GM6000 Software Development Plan.- Appendix L: GM6000 Software Detailed Design.- Appendix M: GM6000 Software Detailed Design.- Appendix N: GM6000 Fuzzy Logic Temperature Control.- Appendix O: Software C/C++ Embedded Coding Standard.- Appendix P: GM6000 Software Requirements Trace Matrix.- Appendix Q: GM6000 Software Bill of Materials.- Appendix R: GM6000 Software Release Notes.
£43.99
Springer-Verlag Berlin and Heidelberg GmbH & Co. KG Building Secure PHP Applications
Book SynopsisLearn how to protect PHP applications from potential vulnerabilities and attacks. As cyberattacks and data breaches continue to rise, it's crucial for developers and organizations to prioritize security in their PHP applications. The book offers an all-encompassing guide to securing PHP applications, covering topics ranging from PHP core security to web security, framework security (with a focus on Laravel), security standards, and protocol security. After examining PHP core security and essential topics, such as input validation, output encoding, secure session management, and secure file handling, you'll move on to common security risks in PHP applications and provides practical examples to demonstrate effective security measures. From there, you'll delve into web security, addressing XSS, SQL injection, and CSRF, reviewing in-depth explanations and mitigation techniques. A significant portion of the book focuses on Laravel's built-in security features, guiding readers to avoid common pitfalls. Industry-standard security protocols like HTTP, OAuth, and JSON Web Tokens are explained with demonstrations for how to effectively use them to ensure integrity, confidentiality, and authenticity in web applications. Additionally, protocol security is discussed, including secure communication, file transfer protocols (SFTP), and email handling. Security in cloud and hybrid environments is also discussed. This book's comprehensive and inclusive approach spans a wide range of security topics related to PHP and ensures that no critical areas are overlooked. It goes beyond theoretical concepts by providing practical guidance and actionable steps. It includes code snippets, real-world examples, case studies, and hands-on exercises, enabling you to apply the knowledge gained in practical scenarios. Building Secure PHP Applications provides a holistic approach to security, empowering you to build robust and resilient PHP applications. What You Will LearnUnderstand industry-recognized security standards and compliance requirements for data protection regulations. Learn the intricacies of Laravel and how to leverage its security features. Integrate security practices throughout the development lifecycle, conducting security testing and reviews and adopting secure deployment and DevOps practices. Conduct forensic analysis and perform post-incident analysis for continuous improvement. Look to the future and discover emerging security threats and techniques to anticipate and mitigate potential security risks. Who This Book Is ForPrimarily written for developers, security professionals, and webmasters involved in PHP application development. Additionally, this book may be used as a reference for students studying web development, PHP programming or cybersecurity
£46.74
Apress The Art of Decoding Microservices
Book SynopsisChapter 1: Evolution of Software Architecture.- Chapter 2: Overview of Microservices.- Chapter 3: Designing Microservices.- Chapter 4: Developing Microservices.- Chapter 5: Testing, Deploying, and Scaling Microservices.- Chapter 6: Microservices Security, Monitoring, and Maintenance.- Chapter 7: Lessons from Case Studies, Avoiding Pitfalls, and Shaping the Future.- Chapter 8: Conclusion and Quick Recap.- Appendix A: Glossary.- Appendix B: Closure and Final Thoughts.
£43.99