Entries in Book (20)

Wednesday
Dec232020

The Read Aloud Cloud: An Interview With Forrest Brazeal On His New Book

 

It's Christmas time and you've been wracking your brain trying to find the perfect gift that will teach your loved ones about the cloud in a simple and entertaining way. What to do?

Fortunately for you, Santa has a new elf this year—Forrest Brazeal—who is part AWS Serverless Hero, part skilled cartoonist, and part cloud guru.

Yes, it's a cartoon book about the cloud! 

 

No, I didn't think it could be done either, but Forrest pulled it off with a twinkle in his eyes and little round belly that shook when he laughed, like a bowl full of jelly.

One of the many five-star reviews:

The Read Aloud Cloud is a delightful book. It's 165 pages of hand-drawn cartoons, entertaining verse, and hard-won wisdom.

It truly is a load of fun to flip through. I read it to my kids (8 & 6), and they love it. I'll share it with my parents so they can finally understand what I do. I learned a ton about the history of computing and of course all the ways that we as humans stumble through making our computers do what we want.

 

Here's my email interview with Forrest Brazeal on The Read Aloud Cloud: An Innocent's Guide to the Tech Inside. Enjoy. And happy Christmas to all, and to all a good night!

 

Please tell us who you are and what you've brought to show and tell today?

Click to read more ...

Monday
May042020

Part 2: The DynamoDB Book: An Interview With Alex DeBrie On His New Book

This is the second part of my interview with Alex DeBrie on his new insta-classic: The DynamoDB Book.

To read the first part of the interview please mosey on over to The DynamoDB Book: An Interview With Alex DeBrie On His New Book. Go ahead. Take your time. It's worth it.

Quick Fire Round. What's your quick reaction to:

Click to read more ...

Monday
Apr272020

The DynamoDB Book: An Interview With Alex DeBrie On His New Book

 

You know nothing about DynamoDB. At least that’s what I realized the first time I heard Rick Houlihan give his now infamous talk at AWS re:Invent 2018 on Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB.

In that talk Rick revealed for the first time the inner arcana of single-table design. Minds were blown. Weaknesses were revealed. Futures were changed.

As a mere novice in the ways of DynamoDB I realized there were many levels of understanding needed before one could become a true AWS Data Hero. For that we need a guide.

Our guide on the Hero’s Journey that is mastering DynamoDB is a wise young wizard named Alex DeBrie. Alex wrote what you might consider to be the Gnostic Gospels of DynamoDB: The DynamoDB Book.

 

 

You will know something after reading this book

But it's more than just a book. You can’t buy it on Amazon. Instead, Alex uses Gumroad to offer packages at three different price points along with a team option. Each level provides additional content:

  • Basic package ($79). A 450 page book and six cheatsheets.
  • Plus package ($129). 60-page Analytics supplement guide. 60-page Operations supplement guide. Five deployable code implementations.
  • Premium package ($249). Video walkthroughs of every chapter.

Use the code "HIGHSCALABILITY" at checkout and you’ll shave off $20 for Basic, $30 for Plus, and $50 for Premium. You’re welcome.

When Alex asked for advice about what to include in the book, I made a big deal about including complete working code examples. Alex delivered. So I thought it was only fitting that I buy the Premium package.

But it’s so much money, you might complain. As someone who has made not much money writing a book I have some idea how much effort Alex put into creating these materials. It’s a lot of work. As a profession we must be willing to pay for our tools. So as a professional programmer wanting to create professional products—I’m very happy with the result. Here’s why.

What’s great about SQL is you can find an answer to damn near any question you have. Not so with DynamoDB. Working code examples are rare.

I remember Rick talking about using “between” when making queries. Never heard of such a thing and it took me forever to find a complete working code example of what he was talking about. Don’t even talk about the documentation. What you find are ridiculous command line examples like “aws dynamodb query…” What use is the command line for this sort of stuff?

Show the code! And Alex does.

I think you’ll find the 5 code examples—Big Time Deals, E-Commerce, Github Migration, Github Node, and Session Store Node—worth the price of admission. First, they tackle complex domains so they might already solve a problem you’re having. That’s gold. Second, you’ll learn a lot by just reading the code. As a not so great Javascript developer I know I learned a lot.

What about the Holy Grail of single-table design? If you have that sneaking suspicion you’re using DynamoDB incorrectly and you’ve tried to learn single-table design before, but got frustrated, Alex has your back. The book is filled with clear examples backed by strategies for various use cases.

Against my expectations the videos turned out to be very useful. Alex’s tone was great. It was just like he was next to me explaining what he was doing. And that’s exactly what you want from a teaching product.

Here's my email interview with Alex DeBrie on The DynamoDB Book. Enjoy.

Click to read more ...

Thursday
Apr092020

Free Google Book: Building Secure and Reliable Systems

 

Google added another book into their excellent SRE series: Building Secure and Reliable Systems. It's free to download, so don't be shy. 

It's not short: 557 pages and 21 chapters! So what's it about? In short it's about "reliability through the lens of security."

In long, Ana Oprea, one of the authors, gave a good overview. anaoprea:

