Browse Results

Showing 51 through 75 of 100,000 results

Positive Thinking As a Way of Life

by Louise Pearce

Penned with a profound desire to aid individuals grappling with mental hurdles like depression, dwindling motivation, and self-assurance, this book serves as a companion in your journey towards self-betterment. Through its affirming lines and a special emphasis on the EODs - daily nuggets of positivity, the author aspires to instill a renewed sense of self-worth, nudging you to stand tall, gradually bolstering your confidence and self-esteem with each passing day.In the face of today's global adversities, the narrative underscores the essence of daily self-care, urging not only personal adherence but also the encouragement of loved ones to embrace this nurturing practice. It is a clarion call for humanity to not merely endure, but to flourish and thrive, making the most of our everyday lives.

Effective Go Recipes

by Miki Tebeka

Programmers love Go because it is lightweight, easy to work with, and easy to read. Go gives you the benefits of dynamically typed languages (speed of development) while keeping the upsides of strongly typed languages (security and performance). Go is a simple language, but programming in Go is about more than just mastering syntax. There's an art to using Go effectively. Squeeze out the full use of advanced networking and multi-core power for which Go was designed. Save precious coding hours with recipes that help you manage objects, collect garbage, and safely use memory. Tackle Unicode, concurrency, and serialization with ease. All the clean, reusable solutions you need for a wide variety of problems common to Go development. Outfitted with these recipes, your next apps will be more polished and more maintainable than ever. Start out by tackling time and see how the Go time packager provides types that will do most of the heavy lifting for you. Next, work on recipes tailored to the nuances of processing text, like normalizing strings to avoid bugs. From there, whip up some functions on-the-fly and store functions in variables and data structures. Ever wondered why Go seems to be peppered with error handling? Working through the next recipes, you'll discover the benefits, which include more robust code. In the section on HTTP, you'll learn tricks like running multiple HTTP servers on the same port and setting timeouts. With concurrency recipes, you'll limit the number of goroutines to improve performance, give your code awareness of timeouts, and decide when to keep your code sequential instead of making it concurrent. Throughout the book, you'll make Go sizzle following simple recipes and tweaking them to fit your own apps. Using tools like strong typing and concurrency primitives, build a Go codebase that stays maintainable at scale.What You Need:You should know the Go language syntax and have some experience in programming.You will need a Go SDK, a Git client, and for some of the chapters, a C compiler.

C Brain Teasers

by Dan Gookin

You thought you knew C, but can you solve 25 puzzles in this popular programming language? Noted C programmer and author Dan Gookin provides a series of pointed questions, puzzles, and problems to keep your C programming skills sharp. Each one will provide insight into various aspects of handling strings, numeric operations, and other activities, giving you techniques to take the best advantage of all C has to offer. Challenge yourself, and get to know some powerful tricks and details for writing better, faster, more accurate C code. Most C programming books present the information sequentially, teaching you the right way to code and only rarely describing what could go wrong. In this book, the goal is to find out what did go wrong - or what potentially goes right. Explore interesting and unusual programming concepts and approaches with small, to-the-point, programs and exercises. Hone your C programming skills and expand your knowledge. By working through the brain teasers in this book, you'll fill in gaps in your knowledge and work with advanced concepts such as pointers and recursion. All of the teaser topics were selected to give you food for thought, explaining the technical details behind each puzzle. Look at a code sample and try to guess what output it will give. Code it yourself and see the result. Is it what you expected? Then read the author's lighthearted explanation of exactly why the language does what it does, and how you can take advantage of it. You'll come away with a much better understanding of how the language works, and how to use it for efficient and effective programming. What You Need: You need to know the basics of coding in C, and have an environment for compiling and executing your C code. Any Windows, MacOS, or Linux system with a C compiler does the job. Use the terminal window for traditional C programming. Or obtain an Integrated Development Enviornment (IDE) such as Visual Studio Code, which contains all the software tools you need: Editor, Compiler, and Output.

JavaScript Brain Teasers

by Faraz K. Kelhini

