Computer programming / software engineering Books

1908 products


  • Terraform in Action

    Manning Publications Terraform in Action

    5 in stock

    Book SynopsisTerraform is a provisioning tool for building, changing, and combining cloud infrastructure safely and efficiently. By defining infrastructure as code, Terraform empowers its users to deploy their entire stack to the cloud at the touch of a button. • Cloud architecture with Terraform • Sharing Terraform modules and the private module registry • Running Terraform securely in a multitenant environment • Strategies for performing Blue/Green deployments with Terraform By treating your infrastructure as a codeable application, you can instantaneously create and launch new components and respond efficiently to changes in demand and other use requirements. Terraform in Action introduces the Infrastructure-as-Code model using the amazing Terraform automation tool, teaching readers how to design and manage servers that can be provisioned, shared, changed, tested, and deployed at the touch of a button. Readers will unlock the full potential of Terraform to manage your infrastructure as easily as they manage their codebase. Written for readers experienced with major cloud platforms such as AWS or Google Cloud. Examples are in the Go language.

    5 in stock

    £36.09

  • Azure Infrastructure as Code

    Manning Publications Azure Infrastructure as Code

    7 in stock

    Book SynopsisAzure Infrastructure as Code is a comprehensive guide to seamlessly managing your application infrastructure with Azure's native IaC tools. The book is aimed at supporting collaboration between operations professionals and software developers, to help speed up and improve the quality of software delivery. After you master the basics, you'll dive into niche and advanced topics such as testing, reusing templates between multiple teams, and how you can define policy as code. Discover cutting-edge Deployment Stacks, and how they can help you clean up unused resources, group resources in logical containers to help visualize potential changes, and build starting plateaus for other teams to work on. About the Technology Infrastructure as code does away with time-consuming manual tasks—no more detailed scripts for creating the correct database or virtual machine. Instead, Azure's native IaC tools create infrastructure from a declarative specification in JSON (ARM) or a domain-specific language (Bicep). They empower users to create or recreate complete infrastructures with just a line of code, as well as take advantage of automation tools like Github Actions or Azure Pipelines.Trade Review"Nothing else on the market covers ARM templates like "Azure Infrastructure as Code." Stephen Goodman "I wish I had had this book when we started using Azure but its still been very useful to confirm and sometimes expand my knowledge of Azure DEVOps, I will be requiring my team to read it." Sebastian Rogers "If you're getting started with native Azure IaC tools, this is a great resource to learn fast." Radhakrishna MV "If you are an infrastructure engineer/application architect primarily workingwith Azure, this is for you. If you do stuff that touches Azure, the first few chapters will help you understand how Azure works." Amanda Debler

    7 in stock

    £41.39

  • Effective Platform Engineering

    Manning Publications Effective Platform Engineering

    15 in stock

    15 in stock

    £41.39

  • F in Action

    Pearson Education F in Action

    15 in stock

    Book SynopsisIsaac Abraham is an experienced .NET developer and trainer. He's an F# MVP for his contributions to the .NET community.

    15 in stock

    £41.39

  • Real-world Python: A Hacker's Guide to Solving

    No Starch Press,US Real-world Python: A Hacker's Guide to Solving

    1 in stock

    Book SynopsisReal World Python is a collection of worked projects for readers who know some basic Python and want to do something with their knowledge. The book's short projects all teach thought processes and problem-solving as well as coding syntax. Readers learn to think their way through challenges like predicting the location of sailors lost at sea, discovering new planets, determining the author of a novel, selecting candidate landing sites for a Mars rover, programming a robot sentry gun to detect and shoot aliens (not humans), and more.Trade Review"Python programmers with a little bit of experience, looking for a fun challenge that relates to real-world examples, should read [this book]."—Geek Tech Stuff"I recommend this book for all Python learners!" —Kelly Paredes, Teaching Python podcast"This is the most amazing book anyone could pick up if they are unsure about what machine learning job they should focus on."—Ian Mizer, Atlanta Python Programmers Group"Read this book and do the work. You will find yourself building programs that address real-world problems and readying yourself to attack similarly challenging problems in whatever field you are working." —Sandra Henry-Stocker, Linux journalist, NetworkWorld (IDG)Table of ContentsIntroductionChapter 1: Saving Shipwrecked Sailors with Bayes’ RuleChapter 2: Attributing Authorship with StylometryChapter 3: Summarizing SpeechesChapter 4: Sending Super Secret MessagesChapter 5: Finding PlutoChapter 6: Winning the Moon Race with Apollo 8Chapter 7: Selecting Martian Landing SitesChapter 8: Detecting Distant ExoplanetsChapter 9: Identifying Friend or FoeChapter 10: Finding a Safe SpaceChapter 11: Charting ExoplanetsChapter 12: Are we Living in an Alien Simulation?Appendix: Answers to the practice problemsIndex

    1 in stock

    £26.39

  • Poc Or Gtfo Volume 3

    No Starch Press,US Poc Or Gtfo Volume 3

    2 in stock

    Book SynopsisThe international journal of Proof-of-Concept or Get the Fuck Out is a celebrated collection of short essays on computer security, reverse engineering and retro-computing topics by many of the world's most famous hackers. Topics include how to dump the ROM from one of the most secure Sega Genesis games ever created; how to create a PDF that is also a Git repository; how to extract the Game Boy Advance BIOS ROM; how to sniff Bluetooth Low communications with the BCC Micro:Bit; how to conceal ZIP Files in NES Cartridges; how to remotely exploit a TetriNET Server; and more.Table of ContentsIntroduction 14 High Five to the Heavens 14:02 Z-Ring Phreaking by Vicki Pfau 14:03 Concerning Desert Studies by Manul Laphroaig 14:04 Texting with Flush+Reload by Taylor Hornby 14:05 Anti-Keylogging with Noise by Mike Myers 14:06 Random NOPs in ARM by Timmers and Spruyt 14:07 Ethernet Over GDB by Micah Elizabeth Scott 14:08 Control Panel Vulnerabilities by Geoff Chappell 14:09 Hash Function Pseudo-Fixpoints by Greg Kopf 14:10 A PDF That Shows Its Own MD5 by Mako 14:11 A GIF shows its own MD5! by Kristoffer “spq” Janke 14:12 MD5 NES Polyglot by Evan Sultanik and Evan Teran 15 I Slipped a Little 15:02 Pier Solar and the Great Reverser by Brandon L. Wilson 15:03 The Alternator Sermon by Manul Laphroaig 15:04 Text2Com by Saumil Shah 15:05 RISC-V Shellcode by Don A. Bailey 15:06 Cracking Gumball by 4am and Peter Ferrie 15:07 A PDF that is a Git Repo by Evan Sultanik 15:08 Zero Overhead Networking by Robert Graham 15:09 Detecting MIPS16 Emulation by Goodspeed and Speers 15:10 Tracing Race Conditions by BSDaemon and NadavCh 15:11 x86 without Data Fetches by Chris Domas 15:12 Java Key Store’s Coffin by Tobias “floyd” Ospelt 15:13 The PNG Gamma Trick by Hector Martin ‘marcan’ 16 Laphroaig Races the Runtime Relinker 16:02 Sapere aude! by Manul Laphroaig 16:03 Emulating my Chevy by Brandon L. Wilson 16:04 Wafer Thin Locks by Deviant Ollam 16:05 Uses for Useless Bugs by EA 16:06 Fragmented Chunks by Yannay Livneh 16:07 Executing Unmapped Thumb by Maribel Hearn 16:08 Naming Network Interfaces by Cornelius Diekmann 16:09 Obfuscation via Symbolic Regression by JBS 16:10 Stack Return Addresses from Canaries by Matt Davis 16:11 Rescuing Orphans in Thumb2 by T. Goodspeed 16:12 This PDF Reverse Engineers Itself by Evan Sultanik 17 It’s damned cold outside 17:02 AES-CBC Shellcode by Spruyt and Timmers 17:03 Tall Tales of Science and Fiction by PML 17:04 Sniffing BTLE with the Micro:Bit by Damien Cauquil 17:05 Bit-Banging Ethernet by Andrew Zonenberg 17:06 The DIP Flip Whixr Trick by Joe Grand 17:07 Injecting Shared Objects on FreeBSD by Shawn Webb 17:08 Murder on the USS Table by Soldier of Fortran 17:09 Infect to Protect by Leandro Pereira 18 Montessori Soldering School 18:02 An 8 Kilobyte Mode 7 Demo by Vincent Weaver 18:03 Exploits for Kids with Scratch! by Kev Sheldrake 18:04 Concealing ZIP Files in NES Cartridges by Vi Grey 18:05 House of Fun by Yannay Livneh 18:06 Read Only Relocations for Static ELF by Ryan O’Neill 18:07 Remotely Exploiting Tetrinet by Laky and Hanslovan 18:08 KLEE Internals by Julien Vanegue 18:09 Reversing DDR3 Scrambling by Nico Heijningen 18:10 SHA-1 Collisions with PDFLaTeX by Ange Albertini Useful Tables Index Colophon

    2 in stock

    £28.49

  • Practical Iot Hacking: The Definitive Guide to

    No Starch Press,US Practical Iot Hacking: The Definitive Guide to

    2 in stock

    Book SynopsisGeared towards security researchers, IT teams, and penetration testers, application testers, developers, and IT administrators, this book teaches readers how to get started with hacking Internet connected devices. Readers dig deep into technical (and related legal) issues, as they learn what kinds of devices to use as hacking tools and which make the best targets. The authors, all experts in the field, cover the kinds of vulnerabilities found in IoT devices, explain how to exploit their network protocols, and how to leverage security flaws and certain hardware interfaces found in the physical devices themselves.Trade Review“I recommend this book to anyone technical who manufactures IoT devices or anyone with IoT devices in their homes or enterprise. At a time when securing our systems and protecting our information has never been more important, this book hits the mark.”—Dave Kennedy, founder of TrustedSec, Binary Defense“This book is everything you would want to learn from the subject masters—it is an authoritative and a precious resource that both IoT security researchers and developers will want keep close by. I recommend this book for anyone interested in making IoT more secure.”—John Moor, Managing Director, IoT Security Foundation“The authors provide a simple, effective and structured approach to hacking IoT, covering the major attack surface of the ecosystem.”—Aseem Jakhar, Author of EXPLIoT Framework and Co-Founder Payatu“Practical IoT Hacking is an essential guide to get an understanding on how the world around you works. This is a must have book to add to your hardware hacking arsenal.”—Craig Smith, author of the Car Hacker's Handbook“Practical IoT Hacking gracefully takes on the herculean task of introducing an organized approach to IoT device security with an end to end, accessible and actionable set of guidance and tool recommendations. A wide range of stakeholders in IoT product development and manufacturing would benefit from applying this knowledge early and often. I would recommend this book as a required reference for anyone involved in IoT device design, or even for personal awareness of data privacy and security for technically oriented users.”—J. Metzger, Director of Cybersecurity, implanted and wireless data medical device manufacturer“What I really like about this book is that it is useful for a wide ranging audience: students interested in IT security, people who are interested in securing their home network, and professionals who want to learn how to hack and secure new IoT devices for their colleagues or customers. This book deserves a place on your (digital) bookshelf.” —Stef van Dop, KPN REDteam"I'm so thrilled to see this book available to people to take the high level 'IoT security is important' and turn it into a practical guide to hack these devices in an effort to expose the security issues we must address as a community. The authors are immediately credible on the topic, the content is superbly approachable, and it's obvious this book and its readers will have a meaningful positive impact on the topic."—Robert M. Lee, CEO and Co-Founder of Dragos, Inc. and Senior SANS Instructor“This incredible resource provides comprehensive, hands-on information on everything from security nuances in IoT devices and ecosystems, to ethical disclosure of vulnerabilities, and even the application of anti-hacking laws. We may joke about the absurdity of Internet-connected toasters and dog dishes, but lack of IoT security can mean real physical consequences. For those who would test and secure the rising tide of digitally-enabled physical objects, this is the book for you.”—Harley Geiger, Senior Director of Public Policy, Rapid 7“Practical IoT Hacking is an exciting book and a fantastic resource for anyone interested in hardware hacking—from amateur to professional. Chapter by chapter, the authors peel away layers of complexity and demonstrate the tools and techniques used to assess the security of IoT systems. Most importantly, the book introduces an IoT testing framework that walks readers through not only the technical 'how' but the context of 'what' and 'why' as well.”—T. Miklas, Head of Penetration Testing at a global bank"As attack surfaces go, IoT presents the most dynamic, rapid, and intimate expansion of the cyber domain into our daily and professional lives. This book recognizes the opportunities and risks of this expansion and delivers a comprehensive resource to address them. Practically laid out into progressive areas of exploration and focus, this book will be a learning blueprint for IoT security newcomers, a reference for those already working in it day-to-day, and a security roadmap for those working in IoT design and defense. Highly recommended!"—Casey Ellis, Founder/Chairman/CTO, BugCrowd "Wonderful depth and breadth in the book; I hope you all consider pre-ordering if you're keen on IoT security & research!"—Mark Stanislav, Information Security Architect at Cisco"Presented in a thorough and comprehensive fashion, this book is approachable by readers with a wide range of technical abilities. By shining much needed light on the wide attack surface and many technical aspects involved in hacking all connected things, the foundation of knowledge provided by this book should help in ensuring future devices are built to be secure by design. This book should be required reading for anyone interested in connected device security.”—Marc Rogers, Security Researcher“Whether you’re deploying, defending or learning to attack IoT devices, this book provides valuable insight into the tactics and techniques attackers use to compromise these devices.”—CEO, BRK Security"An excellent book to get you started on IoT hacking . . . definitely a must-read." —Electronic Cats "The best resource that is currently available to get you from zero knowledge to a competent IoT security researcher. . . . this is the most complete IoT hacking book to get someone with no knowledge of the domain or even a seasoned professional, and elevate them to level where they won’t just feel comfortable performing IoT security research, but they’d also have all the required skills to do so." —Xorl "I really recommend it, both for those who 'play' with IoT devices in their homes, and for those who must audit these devices as part of their work." —Jaime Andrés Restrepo - CEO, DragonJAR.org "It’s a comprehensive book, and it’s an important topic. . . . full of useful examples." —Robert Vamosi, The Hacker Mind"Filled with tutorials and technical knowledge, this is a must-have resource for organizations who want to [improve] their IoT security readiness."—Daniel Hein, Solutions Review“For someone who wants to take a breath of fresh air and do something interesting.”—Cristi Vlad, YouTuber"All of the authors contribute their considerable expertise in cybersecurity to this book, which helps you reconceptualize threats to the IoT."—Solutions Review"Practical IoT Hacking is full of great information. The book covers a very diverse set of technologies and crosses fluidly between the domains of hardware, software, networking, and RF."—Craig Young, Principal Security Researcher, Tripwire"Practical IoT Hacking is definitely a book I would recommend to anyone involved with IoT, especially those working in any type of cybersecurity role as well as any type of IoT developer."—Lane Thames, Principal Security Researcher, Tripwire"Practical IoT Hacking is a sharp well designed book that first takes readers by the hand through the IoT landscape. It reveals why IoT security is important and the multiple threat models and processes that can be used in a simple but effective way"—Matt Jerzewski, Security Researcher, Tripwire"Practical IoT Hacking provides quite the range of information from looking for security issues at the application layer to physical access."—Andrew Swoboda, Senior Security Researcher, Tripwire"An excellent book. It's written in an understandable way, and uses real life experiences and examples from the authors' working lives to demonstrate both the risks and how to mitigate them. If you have responsibility for IoT devices or applications that use them either in your working or personal life, it's worth reading."—Kay Ewbank, I-ProgrammerTable of ContentsPrefaceForewordPart One: The IoT Threat LandscapeChapter 1: The IoT Security WorldChapter 2: Threat ModelingChapter 3: A Security Testing MethodologyPart Two: Network HackingChapter 4: Network AssessmentsChapter 5: Analyzing Network ProtocolsChapter 6: Exploiting Zero-configuration NetworkingPart Three: Hardware HackingChapter 7: UART, JTAG, and SWD ExploitationChapter 8: Hacking SPI and I2CChapter 9: Firmware HackingPart Four: Radio HackingChapter 10: Abusing RFIDChapter 11: Exploiting Bluetooth Low EnergyChapter 12: Wi-Fi HackingChapter 13: Exploiting LPWANPart Five: Targeting the IoT EcosystemChapter 14: Attacking Mobile ApplicationsChapter 15: Hacking the “Smart” HomeAppendix A: Tools for IoT Hacking

    2 in stock

    £35.99

  • Data Structures and Algorithms in JavaScript

    Penguin Random House Group Data Structures and Algorithms in JavaScript

    2 in stock

    Book Synopsis

    2 in stock

    £35.99

  • Black Hat Graphql: Attacking Next Generation APIs

    No Starch Press,US Black Hat Graphql: Attacking Next Generation APIs

    2 in stock

    Book SynopsisWeb applications are increasingly using the query language GraphQL to share data, but the security of these useful APIs is lagging behind. Authored by the developers of widely used GraphQL security-testing tools, Black Hat GraphQL will teach you how to find and exploit flaws in this technology. Early chapters provide in-depth knowledge of GraphQL and its query language, as well as its potential security pitfalls. Readers will then be guided through setting up a hacking lab for targeting GraphQL applications using specialized GraphQL security tools. They will learn how to conduct offensive security tests against production GraphQL systems by gleaning information from GraphQL implementations during reconnaissance and probing them for vulnerabilities, like injections, information disclosure, and Denial of Service.Trade Review"Black Hat GraphQL is the best resource for anyone looking to test GraphQL for vulnerabilities. Not only did Aleks and Farhi write the book, but they also created the vulnerable application used in the books labs and created a suite of tools specially designed for analyzing weaknesses within GraphQL APIs. This is a must-read book for those in API security." —Corey Ball, author of Hacking APIs "This book brought me from zero to ‘incredibly dangerous’ in ten chapters. The authors break down complex topics, making them easy to understand, as well as outlining pros and cons of each feature, tool, and tactic. The book also has quite a bit of foreshadowing, mentioning how certain parts of GraphQL work, and how they will be exploited later. The authors share not only several hands-on labs, but several tools they created themselves and open-sourced for all to use. If you are going to be PenTesting GraphQL systems, or are charged with protecting such a system, this book is a must-have." —Tanya Janca, founder of We Hack Purple “With the increasing number of web platforms built on top of GraphQL, this book is an essential resource for all security practitioners. By covering both the basics and advanced topics, Nick and Dolev have created the ultimate guide to hacking GraphQL.”—Luca Carettoni, Doyensec "Knowing how to secure GraphQL is often the first question most users have after they have that "ah ha!" moment about how cool it is. While Apollo and others have written a lot of great documentation on best security practices, Black Hat GraphQL is the most comprehensive look from the other side. This is not just a book for red teamers or penetration testers. Any GraphQL developer will learn a lot here." —Tad Whitaker, Apollo GraphQL "I study my way up in cybersecurity, in part, through books. While many of the books I use don't actually bring something new to the table, Black Hat GraphQL is definitely an exception. My copy, believe it or not, is oversaturated with highlights. And that probably says it all." —Cristi Vlad, @CristiVlad25, cybersecurity researcherTable of ContentsForewordAcknowledgmentsIntroductionChapter 1: A Primer on GraphQLChapter 2: Setting Up a GraphQL Security LabChapter 3: The GraphQL Attack SurfaceChapter 4: ReconnaissanceChapter 5: Denial of ServiceChapter 6: Information DisclosureChapter 7: Authentication and Authorization BypassesChapter 8: InjectionChapter 9: Request Forgery and HijackingChapter 10: Disclosed Vulnerabilities and ExploitsAppendix A: GraphQL API Testing ChecklistAppendix B: GraphQL Security ResourcesIndex

    2 in stock

    £42.74

  • Kotlin from Scratch

    Penguin Random House Group Kotlin from Scratch

    1 in stock

    Book Synopsis

    1 in stock

    £42.74

  • Introduction to System Programming in Linux

    No Starch Press,US Introduction to System Programming in Linux

    3 in stock

    3 in stock

    £67.49

  • Math for Programming

    No Starch Press,US Math for Programming

    2 in stock

    Book SynopsisThis book summarizes all the core mathematical topics a typical professional software engineer needs to know. In condensing the various concepts covered in an undergraduate computer science program into a single volume, it provides an excellent starting point for independent study, or a refresher for those who haven''t been in a classroom for years. Early chapters cover preliminary subjects like number representation systems, set theory, and Boolean algebra, followed by a dive into the field of discrete mathematics, including functions, induction proofs, number theory, combinatorics, graphs, and trees. Later sections examine essential topics in probability, statistics, linear algebra, and calculus. Rather than confine itself to abstract theory, the book focuses on practical applications and numerical methods at the level typically encountered by working software developers. In addition, hands-on code examples in Python and C make the topics concrete.

    2 in stock

    £33.74

  • 2 in stock

    £37.49

  • 2 in stock

    £49.49

  • The Essence of Software

    Princeton University Press The Essence of Software

    10 in stock

    Book SynopsisTrade Review"Finalist for the PROSE Award in Computing and Information Sciences, Association of American Publishers""This book gives new answers to old questions, offering a fresh perspective on software design, with examples from over 100 familiar apps. It’s accessible to anyone—strategist, marketer, manager, designer, or programmer—who wants software that is more empowering, dependable, and delightful to use." * MIT News *

    10 in stock

    £18.00

  • The Professional Agile Leader

    Pearson Education (US) The Professional Agile Leader

    1 in stock

    Book SynopsisRon Eringa is a Leadership Developer. His mission is to create organizations where people love to work and where real customer value is created. In the last 20 years he has built expertise on how to lead IT organizations that use Agile and Scrum. After an initial education in electrical engineering and software engineering he ended up in different leadership roles. In these roles he discovered the leadership capabilities that are essential to create autonomous teams with a high level of maturity and creativity. He believes that autonomous teams are the fundament of a modern organization that thrives in this complex and ever-changing world. Kurt Bittner has been delivering working products in short, feedback-driven cycles for nearly 40 years, and has helped many organizations do the same. He is particularly interested in helping people form strong, self-organizing, high-performance teams that deliver solutions that customers love, and helping organizations use emTable of ContentsForeword xi Preface xv Introduction xvii Acknowledgments xxv About the Authors xxvii Chapter 1: An Organization at a Crossroads 1 Complex Challenges Create Urgency for Agility 2 Reducing Dependencies Makes Change Possible 4 Organizational Change Requires Protective, Progressive Dictatorship 10 Two Paths, One Goal 12 Reflections on the Journey 15 Chapter 2: Forming Teams and Discovering Purpose 17 Changing the Organization, One Team at a Time 18 Finding the Right People 22 Empowering Teams 26 Placing the Customer at the Center of the Change 29 Reflections on the Journey 35 Chapter 3: Shifting from Output to Impact 37 "What Gets Measured Gets Done" 38 Reflections on the Journey 53 Chapter 4: Learning to Let Go 55 Empowerment Doesn't Come for Free 56 Agile Leaders Help Teams to Grow Their Ability to Reach Audacious Goals 60 Letting Go in Small Steps 65 Slow Decision-Making Kills Team Self-Management 69 Reflections on the Journey 73 Chapter 5: The Predictable Existential Crisis 75 New Ways of Working Threaten the Old System 76 Reflections on the Journey 97 Chapter 6: Leaders, Everywhere 99 Nurturing and Growing an Agile Organization 100 Reward Building Teams and Leadership, Not Silos 114 Promotional Rewards Lock in Organizational Structures 117 Performance Reviews Don't Go Away, but They Do Change Dramatically 118 Reflections on the Journey 122 Chapter 7: Aligning the Organization 123 Evolving the Operating Model 124 Scale Agility by Removing Dependencies 131 Consolidating Support and Eliminating Opposition 132 Realign Compensation Plans 140 Realign Career Paths 141 Embrace Catalytic Leadership 142 Replace Status Meetings with Transparency 143 Be Realistic About How Long the Transition Will Take, and What It Means 146 Reflections on the Journey 147 Chapter 8: Aligning the Culture 149 What Makes Changing Culture Hard 150 Agile Leaders Must First Find Their Own Way 152 Build Bridges to the New Culture 153 Anticipate and Overcome Setbacks 159 Use "Self-Sustenance" as a Measure of Success 162 Agile Journeys Never Really End 165 Reflections on the Journey 168 Appendix A: Patterns and Anti-Patterns for Effective Leadership 169 Appendix B: Doreen's Sketchnotes 171 Index

    1 in stock

    £24.69

  • Strategic Monoliths and Microservices

    Pearson Education (US) Strategic Monoliths and Microservices

    1 in stock

    Book SynopsisVaughn Vernon is a champion of simplifying software architecture and development, with an emphasis on reactive methods. He has a unique ability to teach and lead with Domain-Driven Design using lightweight tools to unveil unimagined value. He helps organizations achieve competitive advantages using enduring tools such as architectures, patterns, and approaches, and through partnerships between business stakeholders and software developers. Tomasz Jaskula has 20 years of professional experience as a developer, software architect, team leader, trainer, and technical conference speaker. An IDDD Workshop trainer in both French and Polish, he founded Paris Domain-Driven Design and F# user groups. Jaskula's company, Luteceo (luteceo.fr), spreads good software and architecture practices based on Domain-Driven Design and software craftsmanship. He previously worked for many companies in e-commerce, industry, insurance, and finance, gaining deep experTrade Review"Most books address either the business of software or the technical details of building software. Strategic Monoliths and Microservices provides a comprehensive approach to blending the needs of business and technology in an approachable way. It also dispels many of today's myths while offering practical guidance that any team or organization can apply immediately and with confidence." --James Higginbotham, Executive API Consultant, Founder of LaunchAny, and author of Principles of Web API Design "Digital Transformation cannot succeed as a 'grass roots' effort. Vaughn and Tomasz offer C-level execs a roadmap to software excellence that includes establishing the culture necessary to foster and sustain software innovation. Written with real-world understanding, Vaughn and Tomasz help the reader to appreciate that moving software development from a cost center to a profit center involves tradeoffs that need not sacrifice innovation. A must-read for decision makers." --Tom Stockton, Principal Architect, MAXIMUS "In this book, Vaughn Vernon and Tomasz Jaskuła use their extensive experience with DDD to present a comprehensive guide to using the many different aspects of DDD for modern systems development and modernization. It will be a valuable guide for many technical leaders who need to understand how to use DDD to its full potential." --Eoin Woods, software architect and author "There are common misconceptions and roots of failure around software engineering. One notable example is neglecting the rugged trek towards digital transformation. Such an endeavor comprises breakthrough innovations, failure culture, emphasis on the role of software architecture, as well as on the importance of efficient and effective inter-human communication. Fortunately, the authors offer the necessary help for mastering all hurdles and challenges. What I like most about this book is the holistic view it provides to all stakeholders involved in digital transformation and innovation. Vaughn Vernon and Tomasz Jaskuła introduce a clear path to successful innovation projects. They provide insights, tools, proven best practices, and architecture styles both from the business and engineering viewpoint. Their book sheds light on the implications of digital transformation and how to deal with them successfully. This book deserves to become a must-read for practicing software engineers, executives, as well as senior managers. It will always serve me as a precious source of guidance and as a navigator whenever I am entering uncharted territories." --Michael Stal, Certified Senior Software Architect, Siemens Technology "Digital transformation is a much used but little understood concept. This book provides valuable insight into this topic and how to leverage your existing assets on the journey. Modern technical and social techniques are combined in the context of a single case study. Compelling reading for both business and technology practitioners." --Murat Erder, co-author of Continuous Architecture in Practice (2021) and Continuous Architecture (2015) "Packed with insightful recommendations for every executive leader seeking clarity on the distinction between when to strategically apply a monolith vs. microservice architectural approach for success. Highly encourage every CEO, CIO, CTO, and (S)VP of Software Development to start here with immersing themselves in Vaughn and Tomasz's succinct distillation of the advantages, disadvantages, and allowance for a hybrid combination, and then go become a visionary thought leader in their respective business domain." --Scott P. Murphy, Principal Architect, Maximus, Inc. "A 'must-read' for Enterprise leaders and architects who are planning for or executing a digital transformation! The book is a true guide for ensuring your enterprise software innovation program is successful." --Chris Verlaine, DHL Express Global Aviation IT DevOps Director, Head of DHL Express Global Aviation IT Software Modernization Program " Strategic Monoliths and Microservices is a great resource to connect business value to an evolvable enterprise architecture. I am impressed with how the authors use their deep understanding and experience to guide informed decisions on the modularization journey. Along the way every valuable tool and concept is explained and properly brought into context. Definitely a must-read for IT decision makers and architects. For me this book will be an inspiring reference and a constant reminder to seek the purpose in architecture. The Microservices discussion has reached a completely new maturity level." --Christian Deger, Head of Architecture and Platform at RIO | The Logistics Flow, organizer of over 60 Microservices Meetups "The choice of microservices or monoliths architecture goes far beyond technology. The culture, organization, and communication that exist within a company are all important factors that a CTO must consider carefully in order to successfully build digital systems. The authors explain this extremely well from various perspectives and based on very interesting examples." --Olivier Ulmer, CTO, Groupe La Française "Building a technology engine to move quickly, experiment, and learn is a competitive advantage in today's digital world. Will ' de-jour architecture' help with this endeavor? This amazing book by Vaughn and Tomasz fills a void in the market and re-focuses on the core objectives of software architecture: move fast, experiment, focus on the outcomes that bring value. A reader will come away better suited to decide whether microservices architecture and all the complexity with it is right for them." --Christian Posta, Global Field CTO, Solo.io Table of ContentsForeword xiiiPreface xviiAcknowledgments xxvAbout the Authors xxxi Part I: Transformational Strategic Learning through Experimentation 1 Executive Summary 3 Chapter 1: Business Goals and Digital Transformation 7 Digital Transformation: What Is the Goal? 8 Why Software Goes Wrong 11 Your Enterprise and Conway's Law 18 (Re)Thinking Software Strategy 24 Are Monoliths Bad? 30 Are Microservices Good? 31 Don't Blame Agile 34 Getting Unstuck 36 Summary 37 References 38 Chapter 2: Essential Strategic Learning Tools 39 Making Decisions Early and Late, Right and Wrong 40 Culture and Teams 43 Modules First 51 Deployment Last 55 Everything in Between 57 Where Is Your Spaghetti and How Fast Does It Cook? 70 Strategic Architecture 70 Applying the Tools 72 Summary 75 References 75 Chapter 3: Events-First Experimentation and Discovery 77 Commands and Events 78 Rapid Learning with EventStorming 81 Applying the Tools 92 Summary 99 References 100 Part II: Driving Business Innovation 101 Executive Summary 103 Chapter 4: Reaching Domain-Driven Results 109 Domains and Subdomains 111 Summary 115 References 116 Chapter 5: Contextual Expertise 117 Bounded Context and Ubiquitous Language 117 Core Domain 121 Supporting Subdomains, Generic Subdomains, and Technical Mechanisms 123 Business Capabilities and Contexts 125 Not Too Big, Not Too Small 128 Summary 129 References 130 Chapter 6: Mapping, Failing, and Succeeding--Choose Two 131 Context Mapping 131 Topography Modeling 151 Ways to Fail and Succeed 154 Applying the Tools 158 Summary 163 References 164 Chapter 7: Modeling Domain Concepts 165 Entities 166 Value Objects 167 Aggregates 168 Domain Services 169 Functional Behavior 170 Applying the Tools 173 Summary 173 References 174 Part III: Events-First Architecture 175 Executive Summary 177 Chapter 8: Foundation Architecture 181 Architectural Styles, Patterns, and Decision Drivers 183 Quality Attributes 196 Applying the Tools 206 Summary 207 References 208 Chapter 9: Message- and Event-Driven Architectures 211 Message- and Event-Based REST 216 Event-Driven and Process Management 220 Event Sourcing 223 CQRS 227 Serverless and Function as a Service 229 Applying the Tools 231 Summary 231 References 232 Part IV: The Two Paths for Purposeful Architecture 233 Executive Summary 235 Chapter 10: Building Monoliths Like You Mean It 239 Historical Perspective 241 Right from the Start 244 Right from Wrong 253 Keeping It Right 264 Summary 265 References 266 Chapter 11: Monolith to Microservices Like a Boss 267 Mental Preparation with Resolve 267 Modular Monolith to Microservices 271 Big Ball of Mud Monolith to Microservices 275 Unplugging the Legacy Monolith 286 Summary 287 References 288 Chapter 12: Require Balance, Demand Strategy 289 Balance and Quality Attributes 289 Strategy and Purpose 291 Conclusion 297 References 298 Index 299

    1 in stock

    £26.99

  • Kubernetes for Developers

    Manning Publications Kubernetes for Developers

    Book SynopsisKubernetes Quickly is a clear and practical beginner's guide that shows you just how easy, flexible, and cost-effective it can be to make the switch to Kubernetes deployment even for small to medium-sized applications. Kubernetes Quickly is a hands-on guide to taking your first steps into Kubernetes using the powerful Google Kubernetes Engine service. It lays out a map for taking an application, containerizing it, and then deploying it onto Kubernetes. You'll learn best practice techniques for a stable and long-term Kubernetes deployment, including scaling and capacity planning, saving money by optimizing resource consumption, and tricks to make your day-to-day monitoring easier such as debugging code in the cloud. You don't need to incur huge costs or have the manpower of an enterprise organization to get a productivity boost from Kubernetes. By organizing your application component into containerized components and automating tasks like scaling and replication, Kubernetes keeps your apps running smoothly. Cloud-based Kubernetes services like Google Kubernetes Engine(GKE) reduce OS issues, simplify operations, and give you the freedom to use whatever software stack you want. If you've heard that switching to Kubernetesis complex, good news—Kubernetes for Developers will show you how it can be done without a time-consuming rebuild. Using examples from the Google Kubernetes Engine created by the team who invented Kubernetes itself, you'll learn to set up future-proof application deployments that scale to handle ever-growing and complex workloads.Trade Review“Whether you are using kubernetes now or thinking of using kubernetes in the future, there is no better way to expand your knowledge than this book. “ Becky Huett “Excellent introductory text for Kubernetes that augments the Kubernetes documentation with best practice tips and great tool recommendations.” Robert Kielty “This is an excellent introduction to Kubernetes in particular and Cloud deployments in general.” Juan Jimenez “Get ready to be taken from the old world to the new. It won't hurt to give this book another read-over before you deploy your service into production!” Chase Sillevis “An excellent read for a newbie who wants to get closer to Kubernetes.” Giuliano Latini

    £36.09

  • Pearson Education We Programmers

    1 in stock

    Book SynopsisRobert C. Martin (Uncle Bob) has been a programmer and software development expert since 1970. He is founder of Uncle Bob Consulting, LLC, and cofounder with his son Micah Martin of The Clean Coders LLC. Martin has published dozens of articles in various trade journals and is a regular speaker at international conferences and trade shows. He is the author of many books, including Agile Software Development: Principles, Patterns, and Practices; UML for Java Programmers; Clean Code; The Clean Coder; Clean Architecture; Clean Agile; Clean Craftsmanship; and Functional Design. Martin served for three years as editor-in-chief of the C++ Report and as the first chairman of the Agile Alliance.

    1 in stock

    £28.79

  • Scrum Field Guide The

    Pearson Education (US) Scrum Field Guide The

    1 in stock

    Book SynopsisMitch Lacey, founder of Mitch Lacey & Associates, Inc., helps companies reach their maximum potential by building high-performing organizations through the adoption of agile practices, including Scrum and XP. Mitch's rich, practical experience and his pragmatic approach are trusted by many companies including Adobe Systems, Aera Energy, Bio-Rad, EchoStar, Microsoft, Oracle, Qualcomm, Salem Hospital, SAP, Sony, and more. He is a CST, a PMI Project Management Professional (PMP), and an Agile Certified Practitioner (ACP). Mitch has served on the board of directors for the Agile Alliance and the Scrum Alliance. Learn more at www.MitchLacey.com.  Table of ContentsChapter 1: Scrum: Simple, Not Easy Part I: Getting Prepared Chapter 2: Getting People on Board Chapter 3: Using Team Consultants to Optimize Team Performance Chapter 4: Predicting Team Velocity Chapter 5: Implementing the Scrum Roles Chapter 6: Determining Sprint Length Chapter 7: How Do You Know You're Done? Chapter 8: The Case for a Full-Time ScrumMaster Part II: Field Basics Chapter 9: Why Engineering Practices Are Important in Scrum Chapter 10: Core Hours Chapter 11: Release Planning Chapter 12: Decomposing Stories and Tasks Chapter 13: Keeping Defects in Check Chapter 14: Sustained Engineering and Scrum Chapter 15: The Sprint Review Chapter 16: Retrospectives Part III: First Aid Chapter 17: Facilitating a Productive Daily Scrum Chapter 18: The Fourth Question in Scrum Chapter 19: Keeping People Engaged with Pair Programming Chapter 20: Adding New Team Members Chapter 21: When Cultures Collide Chapter 22: Sprint Emergency Procedures Part IV: Advanced Survival Techniques Chapter 23: Sustainable Pace Chapter 24: Delivering Working Software Chapter 25: Optimizing and Measuring Value Chapter 26: Up-Front Project Costing Chapter 27: Documentation in Scrum Projects Chapter 28: Outsourcing and Offshoring Chapter 29: Prioritizing and Estimating Large Backlogs–The Big Wall Chapter 30: Writing Contracts Part V: Wilderness Essentials Chapter 31: Driving to Done through Collaboration Chapter 32: How Story Points Relate to Hours Chapter 33: Immersive Interviewing and Hiring Chapter 34: Aligning Incentives with Outcomes Chapter 35: Risk Management in Scrum Appendix: Scrum Framework Index

    1 in stock

    £33.72

  • Web Browser Engineering

    Oxford University Press Web Browser Engineering

    1 in stock

    Book Synopsis

    1 in stock

    £38.00

  • A Scrum Book

    The Pragmatic Programmers A Scrum Book

    1 in stock

    Book SynopsisBuilding a successful product usually involves teams of people, and many choose the Scrum approach to aid in creating products that deliver the highest possible value. Implementing Scrum gives teams a collection of powerful ideas they can assemble to fit their needs and meet their goals. The ninety-four patterns contained within are elaborated nuggets of insight into Scruma (TM)s building blocks, how they work, and how to use them. They offer novices a roadmap for starting from scratch, yet they help intermediate practitioners fine-tune or fortify their Scrum implementations. Experienced practitioners can use the patterns and supporting explanations to get a better understanding of how the parts of Scrum complement each other to solve common problems in product development. The patterns are written in the well-known Alexandrian form, whose roots in architecture and design have enjoyed broad application in the software world. The form organizes each pattern so you can navigate directly to organizational design tradeoffs or jump to the solution or rationale that makes the solution work. The patterns flow together naturally through the context sections at their beginning and end. Learn everything you need to know to master and implement Scrum one step at a time'the agile way.

    1 in stock

    £49.39

  • Algorithms for Decision Making

    MIT Press Algorithms for Decision Making

    1 in stock

    Book Synopsis

    1 in stock

    £81.00

  • Python in a Nutshell

    O'Reilly Media Python in a Nutshell

    7 in stock

    Book SynopsisCarefully curated by recognized experts in Python, this updated fourth edition focuses on version 3.10, bringing this seminal work on the Python language fully up to date on five releases, including preview coverage of upcoming 3.11 features.

    7 in stock

    £53.99

  • Architectural Approach to Level Design

    CRC Press Architectural Approach to Level Design

    1 in stock

    Book SynopsisWritten by a game developer and professor trained in architecture, An Architectural Approach to Level Design is one of the first books to integrate architectural and spatial design theory with the field of level design. It explores the principles of level design through the context and history of architecture. Now in its second edition, An Architectural Approach to Level Design presents architectural techniques and theories for you to use in your own work. The author connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with that space. It also addresses industry issues like how to build interesting tutorial levels and how to use computer-generated level design systems without losing the player-focused design of handmade levels. Throughout the text, you will learn skills for spatial layout, evoking emotion through gamespaces, and cTable of ContentsChapter 1 A Brief History of Architecture and Level Design. Chapter 2 Drawing for Level Designers. Chapter 3 Level Design Workflows. Chapter 4 Basic Gamespaces. Chapter 5 Communicating through Environment Art. Chapter 6 Building exciting levels with dangerous architecture. Chapter 7 Rewards in Gamespaces. Chapter 8 Level 1-1: The Tutorial Level . Chapter 9 Storytelling in Gamespaces. Chapter 10 Possibility Spaces and Worldbuilding. Chapter 11 Working with Procedurally Generated Levels. Chapter 12 Influencing Social Interaction with Level Design. Chapter 13 Sound and Music in Level Design .

    1 in stock

    £123.50

  • Mastering the Requirements Process

    Pearson Education Mastering the Requirements Process

    Book SynopsisJames Robertson and Suzanne Robertson are two of the most respected names in business analysis and requirements discovery. During the Robertsons' careers, their books, templates, training, and consulting have helped hundreds of companies to upgrade their requirements discovery process. The Robertsons have written numerous books, among others the three previous editions of this book, Business Analysis Agility, and with their co-authors at the Atlantic Systems Guild, the acclaimed Adrenaline Junkies and Template Zombies. James and Suzanne live in London and France.

    £39.59

  • API Design for C

    Elsevier Science API Design for C

    1 in stock

    Book SynopsisThe design of application programming interfaces can affect the behavior, capabilities, stability, and ease of use of end-user applications. This book helps you learn how to design a good API for large-scale long-term projects. With C++ code to illustrate each concept, it covers the various strategies of API development.Trade Review"Martin Reddy draws from his experience on large scale, collaborative software projects to present patterns and practices that provide real value to individual developers as well as organizations. API Design for C++ explores often overlooked issues, both technical and non- technical, contributing to successful design decisions that produce high quality, robust, and long-lived APIs." --Eric Gregory, Software Architect, Pixar Animation Studios"Intended for programmers with intermediate to advanced skills in the C++ programming language, this guide to the building of useful and robust application programming interfaces (APIs) provides practical instruction for software engineers developing systems on which downstream software engineers depend. The work provides a methodical approach to API design covering solution based API design, performance, versioning, documentation, testing, scripting, extensibility and libraries. The work includes numerous illustrations and code examples and access to additional online resources is provided. Reddy is a software development consultant." --Book News, Reference & ResearchTable of ContentsIntroduction 1. Qualities 2. Patterns 3. Design 4. Styles 5. C++ Usage 6. Performance 7. Versioning 8. Documentation 9. Testing 10. Scripting 11. Extensibility Appendix A: Libraries Bibliography Index

    1 in stock

    £47.49

  • Computer Organization and Design ARM Edition

    Elsevier Science & Technology Computer Organization and Design ARM Edition

    10 in stock

    Book SynopsisTable of Contents1 Computer Abstractions and Technology 2 Instructions: Language of the Computer 3 Arithmetic for Computers 4 The Processor 5 Large and Fast: Exploiting Memory Hierarchy 6 Parallel Processors from Client to Cloud A The Basics of Logic Design B Graphics and Computing GPUs C Mapping Control to Hardware D A Survey of RISC Architectures

    10 in stock

    £67.49

  • Parallel Scientific Computation 2e A Structured

    Oxford University Press Parallel Scientific Computation 2e A Structured

    1 in stock

    Book SynopsisParallel Scientific Computation presents a methodology for designing parallel algorithms and writing parallel computer programs for modern computer architectures with multiple processors.Trade ReviewThe author presents a detailed study describing how parallel computation can be applied to a collection of numerical problems. He considers LU decomposition of dense matrices, the fast Fourier transform (FFT), multiplication of a sparse matrix by a dense vector, as well as matching vertices in a sparse graph and sorting. He uses these to teach design and implementation of well-structured efficient parallel algorithms...The book is best suited for a graduate course in parallel scientific processing for mathematics or computer science students. * Bill Satzer, MAA Reviews *

    1 in stock

    £43.69

  • Web Browser Engineering

    Oxford University Press Web Browser Engineering

    1 in stock

    Book SynopsisA working or budding software engineer always benefits from deeply understanding the platform their code runs on, and web browsers are the most common and widely-used platform there is. This book is the essential description of how they work and how that impacts web developers and other software engineers whose work touches the web.Readers of Web Browser Engineering will join the authors in building their own web browser, including rich visual effects, multithreaded architecture, JavaScript APIs, and comprehensive security policies. Web browser engines are filled with unique challenges, interesting algorithms, and clever optimizations. Building a browser is both easy and incredibly hard, both intentional and accidental, and everywhere you look, you see the evolution and history of the web wrapped up in one codebase. It''s both fun, and endlessly interesting.This interactive and engaging book will be a unique source for any software engineer, computer scientist, web developer, or simply anyone with an interest in web browsers and how they work.This is an open access title available under the terms of a CC BY-NC-ND 4.0 International licence. It is free to read on the Oxford Academic platform and offered as a free PDF download from OUP and selected open access locations.

    1 in stock

    £114.00

  • Requirements Analysis and Systems Design

    Pearson Education Requirements Analysis and Systems Design

    1 in stock

    a huge range and FREE tracked UK delivery on ALL orders.

    1 in stock

    £78.99

  • Wiley Software Design for Six Sigma

    1 in stock

    a huge range and FREE tracked UK delivery on ALL orders.

    1 in stock

    £115.16

  • Conquering JavaScript

    CRC Press Conquering JavaScript

    1 in stock

    Book SynopsisHave you ever considered how these visuals and games are shown in a web browser? What technology is at the heart of it? Of course, employing HTML and CSS alone will not be sufficient. Three.js is a free JavaScript toolkit for displaying images, 3D, and 2D objects in web browsers that enables you to render graphics and 3D objects on a canvas in the web browser using your GPU (Graphics Processing Unit).Conquering JavaScript: Three.js helps the reader master the Three.js framework for faster and robust development. The book is a detailed guide that will help developers and coders do more with Three.js. It covers the basics in brief, and then moves on to more advanced and detailed exercises to help readers quickly gain the required knowledge.

    1 in stock

    £37.99

  • Data Science

    Taylor & Francis Ltd Data Science

    1 in stock

    Book SynopsisData Science: A First Introduction with Python focuses on using the Python programming language in Jupyter notebooks to perform data manipulation and cleaning, create effective visualizations, and extract insights from data using classification, regression, clustering, and inference. It emphasizes workflows that are clear, reproducible, and shareable, and includes coverage of the basics of version control. Based on educational research and active learning principles, the book uses a modern approach to Python and includes accompanying autograded Jupyter worksheets for interactive, self-directed learning. The text will leave readers well-prepared for data science projects. It is designed for learners from all disciplines with minimal prior knowledge of mathematics and programming. The authors have honed the material through years of experience teaching thousands of undergraduates at the University of British Columbia.Key Features:Includes autograded worksheet

    1 in stock

    £54.99

  • Modern Mainframe Development

    O'Reilly Media Modern Mainframe Development

    1 in stock

    Book Synopsis

    1 in stock

    £47.99

  • A Functional Approach to Java

    O'Reilly Media A Functional Approach to Java

    20 in stock

    Book SynopsisIf you're interested in applying FP concepts to your Java code, this book is for you. You'll learn how, when, and why to use FP concepts such as immutability and pure functions to write more concise, reasonable, and future-proof code.

    20 in stock

    £44.99

  • Learning DevSecOps

    O'Reilly Learning DevSecOps

    1 in stock

    Book Synopsis

    1 in stock

    £35.99

  • AINative Software Delivery

    O'Reilly Media AINative Software Delivery

    Book Synopsis

    £41.99

  • Learning Scientific Programming with Python

    Cambridge University Press Learning Scientific Programming with Python

    1 in stock

    Book SynopsisLearn to master basic programming tasks from scratch with real-life, scientifically relevant examples and solutions drawn from both science and engineering. Students and researchers at all levels are increasingly turning to the powerful Python programming language as an alternative to commercial packages and this fast-paced introduction moves from the basics to advanced concepts in one complete volume, enabling readers to gain proficiency quickly. Beginning with general programming concepts such as loops and functions within the core Python 3 language, and moving on to the NumPy, SciPy and Matplotlib libraries for numerical programming and data visualization, this textbook also discusses the use of Jupyter Notebooks to build rich-media, shareable documents for scientific analysis. The second edition features a new chapter on data analysis with the pandas library and comprehensive updates, and new exercises and examples. A final chapter introduces more advanced topics such as floating-pTable of ContentsAcknowledgments; 1. Introduction; 2. The core Python language I; 3. Interlude: simple plots and charts; 4. The core Python language II; 5. IPython and Jupyter Notebook; 6. NumPy; 7. Matplotlib; 8. SciPy; 9. Data analysis with pandas; 10. General scientific programming; Appendix A. Solutions; Appendix B. Differences between Python versions 2 and 3; Appendix C. SciPy's odeint ordinary differential equation solver; Glossary; Index.

    1 in stock

    £36.09

  • Professional Clojure

    John Wiley & Sons Inc Professional Clojure

    1 in stock

    Book SynopsisClear, practical Clojure for the professional programmer Professional Clojure is the experienced developer's guide to functional programming using the Clojure language.Trade Review"A book that makes you think, from the first chapter's dive into thoughtful code-led examples, and covers web services, testing and performance. Brings you closer to functional thinking." (MagPi, October 2016)Table of ContentsINTRODUCTION xv CHAPTER 1: HAVE A BEGINNER’S MIND 1 Functional Thinking 2 Value Oriented 2 Thinking Recursively 5 Higher Order Functions 8 Embracing Laziness 11 When You Really Do Need to Mutate 12 Nil Punning 15 The Functional Web 16 Doing Object-Oriented Better 16 Polymorphic Dispatch with defmulti 18 Defining Types with deftype and defrecord 20 Protocols 21 Reify 22 Persistent Data Structures 23 Shaping the Language 27 Summary 29 CHAPTER 2: RAPID FEEDBACK CYCLES WITH CLOJURE 31 REPL-Driven Development 32 Basic REPL Usage with Leiningen 32 Remote REPLs with nREPL 34 REPL Usage with a Real Application 35 Connecting Your Editor to a REPL 39 Reloading Code 40 Reloading Code from the REPL 40 Automatically Reloading Code 43 Writing Reloadable Code 49 Summary 51 CHAPTER 3: WEB SERVICES 53 Project Overview 53 Namespace Layout 54 Elements of a Web Service 55 Libraries, Not Frameworks 55 HTTP 55 Routing 64 JSON Endpoints 70 Example Service 74 Create the Project 75 Additional Namespaces 75 Default Middleware 77 The Storage Protocol 78 Handlers 83 Middleware 88 Routes 89 Deployment 94 Using Leiningen 94 Compiling an Uberjar or Uberwar 95 Hosting 96 Summary 97 CHAPTER 4: TESTING 99 Testing Basics with clojure.test 100 with-test 101 deftest 101 are 102 Using Fixtures 103 Testing Strategies 104 Tests Against DB 104 Testing Ring Handlers 106 Mocking/Stubbing Using with-redefs 108 Redefining Dynamic Vars 110 Record/Replay with VCR 111 Measuring Code Quality 112 Code Coverage with Cloverage 112 Static Analysis with kibit and bikeshed 114 Keeping Dependencies Under Control 116 Testing Framework Alternatives 119 Expectations 119 Speclj 119 Cucumber 120 Kerodon 126 Summary 127 CHAPTER 5: REACTIVE WEB PAGES IN CLOJURESCRIPT 129 ClojureScript Is a Big Deal 129 A First Brush with ClojureScript 131 Starting a New ClojureScript Project 132 Getting Fast Feedback with Figwheel 132 Creating Components 134 Modeling the Data 135 Responding to Events and Handling State Change 136 Understanding Errors and Warnings 137 Namespace Layout 141 Styling 141 Form Inputs and Form Handling 142 Navigation and Routes 145 HTTP Calls: Talking to a Server 147 Drag and Drop 149 Publishing 150 Reagent in Depth 151 Form 1: A Function That Returns a Vector 151 Form 2: A Function That Returns a Component 152 Form 3: A Function That Returns a Class 153 Sequences and Keys 154 Custom Markup 155 Reactions 156 A Note on Style 158 Testing Components with Devcards 159 Interop with JavaScript 162 One Language, One Idiom, Many Platforms 164 Things to Know About the Closure Compiler and Library 164 Modeling State with DataScript 165 Go Routines in Your Browser with core.async 166 Summary 167 CHAPTER 6: THE DATOMIC DATABASE 169 Datomic Basics 170 Why Datomic? 170 The Datomic Data Model 172 Querying 175 Transactions 181 Indexes Really Tie Your Data Together 183 Datomic’s Unique Architecture 187 Modeling Application Data 188 Example Schema for Task Tracker App 188 Entity ids and Partitions 196 Datomic’s Clojure API 197 Basic Setup 197 Experimenting in the REPL 200 Building Applications with Datomic 206 User Functions 206 Account Functions 209 Task Functions 210 Deployment 213 The Limitations 214 Summary 215 CHAPTER 7: PERFORMANCE 217 What Is Performance? 219 Choosing the Right Data Structure Is a Prerequisite for Performance 219 Benchmarking 221 Timing Slow Things 221 Use Criterium for Timing Fast Things 223 Use Test Selectors for Performance Tests 225 Parallelism 225 Memoization 226 Inlining 227 Persistent Data Structures 228 Safe Mutation with Transients 228 Profi ling 229 Avoiding Reflection with Type Hinting 230 Java Flags 232 Math 232 Summary 232 INDEX 235

    1 in stock

    £36.09

  • BiteSize Python

    John Wiley & Sons Inc BiteSize Python

    Book SynopsisIntroduce children to the popular Python programming language through relatable examples and fun projects! Python has now surpassed Java as the most commonly used programming language. As the language rises in popularity, this complete guide can teach basic Python concepts to kids with its simple, friendly format. Bite-Size Python: An Introduction to Python Programming provides children with a foundation in the Python language. This unique book shares knowledge through easy-to-understand examples, fast exercises, and fun projects! As children learn, their parents, caregivers, and instructors can also join in their discoveries. Bite-Size Python is ideal for those who are new to programming, giving kids ages 9 and up a beginners' approach to learning one of the most important programming languages. Gives an overview of Python Provides exciting programming projects Offers instruction on how to download and install PythonTable of Contents1 What is Python? 3 2 Install Python 9 3 IDLE 15 4 Variables 23 5 Numbers 39 6 Strings 51 7 Conditionals and Control Flow 69 8 Lists 83 9 for Loops 97 10 while Loops 117 11 Functions 133 12 Dictionaries 161 13 Modules 187 14 Next Steps 205 Appendix 213 Index 219

    £18.69

  • Practical Go

    John Wiley & Sons Inc Practical Go

    1 in stock

    Book SynopsisYOUR PRACTICAL, HANDS-ON GUIDE TO WRITING APPLICATIONS USING GO Google announced the Go programming language to the public in 2009, with the version 1.0 release announced in 2012. Since its announcement to the community, and the compatibility promise of the 1.0 release, the Go language has been used to write scalable and high-impact software programs ranging from command-line applications and critical infrastructure tools to large-scale distributed systems. It's speed, simplicity, and reliability make it a perfect choice for developers working in various domains. In Practical Go - Building Scalable Network + Non-Network Applications, you will learn to use the Go programming language to build robust, production-ready software applications. You will learn just enough to building command line tools and applications communicating over HTTP and gRPC. This practical guide will cover: Writing command line applications Writing a HTTP Table of ContentsIntroduction xvii Getting Started xxi Chapter 1 Writing Command-Line Applications 1 Your First Application 1 Writing Unit Tests 8 Using the Flag Package 14 Testing the Parsing Logic 20 Improving the User Interface 22 Removing Duplicate Error Messages 23 Customizing Usage Message 24 Accept Name via a Positional Argument 25 Updating the Unit Tests 28 Summary 32 Chapter 2 Advanced Command-Line Applications 33 Implementing Sub-commands 33 An Architecture for Sub-command-Driven Applications 37 Testing the Main Package 43 Testing the Cmd Package 45 Making Your Applications Robust 47 User Input with Deadlines 48 Handling User Signals 52 Summary 56 Chapter 3 Writing HTTP Clients 57 Downloading Data 57 Testing the Data Downloader 59 Deserializing Received Data 61 Sending Data 66 Working with Binary Data 72 Summary 80 Chapter 4 Advanced HTTP Clients 81 Using a Custom HTTP Client 81 Downloading from an Overloaded Server 81 Testing the Time-Out Behavior 85 Configuring the Redirect Behavior 88 Customizing Your Requests 91 Implementing Client Middleware 92 Understanding the RoundTripper Interface 93 A Logging Middleware 94 Add a Header to All Requests 96 Connection Pooling 99 Configuring the Connection Pool 103 Summary 104 Chapter 5 Building HTTP Servers 105 Your First HTTP Server 105 Setting Up Request Handlers 108 Handler Functions 109 Testing Your Server 112 The Request Struct 114 Method 115 Url 115 Proto, ProtoMajor, and ProtoMinor 116 Header 116 Host 116 Body 116 Form, PostForm 116 MultipartForm 117 Attaching Metadata to a Request 118 Processing Streaming Requests 121 Streaming Data as Responses 126 Summary 132 Chapter 6 Advanced HTTP Server Applications 133 The Handler Type 133 Sharing Data across Handler Functions 134 Writing Server Middleware 139 Custom HTTP Handler Technique 139 The HandlerFunc Technique 140 Chaining Middleware 142 Writing Tests for Complex Server Applications 147 Code Organization 147 Testing the Handler Functions 153 Testing the Middleware 155 Testing the Server Startup 157 Summary 159 Chapter 7 Production- Ready HTTP Servers 161 Aborting Request Handling 161 Strategies to Abort Request Processing 165 Handling Client Disconnects 169 Server-Wide Time- Outs 173 Implement a Time- Out for All Handler Functions 173 Implementing Server Time- Out 174 Implementing Graceful Shutdown 179 Securing Communication with TLS 184 Configuring TLS and HTTP/2 184 Testing TLS Servers 188 Summary 192 Chapter 8 Building RPC Applications with gRPC 193 gRPC and Protocol Buffers 193 Writing Your First Service 197 Writing the Server 198 Writing a Client 203 Testing the Server 207 Testing the Client 211 A Detour into Protobuf Messages 214 Marshalling and Unmarshalling 214 Forward and Backward Compatibility 219 Multiple Services 220 Error Handling 226 Summary 228 Chapter 9 Advanced gRPC Applications 229 Streaming Communication 229 Server- Side Streaming 230 Client- Side Streaming 237 Bidirectional Streaming 239 Receiving and Sending Arbitrary Bytes 247 Implementing Middleware Using Interceptors 256 Client- Side Interceptors 257 Server- Side Interceptors 263 Wrapping Streams 269 Chaining Interceptors 271 Summary 272 Chapter 10 Production- Ready gRPC Applications 275 Securing Communication with TLS 275 Robustness in Servers 278 Implementing Health Checks 278 Handling Runtime Errors 286 Aborting Request Processing 289 Robustness in Clients 297 Improving Connection Setup 298 Handling Transient Failures 300 Setting Time- Outs for Method Calls 305 Connection Management 306 Summary 309 Chapter 11 Working with Data Stores 311 Working with Object Stores 312 Integration with Package Server 313 Testing Package Uploads 323 Accessing Underlying Driver Types 325 Working with Relational Databases 327 Integration with Package Server 328 Testing Data Storage 339 Data Type Conversions 343 Using Database Transactions 346 Summary 348 Appendix A Making Your Applications Observable 349 Logs, Metrics, and Traces 349 Emitting Telemetry Data 352 Command- Line Applications 352 HTTP Applications 360 gRPC Applications 364 Summary 366 Appendix B Deploying Applications 367 Managing Configuration 367 Distributing Your Application 370 Deploying Server Applications 372 Summary 373 Index 375

    1 in stock

    £24.79

  • Learning Agile

    O'Reilly Media Learning Agile

    1 in stock

    Book SynopsisAgile revolutionized the way people think about developing software, but there are literally dozens of ways that you can go agile. This book demystifies agile methodologies: why they're designed the way they are, what problems they address, and the values, principles, and ideas they embody

    1 in stock

    £29.99

  • Introduction to Information Quality

    AuthorHouse Introduction to Information Quality

    1 in stock

    Book Synopsis

    1 in stock

    £22.79

  • Unsettled Topics in the Application of Satellite

    Sae Edge Research Report Unsettled Topics in the Application of Satellite

    1 in stock

    Book Synopsis

    1 in stock

    £82.79

  • Android Apps Security

    APress Android Apps Security

    1 in stock

    Book SynopsisGain the information you need to design secure, useful, high-performing apps that expose end-users to as little risk as possible. This book shows you how to best design and develop Android apps with security in mind: explore concepts that you can use to secure apps and how you can use and incorporate these security features into your apps.What You Will Learn Identify data that should be secured Use the Android APIs to ensure confidentiality and integrity of data Build secure apps for the enterprise Implement Public Key Infrastructure and encryption APIs in apps Master owners, access control lists, and permissions to allow user control over app properties Manage authentication, transport layer encryption, and server-side security Who This Book Is ForExperienced Android app developers.Table of Contents1. Introduction.- 2. Recap of Secure Development Principles.- 3. Changes in Security Architecture.- 4. Security when Building Apps to Scale.- 5. Testing the Security of Your App (this covers pentesting and bug bounties).- 6. The Toolbag.- 7. Rooting an Android phone. 8. Looking at your App's Data through a Root shell.- Bypassing SSL Pinning (the holy grail of hacking apps).- 10. Reverse Engineering Android Apps.- 11. Incident Response.

    1 in stock

    £37.49

  • GameMaker Studio 100 Programming Challenges

    APress GameMaker Studio 100 Programming Challenges

    1 in stock

    Book SynopsisPush your GameMaker programming skills to the edge with 100 programming challenges using the popular GameMaker: Studio and GML. Each challenge includes an outline of the challenge, a scoring and time guide, useful GML code, and a working example provided in GMZ format. For more advanced programmers, each challenge comes with an additional task to complete.Think you''re a good GameMaker game application developer or programmer? Think again with this awesome book!What You''ll Learn Upgrade your skills with each specific game application coding challenge Create many different game events, action or scenarios Code for many different kinds of game applications or themes from space to adventure to sports to fantasy Who This Book Is ForGameMaker and GameMaker: Studio users and codeTable of ContentsChallenge 1 Maths Bar Graph 1Challenge 2 Clickable & Moveable Object 3Challenge 3 Room Fade In & Out Transition 5Challenge 4 Typewriter Text Effect 7Challenge 5 Audio Volume Change Based On Distance 9Challenge 6 Move Object To Position Using Path 11Challenge 7 Make The Screen Shake 13Challenge 8 Create Snow Effect 15Challenge 9 Password Easter Egg 17Challenge 10 Follow Two Objects In View 19Challenge 11 High / Low Number Game 21Challenge 12 Calculate Average Position Of Two Clicks 23Challenge 13 Retrieve Text File Web From & Save Locally 25Challenge 14 Shuffle Pack Of Playing Cards & Deal 5 27Challenge 15 Reverse Sentence Order 29Challenge 16 Rotate & Move Object To Mouse Position 31Challenge 17 Firework Display Using Effects 33Challenge 18 Random Sentence Generator 35Challenge 19 Pop Up RPG Style Text Box 37Challenge 20 Room Wrapping 39Challenge 21 Sprite Shadow 41Challenge 22 Make A Jukebox Player For 4 Songs 43Challenge 23 Scrolling Credits 45Challenge 24 Random Dice Roller 47Challenge 25 Substitution Cipher 49Challenge 26 Save Highscore To INI 51Challenge 27 Spawn Point 53Challenge 28 Dictionary Check 55Challenge 29 Draw Text With Shadow 57Challenge 30 Classic Brick & Ball Game Remake 59Challenge 31 Fire Projectile 61Challenge 32 World Clock 63Challenge 33 Text Based Quiz 65Challenge 34 On Screen Keyboard 67Challenge 35 Create A Driveable Tank That Leaves Tyre Tracks 69Challenge 36 Parallax Background 71Challenge 37 Click The Ghost 73Challenge 38 Particle Fire Effect 75Challenge 39 Bubble Sort 77Challenge 40 Unlockable Levels Select Screen 79Challenge 41 Moon Lander AI 81Challenge 42 Dodge The Barrels 83Challenge 43 Convert Celsius To Fahrenheit 85Challenge 44 Find Path To Position Avoiding Objects 87Challenge 45 Calculate BMI 89Challenge 46 Shuffle Pack Of Playing Cards & Save To Text 91Challenge 47 10 Green Bottles 93Challenge 48 English To Morse Code 95Challenge 49 Blitz Game Remake 97Challenge 50 Mini Golf Game Remake 99Challenge 51 Rock, Paper, Scissors Game Remake 101Challenge 52 Health Based On Distance 103Challenge 53 Tank Trax Game Remake 105Challenge 54 Two Separate Views 107Challenge 55 Word Typing Game 109Challenge 56 Destructible Terrain 111Challenge 57 Duck Hunt Game Remake 113Challenge 58 Keep Player In View 115Challenge 59 Fizz Buzz 117Challenge 60 Calculate Numbers 119Challenge 61 Particle Trail Effect 121Challenge 62 Draw Rectangle and Calculate Area & Perimeter 123Challenge 63 Random Terrain Generation 125Challenge 64 Drop The Coin (arcade style) 127Challenge 65 Calculate the Nth Result Of Fibonacci Sequence 129Challenge 66 Distance From Object To Mouse 131Challenge 67 Convert Decimal To Binary, Oct, Hex & Roman 133Challenge 68 Text In X Box 135Challenge 69 Frogger Game Remake 137Challenge 70 Take a Screen Shot 139Challenge 71 Slowly Move Direction 141Challenge 72 Pong Style Game Remake 143Challenge 73 Shooting Gallery 145Challenge 74 How Many Of Each Letter 147Challenge 75 Torpedo Game Remake 149Challenge 76 One Hundred Random Numbers 151Challenge 77 Coin Flip 153Challenge 78 Predict Path Of An Object 155Challenge 79 Dynamic Button 157Challenge 80 Sokoban Game Remake 159Challenge 81 Top Down Football 161Challenge 82 Top Down Racing 163Challenge 83 Convert Numbers (in digits) To Words 165Challenge 84 Zelda Style Views 167Challenge 85 Convert Text File To eBook 169Challenge 86 Planets Database (INI) 171Challenge 87 How Much Flour 173Challenge 88 Rotating Mini Map 175Challenge 89 Selectable Troops 177Challenge 90 Pipes 179Challenge 91 Arcade Style Horse Race Game 181Challenge 92 Road Builder 183Challenge 93 Chess Board Representation 185Challenge 94 1942 Game Remake 187Challenge 95 Create A Virtual ATM (bank teller) 189Challenge 96 Moon Lander Game Remake 191Challenge 97 Pixelate An Image 193Challenge 98 Miner 195Challenge 99 Follow Player (Ghost) 197Challenge 100 Multiplication Table 199Appendix A Points Chart<

    1 in stock

    £37.49

  • Practical JSF in Java EE 8

    APress Practical JSF in Java EE 8

    1 in stock

    Book SynopsisMaster the Java EE 8 and JSF (JavaServer Faces) APIs and web framework with this practical, projects-driven guide to web development. This book combines theoretical background with a practical approach by building four real-world applications. By developing these JSF web applications, you''ll take a tour through the other Java EE technologies such as JPA, CDI, Security, WebSockets, and more.In Practical JSF in Java EE 8, you will learn to use the JavaServer Faces web framework in Java EE 8 to easily construct a web-based user interface from a set of reusable components. Next, you add JSF event handling and then link to a database, persist data, and add security and the other bells and whistles that the Java EE 8 platform has to offer.After reading this book you will have a good foundation in Java-based web development and will have increased your proficiency in sophisticated Java EE 8 web development using the JSF framework.What You Will LearTable of ContentsPart I: TinyCalculator Project1. TinyCalculator2. Foundations3. JavaServer Faces4. Expression Language5. HTML Friendly Markup6. Configuration files7. Testing with Selenium8. Recap TinyCalculatorPart II: Books Project9. Preparing for Java EE 810. Introducing the Books Application11. Starting the Books App12. Java Persistence API13. JSF Templating14. Becoming International15. Bean Validation16. Contexts and Dependency Injection17. Conversation Scope18. Links19. Responsive Design20. Summary and PerspectivePart III: Intermezzo Project21. Intermezzo22. JSF Lifecycle revised23. Repetitive Structures23. JSF and BeanValidationPart IV: Alumni Project24. Alumni25. Validation26. Ajax27. Building Composite Components28. Secure Passwords29. Data Facade30. Activation Mail31. Cleanup (or Scheduled Tasks)32. Authentication and Authorization33. Account Handling34. Classroom Chat (WebSockets) 35. Changing Look and Feel36. Constants HandlingAfterwordAppendix AAppendix BAppendix CAppendix DAppendix E

    1 in stock

    £49.49

© 2026 Book Curl

    • American Express
    • Apple Pay
    • Diners Club
    • Discover
    • Google Pay
    • Maestro
    • Mastercard
    • PayPal
    • Shop Pay
    • Union Pay
    • Visa

    Login

    Forgot your password?

    Don't have an account yet?
    Create account