There are multiple questions about what this book is about, who it's for and what might be relevant for me. We recommend going through the Preface to get answers to these questions. Copy/pasting a few paragraphs: "In this book we talk generally about systems, which is a conceptual way of thinking about the groups of components that cooperate to perform some function.

We wanted to write a book that focuses on integrating security and reliability directly into the software and system lifecycle, both to highlight technologies and practices that protect systems and keep them reliable, and to illustrate how those practices interact with each other.

We’d like to explicitly acknowledge that some of the strategies this book recommends require infrastructure support that simply may not exist where you’re currently working.

Because security and reliability are everyone’s responsibility, we’re targeting a broad audience: people who design, implement, and maintain systems. We’re challenging the dividing lines between the traditional professional roles of developers, architects, SREs, systems administrators, and security engineers.

Building and adopting the widespread best practices we recommend in this book requires a culture that is supportive of such change. We feel it is essential that you address the culture of your organization in parallel with the technology choices you make to focus on both security and reliability, so that any adjustments you make are persistent and resilient.

We recommend you start with Chapters 1 and 2, and then read the chapters that most interest you. Most chapters begin with a boxed preface or executive summary that outlines the following:

  • The problem statement
  • When in the software development lifecycle you should apply these principles and practices
  • The intersections of and/or tradeoffs between reliability and security to consider

Within each chapter, topics are generally ordered from the most fundamental to the most sophisticated. We also call out deep dives and specialized subjects with an alligator icon."

I've only had time to browse through the book. One thing I like is they use as examples actual security and design issues they've experienced at Google and then explain how those were solved. Google has problems, just like you.

One thing I always dislike about security books is that empty feeling I get when I go to write that next line of code and I realize I still don't have any idea if that line is secure or not. Even though Chapter 12 is on Writing Code, I'll still get that feeling. Perhaps that's just the nature of the beast. It will take much more practical work before security and reliability can truly become inherent properties of all information systems.

This book is a top to bottom look at a complete organizational response to security and reliability. It's not for the meek:

For those who are passionate about security and reliability, we conclude with the following advice: your ability to work across knowledge domains and embed expertise in the right places is key to your organization’s success. Security and reliability need to be an integrated part of the entire computing environment. All these pieces must work together in harmony to solve problems. No checklist or silver-bullet advice we could give can compensate for your own ability to help your organization flex and grow as the nature of the security and reliability challenges it faces evolves.

Monday
Dec182017

Explain the Cloud Like I'm 10

“Todd, can you explain ‘The Cloud’? What is it?” I was asked this question at lunch by Joe, a fellow tour member on a recent trip Linda (my wife) and I took to France.

It was not a question I was expecting on vacation, but with many years of experience as a programmer, a lot of it spent in cloud computing, it’s a question I should have been able to knock out of the park.

Except I didn’t. My answer stank. I hemmed and hawed. I stuttered and sputtered. I could tell that nothing I said was making any sense. I gave a horrible answer, and it has haunted me ever since.

While talking, I noticed a lot of other people at the table were interested in my answer as well. It seemed a lot of smart people were confused about the cloud.

When I got back home I did a lot of research. I was trying to redeem myself by finding the perfect book to recommend. I couldn't find one! So I decided to write Explain the Cloud Like I'm 10. It's the answer I wish I'd given Joe in France.

Here's what I came up with:

  • What Does the Cloud Look Like?
  • Why is it called a ‘cloud’ anyway?
  • If You Use Online Banking You Already Understand The Cloud
  • What is the Cloud?
  • What is a Service?
  • What is a Cloud Service?
  • Facebook Messenger is a Cloud Service. How does it Work?
  • What isn’t a Cloud Service?
  • What does Stuff Mean?
  • What does Stored in the Cloud Mean?
  • What is a Device?
  • What is a Program or App?
  • What is the Internet?
  • What is a Datacenter?
  • What is Cloud Computing?
  • The Good, the Bad and the Ugly of Cloud Services
  • Kindle: Amazon’s Cloud Service for Reading Ebooks
  • iCloud: Apple’s Cloud Service for Syncing Data
  • Google Maps: A Cloud Service for Navigation
  • Cloud DVR: TV in the Cloud
  • Netflix: What Happens When You Press Play?
  • Fighting the Ecosystem Wars in the Proactive Cloud
  • Does stormy weather affect cloud computing?
  • If I say Something is in the cloud, do you know what it means?

Beginners will find the cloud explained from the beginning. Little prior knowledge is assumed. I use lots of pictures, lots of examples, and many somewhat questionable analogies. We build our way up to understanding the cloud idea by idea.

At the end, we'll use what we've learned to understand the inner-workings of Kindle, iCloud, Google Maps, Nest, and Cloud DVRs. You will understand the cloud and what it means for something to be in the cloud.

I also think even intermediate level people will learn something. I cover a lot. You can read an example chapter at Netflix: What Happens When You Press Play? 

If you are someone or know someone who could use a good book on the cloud, then I'd appreciate giving Explain the Cloud Like I'm 10 a try. And please write a review. That would really help.