If you've ever felt the exhilaration of cracking a thorny problem or the joy of witnessing elegant code that challenges your mind, then this book is tailor-made for you. Prepare yourself to dive into a diverse array of mind-bending JavaScript brain teasers. Each puzzle is more than just a code exercise; it's a gateway to unlocking new insights and honing your abilities. As you work through the challenges, you'll learn to think pragmatically, optimize your code for efficiency, and avoid hidden pitfalls that can catch you off guard. What's more - the puzzle format will help you remember what you've learned! Over the years, JavaScript has gained a bit of a reputation for its quirky and unique characteristics. It's important for developers to be aware of these quirks to write more robust and predictable JavaScript code. In this book, we invite you on a journey designed to unveil the intricate nuances and peculiarities that define the language's essence. Learn how to simulate function overloading, embed hidden information within objects, develop self-contained functions capable of maintaining their own local state, generate number sequences using functional programming, handle exotic forms of IIFEs, and prevent loss of precision when dealing with large numbers. Grasp concepts like closures, hoisting, symbols, execution context, event queue, text normalization, and more, one puzzle at a time. Discover how to create your own custom objects that function as shortcuts, accurately calculate the length of emojis and Unicode characters, master the usage of the "this" keyword, leverage bitwise operators, and convert color names to hex notation for universal use across various platforms. Plus, steer clear of those usual traps and blunders that trip up JavaScript developers. Forget passive learning. With JavaScript Brain Teasers, you'll actively engage with code puzzles that require creative thinking and problem-solving, which help you memorize difficult concepts.What You Need:Certain code examples take advantage of recently introduced JavaScript features. Therefore, it's important to use a JavaScript environment that supports ECMAScript 2020 or a newer version. The simplest way to experiment with the examples is use your browser's console. Just make sure your browser is up-to-date.

Agile Retrospectives, Second Edition

by David Horowitz Esther Derby Diana Larsen

In an uncertain and complex world, learning is more important than ever before. In fact, it can be a competitive advantage. Teams and organizations that learn rapidly deliver greater customer value faster and more reliably. Furthermore, those teams are more engaged, more productive, and more satisfied. The most effective way to enable teams to learn is by holding regular retrospectives. Unfortunately, many teams only get shallow results from their retrospectives. This book is filled with practical advice, techniques, and real-life examples that will take retrospectives to the next level--whether your team is co-located, hybrid, or remote. This book will help team leads, scrum masters, and coaches engage their teams to learn, improve, and deliver greater results. For nearly two decades, scrum masters, team leads, and coaches have relied on the first edition of Agile Retrospectivesas an essential resource to facilitate better retrospectives. This edition builds on recent research, reflects the authors' experiences over two decades, and shares wisdom gleaned from the global retrospective community. Find practical advice to level up retrospective skills. Address the challenges of remote and hybrid retrospectives head on. Take advantage of expanded guidance on designing and facilitating retrospectives--based on the questions and concerns of practitioners worldwide. Gain insight into choosing a broad or narrow focus for retrospectives. Explore how to use both objective and subjective data to enable more effective conversations. Learn how to make decisions that stick. Understand the importance of psychological safety and how to foster it in retrospectives. Elevate issues and engage managers in systemic change. Learn from many real-life stories that demonstrate how our advice has impacted retrospectives at organizations around the globe. Finally, find a set of recommended flows that reveal the authors' thought process in designing retrospectives for scenarios teams faced in real life.

Your Code as a Crime Scene, Second Edition

by Adam Tornhill

Jack the Ripper and legacy codebases have more in common than you'd think. Inspired by forensic psychology methods, you can apply strategies to identify problems in your existing code, assess refactoring direction, and understand how your team influences the software architecture. With its unique blend of criminal psychology and code analysis, Your Code as a Crime Scene arms you with the techniques you need to take on any codebase, no matter what programming language you use. Software development might well be the most challenging task humanity ever attempted. As systems scale up, they also become increasingly complex, expensive to maintain, and difficult to reason about. We can always write more tests, try to refactor, and even fire up a debugger to understand complex coding constructs. That's a great starting point, but you can do so much better. Take inspiration from forensic psychology techniques to understand and improve existing code. Visualize codebases via a geographic profile from commit data to find development hotspots, prioritize technical debt, and uncover hidden dependencies. Get data and develop strategies to make the business case for larger refactorings. Detect and fix organizational problems from the vantage point of the software architecture to remove bottlenecks for the teams. The original Your Code as a Crime Scene from 2014 pioneered techniques for understanding the intersection of people and code. This new edition reflects a decade of additional experience from hundreds of projects. Updated techniques, novel case studies, and extensive new material adds to the strengths of this cult classic. Change how you view software development and join the hunt for better code! What You Need: You need to be comfortable reading code. You also need to use Git (or Subversion, Mercurial or similar version-control tool).

Text Processing with JavaScript

by Faraz K. Kelhini

