Arjun Srivastava's Library
home

Arjun Srivastava's Library

The Algorithm Design Manual
Steven S Skiena
This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary t...
Code: The Hidden Language of Computer Hardware and Software
Charles Petzold
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this in...
Coders: Who They Are, What They Think and How They Are Changing Our World
Clive Thompson
'Masterful . . . [Thompson] illuminates both the fascinating coders and the bewildering technological forces that are transforming the world in which we live.' - David Grann, author of The Lost City of Z.Facebook’s algorithms shaping the news. Uber’...
Domain Modeling Made Functional: Tackle Software Complexity With Domain-Driven Design and F#
Scott Wlaschin
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you'll...
Elasticsearch: The Definitive Guide
Clinton Gormley and Zachary Tong
Whether you need full-text search or real-time analytics of structured data—or both—the Elasticsearch distributed search engine is an ideal way to put your data to work. This practical guide not only shows you how to search, analyze, and explore dat...
Ggplot2: Elegant Graphics for Data Analysis
Hadley Wickham
1. 1 Welcome to ggplot2 ggplot2 is an R package for producing statistical, or data, graphics, but it is unlike most other graphics packages because it has a deep underlying grammar. This grammar, based on the Grammar of Graphics (Wilkinson, 2005), is...
Go in Action
Brian Ketelsen and Erik St. Martin and William Kennedy
Summary Go in Action introduces the Go language, guiding you from inquisitive developer to Go guru. The book begins by introducing the unique features and concepts of Go. Then, you'll get hands-on experience writing real-world applications includin...
Hackers & Painters: Big Ideas From the Computer Age
Paul Graham
"The computer world is like an intellectual Wild West, in which you can shoot anyone you wish with your ideas, if you're willing to risk the consequences. " --from Hackers & Painters: Big Ideas from the Computer Age, by Paul Graham We are living...
The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change
Camille Fournier
Managing people is difficult wherever you work. But in the tech industry, where management is also a technical discipline, the learning curve can be brutal—especially when there are few tools, texts, and frameworks to help you. In this practical guid...
Planning Algorithms
Steven M. LaValle
Planning algorithms are impacting technical disciplines and industries around the world, including robotics, computer-aided design, manufacturing, computer graphics, aerospace applications, drug design, and protein folding. This coherent and comprehe...
Practical Common Lisp
Peter Seibel
...it has a fresh view on the language and the examples in the later chapters are usable in your day-to-day work as a programmer. — Frank Buss, Lisp Programmer and Slashdot Contributor If you're interested in Lisp as it relates to Python or Perl, a...
Practical Google Analytics and Google Tag Manager for Developers
Jonathan Weber
Whether you’re a marketer with development skills or a full-on web developer/analyst, Practical Google Analytics and Google Tag Manager for Developers shows you how to implement Google Analytics using Google Tag Manager to jumpstart your web analytic...
Pro Git
Scott Chacon , Ben Straub
Pro Git (Second Edition) is your fully-updated guide to Git and its usage in the modern world. Git has come a long way since it was first developed by Linus Torvalds for Linux kernel development. It has taken the open source world by storm since its...
Pro Git
Scott Chacon , Ben Straub
Pro Git (Second Edition) is your fully-updated guide to Git and its usage in the modern world. Git has come a long way since it was first developed by Linus Torvalds for Linux kernel development. It has taken the open source world by storm since its...
Redis in Action
Josiah L. Carlson
SummaryRedis in Action introduces Redis and walks you through examples that demonstrate how to use it effectively. You'll begin by getting Redis set up properly and then exploring the key-value model. Then, you'll dive into real use cases including ...
Seductive Interaction Design: Creating Playful, Fun, and Effective User Experiences
Stephen P. Anderson
What happens when you’ve built a great website or app, but no one seems to care? How do you get people to stick around long enough to see how your service might be of value? In Seductive Interaction Design, speaker and author Stephen P. Anderson tak...
Software Engineering at Google: Lessons Learned From Programming Over Time
Titus Winters and Tom Manshreck and Hyrum Wright
Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software eng...
Terraform: Up & Running: Writing Infrastructure as Code
Yevgeniy Brikman
Terraform has become a key player in the DevOps world for defining, launching, and managing infrastructure as code (IaC) across a variety of cloud and virtualization platforms, including AWS, Google Cloud, Azure, and more. This hands-on second editi...
Types and Programming Languages
Benjamin C. Pierce and Benjamin C. (professor Pierce, University Of Pennsylvania)
A comprehensive introduction to type systems and programming languages. A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they co...