Thanks!

Monday
Oct232017

New Book: Explain the Cloud Like I'm 10

What is the cloud? Why is it called a cloud? How does the cloud work? What does it mean when something is 'in the cloud'?

I wrote a new book: Explain the Cloud Like I'm 10, answering those questions for the complete beginner. It makes the perfect gift for Halloween. And Thanksgiving. And Christmas. Oh, and birthdays too!

The irony is, if you read HighScalability, you're not the target audience :-) Explain the Cloud Like I'm 10 is for people who hear about the cloud everyday and have wondered what it is.

Talking with people outside the tech bubble I've found the cloud is still a mystery. I think that's because almost every explanation of the cloud I could find was a rewording of the same unhelpful technobabble.

In Explain the Cloud Like I'm 10 I've used a lot of pictures and a lot of examples. I go slow and easy. I try really hard to build up an intuitive understanding of what the cloud is and how it works.

If you know of anyone who might benefit from a book like this, I'd appreciate it if you'd pass it on.

thanks! 

 

Wednesday
May112016

Performance and Scaling in Enterprise Systems

This is a guest post from Vlad Mihalcea the author of the High-Performance Java Persistence book, on the notion of performance and scalability in enterprise systems.

An enterprise application needs to store and retrieve as much data and as fast as possible. In application performance management, the two most important metrics are response time and throughput.

The lower the response time, the more responsive an application becomes. Response time is, therefore, the measure of performance. Scaling is about maintaining low response times while increasing system load, so throughput is the measure of scalability.

Response time and throughput

Click to read more ...

Monday
Jan042016

Server-Side Architecture. Front-End Servers and Client-Side Random Load Balancing

Chapter by chapter Sergey Ignatchenko is putting together a wonderful book on the Development and Deployment of Massively Multiplayer Games, though it has much broader applicability than games. Here's a recent chapter from his book.

Enter Front-End Servers

[Enter Juliet]
Hamlet:
Thou art as sweet as the sum of the sum of Romeo and his horse and his black cat! Speak thy mind!
[Exit Juliet]

— a sample program in Shakespeare Programming Language

 

 

Front-End Servers as an Offensive Line

 

Our Classical Deployment Architecture (especially if you do use FSMs) is not bad, and it will work, but there is still quite a bit of room for improvement for most of the games out there. More specifically, we can add another row of servers in front of the Game Servers, as shown on Fig VI.8:

Click to read more ...

Wednesday
Dec092015

Free Red Book: Readings in Database Systems, 5th Edition

For the first time in ten years there has been an update to the classic Red Book, Readings in Database Systems, which offers "readers an opinionated take on both classic and cutting-edge research in the field of data management."

Editors Peter Bailis, Joseph M. Hellerstein, and Michael Stonebraker curated the papers and wrote pithy introductions. Unfortunately, links to the papers are not included, but a kindly wizard, Nindalf, gathered all the referenced papers together and put them in one place.

What's in it?

  • Preface 
  • Background introduced by Michael Stonebraker 
  • Traditional RDBMS Systems introduced by Michael Stonebraker 
  • Techniques Everyone Should Know introduced by Peter Bailis 
  • New DBMS Architectures introduced by Michael Stonebraker
  • Large-Scale Dataflow Engines introduced by Peter Bailis 
  • Weak Isolation and Distribution introduced by Peter Bailis 
  • Query Optimization introduced by Joe Hellerstein 
  • Interactive Analytics introduced by Joe Hellerstein 
  • Languages introduced by Joe Hellerstein 
  • Web Data introduced by Peter Bailis 
  • A Biased Take on a Moving Target: Complex Analytics by Michael Stonebraker 
  • A Biased Take on a Moving Target: Data Integration by Michael Stonebraker

Related Articles

 

Wednesday
Feb182015

Free Book: Is Parallel Programming Hard, And, If So, What Can You Do About It?

The trouble ain’t that people are ignorant: it’s that they know so much that ain’t so." -- Josh Billings

 

Is Parallel Programming Hard? Yes. What Can You Do About It? To answer that, Paul McKenney, Distinguished Engineer at IBM Linux Technology Center, vetran of parallel powerhouses SRI and Sequent, has written an epic 400+ page book: Is Parallel Programming Hard, And, If So, What Can You Do About It? 

The goal of the book? "To help you understand how to design shared-memory parallel programs to perform and scale well with minimal risk to your sanity."

So it's not a book about parallelism in the sense of getting the most out of a distributed system, it's a book in the mechanical-sympathy sense of getting the most out of a single machine.

Some example section titles: Introduction, Alternative to Parallel Programming, What Makes Parallel Programming Hard, Hardware and its Habits, Tools of the Trade, Counting, Partitioning and Synchronized Design, Locking, Data Ownership, Deferred Processing, Data Structures, Validation, Formal Verification, Putting it All Together, Advanced Synchronization, Parallel Real-Time Computing, Ease of Use, Conflicting Visions of the Future.

To get a feel for the kind of things you'll learn in the book, here's an interview where Paul talks about what in parallel programming is the hardest to master:

Click to read more ...