You might think of regular expressions as the holy grail of text processing, but are you sure you aren't just shoehorning them in where standard built-in solutions already exist and would work better? JavaScript itself provides programmers with excellent methods for text manipulation, and knowing how and when to use them will help you write more efficient and performant code. From extracting data from APIs to calculating word counts and everything in between, discover how to pick the right tool for the job and make the absolute most of it every single time. Whether you're a beginner or an advanced programmer, this up-to-date guide will save you a ton of time when dealing with text. With Text Processing with JavaScript, you'll find a collection of tiny programs, each demonstrating a string manipulation approach in JavaScript. You'll also focus squarely on the practical aspects of text processing with JavaScript - that is, what each technique is designed to accomplish and how to use it in your program. Discover how to extract data from APIs and web pages, apply spelling corrections, convert and format currencies, and remove HTML tags from text. Learn to intersect tables, copy text to the clipboard, extract lists from text, and highlight sentences that contain a specific word. Find duplicate words and fix them automatically, modify a copy of an existing regex literal, match the beginning or end of a string, and remove all comments from JavaScript and HTML files with ease. Match non-ASCII words, calculate the word count of an article in any language, and more. Become a JavaScript expert and master chef of text processing with this collection of hands-on and production-ready recipes.

A Common-Sense Guide to Data Structures and Algorithms in Python, Volume 1

by Jay Wengrow

p>If you thought data structures and algorithms were all just theory, you're missing out on what they can do for your Python code. Learn to use Big O notation to make your code run faster by orders of magnitude. Choose from data structures such as hash tables, trees, and graphs to increase your code's efficiency exponentially. With simple language and clear diagrams, this book makes this complex topic accessible, no matter your background. Every chapter features practice exercises to give you the hands-on information you need to master data structures and algorithms for your day-to-day work.Algorithms and data structures are much more than abstract concepts. Mastering them enables you to write code that runs faster and more efficiently, which is particularly important for today's web and mobile apps. Take a practical approach to data structures and algorithms, with techniques and real-world scenarios that you can use in your daily production code. The Python edition uses Python exclusively for all code examples, exercise, and solutions.Use Big O notation to measure and articulate the efficiency of your code, and modify your algorithm to make it faster. Find out how your choice of arrays, linked lists, and hash tables can dramatically affect the code you write. Use recursion to solve tricky problems and create algorithms that run exponentially faster than the alternatives. Dig into advanced data structures such as binary trees and graphs to help scale specialized applications such as social networks and mapping software. You'll even encounter a single keyword that can give your code a turbo boost. Practice your new skills with exercises in every chapter, along with detailed solutions.Use these techniques today to make your Python code faster and more scalable.

From Ruby to Elixir

by Stephen Bussey

Elixir will change the way you think about programming. Use your Ruby experience to quickly get up to speed so you can see what all of the buzz is about. Go from zero to production applications that are reliable, fast, and scalable. Learn Elixir syntax and pattern matching to conquer the basics. Then move onto Elixir's unique process model that offers a world-class way to go parallel without fear. Finally, use the most common libraries like Ecto, Phoenix, and Oban to build a real-world SMS application. Now's the time. Dive in and learn Elixir. Whether you're a seasoned Ruby developer looking to expand your skill set or a programming beginner looking for a solid foundation in Elixir, this book has what you need to get up to speed quickly. Elixir is a functional language with a fairly small footprint. This makes it easier to learn and put into production than other languages. Plus, it's built on forty-year-old foundations that give your applications rock-solid stability. The first part of this book is all about developing expertise in the language. Learn about the core data types, build application data structures, enumerate over data, and use pattern matching to control the flow of an application. Elixir has an amazing process model that allows for (actually) easy parallel processing. Learn how to tap into this process model so you can leverage that power yourself. The second part of this book builds a real-world application using the most important libraries in a web developer's toolbox. Each library is compared to its similar Ruby library so you'll quickly see similarities and differences. We'll use Ecto, Phoenix, and Oban to build a SMS application powered by Twilio. What are you waiting for? Tap into your Ruby knowledge and start building scalable Elixir applications today. What You Need: You'll need Elixir 1.14+ and Erlang/OTP 24+ installed on a Mac OS X, Linux, or Windows machine.

Programming Ruby 3.3

by Noel Rappin Dave Thomas

Ruby is one of the most important programming languages in use for web development. It powers the Rails framework, which is the backing of some of the most important sites on the web. The Pickaxe Book, named for the tool on the cover, is the definitive reference on Ruby, a highly-regarded, fully object-oriented programming language. This updated edition is a comprehensive reference on the language itself, with a tutorial on the most important features of Ruby - including pattern matching and Ractors - and describes the language through Ruby 3.3. Would you like to go from first idea to working code much, much faster? Do you currently spend more time satisfying the compiler instead of your clients or end users? Are you frustrated with demanding languages that seem to get in your way instead of helping you get the work done? Are you using Rails and want to dig deeper into the underlying Ruby language? If so, then we've got a language and book for you! Ruby is a fully object-oriented language. The combination of the power of a pure object-oriented language with the convenience of a scripting language makes Ruby a favorite tool of programmers that want to get things done quickly and cleanly. This comprehensive reference manual for Ruby includes a description of the most important standard library modules, built-in classes, and modules. It also includes all the new and changed syntax and semantics introduced through Ruby 3.3, including pattern matching and Ractors, and describes the language through Ruby 3.3. What You Need: This book assumes you have a basic understanding of object-oriented programming. In general, Ruby programmers tend to favor the the command line for running their code, and they tend to use text editors rather than IDEs. Ruby runs on Windows, Linux, and MacOS.

