Web programming Books
Rosenfeld Media Managing Chaos: Digital Governance by Design
Book Synopsis
£33.29
Pearson Education (US) Learning Angular
Book Synopsis
£22.12
Pearson Education (US) ASP.NET Core in 24 Hours Sams Teach Yourself
Book Synopsis Jeffrey T. Fritz is a long time web developer with ASP, ASP.NET, and now ASP.NET Core. He loves the challenge of building web applications that look amazing while at the same time performing like an installed application. The browser is his bane and his best friend, as he has built applications that work with every browser going back as far as Internet Explorer 4. Jeff is a senior program manager on the .NET team responsible for the creation of the ASP.NET Core and .NET Core frameworks, and has taught several thousands of developers how to build better applications with Microsoft's ASP.NET frameworks. Previously, he was a developer advocate for Telerik where he specialized in their AJAX Control Toolkit. Jeff's proposals and designs led to the development of dozens of controls that many developers use daily. Jeff holds a bachelor of science degree in Management Sciences and Information Systems from the Pennsylvania State UniversityTable of Contents Chapter 1: Introduction to ASP.NET Core Chapter 2: Setup Your Machine Chapter 3: Hello World - Reviewing the basic project template Chapter 4: Server-side Application Configuration: Project.json - defining the ASP.NET configuration Chapter 5: Server-side Application Configuration: Startup class - service configuration Chapter 6: Server-side Configuration: Config.json and configuration environment variables Chapter 7: Data Access - Entity Framework 7 Chapter 8: Beginning MVC Core - Concepts of the MVC architecture Chapter 9: Beginning MVC Core - Our first controller Chapter 10: Beginning MVC Core - Writing a view for Search Chapter 11: Beginning MVC Core - Scaffolding views Chapter 12: Beginning MVC Core - Writing data from a Controller Chapter 13: Beginning MVC Core - Web API Methods Chapter 14: Single-Page-Application Architecture - Introducing Angular 2 Chapter 15: Single-Page-Application Architecture - Interacting with server-side methods Chapter 16: Single-Page-Application Architecture - Routing Chapter 17: Configuration: Package.json - npm configuration Chapter 18: Configuration: bower.json - static file references from Bower Chapter 19: Configuration: gulpfile.js - Automating tasks Chapter 20: Security - Authentication configuration Chapter 21: Security - Authorization Chapter 22: Advanced MVC Core - Tag Helpers Chapter 23: Deployment to Production Chapter 24: ASP.NET Core and Docker Containers
£22.12
John Wiley & Sons Inc Python AllinOne For Dummies
Book Synopsis
£27.99
Manning Publications ASP.NET Core in Action, Third Edition
Book SynopsisBuild professional-grade full-stack web applications using C# and ASP.NET Core. ASP.NET Core in Action, 3rd edition by Microsoft MVP Andrew Lock, is a fully updated edition, ideal for intermediate C# developers, and teaches you how to use your C# and .NET skills to build amazing cross-platform web applications. This revised bestseller reveals the latest .NET patterns, including minimal APIs and minimal hosting. Even if you have never worked with ASP.NET, you will soon start creating productive cross-platform web apps. Features include: Build minimal APIs for serving JSON to client-side applications Create dynamic, server-side rendered applications using Razor Pages User authentication and authorisation Store data using Entity Framework Core Unit and integration tests for ASP.NET Core applications Write custom middleware and components About the technology Developers love ASP.NET Core for its libraries and pre-built components that maximize productivity. This awesome web framework empowers you to build web applications using HTTP APIs, server-side rendered HTML, and long-running server processes - all by using the same familiar structure and components. Version 7.0 takes full advantage of new C# features, easy-to-build minimal APIs, and big performance upgrades.
£38.99
Manning Publications 100 Go Mistakes
Book Synopsis100 Go Mistakes: How to Avoid Them introduces dozens of techniques for writing idiomatic, expressive, and efficient Go code that avoids common pitfalls. By reviewing dozens of interesting, readable examples and real-world case studies, you'll explore mistakes that even experienced Go programmers make. This book is focused on pure Go code, with standards you can apply to any kind of project. As you go, you'll navigate the tricky bits of handling JSON data and HTTP services, discover best practices for Go code organization, and learn how to use slices efficiently. Your code speed and quality will enjoy a huge boost when you improve your concurrency skills, deal with error management idiomatically, and increase the quality of your tests. About the Technology Go is simple to learn, yet hard to master. Even experienced Go developers may end up introducing bugs and inefficiencies into their code. This book accelerates your understanding of Go's quirks, helping you correct mistakes and dodge pitfalls on your path to Go mastery.Trade Review"This book is one any Golang developer will want on their bookshelf. Far from being dogmatic or prescriptive, it often provides multiple solutions to the reader, leaving some room for flexibility and individual taste." Thad Meyer "Goes beyond the basics with lots of good examples for when concepts are tough to grasp. As someone who's been coding Go for about 2 years, I learned new things." Matt Welke "This book felt catered to me. I'm not a developer by career path, however it provides a LOT of insight into what I should be thinking about as someone without any education or formal training in Software Development. Really, really nice." Francis J. Setash "This book not only points out common mistakes and anti-patterns, it provides solutions—a perfect combination for deeper learning." Kevin Liao "Read this, it'll give you years of experience of Go just learning from the book. Very valuable!" Keith Kim
£34.19
Manning Publications React in Action
Book SynopsisReact is a highly-performant tool that implements a one-way data flow model. Reasoning about an interface or application written with React ends up being much easier because it decreases overall complexity for developers working with it. React in Action introduces front-end developers to the React framework and related tools. Readers will work their way from “raw” React towards JSX, and from basic static components to ones that are dynamic and interactive. Key Features: · Clearly written · Example-rich · Hands-on Written for developers familiar with HTML, CSS, and JavaScript who want to create more robust front-end applications. About the Technology: React is an open source JavaScript framework that lets developers quickly create user interfaces for web applications.
£30.59
O'Reilly Media Fluent Python
Book SynopsisPython's simplicity lets you become productive quickly, but often this means you aren't using everything the language has to offer. With the updated edition of this hands-on guide, you'll learn how to write effective, modern Python 3 code by leveraging its best ideas. Discover and apply idiomatic Python 3 features beyond your past experience.
£47.99
John Wiley & Sons JavaScript Essentials For Dummies
Book SynopsisThe concise and digestible get-started guide to JavaScript programming JavaScript Essentials For Dummies is your quick reference to all the core concepts about JavaScriptthe dynamic scripting language that is often the final step in creating powerful websites. This no-nonsense book gets right to the point, eliminating review material, wordy explanations, and fluff. Find out all you need to know about the foundations of JavaScript, swiftly and crystal clear. Perfect for a brush-up on the basics or as an everyday desk reference on the job, this is the reliable little book you can always turn to for answers. Get a quick and thorough intro to the basic concepts of coding with JavaScriptReview what you've already learned or pick up essential new skillsAdd interactive features to websites with JavaScript programmingKeep this concise reference book handy for jogging your memory as you work This book is to the point, focusing on the key topics you need to know about this popular programming language. Great for supplementing classroom learning, reviewing for a certification, or staying knowledgeable on the job.
£11.69
John Wiley & Sons Inc JavaScript AllinOne For Dummies
Book SynopsisTable of ContentsIntroduction 1 Book 1: JavaScript Fundamentals 7 Chapter 1: Jumping into JavaScript 9 Chapter 2: Filling Your JavaScript Toolbox 41 Chapter 3: Using Data 63 Chapter 4: Working with Operators and Expressions 81 Chapter 5: Controlling Flow 91 Chapter 6: Using Arrays 105 Chapter 7: Making and Using Objects 125 Chapter 8: Writing and Running Functions 139 Chapter 9: Getting Oriented with Classes 167 Chapter 10: Making Things Happen with Events 181 Chapter 11: Writing Asynchronous JavaScript 197 Chapter 12: Using JavaScript Modules 223 Book 2: Meet Your Web Browser 231 Chapter 1: What a Web Browser Does 233 Chapter 2: Programming the Browser 241 Book 3: React 261 Chapter 1: Getting Started with React 263 Chapter 2: Writing JSX 281 Chapter 3: Building React Components 297 Chapter 4: Using Data and Events in React 327 Book 4: Vue 341 Chapter 1: Getting an Overview of Vue 343 Chapter 2: Introducing Vue Components 357 Chapter 3: Making Vue Templates 369 Chapter 4: Using Data and Reactivity 395 Chapter 5: Responding to Events 411 Book 5: Svelte 421 Chapter 1: Getting Started with Svelte 423 Chapter 2: Building with Components 437 Chapter 3: Designing Templates 451 Chapter 4: Using Directives 463 Chapter 5: Using the Component Lifecycle 471 Chapter 6: Advanced Svelte Reactivity 483 Book 6: Sharpening Your Tools 493 Chapter 1: Building from Scratch 495 Chapter 2: Optimizing and Bundling 513 Chapter 3: Testing Your JavaScript 535 Book 7: Node.js 557 Chapter 1: Node.js Fundamentals 559 Chapter 2: Streaming 587 Chapter 3: Working with Buffers 603 Chapter 4: Accessing the File System 613 Chapter 5: Networking with Node 627 Chapter 6: Using Events 639 Chapter 7: Error Handling and Debugging 651 Chapter 8: Accessing Databases 673 Chapter 9: Riding on the Express Train 697 Chapter 10: Registration and Authentication 721 Index 755
£23.79
John Wiley & Sons Inc HTML and CSS
Book SynopsisA full-color introduction to the basics of HTML and CSS from the publishers of Wrox! Every day, more and more people want to learn some HTML and CSS.Table of ContentsIntroduction 2 Chapter 1: Structure 12 Chapter 2: Text 40 Chapter 3: Lists 62 Chapter 4: Links 74 Chapter 5: Images 94 Chapter 6: Tables 126 Chapter 7: Forms 144 Chapter 8: Extra Markup 176 Chapter 9: Flash, Video & Audio 200 Chapter 10: Introducing CSS 226 Chapter 11: Color 246 Chapter 12: Text 264 Chapter 13: Boxes 300 Chapter 14: Lists, Tables & Forms 330 Chapter 15: Layout 358 Chapter 16: Images 406 Chapter 17: HTML5 Layout 428 Chapter 18: Process & Design 452 Chapter 19: Practical Information 476 Index 493
£30.40
John Wiley & Sons Inc HTML CSS JavaScript AllinOne For Dummies
Book SynopsisTable of ContentsIntroduction 1 Book 1: Getting Started 5 Chapter 1: Getting Acquainted with HTML, CSS, and JavaScript 7 Chapter 2: Getting Ready to Code 39 Chapter 3: Finding and Setting Up a Web Host 47 Chapter 4: Testing and Validating Your Code 59 Book 2: Learning HTML Basics 77 Chapter 1: Building Good Bones: Structuring the Page 79 Chapter 2: Adding Links, Lists, and Other Text Tidbits 97 Chapter 3: Working with Images, Video, and other Media 123 Chapter 4: Building Tables with Your Bare Hands 143 Chapter 5: Using Forms to Make a Page Interactive 163 Chapter 6: Making Your Web Pages Accessible 181 Book 3: Learning CSS Basics 203 Chapter 1: Figuring Out the CSS Box Model 205 Chapter 2: Getting to Know the CSS Selectors 235 Chapter 3: Pseudo School: Learning Pseudo-Classes and Pseudo-Elements 251 Chapter 4: Making CSS Make Sense 287 Chapter 5: Taking the Measure of CSS 321 Chapter 6: Fancifying Pages with Colors and Backgrounds 337 Chapter 7: Taking Your Text Up a Notch with Web Typography 363 Book 4: Building Dynamic Pages with JavaScript 397 Chapter 1: JavaScript: The Bird’s-Eye View 399 Chapter 2: Understanding Variables 411 Chapter 3: Building Expressions 427 Chapter 4: Controlling the Flow of JavaScript 457 Chapter 5: Harnessing the Power of Functions 481 Chapter 6: Playing with the Document Object Model 513 Chapter 7: Working with Arrays 553 Chapter 8: Manipulating Strings, Dates, and Numbers 583 Chapter 9: Storing User Data in the Browser 617 Chapter 10: Debugging Your Code 627 Chapter 11: Processing Form Data 649 Book 5: Looking Good with Layouts 673 Chapter 1: Exploring Some Layout Basics 675 Chapter 2: Getting Fancy with Flexbox 703 Chapter 3: Laying Out a Page with CSS Grid 737 Chapter 4: Creating Responsive Layouts 765 Index 801
£24.79
O'Reilly Media Introduction to Machine Learning with Python
Book SynopsisMachine learning has become an integral part of many commercial applications and research projects, but this field is not exclusive to large companies with extensive research teams. If you use Python, even as a beginner, this book will teach you practical ways to build your own machine learning solutions.
£35.99
O'Reilly Media HTML5 Pocket Reference
Book SynopsisHTML5 Pocket Reference is the classic reference that web designers and developers have been keeping close at hand for more than thirteen years. This fifth edition has been updated to reflect the current state of HTML5, including the HTML5 Candidate Recommendation, the emerging HTML5.1 Working Draft, and the living WHATWG standard.
£16.99
O'Reilly Media Spring Boot Up and Running
Book SynopsisSpring Boot is the most widely used Java framework available. Its ease and power have revolutionized application development from monoliths to microservices. Yet Spring Boot's simplicity can also be confounding. This practical book shows you how to use this framework to write successful mission-critical applications.
£39.74
Manning Publications Vue.js in Action
Book SynopsisDescription Vue.js is a front-end framework that builds on many of the reactive UI ideas introduced in React.js. Vue.js in Action teaches readers to build fast, flowing web UI with the Vue.js framework. As they move through the book, readers put their skills to practice by building a complete web store application with product listings, a checkout process, and an administrative interface! Key features · Add View and ViewModel interactivity · Work with components · Extend Vue.js with custom plugins and directives · Learn data modeling and consuming APIs Audience Written for web developers with beginning to intermediate in JavaScript, HTML, and CSS. About the technologyAs a second-generation reactive UI framework, Vue was designed from the ground up with developer usability in mind. It's far more intuitive than React, featuring a clean event lifecycle, easy two-way data binding, and a common-sense project structure.
£34.19
The Pragmatic Programmers Programming Phoenix LiveView: Interactive Elixir Web Programming Without Writing Any JavaScript
a huge range and FREE tracked UK delivery on ALL orders.
£37.99
Manning Publications Microservice Patterns: With examples in Java
Book SynopsisDescription All aspects of software development and deployment become painfully slow. The solution is to adopt the microservice architecture. This architecture accelerates software development and enables continuous delivery and deployment of complex software applications. Microservice Patterns teaches enterprise developers and architects how to build applications with the microservice architecture. This book also teaches readers how to refactor a monolithic application to a microservice architecture. Key features · In-depth guide · Practical examples · Step-by-step instructions Audience Readers should be familiar with the basics of enterprise application architecture, design, and implementation. About the technology Microservice architecture accelerates software development and enables continuous delivery and deployment of complex software applications. Author biography Chris Richardson is a developer and architect. He is a Java Champion, a JavaOne rock star and the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices. Chris is the creator of http://microservices.io , a website describing how to develop and deploy microservices. He provides microservices consulting and training and is working on his third startup http://eventuate.io , an application platform for developing microservices.Trade Review'A comprehensive overview of the challenges teams face when moving to microservices, with industry-tested solutions to these problems.' Tim Moore, Lightbend 'Pragmatic treatment of an important new architectural landscape.' Simeon Leyzerzon, Excelsior Software 'A solid compendium of information that will quicken your migration to this modern cloud-based architecture.' John Guthrie, Dell/EMC 'How to understand the microservices approach, and how to use it in real life.' Potito Coluccelli, Bizmatica EconocomTable of Contentstable of contents READ IN LIVEBOOK 1.ESCAPING MONOLITHIC HELL READ IN LIVEBOOK 2.DECOMPOSITION STRATEGIES READ IN LIVEBOOK 3.INTER-PROCESS COMMUNICATION IN A MICROSERVICE ARCHITECTURE READ IN LIVEBOOK 4.MANAGING TRANSACTIONS WITH SAGAS READ IN LIVEBOOK 5.DESIGNING BUSINESS LOGIC IN A MICROSERVICE ARCHITECTURE READ IN LIVEBOOK 6.DEVELOPING BUSINESS LOGIC WITH EVENT SOURCING READ IN LIVEBOOK 7.IMPLEMENTING QUERIES IN A MICROSERVICE ARCHITECTURE READ IN LIVEBOOK 8.EXTERNAL API PATTERNS READ IN LIVEBOOK 9.TESTING MICROSERVICES - PART 1 READ IN LIVEBOOK 10.TESTING MICROSERVICES - PART 2 READ IN LIVEBOOK 11.DEVELOPING PRODUCTION READY SERVICES READ IN LIVEBOOK 12.DEPLOYING MICROSERVICES READ IN LIVEBOOK 13.REFACTORING TO MICROSERVICES
£35.99
John Wiley & Sons Inc Designing the Internet of Things
Book SynopsisExplores the platforms that you can use to develop hardware or software, discusses design concepts that can make your products eye-catching and appealing. This book explains how to combine sensors, servos, robotics, Arduino chips, and more with various networks or the Internet, to create interactive, cutting-edge devices.Trade ReviewAccording to friends of mine who work in the disciplines above, this is an excellent introduction to read through the principles of prototyping through to manufacture and business considerations (Mob76 Outlook, December 2013)Table of ContentsIntroduction 1 PART I: PROTOTYPING 5 Chapter 1: The Internet of Things: An Overview 7 Chapter 2: Design Principles for Connected Devices 21 Chapter 3: Internet Principles 41 Chapter 4: Thinking About Prototyping 63 Chapter 5: Prototyping Embedded Devices 87 Chapter 6: Prototyping the Physical Design 147 Chapter 7: Prototyping Online Components 173 Chapter 8: Techniques for Writing Embedded Code 205 PART II: FROM PROTOTYPE TO REALITY 225 Chapter 9: Business Models 227 Chapter 10: Moving to Manufacture 255 Chapter 11: Ethics 289 Index 311
£16.99
Manning Publications Natural Language Processing in Action:
Book SynopsisDescription Modern NLP techniques based on machine learning radically improve the ability of software to recognize patterns, use context to infer meaning, and accurately discern intent from poorly-structured text. In Natural Language Processing in Action, readers explore carefully chosen examples and expand their machine's knowledge which they can then apply to a range of challenges. Key Features • Easy-to-follow • Clear examples • Hands-on-guide Audience A basic understanding of machine learning and some experience with a modern programming language such as Python, Java, C++, or JavaScript will be helpful. About the technology Natural Language Processing (NLP) is the discipline of teaching computers to read more like people, and readers can see examples of it in everything from chatbots to the speech-recognition software on their phone. Hobson Lane has more than 15 years of experience building autonomous systems that make important decisions on behalf of humans. Hannes Hapke is an Electrical Engineer turned Data Scientist with experience in deep learning. Cole Howard is a carpenter and writer turned Deep Learning expert.
£37.99
O'Reilly Media Building Microservices
Book SynopsisWith lots of examples and practical advice, the second edition of this practical book takes a holistic view of the topics that system architects and administrators must consider when building, managing, and evolving microservice architectures.
£47.99
No Starch Press,US Eloquent Javascript, 3rd Edition: A Modern
Book SynopsisJavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications. This much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code.Trade Review“Eloquent Javascript 3rd Edition is a worthy and much-needed update to the popular programming book. The fact that the book covers ES6 is worth a re-read, but the new edition goes above and beyond with new illustrations, a new exercise, and tighter writing. The 3rd edition of the book is substantially improved from its predecessors and worthy of the hype.”—Books on Code"It’s a smart, lean JavaScript tutorial that exists as an in-print book from No Starch Press, and a free, nicely formatted web version . . . easily the most enjoyable read in this list. And there are so many useful insights that you won’t be bored."—Matthew MacDonald, Medium's Young Coder“This is all the JavaScript knowledge you’ll need to hit the ground running in a JavaScript project . . . it’s a book I will be frequently revisiting as it has put JavaScript back on my radar.”—GeekTeckStuff“This book would make a great addition to any developer's reference books . . . I really like the author's style of writing and clarity of explanations. The sample code and exercises also work, which can be a rare feature in tech-related books”—Gary Woodfine, Software Developer“I think this is one of the most enjoyable programming books I’ve read. It covers the core features of the language concisely but then goes on to illustrate how to use those features.”—Ian Hopkinson, IanHopkinson.org“If you’re at all interested in learning JavaScript, making this your first guide could mean the difference between getting discouraged and giving up and really getting into programming as a lifelong venture.”—Joshua Johnson, Design Shack“Marijn Haverbeke is a software philosopher and all-round genius. He also has a terrific sense of humor and writes both prose and code in a friendly and un-intimidating fashion. In common with the very best teachers he dispenses his wisdom with disarming simplicity. I became a better architect, author, mentor and developer because of this book. It deserves to share shelf space with Flannagan and Crockford.”—Angus Croll, Javascript We Blog"A tour de force that takes you from the fundamentals to the heights of JavaScript mastery. Marijn Haverbeke’s conversational prose breathes life into JavaScript, making it accessible and engaging."—Alex Maher, .NET C# dev"The author, Marijn Haverbeke, has a great voice."—Abu Sayed, Sayed.Cyou Blog"One of the things that makes [Eloquent JavaScript, 3rd Edition] so good is that it doesn’t shy away from complexity . . . Haverbeke is a talented teacher, and he seems to have an intuitive understanding of how difficult concepts can be explained without oversimplifying them."—Neil Abad, Book Review Buffs
£28.49
APress Beginning Database Programming Using ASP.NET Core
Book SynopsisHit the ground running with this book to quickly learn the fundamentals of HTML form processing, user authentication, and database CRUD (Create, Read, Update, and Delete) operations using the ASP.NET Core family of technologies. You will utilize cutting-edge and popular technology options from both the server side and client side to help you achieve your web application goals as quickly as possible.Developers who want to learn ASP.NET Core and complementary technologies are often overwhelmed by the large number of options involved in building modern web applications. This book introduces you to the most popular options so that you can confidently begin working on projects in no time. You will learn by example, building a sample application that demonstrates how the same application can be built using different options. This experiential approach will give you the basic skills and knowledge to understand how the options work together so that you can make an informed decision abouTable of ContentsChapter 01 : Introduction to ASP.NET Core Chapter 02 : Sample Application Chapter 03 : ASP.NET Core MVC Chapter 04 : ASP.NET Core Razor Pages Chapter 05 : ASP.NET Core Web API Chapter 06 : jQuery Chapter 07 : Angular Chapter 08 : Blazor Chapter 09 : Azure SQL Database, Azure Cosmos DB, and MongoDB Chapter 10 : Deployment
£44.99
Manning Publications Kafka in Action
Book SynopsisKafka in Action is a practical, hands-on guide to building Kafka-based data pipelines. Filled with real-world use cases and scenarios, this book probes Kafka's most common use cases, ranging from simple logging through managing streaming data systems for message routing, analytics, and more. In systems that handle big data, streaming data, or fast data, it's important to get your data pipelines right. Apache Kafka is a wicked-fast distributed streaming platform that operates as more than just a persistent log or a flexible message queue. Key Features · Understanding Kafka's concepts · Implementing Kafka as a message queue · Setting up and executing basic ETL tasks · Recording and consuming streaming data · Working with Kafka producers and consumers from Java applications · Using Kafka as part of a large data project team · Performing Kafka developer and admin tasks Written for intermediate Java developers or data engineers. No prior knowledge of Kafka is required. About the technology Apache Kafka is a distributed streaming platform for logging and streaming data between services or applications. With Kafka, it's easy to build applications that can act on or react to data streams as they flow through your system. Operational data monitoring, large scale message processing, website activity tracking, log aggregation, and more are all possible with Kafka. Dylan Scott is a software developer with over ten years of experience in Java and Perl. His experience includes implementing Kafka as a messaging system for a large data migration, and he uses Kafka in his work in the insurance industry.
£33.99
No Starch Press,US Impractical Python Projects: Playful Programming
Book SynopsisImpractical Python picks up where the complete beginners book leaves off, expanding on existing concepts and introducing new tools and techniques that you'll use every day. Just flip to any page, cookbook-style, and test your skills with software design, code optimization, and debugging. To keep thing interesting, each project includes a zany twist featuring historical incidents, pop culture, literature, comics, and the purely scientific.Trade Review"Python is a programming language, but it is also fun to play with. This book recognizes that."—Geek Tech Stuff"Rather than being an introductory text, Vaughan’s book pushes you in interesting directions for solving a diverse set of problems. Most of these “impractical” projects, while themselves being not so useless after all, will have parallels to real life projects." —Greg Laden, Greg Laden's Blog"The book is not a Python tutorial or guide. Instead, it presents stimulating coding projects for non-programmers who want to use Python for doing experiments, test theories, or simulate natural phenomena.”—Paolo Amoroso, Moonshots Beyond the Cloud Blog"A must have second book for every developer that ever wants to learn Python as a language." —Ian Mizer, Atlanta Python Programmers Group"The writing is excellent . . . Every project is accessible and has enough explanation to motivate coding." —Ravi Srinivasan, Playful PythonTable of ContentsIntroductionChapter 1: Silly Name GeneratorChapter 2: Finding Palingram SpellsChapter 3: Solving AnagramsChapter 4: Decoding American Civil War CiphersChapter 5: Encoding English Civil War CiphersChapter 6: Writing in Invisible InkChapter 7: Breeding Giant Rats with Genetic AlgorithmsChapter 8: Counting Syllables for Haiku PoetryChapter 9: Writing Haiku with Markov Chain AnalysisChapter 10: Are We Alone? Exploring the Fermi ParadoxChapter 11: The Monty Hall ProblemChapter 12: Securing your Nest EggChapter 13: Simulating an Alien VolcanoChapter 14: Mapping Mars with the Mars OrbiterChapter 15: Improving Your Astrophotography with Planet StackingChapter 16: Finding Frauds with Benford's LawAppendix: Practice Project Solutions
£24.64
Pearson Education (US) Effective Java
Book Synopsis Joshua Bloch is a professor at Carnegie Mellon University. He was formerly the chief Java architect at Google, a distinguished engineer at Sun Microsystems, and a senior systems designer at Transarc. He led the design and implementation of numerous Java platform features, including the JDK 5.0 language enhancements and the Java Collections Framework. He holds a Ph.D. in computer science from Carnegie Mellon University and a B.S. in computer science from Columbia University. Table of Contents Chapter 1: Introduction Chapter 2: Creating and Destroying Objects Chapter 3: Methods Common to All Objects Chapter 4: Classes and Interfaces Chapter 5: Generics Chapter 6: Enums and Annotations Chapter 7: Lambdas and Streams Chapter 8: Methods Chapter 9: General Programming Chapter 10: Exceptions Chapter 11: Concurrency Chapter 12: Serialization References Index
£37.39
Manning Publications Design of Web APIs, The
Book SynopsisWeb APIs are everywhere, giving developers an efficient way to interact with applications, services, and data. Well-designed APIs are a joy to use; poorly-designed APIs are cumbersome, confusing, and frustrating. The Design of EverydayAPIs is a practical, example packed guide to crafting extraordinary web APIs. Author Arnaud Lauret demonstrates fantastic design principles and techniques you can apply to both public and private web APIs. The Design of Everyday APIs introduces you to the challenging and creative world of API design. In this experience-driven guide, you'll learn to think like an API designer, embracing effective practices for requirements gathering, blending business and technical goals, and adopting a consumer-first mindset. You'll master the lifecycle of web API design, including the all-important secure-by-design approach. This book teaches principles that can be applied in any style of API. Most examples are illustrated using REST and the OpenAPI specification. Written for developers with minimal experience building and consuming APIs. Key Features Characteristics of a well-designed API Explore the full API design lifecycle Designing user-oriented APIs Secure APIs by design Evolving existing APIs Validating your API designs Arnaud Lauret is a software architect with 15 years of experience in the banking industry. He has spent a decade using, designing, and building APIs. He’s known on the web as the API Handyman (http://apihandyman.io) and is the creator the API Stylebook (http://apistylebook.com), a collection of resources for API designers.
£34.19
Manning Publications Data Analysis with Python and PySpark
Book SynopsisWhen it comes to data analytics, it pays tothink big. PySpark blends the powerful Spark big data processing engine withthe Python programming language to provide a data analysis platform that can scaleup for nearly any task. Data Analysis with Python and PySpark is yourguide to delivering successful Python-driven data projects. Data Analysis with Python and PySpark is a carefully engineered tutorial that helps you use PySpark to deliver your data-driven applications at any scale. This clear and hands-on guide shows you how to enlarge your processing capabilities across multiple machines with data from any source, ranging from Had oop-based clusters to Excel worksheets. You'll learn how to break down big analysis tasks into manageable chunks and how to choose and use the best PySpark data abstraction for your unique needs. The Spark data processing engine is an amazing analytics factory: raw data comes in,and insight comes out. Thanks to its ability to handle massive amounts of data distributed across a cluster, Spark has been adopted as standard by organizations both big and small. PySpark, which wraps the core Spark engine with a Python-based API, puts Spark-based data pipelines in the hands of programmers and data scientists working with the Python programming language. PySpark simplifies Spark's steep learning curve, and provides a seamless bridge between Spark and an ecosystem of Python-based data science tools. Trade Review“A great and gentle introduction to spark.” Javier Collado Cabeza “A phenomenal introduction to PySpark from the ground up.”Anonymous Reviewer “A great book to get you started with PySpark!” Jeremy Loscheider “Takes you on an example focused tour of building pyspark data structures from the data you provide and processing them at speed.” Alex Lucas “If you need to learn PySpark (as a Data Scientist or Data Wrangler) start with this book!”Geoff Clark
£40.85
Manning Publications Modern Java in Action: Lambdas, streams,
Book SynopsisDescription Manning's bestselling Java 8 book has been revised for Java 9! In Java 8 and 9 in Action, readers build on their existing Java language skills with the newest features and techniques. The release of Java 9 builds on what made Java 8 so exciting. In addition to Java 8's lambdas and streams, Java 9 adds a host of new features of its own. It includes new library features to support reactive programming, which give users new ways of thinking about programming and writing code that is easier to read and maintain. Key Features · Contains all of Java 9’s new features · The Java Module System · Testing and debugging with lambdas Audience This book is written for programmers familiar with Java and basic OO programming. About the Technology Java 9 introduces the long-awaited Java Module System. Modules encourage users to write their code in smaller units that are easier to test, manage and release. Java 9 also helps programmers by enriching the functional-programming and streams features of Java 8.
£41.79
Pearson Education (US) Learning React
Book Synopsis Kirupa Chinnathambi has spent most of his life trying to teach others to love web development as much as he does. In 1999, before blogging was even a word, he started posting tutorials on kirupa.com. In the years since then, he has written hundreds of articles, penned a few books (none as good as this one, of course!), and recorded a bunch of videos you can find on YouTube. When he isn't writing or talking about web development, he spends his waking hours helping make the web more awesome as a Program Manager at Microsoft. In his nonwaking hours, he is probably sleepingor writing about himself in the third person. You can find him on Twitter (twitter.com/kirupa), Facebook (facebook.com/kirupa), or email (kirupa@kirupa.com). Feel free to contact him anytime.Trade ReviewAmazon Reviews of the First Edition This is the best book to get up and running with React.JS I found this book to be an amazing introductory text to learning React. Leveraging creativity interspersed with a bit of humor, the author took complex topics and made it more easily understood. Even when the difficulty ramped up, Kirupa made the dry and mundane almost non-existent. I can't recall once wishing for the book to end. That's tough to do - definitely more art than science. If you're looking for a solid, working understanding of getting up & running with React - this is the book. (January 20, 2017) Great book from start to finish I rarely review books. I don't even remember the last time I reviewed a book. I may have never reviewed a book in my life. In any event, I felt obligated to review this book because it was so well written. I've ready many programming books on many languages and this one is the only one to keep my attention all the way to the end. Every chapter builds upon the previous one. It starts out elementary and then works its way through more complex ideas. I understand JavaScript but this book explained to me how React works. The author is a born teacher and I appreciate his efforts! Thank you. (June 8, 2017) Absolutely amazing Absolutely blown away with how good of a book this is. I've been trying different tutorials, along with a couple of paid video courses. The video courses were fairly good, but they started off with complex projects and built them from the ground up. While it was cool to see how a complex app is actually built with React, there is no replacement for how Kirupa has figured out how to explain everything so simply. One difference here is that he starts with the very minimal things you need to know, explains those, and then expands to something a little more complex in the next chapter. This, combined with some humor, is just perfect. I've read a lot of IT and development books over the years, and I think this may be the best one I've read. I'm only around halfway done with the book, but wow, again, I'm blown away. I don't generally write reviews much, but I had to on this one. You're a natural teacher man, and thank you for this one! Seriously, thank you. If I could give this one more than 5 stars, I absolutely would. (February 17, 2017) Well Written I cannot comment enough on the readability of this text. Seasoned and rookie web developers should have no problem understanding the subject matter. (March 21, 2017) Makes sense of difficult concepts, and is a fun, easy read This is actually the only tech book I have ever read cover-to-cover. The author is a natural teacher. I tried a different react book and a bunch of online tutorials, and the concepts just didn't "click" for me. But after reading this, I understand it alot better. If you're starting at square one with react, this is square one. Side note: it's also very nicely designed. Shouldn't matter that much for a tech book, but then again we ARE talking about the view layer here! (January 21, 2017) Absolutely love this book Absolutely love this book! I have read other books and I've even taken a video course on React and this is the first time the author actually clearly explains the benefits of React. The other texts assumed the reader knows and jumps right in. I am a big reader and this is by far the best information on learning React that I've found. (January 25, 2018) Great examples, code, and explanations Spectacular job of keeping things simple by only focusing on one point at a time, choosing great examples, and using readable code with well-crafted, simple explanations. Many authors try to achieve this the lazy way- by omitting large amounts of code and relying on the reader to download it and understand it on her own. By contrast, the Learning React author included all of the code in the book and was not afraid to repeat code when it reinforced his point. (May 8, 2018) Excellent primer for React The author does a great job of introducing one concept at a time and then ties it all together. The overall tone of the book makes it easy to read cover to cover in one sitting. (January 31, 2017) Great book for beginners Great book so far. I'm about 25% in and it's already paid off in my React class. Love the friendly writing style, the easy-to-understand code snippets, and the well written explanations. Great job.(January 26, 2018) Skip the command line and learn how to build React apps first I'm learning React (after learning many other languages over the years). This is the single best book I've read to get started with a new language! The author has a terrific sense of humor and a logical progression from front to back. What had been the bane of my existence for React - dealing with setup of Node.js using the command line interface and the many issues I had getting done - he eliminated and put toward the end of the book. I actually got to enjoy going through the book, and try it all out before dealing with the command line. Talk about getting off to a good start! I still have a lot to learn, but I feel confident that I can learn what I need to know. (March 23, 2018) A really great way to learn the fundamentals of ReactJS A really great way to learn the fundamentals of ReactJS. This books really breaks it down barney style and teaches you how to write react with JSX; which is the easiest way to learn the JS library. Buy this book if you are willing to learn the JS library. (September 14, 2017) Table of Contents1 Introducing React Old-School Multipage Design New-School Single-Page Apps Meet React Automatic UI State Management Lightning-Fast DOM Manipulation APIs to Create Truly Composable UIs Visuals Defined Entirely in JavaScript Just the V in an MVC Architecture 2 Building Your First React App Dealing with JSX Getting Your React On Displaying Your Name It’s All Still Familiar Changing the Destination Styling It Up! 3 Components in React Quick Review of Functions Changing How We Deal with UI Meet the React Component Creating a Hello, World! Component Specifying Properties First Part: Updating the Component Definition Second Part: Modifying the Component Call Dealing with Children 4 Styling in React Displaying Some Vowels Styling React Content Using CSS Understand the Generated HTML Just Style It Already! Styling Content the React Way Creating a Style Object Actually Styling Our Content Making the Background Color Customizable 5 Creating Complex Components From Visuals to Components Identifying the Major Visual Elements Identifying the Components Creating the Components The Card Component The Square Component The Label Component Passing Properties, Again! Why Component Composability Rocks 6 Transferring Properties Problem Overview Detailed Look at the Problem Meet the Spread Operator A Better Way to Transfer Properties 7 Meet JSX...Again! What Happens with JSX? JSX Quirks to Remember Evaluating Expressions Returning Multiple Elements You Can’t Specify CSS Inline Comments Capitalization, HTML Elements, and Components Your JSX Can Be Anywhere 8 Dealing with State in React Using State Our Starting Point Getting Our Counter On Setting the Initial State Value Starting Our Timer and Setting State Rendering the State Change Optional: The Full Code 9 Going from Data to UI in React The Example Your JSX Can Be Anywhere, Part II Dealing with Arrays 10 Events in React Listening and Reacting to Events Starting Point Making the Button Click Do Something Event Properties Meet Synthetic Events Doing Stuff with Event Properties More Eventing Shenanigans You Can’t Directly Listen to Events on Components Listening to Regular DOM Events The Meaning of this Inside the Event Handler React...Why? Why? Browser Compatibility Improved Performance 11 The Component Lifecycle Meet the Lifecycle Methods See the Lifecycle Methods in Action The Initial Rendering Phase Getting the Default Props Getting the Default State componentWillMount render componentDidMount The Updating Phase Dealing with State Changes shouldComponentUpdate componentWillUpdate render componentDidUpdate Dealing with Prop Changes The Unmounting Phase 12 Accessing DOM Elements in React The Colorizer Example Meet Refs Using Portals 13 Setting Up Your React Dev Environment Easily Meet Create React Making Sense of What Happened Creating Our HelloWorld App Creating a Production Build 14 Working with External Data in React Web Request 101 It’s React Time! Getting Started Getting the IP Address Kicking the Visuals Up a Notch 15 Building an Awesome Todo List App in React Getting Started Creating the Initial UI Building the Rest of the App Adding Items Displaying the Items Styling our App Removing Items Animation! Animation! Animation! 16 Creating a Sliding Menu in React How the Sliding Menu Works Setting Up the Sliding Menu Getting Started Showing and Hiding the Menu Creating the Button Creating the Menu 17 Avoiding Unnecessary Renders in React About the render Method Optimizing render Calls Getting an Example Going Seeing the render Calls Overriding a Component Update Using PureComponent 18 Creating a Single-Page App in React Using React Router The Example Getting Started Building Our Single-Page App Displaying the Initial Frame Creating Our Content Pages Using React Router It’s the Little Things Fixing Our Routing Adding Some CSS Highlighting the Active Link 19 Introduction to Redux What Is Redux? Building a Simple App Using Redux It’s Redux Time Lights! Camera! Action! Our Reducer Store Stuff 20 Using Redux with React Managing React State with Redux How Redux and React Overlap Getting Started Building the App
£28.49
In Easy Steps Limited JavaScript in easy steps
Book SynopsisJavaScript in easy steps, 6th edition instructs the user how to create exciting web pages that employ the power of JavaScript to provide functionality. You need have no previous knowledge of any scripting language so it''s ideal for the newcomer to JavaScript. By the end of this book you will have gained a sound understanding of JavaScript and be able to add exciting dynamic scripts to your own web pages. JavaScript in easy steps, 6th edition begins by explaining how to easily incorporate JavaScript code in an HTML document. Examples demonstrate how to use built-in JavaScript functions to work with Math, date and time, random numbers, cookies, text strings, and elements of web pages via the Document Object Model (DOM). You will learn how JavaScript is used with HTML submission forms and how JavaScript Object Notation (JSON) is used for asynchronous browser-server communication. The book examples provide clear syntax-highlighted code showing how to create behaviors for an HTML document to endow components with interactive functionality, to illustrate each aspect of JavaScript. JavaScript in easy steps, 6th edition has an easy-to-follow style that will appeal to anyone who wants to add functionality to their web pages. It will appeal to programmers who want to quickly add JavaScript to their skills set, and to the student who is studying website design at school or college, and to those seeking a career in web development who need an understanding of client-side scripting. Fully updated since the previous edition, which was published in 2013.
£11.39
Pearson Education (US) Java Concurrency in Practice
Book SynopsisBrian Goetz is a software consultant with twenty years industry experience, with over 75 articles on Java development. He is one of the primary members of the Java Community Process JSR 166 Expert Group (Concurrency Utilities), and has served on numerous other JCP Expert Groups. Tim Peierls is the very model of a modern multiprocessor, with BoxPop.biz, recording arts, and goings on theatrical. He is one of the primary members of the Java Community Process JSR 166 Expert Group (Concurrency Utilities), and has served on numerous other JCP Expert Groups. Joshua Bloch is a principal engineer at Google and a Jolt Award-winner. He was previously a distinguished engineer at Sun Microsystems and a senior systems designer at Transarc. Josh led the design and implementation of numerous Java platform features, including JDK 5.0 language enhancements and the award-winning Java Collections Framework. He holds a Ph.D. in computer science from Carnegie Mellon UniTable of ContentsListings xiiPreface xviiChapter 1: Introduction 1 1.1 A (very) brief history of concurrency 11.2 Benefits of threads 31.3 Risks of threads 51.4 Threads are everywhere 9 Part I: Fundamentals 13 Chapter 2: Thread Safety 15 2.1 What is thread safety? 172.2 Atomicity 192.3 Locking 232.4 Guarding state with locks 272.5 Liveness and performance 29 Chapter 3: Sharing Objects 33 3.1 Visibility 333.2 Publication and escape 393.3 Thread confinement 423.4 Immutability 463.5 Safepublication 49 Chapter 4: Composing Objects 55 4.1 Designing a thread-safe class 554.2 Instance confinement 584.3 Delegating thread safety 624.4 Adding functionality to existing thread-safe classes 714.5 Documenting synchronization policies 74 Chapter 5: Building Blocks 79 5.1 Synchronized collections 795.2 Concurrent collections 845.3 Blocking queues and the producer-consumer pattern 875.4 Blocking and interruptible methods 925.5 Synchronizers 945.6 Building an efficient, scalable result cache 101 Part II: Structuring Concurrent Applications 111 Chapter 6: Task Execution 113 6.1 Executing tasks in threads 1136.2 The Executor framework 1176.3 Finding exploitable parallelism 123 Chapter 7: Cancellation and Shutdown 135 7.1 Task cancellation 1357.2 Stopping a thread-based service 1507.3 Handling abnormal thread termination 1617.4 JVM shutdown 164 Chapter 8: Applying Thread Pools 167 8.1 Implicit couplings between tasks and execution policies 1678.2 Sizing thread pools 1708.3 Configuring ThreadPoolExecutor 1718.4 Extending ThreadPoolExecutor 1798.5 Parallelizing recursive algorithms 181 Chapter 9: GUI Applications 189 9.1 Why are GUIs single-threaded? 1899.2 Short-running GUI tasks 1929.3 Long-running GUI tasks 1959.4 Shared data models 1989.5 Other forms of single-threaded subsystems 202 Part III: Liveness, Performance, and Testing 203 Chapter 10: Avoiding Liveness Hazards 205 10.1 Deadlock 20510.2 Avoiding and diagnosing deadlocks 21510.3 Other liveness hazards 218 Chapter 11: Performance and Scalability 221 11.1 Thinking about performance 22111.2 Amdahl's law 22511.3 Costs introduced by threads 22911.4 Reducing lock contention 23211.5 Example: Comparing Map performance 24211.6 Reducing context switch overhead 243 Chapter 12: Testing Concurrent Programs 247 12.1 Testing for correctness 24812.2 Testing for performance 26012.3 Avoiding performance testing pitfalls 26612.4 Complementary testing approaches 270 Part IV: Advanced Topics 275 Chapter 13: Explicit Locks 277 13.1 Lock and ReentrantLock 27713.2 Performance considerations 28213.3 Fairness 28313.4 Choosing between synchronized and ReentrantLock 28513.5 Read-write locks 286 Chapter 14: Building Custom Synchronizers 291 14.1 Managing state dependence 29114.2 Using condition queues 29814.3 Explicit condition objects 30614.4 Anatomy of a synchronizer 30814.5 AbstractQueuedSynchronizer 31114.6 AQS in java.util.concurrent synchronizer classes 314 Chapter15: Atomic Variables and Nonblocking Synchronization 319 15.1 Disadvantages of locking 31915.2 Hardware support for concurrency 32115.3 Atomic variable classes 32415.4 Nonblocking algorithms 329 Chapter 16: The Java Memory Model 337 16.1 What is a memory model, and why would I want one? 33716.2 Publication 34416.3 Initialization safety 349 Appendix A: Annotations for Concurrency 353 A.1 Class annotations 353A.2 Field andmethod annotations 353 Bibliography 355Index 359
£40.04
Pearson Education (US) Rocket Surgery Made Easy
Book SynopsisTable of ContentsFINDING USABILITY PROBLEMS Chapter 1 You don’t see any elephants around here, do you? What do-it-yourself usability testing is, why it always works, and why so little of it gets done Chapter 2 I will now saw my [lovely] assistant in half What a do-it-yourself test looks like Chapter 3 A morning a month; that’s all we ask A plan you can actually follow Chapter 4 What do you test, and when do you test it? Why the hardest part is starting early enough Chapter 5 Recruit loosely and grade on a curve Who to test, and how to find them Chapter 6 Find some things for them to do Picking tasks to test, and creating scenarios for them Chapter 7 Some boring checklists …that will save your butt Chapter 8 Mind reading made easy Your job as test facilitator Chapter 9 Make it a spectator sport Getting everyone to watch, and telling them what to look for FIXING USABILITY PROBLEMS Chapter 10 Debriefing 101 Comparing notes and deciding what to fix Chapter 11 The least you can do™ The best ways to fix usability problems Chapter 12 The usual suspects Some problems you’re likely to find, and how to think about fixing them Chapter 13 Making sure life actually improves THE ROAD AHEAD Chapter 14 Teleportation made easy Remote Testing: Fast, cheap, and slightly out of control Chapter 15 Overachievers only Recommended reading and more Chapter 16 Happy trails / to you A few final words of encouragement
£30.39
Microsoft Press,U.S. Exam Ref 70480 Programming in HTML5 with
Book SynopsisRick Delorme is a veteran technology architect and implementer. He has contributed to many book titles over the years to help professional developers take their knowledge to the next level. Table of Contents Chapter 1 Implement and manipulate document structures and objects Chapter 2 Implement program flow Chapter 3 Access and secure data Chapter 4 Use CSS3 in applications Answers
£28.02
O'Reilly Media Flutter and Dart Cookbook
Book SynopsisTogether, the Flutter open source UI software development kit and the Dart programming language for client development provide a unified solution to building applications capable of targeting multiple platforms. Recipes in this cookbook show you how this potent combination provides an efficient approach to application development.
£39.74
John Wiley & Sons Inc Teach Yourself VISUALLY Python
Book SynopsisA simple, straightforward, and hands-on roadmap to the world of computer programming with Python Teach Yourself VISUALLY: Python is your personal guide to getting you started in programming. As one of the world's most popularand most accessiblecoding languages, Python is your gateway into the wide and wonderful world of computer science. This hands-on guide walks you through Python step by clearly illustrated step, from writing your very first Python code in a terminal window or the VS Code app through to creating your own lists, dictionaries, and custom classes. In the book, you'll learn to: Install Python and the tools you need to work with it on Windows, macOS, and LinuxWork with files and folders, manipulate text, and create powerful functions that do exactly what you wantWrite clean code that makes decisions effectively, repeats actions as needed, and handles any errors that occur A must-have resource for aspiring programmers starting from the very beginning, Teach Yourself VISUALLY: Python is also an indispensable handbook for programmers making a transition from another language.Table of ContentsChapter 1 Getting Ready to Work with Python Understanding What Python Is and Does 4 Choose the Right Version of Python 6 Install Python on Windows 8 Install Python on the Mac 12 Install Python on Linux If Necessary 14 Learn About Development Tools for Python 16 Download and Install Visual Studio Code 20 Get Started with Visual Studio Code and Apply a Theme 22 Install Visual Studio Code Extensions for Python 24 Configure Visual Studio Code for Working with Python 26 Chapter 2 Writing and Running Your First Python Code Understanding the main() Function 30 Create and Save a New Script in Visual Studio Code 32 Write and Run Code in Visual Studio Code 34 Execute Python Commands in a Terminal Window 38 Run a Python Script in a Terminal Window 39 Understanding Comments in Python 40 Add Comments to Your Code 42 Grasp Importing Modules and Objects 44 Import Modules and Use Their Methods 48 Chapter 3 Getting Started with Variables Understanding Variables and Their Usage 52 Understanding Python’s Data Types 54 Work with Integers 58 Work with Floating‐Point Values 60 Work with Boolean Values 62 Work with Tuples 64 Work with Sets 66 Start Working with Strings 68 Start Working with Lists 70 Start Working with Dictionaries 72 Convert Data from One Type to Another 74 Chapter 4 Working with Files and Directories Understanding Working with Files and Directories 78 Load the os Module and List Files and Directories 80 Navigate Among Directories 82 Create and Delete Directories 84 Rename, Move, and Copy Files and Directories 88 Get Information About the User and System 92 Split a File Path into Its Components 94 Understanding Python’s open() Function 96 Understanding Python’s Ways of Closing Files 97 Open a File If It Exists; If Not, Create It 98 Check an Open File’s Status and Close It 100 Write Data to a File 102 Open a File for Both Reading and Writing 104 Append Data to a File 106 Read a Text File 108 Chapter 5 Working with Python’s Operators Meet the Arithmetic Operators 112 Work with the Arithmetic Operators 114 Meet the Assignment Operators 116 Work with the Assignment Operators 117 Meet the Comparison Operators 118 Work with the Comparison Operators 119 Meet the Logical Operators 120 Work with the Logical Operators 121 Meet the Identity Operators 122 Work with the Identity Operators 123 Meet the Membership Operators 124 Work with the Membership Operators 125 Meet the Bitwise Operators 126 Work with the Bitwise Operators 127 Chapter 6 Making Decisions with if Statements Learn the Essentials of if Statements 130 Understanding the if Statement 132 Create an if Statement 133 Understanding the if else Statement 134 Create an if else Statement 135 Understanding the if elif Statement 136 Create an if elif Statement 137 Understanding the if elif else Statement 138 Create an if elif else Statement 139 Understanding Nested if Statements 140 Create Nested if Statements 141 Chapter 7 Repeating Actions with Loops Understanding Python’s Loops 144 Understanding How for Loops Work 146 Create for Loops 148 Understanding How while Loops Work 150 Create while Loops 152 Understanding break Statements in Loops 154 Using a break Statement to Exit a Loop Early 155 Understanding continue Statements in Loops 156 Using a continue Statement in a Loop 157 Understanding else Statements in Loops 158 Using an else Statement in a Loop 159 Understanding Loop Nesting 160 Nest Loops to Create Complex Repetition 161 Chapter 8 Working with Functions Understanding Functions and Their Syntax 164 Understanding Function Parameters and Returns 166 Using Python’s Built‐In Functions 168 Create a Function with Parameters and a Return 172 Create a Function with a Parameter But No Return 173 Create a Function with No Parameters But a Return 174 Create a Function with No Parameters and No Return 176 Create a Function That Returns Multiple Values 177 Create a Function with Optional Parameters 178 Chapter 9 Working with Text Learn the Essentials of Strings 182 Create Single‐Line Strings 184 Create Multiline Strings 186 Meet Python’s String Methods 188 Return Information About a String 190 Transform and Clean Up a String 192 Return Part of a String via Slicing 194 Concatenate and Repeat Strings 196 Search for One String Inside Another String 198 Check and Change String Capitalization 200 Meet Python’s Tools for Building Strings 204 Build Strings with the Interpolation Operator 210 Build Strings with the .format Method 212 Build Strings with f‐Strings 214 Build Strings with Template Strings 216 Chapter 10 Handling Errors Understanding the Various Types of Errors 220 Identify Common Python Errors 222 Meet the try except Block 224 Cause Errors and Trap Exceptions 226 Raise an Exception Manually 228 Add an else Block or a finally Block 229 Create Nested try except Blocks 230 Create Custom Exceptions 232 Chapter 11 Working with Lists and Dictionaries Understanding Lists and Their Use 236 Create a List 238 Meet Python’s List Methods 239 Add Items to a List 240 Remove Items from a List 242 Locate Items and Access Data in a List 244 Sort the Items in a List 246 Understanding Dictionaries and Their Use 248 Create a Dictionary and Return Values 250 Meet Python’s Dictionary Methods 251 Create a Dictionary from an Existing Iterable 252 Add Key/Value Pairs to a Dictionary 254 Remove Key/Value Pairs from a Dictionary 256 Return Keys and Values from a Dictionary 258 Chapter 12 Working with Classes Understanding Classes and Instances 262 Create a Class and Instantiate Instances 264 Understanding Class and Instance Attributes 266 Set Class and Instance Attributes 268 Grasp Class, Instance, and Static Methods 270 Create an Instance Method 274 Create a Class Method 275 Create a Static Method 276 Review the Class’s Code 277 Index 278
£19.54
Springer-Verlag Berlin and Heidelberg GmbH & Co. KG Foundations of Python Network Programming
Book SynopsisThis second edition of Foundations of Python Network Programming targets Python 2.5 through Python 2.7, the most popular production versions of the language. Python has made great strides since Apress released the first edition of this book back in the days of Python 2.3. The advances required new chapters to be written from the ground up, and others to be extensively revised. You will learn fundamentals like IP, TCP, DNS and SSL by using working Python programs; you will also be able to familiarize yourself with infrastructure components like memcached and message queues. You can also delve into network server designs, and compare threaded approaches with asynchronous event-based solutions. But the biggest change is this edition''s expanded treatment of the web. The HTTP protocol is covered in extensive detail, with each feature accompanied by sample Python code. You can use your HTTP protocol expertise by studying an entire chapter on screen scraping and you can Table of Contents Introduction to Client/Server Networking UDP TCP Socket Names and DNS Network Data and Network Errors TLS and SSL Server Architecture Caches, Message Queues, and Map-Reduce HTTP Screen Scraping Web Applications E-mail Composition and Decoding SMTP POP IMAP Telnet and SSH FTP RPC
£49.49
APress Building Digital Experience Platforms
Book SynopsisUse digital experience platforms (DXP) to improve your development productivity and release timelines. Leverage the pre-integrated feature sets of DXPs in your organization''s digital transformation journey to quickly develop a personalized, secure, and robust enterprise platform.In this book the authors examine various features of DXPs and provide rich insights into building each layer in a digital platform. Proven best practices are presented with examples for designing and building layers. A special focus is provided on security and quality attributes needed for business-critical enterprise applications. The authors cover modern and emerging digital trends such as Blockchain, IoT, containers, chatbots, artificial intelligence, and more.The book is divided into five parts related to requirements/design, development, security, infrastructure, and case study. The authors employ proven real-world methods, best practices, and security and integration techniques derived fTable of ContentsPart 1: Requirements and Design.- Chapter 1: Introduction to Digital Experience Platforms (DXP).- Chapter 2: Gathering Requirements.- Chapter 3: Design.- Part 2: Development of the Banking Experience Platform.- Chapter 4: User Interface Design.- Chapter 5: Designing Integration Layer.- Part 3: Securing Banking Experience Platform.- Chapter 6: DXP Security.- Chapter 7: DXP Information Security.- Part 4: Infrastructure and NFR for Banking Experience Platform.- Chapter 8: Quality Attributes and Sizing of DXP.- Chapter 9: DXP Performance Optimization.- Chapter 10: Transforming Legacy Banking Applications to Banking Experience Platforms.- Part 5: End to End Case Study.- Chapter 11: End-to-End DXP Case Study.- Appendix A: Open-Source Tools and Frameworks.- Appendix B: Source Code.- Appendix C: Further Reading.-
£37.49
In Easy Steps Limited Java in easy steps
Book SynopsisJava in easy steps, 7th edition instructs you how to easily create your own Java programs. The book contains separate chapters on the major features of the Java language. Complete example programs with colourized code illustrate each important aspect of Java programming all in easy steps.This book assumes no previous knowledge of any programming language so it''s ideal for the newcomer to computer programming. Each chapter builds your knowledge of Java. By the end of this book you will have gained a sound understanding of the Java language and be able to write your own Java programs and compile them into executable files that can be run on any Java-enabled device.This 7th edition of Java in easy steps covers the many exciting features of Java, including: How to quickly run statements in the interactive shell named jshell - similar to the Python interpreter:How to make programs with the javac compiler and execute them with the java runtime. How to produce interactive Windows apps that can be easily distributed as jar program bundles. How to create mobile device apps using Java functionality within the Android operating system.
£11.39
APress Continuous Integration CI and Continuous Delivery
Book SynopsisUse continuous Integration (CI) and continuous delivery (CD) to improve the speed of software delivery. This book presents a game changer-how to use pipelines to automate the software delivery process. The theories about CI/CD are much the same, but the book covers what the development of pipelines looks like and how testing of pipelines themselves should be performed.Most teams just plunge into coding, without thinking about the CI/CD process itself. Why don''t we use the same development method for pipelines that we use for apps? Pipelines code development undergoes similar stages as application code development, such as requirements analysis, development, testing, implementation, operations, and monitoring. This is the starting point of the book. It describes the current challenges with pipeline development and how this process can be improved and structured. It describes in detail how to design pipelines and shows examples in BPMN 2.0 notation.Table of ContentsChapter 1. The CI/CD pitfallChallenges Chapter 2. Concepts Principles Positioning of CI/CD Application Lifecycle Management (ALM) CI/CD strategy Naming convention Chapter 3. Requirements analysis Generic Workflow Technology Information Security Resource constraints Manageability Operations Quality Assurance Metrics Monitoring Governance Chapter 4. Pipeline design CI/CD and pipeline design approach BPMN 2.0 BPMN elements overview BPMN in action Level of detail Logical design versus realization The Generic CI/CD Pipeline Validate entry criteria Execute build Perform unit tests Analyze code Package artifact Publish artifact Provision test environment Deploy artifact to test Perform test Validate infrastructure compliancy Validate exit criteria Perform dual control Provision production environment Deploy artifact to production Notify actor Design strategies Context diagram Branching strategy Trunk-based workflow Feature branch workflow Gitflow Build strategy Build time – Vertical scaling Build time – Full builds versus incremental builds Build time – Parallel builds Build targets Cross-platform builds Multi-team build strategy Test strategy Automated versus manual tests Functional versus non-functional tests Parallel execution versus sequential execution Manual tests performed by specialists Long execution time versus short execution time Production deployment strategy Recreate deployment strategy Blue/green deployment Canary testing deployment A/B test strategy Separation of concerns Delegation Application architecture Orchestrator Event-based CI/CD Resource constraints Parallelize stages and tasks Timeboxed delivery Commercial of the Shelf Chapter 5. Pipeline development Pipeline specification Multi-branch, multi-stage pipeline User interface-based pipelines Scripted pipelines Declarative pipelines Declarative Jenkins pipeline Declarative Azure DevOps pipeline Repositories - Everything as code (EaC) Development in the value streams Simplified pipeline development Extended pipeline development Advanced pipeline development Develop a base pipeline Pipeline generation Pipeline of pipelines (DevOps assembly line) Trigger Validate entry criteria Execute build Perform unit tests Analyze code Package artifact Publish artifact Provision test environment Deploy artifact to test Perform test Validate infrastructure compliancy Deploy artifact to production Notify actor Constructs Triggers Execution environment Connections Conditions and conditional variables Matrix Deployment strategy Auto-cancel On success/failure Fail fast Priority Parallelism Shards Templates Decorator Gates and approvals Workflow Plugins Feature management Third-party libraries and containers Versioning and tagging Environment repository Secrets management Sustainable pipeline development Chapter 6. Test pipelines Testability of pipelines Unit tests Performance tests Pipeline compliance Acceptance tests Chapter 7. Pipeline implementation Organizational preparations CI/CD Infrastructure preparations System Security Target environment preparations System Security Pipeline preparations Release note Runbook Artifact promotion Chapter 8. Operate and monitor Operations Monitoring Systems monitoring Platform monitoring Security monitoring Share information Events, alerts, incidents and notifications References
£49.49
Pearson Education (US) A Project Guide to UX Design
Book SynopsisRuss Unger is a leader in experience design, known for building dynamic teams across sectors such as enterprise, government, and private organizations. He is the co-author of the books Liftoff! Practical Design Leadership to Elevate Your Team, Your Organization, and You, published by Rosenfeld Media, as well as A Project Guide to UX Design, Designing the Conversation, and Speaker Camp (Voices that Matter). Carolyn Chandler is a user experience strategist and has been leading experience design teams for over 25 years. She has developed and taught UX design classes at DePaul University, Northwestern University's Kellogg School of Management, and a variety of other programs tailored to those who want to create impactful digital products. She is also coauthor of Adventures in Experience Design (Voices That Matter).
£30.59
Manning Publications API Design Patterns
Book SynopsisModern software systems are composed of many servers, services, and other components that communicate through APIs. As a developer, your job is to make sure these APIs are stable, reliable, and easy to use for other developers. API Design Patterns provides you with a unique catalog of design standards and best practices to ensure your APIs are flexible and user-friendly. Fully illustrated with examples and relevant use-cases, this essential guide covers patterns for API fundamentals and real-world system designs, along with quite a few not-so-common scenarios and edge-cases. about the technologyAPI design patterns are a useful set of best practice specifications and common solutions to API design challenges. Using accepted design patterns creates a shared language amongst developers who create and consume APIs, which is especially critical given the explosion of mission-critical public-facing web APIs. API Patterns are still being developed and discovered. This collection, gathered and tested by Google API expert JJ Geewax, is the first of its kind. about the book API Design Patterns draws on the collected wisdom of the API community, including the internal developer knowledge base at Google, laying out an innovative set of design patterns for developing both internal and public-facing APIs. In this essential guide, Google Software Engineer JJ Geewax provides a unique and authoritative catalog of patterns that promote flexibility and ease-of-use in your APIs. Each pattern in the catalog is fully illustrated with its own example API, use-cases for solving common API design challenges, and scenarios for tricky edge issues using a pattern’s more subtle features. With the best practices laid out in this book, you can ensure your APIs are adaptive in the face of change and easy for your clients to incorporate into their projects. what's inside A full case-study of building an API and adding features The guiding principles that underpin most API patterns Fundamental patterns for resource layout and naming Advanced patterns for special interactions and data transformations about the readerAimed at software developers with experience using APIs, who want to start building their own. about the author JJ Geewax is a software engineer at Google, focusing on Google Cloud Platform and API design. He is also the author of Google Cloud Platform in Action.
£43.19
O'Reilly Media RESTful Web APIs
Book SynopsisWith this practical guide, you'll learn what it takes to design usable REST APIs that evolve over time. By focusing on solutions that cross a variety of domains, this book shows you how to create powerful and secure applications, using the tools designed for the world's most successful distributed computing system: the World Wide Web.
£28.79
No Starch Press,US Serious Python: Black-Belt Advice on Deployment,
Book SynopsisThe Hacker's Guide to Python will teach you how to fine tune your Python code and give you a deeper understanding of how the language works under the hood. This essential guide distils years of Python experience into a handy collection of general advice and specific tips that will help you pick the right libraries, distribute your code correctly, build future-proof programs, and optimise your programs down to the bytecode.Trade Review"Serious Python contains a considerable amount of judicious battle-tested advice from an experienced developer—as well as some insightful gems from the guest contributors—making the overall effort a welcome addition to the limited number of books aimed at more advanced Python programmers."—Michael J. Ross, web developer and former Slashdot contributorTable of ContentsIntroductionChapter 1: Starting Your ProjectChapter 2: Modules, Libraries, and FrameworksChapter 3: Documentation and Good API PracticeChapter 4: Handling Timestamps and Time ZonesChapter 5: Distributing Your SoftwareChapter 6: Unit TestingChapter 7: Methods and DecoratorsChapter 8: Functional ProgrammingChapter 9: The Abstract Syntax Tree, Hy, and Lisp-like AttributesChapter 10: Performances and OptimizationsChapter 11: Scaling and ArchitectureChapter 12: Managing Relational DatabasesChapter 13: Write Less, Code MoreIndex
£24.74
Pearson Education (US) Python for Programmers
Book Synopsis Paul Deitel, CEO and Chief Technical Officer of Deitel & Associates, Inc., is a graduate of MIT, where he studied Information Technology. Through Deitel & Associates, Inc., he has delivered hundreds of programming courses worldwide to clients, including Cisco, IBM, Siemens, Sun Microsystems, Dell, Fidelity, NASA at the Kennedy Space Center, the National Severe Storm Laboratory, White Sands Missile Range, Rogue Wave Software, Boeing, SunGard Higher Education, Nortel Networks, Puma, iRobot, Invensys and many more. He and his co-author, Dr. Harvey M. Deitel, are the world's best-selling programming-language textbook/professional book/video authors. Dr. Harvey Deitel, Chairman and Chief Strategy Officer of Deitel & Associates, Inc., has over 50 years of experience in the computer field. Dr. Deitel earned B.S. and M.S. degrees in Electrical Engineering from MIT and a Ph.D. in Mathematics from Boston University. He has extensive college teaching experienTrade Review“The chapters are clearly written with detailed explanations of the example code. The modular structure, wide range of contemporary data science topics, and code in companion Jupyter notebooks make this a fantastic resource for readers of a variety of backgrounds. Fabulous Big Data chapter—it covers all of the relevant programs and platforms. Great Watson chapter! The chapter provides a great overview of the Watson applications. Also, your translation examples are great because they provide an ‘instant reward’—it’s very satisfying to implement a task and receive results so quickly. Machine Learning is a huge topic, and the chapter serves as a great introduction. I loved the California housing data example—very relevant for business analytics. The chapter was visually stunning.” —Alison Sanchez, Assistant Professor in Economics, University of San Diego “A great introduction to Big Data concepts, notably Hadoop, Spark, and IoT. The examples are extremely realistic and practical. The authors do an excellent job of combining programming and data science topics. The material is presented in digestible sections accompanied by engaging interactive examples. Nearly all concepts are accompanied by a worked-out example. A comprehensive overview of object-oriented programming in Python—the use of card image graphics is sure to engage the reader.” —Garrett Dancik, Eastern Connecticut State University “Covers some of the most modern Python syntax approaches and introduces community standards for style and documentation. The machine learning chapter does a great job of walking people through the boilerplate code needed for ML in Python. The case studies accomplish this really well. The later examples are so visual. Many of the model evaluation tasks make for really good programming practice. I can see readers feeling really excited about playing with the animations.” —Elizabeth Wickes, Lecturer, School of Information Sciences, University of Illinois at Urbana-Champaign “An engaging, highly accessible book that will foster curiosity and motivate beginning data scientists to develop essential foundations in Python programming, statistics, data manipulation, working with APIs, data visualization, machine learning, cloud computing, and more. Great walkthrough of the Twitter APIs—sentiment analysis piece is very useful. I’ve taken several classes that cover natural language processing and this is the first time the tools and concepts have been explained so clearly. I appreciate the discussion of serialization with JSON and pickling and when to use one or the other—with an emphasis on using JSON over pickle—good to know there’s a better, safer way!” —Jamie Whitacre, Data Science Consultant “For a while, I have been looking for a book in Data Science using Python that would cover the most relevant technologies. Well, my search is over. A must-have book for any practitioner of this field. The machine learning chapter is a real winner!! The dynamic visualization is fantastic.” —Ramon Mata-Toledo, Professor, James Madison University “I like the new combination of topics from computer science, data science, and stats. This is important for building data science programs that are more than just cobbling together math and computer science courses. A book like this may help facilitate expanding our offerings and using Python as a bridge for computer and data science topics. For a data science program that focuses on a single language (mostly), I think Python is probably the way to go.” —Lance Bryant, Shippensburg University “You’ll develop applications using industry standard libraries and cloud computing services.” —Daniel Chen, Data Scientist, Lander Analytics “Great introduction to Python! This book has my strongest recommendation both as an introduction to Python as well as Data Science.” —Shyamal Mitra, Senior Lecturer, University of Texas “IBM Watson is an exciting chapter. The code examples put together a lot of Watson services in a really nifty example.” —Daniel Chen, Data Scientist, Lander Analytics “Fun, engaging real-world examples will encourage readers to conduct meaningful data analyses. Provides many of the best explanations of data science concepts I’ve encountered. Introduces the most useful starter machine learning models—does a good job explaining how to choose the best model and what ‘the best’ means. Great overview of all the big data technologies with relevant examples.” —Jamie Whitacre, Data Science Consultant “A great introduction to deep learning.” —Alison Sanchez, University of San Diego “The best designed Intro to Data Science/Python book I have seen.” —Roland DePratti, Central Connecticut State University “I like the new combination of topics from computer science, data science, and stats.” —Lance Bryant, Shippensburg University “The book’s applied approach should engage readers. A fantastic job providing background on various machine learning concepts without burdening the users with too many mathematical details.” —Garrett Dancik, Assoc. Prof. of Computer Science/Bioinformatics, Eastern Connecticut State University “Helps readers leverage the large number of existing libraries to accomplish tasks with minimal code. Concepts are accompanied by rich Python examples that readers can adapt to implement their own solutions to data science problems. I like that cloud services are used.” —David Koop, Assistant Professor, U-Mass Dartmouth “I enjoyed the OOP chapter—doctest unit testing is nice because you can have the test in the actual docstring so things are traveling together. The line-by-line explanations of the static and dynamic visualizations of the die rolling example are just great.” —Daniel Chen, Data Scientist, Lander Analytics “A lucid exposition of the fundamentals of Python and Data Science. Thanks for pointing out seeding the random number generator for reproducibility. I like the use of dictionary and set comprehensions for succinct programming. ‘List vs. Array Performance: Introducing %timeit’ is convincing on why one should use ndarrays. Good defensive programming. Great section on Pandas Series and DataFrames—one of the clearest expositions that I have seen. The section on data wrangling is excellent. Natural Language Processing is an excellent chapter! I learned a tremendous amount going through it.” —Shyamal Mitra, Senior Lecturer, University of Texas “I like the discussion of exceptions and tracebacks. I really liked the Data Mining Twitter chapter; it focused on a real data source and brought in a lot of techniques for analysis (e.g., visualization, NLP). I like that the Python modules helped hide some of the complexity. Word clouds look cool.” —David Koop, Assistant Professor, U-Mass Dartmouth “I love the book! The examples are definitely a high point.” —Dr. Irene Bruno, George Mason University “I was very excited to see this book. I like its focus on data science and a general purpose language for writing useful data science programs. The data science portion distinguishes this book from most other introductory Python books.” —Dr. Harvey Siy, University of Nebraska at Omaha “I’ve learned a lot in this review process, discovering the exciting field of AI. I’ve liked the Deep Learning chapter, which has left me amazed with the things that have already been achieved in this field.” —José Antonio González Seco, Consultant “An impressive hands-on approach to programming meant for exploration and experimentation.” —Elizabeth Wickes, Lecturer, School of Information Sciences, University of Illinois at Urbana-Champaign “I was impressed at how easy it was to get started with NLP using Python. A meaningful overview of deep learning concepts, using Keras. I like the streaming example.” —David Koop, Assistant Professor, U-Mass Dartmouth “Really like the use of f-strings, instead of the older string-formatting methods. Seeing how easy TextBlob is compared to base NLTK was great. I never made word clouds with shapes before, but I can see this being a motivating example for people getting started with NLP. I’m enjoying the case-study chapters in the latter parts of the book. They are really practical. I really enjoyed working through all the Big Data examples, especially the IoT ones.” —Daniel Chen, Data Scientist, Lander Analytics “I really liked the live IPython input-output. The thing that I like most about this product is that it is a Deitel & Deitel book (I’m a big fan) that covers Python.” —Dr. Mark Pauley, University of Nebraska at Omaha Table of ContentsPreface xviiBefore You Begin xxxiiiChapter 1: Introduction to Computers and Python 11.1 Introduction 21.2 A Quick Review of Object Technology Basics 31.3 Python 51.4 It’s the Libraries! 71.5 Test-Drives: Using IPython and Jupyter Notebooks 91.6 The Cloud and the Internet of Things 161.7 How Big Is Big Data? 171.8 Case Study—A Big-Data Mobile Application 241.9 Intro to Data Science: Artificial Intelligence—at the Intersection of CS and Data Science 261.10 Wrap-Up 29Chapter 2: Introduction to Python Programming 312.1 Introduction 322.2 Variables and Assignment Statements 322.3 Arithmetic 332.4 Function print and an Intro to Single- and Double-Quoted Strings 362.5 Triple-Quoted Strings 382.6 Getting Input from the User 392.7 Decision Making: The if Statement and Comparison Operators 412.8 Objects and Dynamic Typing 452.9 Intro to Data Science: Basic Descriptive Statistics 462.10 Wrap-Up 48Chapter 3: Control Statements 493.1 Introduction 503.2 Control Statements 503.3 if Statement 513.4 if...else and if...elif...else Statements 523.5 while Statement 553.6 for Statement 553.7 Augmented Assignments 573.8 Sequence-Controlled Iteration; Formatted Strings 583.9 Sentinel-Controlled Iteration 593.10 Built-In Function range: A Deeper Look 603.11 Using Type Decimal for Monetary Amounts 613.12 break and continue Statements 643.13 Boolean Operators and, or and not 653.14 Intro to Data Science: Measures of Central Tendency—Mean, Median and Mode 673.15 Wrap-Up 69Chapter 4: Functions 714.1 Introduction 724.2 Defining Functions 724.3 Functions with Multiple Parameters 754.4 Random-Number Generation 764.5 Case Study: A Game of Chance 784.6 Python Standard Library 814.7 math Module Functions 824.8 Using IPython Tab Completion for Discovery 834.9 Default Parameter Values 854.10 Keyword Arguments 854.11 Arbitrary Argument Lists 864.12 Methods: Functions That Belong to Objects 874.13 Scope Rules 874.14 import: A Deeper Look 894.15 Passing Arguments to Functions: A Deeper Look 904.16 Recursion 934.17 Functional-Style Programming 954.18 Intro to Data Science: Measures of Dispersion 974.19 Wrap-Up 98Chapter 5: Sequences: Lists and Tuples 1015.1 Introduction 1025.2 Lists 1025.3 Tuples 1065.4 Unpacking Sequences 1085.5 Sequence Slicing 1105.6 del Statement 1125.7 Passing Lists to Functions 1135.8 Sorting Lists 1155.9 Searching Sequences 1165.10 Other List Methods 1175.11 Simulating Stacks with Lists 1195.12 List Comprehensions 1205.13 Generator Expressions 1215.14 Filter, Map and Reduce 1225.15 Other Sequence Processing Functions 1245.16 Two-Dimensional Lists 1265.17 Intro to Data Science: Simulation and Static Visualizations 1285.18 Wrap-Up 135Chapter 6: Dictionaries and Sets 1376.1 Introduction 1386.2 Dictionaries 1386.3 Sets 1476.4 Intro to Data Science: Dynamic Visualizations 1526.5 Wrap-Up 158Chapter 7: Array-Oriented Programming with NumPy 1597.1 Introduction 1607.2 Creating arrays from Existing Data 1607.3 array Attributes 1617.4 Filling arrays with Specific Values 1637.5 Creating arrays from Ranges 1647.6 List vs. array Performance: Introducing %timeit 1657.7 array Operators 1677.8 NumPy Calculation Methods 1697.9 Universal Functions 1707.10 Indexing and Slicing 1717.11 Views: Shallow Copies 1737.12 Deep Copies 1747.13 Reshaping and Transposing 1757.14 Intro to Data Science: pandas Series and DataFrames 1777.15 Wrap-Up 189Chapter 8: Strings: A Deeper Look 1918.1 Introduction 1928.2 Formatting Strings 1938.3 Concatenating and Repeating Strings 1968.4 Stripping Whitespace from Strings 1978.5 Changing Character Case 1978.6 Comparison Operators for Strings 1988.7 Searching for Substrings 1988.8 Replacing Substrings 1998.9 Splitting and Joining Strings 2008.10 Characters and Character-Testing Methods 2028.11 Raw Strings 2038.12 Introduction to Regular Expressions 2038.13 Intro to Data Science: Pandas, Regular Expressions and Data Munging 2108.14 Wrap-Up 214Chapter 9: Files and Exceptions 2179.1 Introduction 2189.2 Files 2199.3 Text-File Processing 2199.4 Updating Text Files 2229.5 Serialization with JSON 2239.6 Focus on Security: pickle Serialization and Deserialization 2269.7 Additional Notes Regarding Files 2269.8 Handling Exceptions 2279.9 finally Clause 2319.10 Explicitly Raising an Exception 2339.11 (Optional) Stack Unwinding and Tracebacks 2339.12 Intro to Data Science: Working with CSV Files 2359.13 Wrap-Up 241Chapter 10: Object-Oriented Programming 24310.1 Introduction 24410.2 Custom Class Account 24610.3 Controlling Access to Attributes 24910.4 Properties for Data Access 25010.5 Simulating “Private” Attributes 25610.6 Case Study: Card Shuffling and Dealing Simulation 25810.7 Inheritance: Base Classes and Subclasses 26610.8 Building an Inheritance Hierarchy; Introducing Polymorphism 26710.9 Duck Typing and Polymorphism 27510.10 Operator Overloading 27610.11 Exception Class Hierarchy and Custom Exceptions 27910.12 Named Tuples 28010.13 A Brief Intro to Python 3.7’s New Data Classes 28110.14 Unit Testing with Docstrings and doctest 28710.15 Namespaces and Scopes 29010.16 Intro to Data Science: Time Series and Simple Linear Regression 29310.17 Wrap-Up 301Chapter 11: Natural Language Processing (NLP) 30311.1 Introduction 30411.2 TextBlob 30511.3 Visualizing Word Frequencies with Bar Charts and Word Clouds 31911.4 Readability Assessment with Textatistic 32411.5 Named Entity Recognition with spaCy 32611.6 Similarity Detection with spaCy 32711.7 Other NLP Libraries and Tools 32811.8 Machine Learning and Deep Learning Natural Language Applications 32811.9 Natural Language Datasets 32911.10 Wrap-Up 330Chapter 12: Data Mining Twitter 33112.1 Introduction 33212.2 Overview of the Twitter APIs 33412.3 Creating a Twitter Account 33512.4 Getting Twitter Credentials—Creating an App 33512.5 What’s in a Tweet? 33712.6 Tweepy 34012.7 Authenticating with Twitter Via Tweepy 34112.8 Getting Information About a Twitter Account 34212.9 Introduction to Tweepy Cursors: Getting an Account’s Followers and Friends 34412.10 Searching Recent Tweets 34712.11 Spotting Trends: Twitter Trends API 34912.12 Cleaning/Preprocessing Tweets for Analysis 35312.13 Twitter Streaming API 35412.14 Tweet Sentiment Analysis 35912.15 Geocoding and Mapping 36212.16 Ways to Store Tweets 37012.17 Twitter and Time Series 37012.18 Wrap-Up 371Chapter 13: IBM Watson and Cognitive Computing 37313.1 Introduction: IBM Watson and Cognitive Computing 37413.2 IBM Cloud Account and Cloud Console 37513.3 Watson Services 37613.4 Additional Services and Tools 37913.5 Watson Developer Cloud Python SDK 38113.6 Case Study: Traveler’s Companion Translation App 38113.7 Watson Resources 39413.8 Wrap-Up 395Chapter 14: Machine Learning: Classification, Regression and Clustering 39714.1 Introduction to Machine Learning 39814.2 Case Study: Classification with k-Nearest Neighbors and the Digits Dataset, Part 1 40314.3 Case Study: Classification with k-Nearest Neighbors and the Digits Dataset, Part 2 41314.4 Case Study: Time Series and Simple Linear Regression 42014.5 Case Study: Multiple Linear Regression with the California Housing Dataset 42514.6 Case Study: Unsupervised Machine Learning, Part 1—Dimensionality Reduction 43814.7 Case Study: Unsupervised Machine Learning, Part 2—k-Means Clustering 44214.8 Wrap-Up 455Chapter 15: Deep Learning 45715.1 Introduction 45815.2 Keras Built-In Datasets 46115.3 Custom Anaconda Environments 46215.4 Neural Networks 46315.5 Tensors 46515.6 Convolutional Neural Networks for Vision; Multi-Classification with the MNIST Dataset 46715.7 Visualizing Neural Network Training with TensorBoard 48615.8 ConvnetJS: Browser-Based Deep-Learning Training and Visualization 48915.9 Recurrent Neural Networks for Sequences; Sentiment Analysis with the IMDb Dataset 48915.10 Tuning Deep Learning Models 49715.11 Convnet Models Pretrained on ImageNet 49815.12 Wrap-Up 499Chapter 16: Big Data: Hadoop, Spark, NoSQL and IoT 50116.1 Introduction 50216.2 Relational Databases and Structured Query Language (SQL) 50616.3 NoSQL and NewSQL Big-Data Databases: A Brief Tour 51716.4 Case Study: A MongoDB JSON Document Database 52016.5 Hadoop 53016.6 Spark 54116.7 Spark Streaming: Counting Twitter Hashtags Using the pyspark-notebook Docker Stack 55116.8 Internet of Things and Dashboards 56016.9 Wrap-Up 571Index 573
£42.74
Pearson Education (US) Modern JavaScript for the Impatient
Book SynopsisCay S. Horstmann is principal author of Core JavaTM Volumes I & II, Eleventh Edition (Pearson, 2018), Scala for the Impatient, Second Edition (2016), and Core Java SE 9 for the Impatient (2017). Cay is a professor of computer science at San Jose State University, a Java Champion, and a frequent speaker at computer industry conferences.Table of ContentsPreface xvAbout the Author xxi Chapter 1: Values and Variables 11.1 Running JavaScript 11.2 Types and the typeofOperator 51.3 Comments 51.4 Variable Declarations 61.5 Identifiers 71.6 Numbers 81.7 Arithmetic Operators 91.8 Boolean Values 121.9 null and undefined 121.10 String Literals 131.11 Template Literals 151.12 Objects 161.13 Object Literal Syntax 171.14 Arrays 181.15 JSON 201.16 Destructuring 211.17 Advanced Destructuring 23Exercises 24 Chapter 2: Control Structures 272.1 Expressions and Statements 272.2 Semicolon Insertion 292.3 Branches 312.4 Boolishness 342.5 Comparison and Equality Testing 342.6 Mixed Comparisons 362.7 Boolean Operators 372.8 The switchStatement 392.9 while anddo Loops 402.10 for Loops 412.11 Breaking and Continuing 442.12 Catching Exceptions 46Exercises 47 Chapter 3: Functions and Functional Programming 513.1 Declaring Functions 513.2 Higher-Order Functions 533.3 Function Literals 543.4 Arrow Functions 543.5 Functional Array Processing 563.6 Closures 573.7 Hard Objects 593.8 Strict Mode 613.9 Testing Argument Types 623.10 Supplying More or Fewer Arguments 633.11 Default Arguments 643.12 Rest Parameters and the Spread Operator 643.13 Simulating Named Arguments with Destructuring 663.14 Hoisting 673.15 Throwing Exceptions 693.16 Catching Exceptions 703.17 The finallyClause 72Exercises 73 Chapter 4: Object-Oriented Programming 774.1 Methods 774.2 Prototypes 784.3 Constructors 814.4 The Class Syntax 834.5 Getters and Setters 854.6 Instance Fields and Private Methods 854.7 Static Methods and Fields 864.8 Subclasses 874.9 Overriding Methods 894.10 Subclass Construction 904.11 Class Expressions 914.12 The thisReference 92Exercises 95 Chapter 5: Numbers and Dates 995.1 Number Literals 995.2 Number Formatting 1005.3 Number Parsing 1015.4 Number Functions and Constants 1025.5 Mathematical Functions and Constants 1035.6 Big Integers 1055.7 Constructing Dates 1055.8 Date Functions and Methods 1095.9 Date Formatting 110Exercises 110 Chapter 6: Strings and Regular Expressions 1156.1 Converting between Strings and Code Point Sequences 1156.2 Substrings 1166.3 Other String Methods 1186.4 Tagged Template Literals 1216.5 Raw Template Literals 1226.6 Regular Expressions 1236.7 Regular Expression Literals 1276.8 Flags 1276.9 Regular Expressions and Unicode 1296.10 The Methods of the RegExpClass 1306.11 Groups 1316.12 String Methods with Regular Expressions 1336.13 More about Regex Replace 1356.14 Exotic Features 136Exercises 137 Chapter 7: Arrays and Collections 1417.1 Constructing Arrays 1417.2 The lengthProperty and Index Properties 1437.3 Deleting and Adding Elements 1447.4 Other Array Mutators 1457.5 Producing Elements 1487.6 Finding Elements 1497.7 Visiting All Elements 1507.8 Sparse Arrays 1527.9 Reduction 1537.10 Maps 1567.11 Sets 1587.12 Weak Maps and Sets 1597.13 Typed Arrays 1607.14 Array Buffers 163Exercises 164 Chapter 8: Internationalization 1678.1 The Locale Concept 1678.2 Specifying a Locale 1688.3 Formatting Numbers 1718.4 Localizing Dates and Times 1728.5 Collation 1768.6 Other Locale-Sensitive String Methods 1778.7 Plural Rules and Lists 1788.8 Miscellaneous Locale Features 180Exercises 181 Chapter 9: Asynchronous Programming 1859.1 Concurrent Tasks in JavaScript 1859.2 Making Promises 1889.3 Immediately Settled Promises 1919.4 Obtaining Promise Results 1919.5 Promise Chaining 1929.6 Rejection Handling 1949.7 Executing Multiple Promises 1969.8 Racing Multiple Promises 1979.9 Async Functions 1979.10 Async Return Values 1999.11 Concurrent Await 2019.12 Exceptions in Async Functions 202Exercises 203 Chapter 10: Modules 20910.1 The Module Concept 20910.2 ECMAScript Modules 21010.3 Default Imports 21110.4 Named Imports 21210.5 Dynamic Imports 21310.6 Exports 21310.7 Packaging Modules 217Exercises 218 Chapter 11: Metaprogramming 22111.1 Symbols 22111.2 Customization with Symbol Properties 22311.3 Property Attributes 22511.4 Enumerating Properties 22811.5 Testing a Single Property 22911.6 Protecting Objects 23011.7 Creating or Updating Objects 23111.8 Accessing and Updating the Prototype 23111.9 Cloning Objects 23211.10 Function Properties 23511.11 Binding Arguments and Invoking Methods 23611.12 Proxies 23711.13 The ReflectClass 24011.14 Proxy Invariants 242Exercises 244 Chapter 12: Iterators and Generators 24912.1 Iterable Values 24912.2 Implementing an Iterable 25012.3 Closeable Iterators 25212.4 Generators 25412.5 Nested Yield 25512.6 Generators as Consumers 25712.7 Generators and Asynchronous Processing 25912.8 Async Generators and Iterators 261Exercises 263 Chapter 13: An Introduction to Typescript 26913.1 Type Annotations 27013.2 Running TypeScript 27113.3 Type Terminology 27313.4 Primitive Types 27413.5 Composite Types 27513.6 Type Inference 27713.7 Subtypes 28013.8 Classes 28413.9 Structural Typing 28713.10 Interfaces 28813.11 Indexed Properties 29013.12 Complex Function Parameters 29113.13 Generic Programming 297Exercises 305 Index 309
£30.59
O'Reilly Media Generative AI on Aws
Book SynopsisWith this book, Chris Fregly, Antje Barth, and Shelbee Eigenbrode from AWS help CTOs, ML practitioners, application developers, business analysts, data engineers, and data scientists find practical ways to use this exciting new technology.
£47.99
Pearson Education (US) Eloquent Ruby
Book SynopsisRuss Olsen's career spans three decades, during which he has written everything from graphics device drivers to document management applications. These days, he diligently codes GIS, web service security, and process automation solutions. He spends much of his otherwise free time writing and speaking about programming, especially Ruby and Clojure. His first book was the highly regarded Design Patterns In Ruby (Addison-Wesley, 2007). He is also the lurking presence behind the Technology As If People Mattered blog at www.russolsen.com.Trade ReviewR>Eloquent Ruby is like programming in Ruby itself: fun, surprisingly deep, and you'll find yourself wishing it was always done this way. Wherever you are in your Ruby experience from novice to Rails developer, this book is a must read.Table of ContentsForeword xix Preface xxi Acknowledgments xxv About the Author xxvii PART I: The Basics 1 Chapter 1: Write Code That Looks Like Ruby 3 The Very Basic Basics 4 Go Easy on the Comments 6 Camels for Classes, Snakes Everywhere Else 8 Parentheses Are Optional but Are Occasionally Forbidden 9 Folding Up Those Lines 10 Folding Up Those Code Blocks 11 Staying Out of Trouble 12 In the Wild 13 Wrapping Up 15 Chapter 2: Choose the Right Control Structure 17 If, Unless, While, and Until 17 Use the Modifier Forms Where Appropriate 19 Use each, Not for 20 A Case of Programming Logic 21 Staying Out of Trouble 23 In the Wild 25 Wrapping Up 27 Chapter 3: Take Advantage of Ruby’s Smart Collections 29 Literal Shortcuts 29 Instant Arrays and Hashes from Method Calls 30 Running Through Your Collection 33 Beware the Bang! 36 Rely on the Order of Your Hashes 38 In the Wild 38 Staying Out of Trouble 40 Wrapping Up 42 Chapter 4: Take Advantage of Ruby’s Smart Strings 43 Coming Up with a String 44 Another API to Master 47 The String: A Place for Your Lines, Characters, and Bytes 49 In the Wild 50 Staying Out of Trouble 51 Wrapping Up 52 Chapter 5: Find the Right String with Regular Expressions 53 Matching One Character at a Time 54 Sets, Ranges, and Alternatives 55 The Regular Expression Star 57 Regular Expressions in Ruby 58 Beginnings and Endings 60 In the Wild 62 Staying Out of Trouble 63 Wrapping Up 64 Chapter 6: Use Symbols to Stand for Something 65 The Two Faces of Strings 65 Not Quite a String 66 Optimized to Stand for Something 67 In the Wild 69 Staying Out of Trouble 70 Wrapping Up 71 Chapter 7: Treat Everything Like an Object–Because Everything Is 73 A Quick Review of Classes, Instances, and Methods 74 Objects All the Way Down 76 The Importance of Being an Object 77 Public, Private, and Protected 79 In the Wild 81 Staying Out of Trouble 82 Wrapping Up 84 Chapter 8: Embrace Dynamic Typing 85 Shorter Programs, But Not the Way You Think 85 Extreme Decoupling 89 Required Ceremony Versus Programmer-Driven Clarity 92 Staying Out of Trouble 93 In the Wild 94 Wrapping Up 96 Chapter 9: Write Specs! 97 Test::Unit: When Your Documents Just Have to Work 98 A Plethora of Assertions 101 Don’t Test It, Spec It! 101 A Tidy Spec Is a Readable Spec 104 Easy Stubs 105 . . . And Easy Mocks 107 In the Wild 108 Staying Out of Trouble 110 Wrapping Up 113 PART II: Classes, Modules, and Blocks 115 Chapter 10: Construct Your Classes from Short, Focused Methods 117 Compressing Specifications 117 Composing Methods for Humans 121 Composing Ruby Methods 122 One Way Out? 123 Staying Out of Trouble 126 In the Wild 127 Wrapping Up 128 Chapter 11: Define Operators Respectfully 129 Defining Operators in Ruby 129 A Sampling of Operators 131 Operating Across Classes 134 Staying Out of Trouble 135 In the Wild 137 Wrapping Up 139 Chapter 12: Create Classes That Understand Equality 141 An Identifier for Your Documents 141 An Embarrassment of Equality 142 Double Equals for Everyday Use 143 Broadening the Appeal of the == Method 145 Well-Behaved Equality 146 Triple Equals for Case Statements 149 Hash Tables and the eql? Method 150 Building a Well-Behaved Hash Key 152 Staying Out of Trouble 153 In the Wild 154 Wrapping Up 156 Chapter 13: Get the Behavior You Need with Singleton and Class Methods 157 A Stubby Puzzle 158 A Hidden, but Real Class 160 Class Methods: Singletons in Plain Sight 162 In the Wild 164 Staying Out of Trouble 165 Wrapping Up 167 Chapter 14: Use Class Instance Variables 169 A Quick Review of Class Variables 169 Wandering Variables 171 Getting Control of the Data in Your Class 174 Class Instance Variables and Subclasses 175 Adding Some Convenience to Your Class Instance Variables 176 In the Wild 177 Staying Out of Trouble 179 Wrapping Up 179 Chapter 15: Use Modules as Name Spaces 181 A Place for Your Stuff, with a Name 181 A Home for Those Utility Methods 184 Building Modules a Little at a Time 185 Treat Modules Like the Objects That They Are 186 Staying Out of Trouble 189 In the Wild 190 Wrapping Up 191 Chapter 16: Use Modules as Mixins 193 Better Books with Modules 193 Mixin Modules to the Rescue 195 Extending a Module 197 Staying Out of Trouble 198 In the Wild 202 Wrapping Up 205 Chapter 17: Use Blocks to Iterate 207 A Quick Review of Code Blocks 207 One Word after Another 209 As Many Iterators as You Like 210 Iterating over the Ethereal 211 Enumerable: Your Iterator on Steroids 213 Staying Out of Trouble 215 In the Wild 217 Wrapping Up 218 Chapter 18: Execute Around with a Block 219 Add a Little Logging 219 When It Absolutely Must Happen 224 Setting Up Objects with an Initialization Block 225 Dragging Your Scope along with the Block 225 Carrying the Answers Back 227 Staying Out of Trouble 228 In the Wild 229 Wrapping Up 231 Chapter 19: Save Blocks to Execute Later 233 Explicit Blocks 233 The Call Back Problem 234 Banking Blocks 236 Saving Code Blocks for Lazy Initialization 237 Instant Block Objects 239 Staying Out of Trouble 240 In the Wild 243 Wrapping Up 244 PART III: Metaprogramming 247 Chapter 20: Use Hooks to Keep Your Program Informed 249 Waking Up to a New Subclass 250 Modules Want To Be Heard Too 253 Knowing When Your Time Is Up 255 . . . And a Cast of Thousands 256 Staying Out of Trouble 257 In the Wild 259 Wrapping Up 261 Chapter 21: Use method_missing for Flexible Error Handling 263 Meeting Those Missing Methods 264 Handling Document Errors 266 Coping with Constants 267 In the Wild 268 Staying Out of Trouble 270 Wrapping Up 271 Chapter 22: Use method_missing for Delegation 273 The Promise and Pain of Delegation 274 The Trouble with Old-Fashioned Delegation 275 The method_missing Method to the Rescue 277 More Discriminating Delegation 278 Staying Out of Trouble 279 In the Wild 281 Wrapping Up 283 Chapter 23: Use method_missing to Build Flexible APIs 285 Building Form Letters One Word at a Time 286 Magic Methods from method_missing 287 It’s the Users That Count–All of Them 289 Staying Out of Trouble 289 In the Wild 290 Wrapping Up 292 Chapter 24: Update Existing Classes with Monkey Patching 293 Wide-Open Classes 294 Fixing a Broken Class 295 Improving Existing Classes 296 Renaming Methods with alias_method 297 Do Anything to Any Class, Anytime 299 In the Wild 299 Staying Out of Trouble 303 Wrapping Up 303 Chapter 25: Create Self-Modifying Classes 305 Open Classes, Again 305 Put Programming Logic in Your Classes 308 Class Methods That Change Their Class 309 In the Wild 310 Staying Out of Trouble 314 Wrapping Up 315 Chapter 26: Create Classes That Modify Their Subclasses 317 A Document of Paragraphs 317 Subclassing Is (Sometimes) Hard to Do 319 Class Methods That Build Instance Methods 321 Better Method Creation with define_method 324 The Modification Sky Is the Limit 324 In the Wild 327 Staying Out of Trouble 330 Wrapping Up 332 PART IV: Pulling It All Together 333 Chapter 27: Invent Internal DSLs 335 Little Languages for Big Problems 335 Dealing with XML 336 Stepping Over the DSL Line 341 Pulling Out All the Stops 344 In the Wild 345 Staying Out of Trouble 347 Wrapping Up 349 Chapter 28: Build External DSLs for Flexible Syntax 351 The Trouble with the Ripper 352 Internal Is Not the Only DSL 353 Regular Expressions for Heavier Parsing 356 Treetop for Really Big Jobs 358 Staying Out of Trouble 360 In the Wild 362 Wrapping Up 364 Chapter 29: Package Your Programs as Gems 367 Consuming Gems 367 Gem Versions 368 The Nuts and Bolts of Gems 369 Building a Gem 370 Uploading Your Gem to a Repository 374 Automating Gem Creation 375 In the Wild 376 Staying Out of Trouble 377 Wrapping Up 380 Chapter 30: Know Your Ruby Implementation 381 A Fistful of Rubies 381 MRI: An Enlightening Experience for the C Programmer 382 YARV: MRI with a Byte Code Turbocharger 385 JRuby: Bending the “J” in the JVM 387 Rubinius 388 In the Wild 389 Staying Out of Trouble 389 Wrapping Up 390 Chapter 31: Keep an Open Mind to Go with Those Open Classes 391 Appendix: Going Further 393 Index 397
£37.52