Charged Bodies: People, Power, And Paradox In Silicon Valley

by Thomas Mahon

At the heart of Silicon Valley's meteoric rise is a story etched in the lives of those who shaped it and those who were forever transformed by it. Author Tom Mahon provides an insider's perspective on the birth of the semiconductor industry, which sparked the region's transformation from sleepy farmland to the heart and soul of the high-tech revolution. Through twenty-five extended, in-person interviews you'll meet a diverse cast of characters whose goal was to create technology and tools in service to humanity. In the Afterword to this edition, the author questions whether they accomplished their objectives and urges readers to rise up and rethink technology. What did it take to create the atmosphere that transformed rich farmland into the wealthy center of high-tech? Five climates lined up in just the right way. Educational institutions (Stanford and Berkeley); an attractive location with balmy, Mediterranean-like weather; a history of technology development (Federal Telegraph in the early twentieth century); financial risk taking (the gold rush); and a cultural climate near the center of an ideological revolution (the hippie movement). The Santa Clara Valley had them all. In spades. Before personal computers, or the Internet, or social media came *chips*. Inventive minds took advantage of the quad-electron structure and unique properties - insulative and conductive - of silicon to create semiconductors. But Charged Bodies is more than just the story of new technologies emerging from "The Valley of the Heart's Delight." Using an approach like The Canterbury Tales, Tom Mahon captures the spirit of Silicon Valley in the 80s through the stories of the people all around him. The inventors and bankers have their say. But so do a range of other people who lived through that transition. Listen as artists and hackers, detectives and journalists, lawyers and scientists, flappers and philosophers tell the story of Silicon Valley in their own words.

Currently Away

by Bruce Tate

The walls were closing in on Bruce and Maggie Tate. Isolation forced on them by the pandemic, combined with America's growing political factionalism, threatened their bonds with community and family. Something had to change. Maggie's surprising answer: buy a boat, learn to pilot it, and embark on the Great Loop. For nine months Bruce and Maggie navigated rivers, coastal waters, lakes, locks, and loss. Against all odds, they conquered the Loop, and along the way found common cause across political divides with new friends while blowing the walls off their world. Bruce and Maggie Tate were spiraling downward. Normally outgoing and cheerful, Maggie was broken down by pandemic isolation. Bruce, facing asthma, heart disease and Covid-related professional issues, was sure that the virus and his comorbidities would kill him. And the plant-based diet he had just started made him wish it would hurry up. Meanwhile, their country seemed to be crumbling into warring factions. That was when Maggie made a life-changing decision. With no experience, knowing little about seafaring, inboard motors, or navigation, she and Bruce and the family dog decided to take on the Great Loop, a six-thousand-mile journey down inland rivers, around the Gulf and Atlantic coasts, and across the Great Lakes. They had to navigate canals and locks, were threatened by dangerous seas, and even had to deal with heartbreaking loss. But along the way, they made new lifelong friends and were forever changed. When, in a time of great divisiveness, two broken people took on the challenge of their lives, against all odds they found common cause across political divides and made themselves whole again.

Ruby on Rails Background Jobs with Sidekiq

by David B. Copeland

One of the best ways to improve your Rails app’s performance is to use background jobs with Sidekiq. While Sidekiq is easy to get set up, you need to do more than just move code around to reap the benefits. In this book, you’ll get solutions to what sort of code should go into a Sidekiq job and how to manage those jobs. You’ll create a Sidekiq configuration that will serve as a solid foundation for your app, including how to be notified when jobs inevitably fail. You’ll then tame alerting fatigue by designing idempotent jobs that can be safely retried in the face of the types of transient failures that are common in networked applications, all without alerting you until action is needed. With that foundation, you’ll get a conceptual framework for general monitoring and alerting around your Sidekiq installation and the Redis database it uses, as well as practical tips for organizing the code around your Sidekiq jobs. You’ll also learn valuable testing strategies for code that uses Sidekiq jobs. In no time at all you’ll build a Rails app using Sidekiq that is efficient, manageable, and sustainable. Using Sidekiq for background jobs is a great way to scale and grow your app. This book will give you a solid, practical foundation for creating resilient, well-tested, self-healing code that uses background jobs. You’ll be able to simulate real-world failure modes and learn how to write idempotent code that can be safely run with Sidekiq. Buy this DRM-free Pragmatic Bookshelf ebook today!Using Sidekiq for background jobs is a great way to scale and grow your app. This book will give you a solid, practical foundation for creating resilient, well-tested, self-healing code that uses background jobs. You’ll be able to simulate real-world failure modes and learn how to write idempotent code that can be safely run with Sidekiq.

From Objects to Functions: Build Your Software Faster And Safer With Functional Programming And Kotlin

by Uberto Barbini

Build applications quicker and with less effort using functional programming and Kotlin. Learn by building a complete application, from gathering requirements to delivering a microservice architecture following functional programming principles. Learn how to implement CQRS and EventSourcing in a functional way to map the domain into code better and to keep the cost of change low for the whole application life cycle. If you're curious about functional programming or you are struggling with how to put it into practice, this guide will help you increase your productivity composing small functions together instead of creating fat objects. Switching to the functional paradigm isn't easy when you're used to object-oriented programming. You need more than just lambdas and mapping over collections to get a declarative style and disentangle the state from the computations. Use transformations and compositions to help you write less code with better results. Boost your productivity and harness the power of functional programming by creating real-world applications rather than focusing on theoretical concepts. Work through a series of short exercises to find and compose pure functions, and create data structures that work like algebra. Get rid of mutable state in your software to eliminate the main source of bugs. Apply CQRS and EventSourcing patterns to translate stakeholder requirements into functional design and then into code. See how Kotlin's easy-to-learn syntax and functional-friendly approach make it a great option for a pragmatic language that integrates well with existing Java code and libraries. Leverage functional programming to build and deliver robust applications in less time and with fewer defects. What You Need: The code in this book is designed to allow you to build your application from scratch on Windows, Mac and Linux. You will need a recent IDE, we recommend IntelliJ Community Edition, and Kotlin 1.3.x or later.

Functional Programming in Java

by Venkat Subramaniam

Imagine writing Java code that reads like the problem statement, code that's highly expressive, concise, easy to read and modify, and has reduced complexity. With the functional programming capabilities in Java, that's not a fantasy. This book will guide you from the familiar imperative style through the practical aspects of functional programming, using plenty of examples. Apply the techniques you learn to turn highly complex imperative code into elegant and easy-to-understand functional-style code. Updated to the latest version of Java, this edition has four new chapters on error handling, refactoring to functional style, transforming data, and idioms of functional programming. Don't struggle with the limitations of the imperative style; instead learn to combine object-oriented programming with the functional style to reduce the accidental complexity. Harness the functional programming capabilities of Java to create applications where the program reveals its intentions and your team can quickly understand and modify code to align with changing business requirements. Unlock the power of lambda expressions and the Streams API to turn the oft-written spaghetti code into highly concise, expressive, elegant, and maintainable code. See how Streams make the arduous task of parallelizing code as easy as flipping a switch when superior speed is necessary. Apply design patterns built around lambda expressions, safely manage resource allocations, use memoization, and learn to transform data into different forms, all while honoring immutability, and providing thread safety to leverage lazy evaluation for efficiency and parallel execution for performance. Move beyond the basics, explore the idioms for writing functional programs. Learn to think functionally by refactoring legacy code into the functional style. And, if your code runs aground due to failures, learn to properly handle errors the functional way.Don't drown in theory; instead learn the practical functional programming techniques to create superior Java code.What You Need:Java version 8 or newer.

Effective Haskell

by Rebecca Skinner

Put the power of Haskell to work in your programs, learning from an engineer who uses Haskell daily to get practical work done efficiently. Leverage powerful features like Monad Transformers and Type Families to build useful applications. Realize the benefits of a pure functional language, like protecting your code from side effects. Manage concurrent processes fearlessly. Apply functional techniques to working with databases and building RESTful services. Don't get bogged down in theory, but learn to employ advanced programming concepts to solve real-world problems. Don't just learn the syntax, but dive deeply into Haskell as you build efficient, well-tested programs. Haskell is a pure functional programming language with a rich ecosystem of tools and libraries. Designed to push the boundaries of programming, it offers unparalleled power for building reliable and maintainable systems. But to unleash that power, you need a guide. Effective Haskell is that guide. Written by an engineer who understands how to apply Haskell to the real world and uses it daily to get practical work done, it is your ticket to Haskell mastery.Gain deep understanding of how Haskell deals with IO and the outside world by writing a complete Haskell application that does several different kinds of IO. Reinforce your learnings with practice exercises in every chapter.Write stable and performant code using Haskell's type system, code that is easier to grow and refactor. Leverage the power of pure functional programming to improve collaboration, make concurrency safe and easy, and make large code bases manageable.Implement type-safe web services, write generative tests, design strongly typed embedded domain-specific languages, and build applications that exploit parallelism and concurrency without fear of deadlocks and race conditions. Create and deploy cloud-native Haskell applications. Master the performance characteristics of functional applications to make them run faster and use less memory.Write Haskell programs that solve real-world business problems.What You Need:Intel based Mac, M1 Macs, Linux PC, or Windows with WSL2ghcup (http://www. Haskell.org/ghcup/)An active internet connection will be required for some projects.

Agile Web Development with Rails 7

by Sam Ruby Dave Thomas

Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single-page applications - at a fraction of the complexity. Rails 7 integrates the Hotwire frameworks of Stimulus and Turbo directly as the new defaults, together with that hot newness of import maps. The result is a toolkit so powerful that it allows a single individual to create modern applications upon which they can build a competitive business. The way it used to be. Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly - you concentrate on creating the application, and Rails takes care of the details. Rails 7 brings many improvements, and this edition is updated to cover the new features and changes in best practices. We start with a step-by-step walkthrough of building a real application, and in-depth chapters look at the built-in Rails features. Follow along with an extended tutorial as you write a web-based store application. Eliminate tedious configuration and housekeeping, seamlessly incorporate JavaScript, send and receive emails, manage background jobs with ActiveJob, and build real-time features using WebSockets and ActionCable. Test your applications as you write them using the built-in unit, integration, and system testing frameworks, internationalize your applications, and deploy your applications easily and securely. Rails 1.0 was released in December 2005. This book was there from the start, and didn't just evolve alongside Rails, it evolved with Rails. It has been developed in consultation with the Rails core team. In fact, Rails itself is tested against the code in this book. What You Need: All you need is a Windows, Mac OS X, or Linux machine to do development on. This book will take you through the steps to install Rails and its dependencies. If you aren't familiar with the Ruby programming language, this book contains a chapter that covers the basics necessary to understand the material in the book.

Practical A/B Testing: Creating Experimentation-driven Products

by Leemay Nassery

Whether you're a catalyst for organizational change or have the support you need to create an engineering culture that embraces A/B testing, this book will help you do it right. The step-by-step instructions will demystify the entire process, from constructing an A/B test to breaking down the decision factors to build an engineering platform. When you're ready to run the A/B test of your dreams, you'll have the perfect blueprint.With smart, tactful approaches to orchestrating A/B testing on a product, you'll quickly discover how to reap all the benefits that A/B testing has to offer - benefits that span your users, your product, and your team. Take the reins today, and be the change you want to see in your engineering and product organizations.Develop a hypothesis statement that's backed with metrics that demonstrate if your prediction for the experiment is correct. Build more inclusive products by leveraging audience segmentation strategies and ad-hoc post analysis to better understand the impact of changes on specific user groups. Determine which path is best for your team when deciding whether to go with a third-party A/B test framework or to build the A/B testing platform in-house. And finally, learn how to cultivate an experimentation-friendly culture within your team.Leverage the A/B testing methodology to demonstrate the impact of changes on a product to your users, your key business metrics, and the way your team works together. After all, if you aren't measuring the impact of the changes you make, how will you know if you're truly making improvements?

Creating Software with Modern Diagramming Techniques: Build Better Software With Mermaid

by Ashley Peacock

Diagrams communicate relationships more directly and clearly than words ever can. Using only text-based markup, create meaningful and attractive diagrams to document your domain, visualize user flows, reveal system architecture at any desired level, or refactor your code. With the tools and techniques this book will give you, you'll create a wide variety of diagrams in minutes, share them with others, and revise and update them immediately on the basis of feedback. Adding diagrams to your professional vocabulary will enable you to work through your ideas quickly when working on your own code or discussing a proposal with colleagues. Expand your professional vocabulary by learning to communicate with diagrams as easily and naturally as speaking or writing. This book will provide you with the skills and tools to turn ideas into clear, meaningful, and attractive diagrams in mere minutes, using nothing more complicated than text-based markup. You'll learn what kinds of diagrams are suited to each of a variety of use cases, from documenting your domain to understanding how complex code pieces together. Model your software's architecture, creating diagrams focused broadly or narrowly, depending on the audience. Visualize application and user flows, design database schemas, and use diagrams iteratively to design and refactor your application. You'll be able to use technical diagramming to improve your day-to-day workflow. You will better understand the codebase you work in, communicate ideas more effectively and immediately with others, and more clearly document the architecture with C4 diagrams. Manually creating diagrams is cumbersome and time-consuming. You'll learn how to use text-based tools like Mermaid to rapidly turn ideas into diagrams. And You'll learn how to keep your diagrams up to date and seamlessly integrated into your engineering workflow. You'll be better at visualizing and communicating when you add diagrams to your standard vocabulary. What You Need: A Mac or PC A GitHub account

Designing Data Governance from the Ground Up: Six Steps To Build A Data-driven Culture

by Lauren Maffeo

Businesses own more data than ever before, but it's of no value if you don't know how to use it. Data governance manages the people, processes, and strategy needed for deploying data projects to production. But doing it well is far from easy: Less than one fourth of business leaders say their organizations are data driven. In Designing Data Governance from the Ground Up, you'll build a cross-functional strategy to create roadmaps and stewardship for data-focused projects, embed data governance into your engineering practice, and put processes in place to monitor data after deployment. In the last decade, the amount of data people produced grew 3,000 percent. Most organizations lack the strategy to clean, collect, organize, and automate data for production-ready projects. Without effective data governance, most businesses will keep failing to gain value from the mountain of data that's available to them.There's a plethora of content intended to help DataOps and DevOps teams reach production, but 90 percent of projects trained with big data fail to reach production because they lack governance.This book shares six steps you can take to build a data governance strategy from scratch. You'll find a data framework, pull together a team of data stewards, build a data governance team, define your roadmap, weave data governance into your development process, and monitor your data in productionWhether you're a chief data officer or individual contributor, this book will show you how to manage up, get the buy-in you need to build data governance, find the right colleagues to co-create data governance, and keep them engaged for the long haul.

Numerical Brain Teasers: Exercise Your Mind

by Erica Sadun

Challenge your brain with math! Using nothing more than basic arithmetic and logic, you'll be thrilled as answers slot into place. Whether purely for fun or to test your knowledge, you'll sharpen your problem-solving skills and flex your mental muscles. All you need is logical thought, a little patience, and a clear mind. There are no gotchas here. These puzzles are the perfect introduction to or refresher for math concepts you may have only just learned or long since forgotten. Get ready to have more fun with numbers than you've ever had before. Engage your analytical side with these numerical brain teasers. Math and logic puzzles help you stretch your mind to think in new ways. They flex your lateral thinking as you work through fresh problem styles. Each puzzle type comes with an explanation, a method for solving them, and solutions if you get stuck. The puzzles in this book are short, self-contained, and "gritty." They offer an enjoyable challenge and are designed to be solvable within a few minutes. You only need basic arithmetic to solve these puzzles; no advanced math required. There's plenty of variety to keep things fresh. From wandering digits to magic triangles, from summing grids to water pails, you'll find something that catches your interest. Each puzzle is brief, so use them as a warm-up to your daily work, for a delightful diversion on your coffee break, or solve a few while you wind down for the day. Grab a pencil and your thinking cap, and get solving!

Mockito Made Clear

by Ken Kousen

Mockito is the most popular framework in the Java world for automating unit testing with dependencies. Learn the Mockito API and how and when to use stubs, mocks, and spies. On a deeper level, discover why the framework does what it does and how it can simplify unit testing in Java. Using Mockito, you'll be able to isolate the code you want to test from the behavior or state of external dependencies without coding details of the dependency. You'll gain insights into the Mockito API, save time when unit testing, and have confidence in your Java programs. If you've only ever run a few JUnit tests or injected stubs into classes to return preset values, it's time to level up your Java toolbox. Dependencies on other classes and external resources can obscure issues and make bugs hard to detect. You need to test classes in isolation to truly pinpoint your problems. And while you could write dummy classes to replace dependencies yourself, Mockito automates the process and helps you fix your code faster. Start with the Mockito API to generate fake classes for dependencies, configure how each should respond when their methods are called, and verify that the class under test interacts with dependencies the way you'd expect. Next, build unit tests with the Mockito framework and feel confident not just that methods are called, but that they are called the correct number of times and in the correct order. Along the way, follow clear test examples based on JUnit 5 to create stubs, mocks, and spies and find the source of any problems lurking in Java classes. Save time, write better code, and have more confidence in your Java programs with Mockito. What You Need: In this book, we use Mockito 4, the latest version of the Mockito framework, but the concepts and the code works on versions 2 and 3. The tests are based on JUnit 5 (known as Jupiter). There are some differences in JUnit 4, but none of those affect Mockito directly. The underlying Java version is 11, but the provided tests in the GitHub repository will work successfully for any version of Java above that (including the current Long Term Support version, 17).

Building Table Views with Phoenix LiveView

by Peter Ullrich

As a web developer, you have to build tables. Lots and lots of tables. With table UIs making up such a significant part of your daily work, you need to know how to build the right table for the task, with all the needed features. Building a simple table is easy, but tables only become really useful with advanced features like pagination, sorting, and filtering. That’s where building a table can quickly become complicated. This book shows you how to implement advanced table features in a clean and reusable way. You’ll build fast and interactive table UIs by leveraging Phoenix LiveView. Make vast amounts of data manageable with common but complex features like pagination, sorting, filtering, and inifinity scrolling. Use SOLID coding principles to make your queries reusable with query composition. Compartmentalize your UI with LiveComponents and learn how to handle user input securely with schemaless changesets. Share your view onto the data painlessly by storing your search parameters in the URL. Data is one of the most valuable assets of your business, but you cannot unlock its potential if you don’t know how to make it accessible. This book shows you how to deliver that data to your users’ fingertips quickly. ","Data is at the core of every business, but it is useless if nobody can access and analyze it. Learn how to generate business value by making your data accessible with advanced table UIs. This definitive guide teaches you how to bring your data to the fingertips of nontechnical users with advanced features like pagination, sorting, filtering, and infinity scrolling. Build reactive and reuseable table components by leveraging Phoenix LiveView, schemaless changesets, and Ecto query composition. Table UIs are the bread and butter for every web developer, so it is time to learn how to build them right.

Exploring Graphs with Elixir

by Tony Hammond

Data is everywhere - it's just not very well connected, which makes it super hard to relate dataset to dataset. Using graphs as the underlying glue, you can readily join data together and create navigation paths across diverse sets of data. Add Elixir, with its awesome power of concurrency, and you'll soon be mastering data networks. Learn how different graph models can be accessed and used from within Elixir and how you can build a robust semantics overlay on top of graph data structures. We'll start from the basics and examine the main graph paradigms. Get ready to embrace the world of connected data! Graphs provide an intuitive and highly flexible means for organizing and querying huge amounts of loosely coupled data items. These data networks, or graphs in math speak, are typically stored and queried using graph databases. Elixir, with its noted support for fault tolerance and concurrency, stands out as a language eminently suited to processing sparsely connected and distributed datasets. Using Elixir and graph-aware packages in the Elixir ecosystem, you'll easily be able to fit your data to graphs and networks, and gain new information insights. Build a testbed app for comparing native graph data with external graph databases. Develop a set of applications under a single umbrella app to drill down into graph structures. Build graph models in Elixir, and query graph databases of various stripes - using Cypher and Gremlin with property graphs and SPARQL with RDF graphs. Transform data from one graph modeling regime to another. Understand why property graphs are especially good at graph traversal problems, while RDF graphs shine at integrating different semantic models and can scale up to web proportions. Harness the outstanding power of concurrent processing in Elixir to work with distributed graph datasets and manage data at scale. What You Need: To follow along with the book, you should have Elixir 1.10+ installed. The book will guide you through setting up an umbrella application for a graph testbed using a variety of graph databases for which Java SDK 8+ is generally required. Instructions for installing the graph databases are given in an appendix.

SQL Antipatterns, Volume 1: Avoiding The Pitfalls Of Database Programming

by Bill Karwin

SQL is the ubiquitous language for software developers working with structured data. Most developers who rely on SQL are experts in their favorite language (such as Java, Python, or Go), but they're not experts in SQL. They often depend on antipatterns - solutions that look right but become increasingly painful to work with as you uncover their hidden costs. Learn to identify and avoid many of these common blunders. Refactor an inherited nightmare into a data model that really works. Updated for the current versions of MySQL and Python, this new edition adds a dozen brand new mini-antipatterns for quick wins. No matter which platform, framework, or language you use, the database is the foundation of your application, and the SQL database language is the standard for working with it. Antipatterns are solutions that look simple at the surface, but soon mire you down with needless work. Learn to identify these traps, and craft better solutions for the often-asked questions in this book. Avoid the mistakes that lead to poor performance and quality, and master the principles that make SQL a powerful and flexible tool for handling data and logic. Dive deep into SQL and database design, and learn to recognize the most common missteps made by software developers in database modeling, SQL query logic, and code design of data-driven applications. See practical examples of misconceptions about SQL that can lure software projects astray. Find the greatest value in each group of data. Understand why an intersection table may be your new best friend. Store passwords securely and don't reinvent the wheel. Handle NULL values like a pro. Defend your web applications against the security weakness of SQL injection. Use SQL the right way - it can save you from headaches and needless work, and let your application really shine! What You Need: The SQL examples use the MySQL 8.0 flavor, but other popular brands of RDBMS are mentioned. Other code examples use Python 3.9+ or Ruby 2.7+.

Refine Search

Showing 51 through 75 of 100,000 results