Book picks similar to
TCP/IP First-Step by Mark Sportack


computer-science
computing
general-compsci
tech

The Mikado Method


Ola Ellnestam - 2014
    The Mikado Method is a process for surfacing the dependencies in a codebase, so that you can systematically eliminate technical debt and get things done.It gets its name from a simple game commonly known as "pick-up sticks." You start with a jumbled pile of sticks. The goal is to remove the Mikado, or Emperor, stick without disturbing the others. Players carefully remove sticks one at a time, leaving the rest of the heap intact, slowly exposing the Mikado. The game is a great metaphor for eliminating technical debt—carefully extracting each intertwined dependency until you're able to successfully resolve the central issue and move on.The Mikado Method is a book by the creators of this process. It describes a pragmatic, straightforward, and empirical method to plan and perform non-trivial technical improvements on an existing software system. The method has simple rules, but the applicability is vast. As you read, you'll practice a step-by-step system for identifying the scope and nature of your technical debt, mapping the key dependencies, and determining the safest way to approach the "Mikado"-your goal. A natural byproduct of this process is the Mikado Graph, a minimalistic, relevant, just-in-time roadmap and information radiator that reflects deep understanding of how your system works.

The Problem with Software: Why Smart Engineers Write Bad Code


Adam Barr - 2018
    As the size and complexity of commercial software have grown, the gap between academic computer science and industry has widened. It's an open secret that there is little engineering in software engineering, which continues to rely not on codified scientific knowledge but on intuition and experience.Barr, who worked as a programmer for more than twenty years, describes how the industry has evolved, from the era of mainframes and Fortran to today's embrace of the cloud. He explains bugs and why software has so many of them, and why today's interconnected computers offer fertile ground for viruses and worms. The difference between good and bad software can be a single line of code, and Barr includes code to illustrate the consequences of seemingly inconsequential choices by programmers. Looking to the future, Barr writes that the best prospect for improving software engineering is the move to the cloud. When software is a service and not a product, companies will have more incentive to make it good rather than "good enough to ship."

C++ Pocket Reference


Kyle Loudon - 2003
    This is especially true when it comes to object-oriented and template programming. The C++ Pocket Reference is a memory aid for C++ programmers, enabling them to quickly look up usage and syntax for unfamiliar and infrequently used aspects of the language. The book's small size makes it easy to carry about, ensuring that it will always be at-hand when needed. Programmers will also appreciate the book's brevity; as much information as possible has been crammed into its small pages.In the C++ Pocket Reference, you will find:Information on C++ types and type conversions Syntax for C++ statements and preprocessor directives Help declaring and defining classes, and managing inheritance Information on declarations, storage classes, arrays, pointers, strings, and expressions Refreshers on key concepts of C++ such as namespaces and scope More!C++ Pocket Reference is useful to Java and C programmers making the transition to C++, or who find themselves occasionally programming in C++. The three languages are often confusingly similar. This book enables programmers familiar with C or Java to quickly come up to speed on how a particular construct or concept is implemented in C++.Together with its companion STL Pocket Reference, the C++ Pocket Reference forms one of the most concise, easily-carried, quick-references to the C++ language available.

The Moonshot Game: Adventures of an Indian Venture Capitalist


Rahul Chandra - 2019
    The second wave came in 2006 when home-grown VCs raised large amounts of capital and funded products and services companies for Indian consumers.This is a gripping behind-the-scenes story of a VC's journey, right from the beginning of the second start-up revolution in India in 2006 until the end of the funding frenzy in 2016. A story about how global conditions, local consumers, founder ambition and good old greed shaped the start-up story in India.Rahul Chandra is the co-founder of Helion Ventures, and in this candid memoir he tells us about his journey building one of India's oldest VC firms. In a remarkably gripping account, he recounts his adventures in India's hyper-funded start-up ecosystem.The Moonshot Game gives readers an insight into the secret world of a VC, with unguarded stories involving large bets and big mistakes, and tales of how one juggles several investments at the same time.Rahul shows why being a VC is a constant journey of ups and downs, why building value is a long-term business, and why no amount of failure can be an excuse to lose optimism in the power of entrepreneurship.

Beginning Programming All-In-One Desk Reference for Dummies


Wallace Wang - 2007
    If programming intrigues you (for whatever reason), Beginning Programming All-In-One Desk Reference For Dummies is like having a starter programming library all in one handy, if hefty, book.In this practical guide, you'll find out about algorithms, best practices, compiling, debugging your programs, and much more. The concepts are illustrated in several different programming languages, so you'll get a feel for the variety of languages and the needs they fill.Inside you'll discover seven minibooks:Getting Started: From learning methods for writing programs to becoming familiar with types of programming languages, you'll lay the foundation for your programming adventure with this minibook. Programming Basics: Here you'll dive into how programs work, variables, data types, branching, looping, subprograms, objects, and more. Data Structures: From structures, arrays, sets, linked lists, and collections, to stacks, queues, graphs, and trees, you'll dig deeply into the data. Algorithms: This minibook shows you how to sort and search algorithms, how to use string searching, and gets into data compression and encryption. Web Programming: Learn everything you need to know about coding for the web: HyperText. Markup Language (better known simply as HTML), CSS, JavaScript, PHP, and Ruby. Programming Language Syntax: Introduces you to the syntax of various languages - C, C++, Java, C#, Perl, Python, Pascal, Delphi, Visual Basic, REALbasic - so you know when to use which one. Applications: This is the fun part where you put your newly developed programming skills to work in practical ways. Additionally, Beginning Programming All-In-One Desk Reference For Dummies shows you how to decide what you want your program to do, turn your instructions into "machine language" that the computer understands, use programming best practices, explore the "how" and "why" of data structuring, and more. And you'll get a look into various applications like database management, bioinformatics, computer security, and artificial intelligence. After you get this book and start coding, you'll soon realize that -- wow! You're a programmer!

The Node Beginner Book


Manuel Kiessling - 2011
    The aim of The Node Beginner Book is to get you started with developing applications for Node.js, teaching you everything you need to know about advanced JavaScript along the way on 59 pages.

Building Mobile Apps at Scale: 39 Engineering Challenges


Gergely Orosz - 2021
    By scale, we mean having numbers of users in the millions and being built by large engineering teams.For mobile engineers, this book is a blueprint for modern app engineering approaches. For non-mobile engineers and managers, it is a resource with which to build empathy and appreciation for the complexity of world-class mobile engineering.

Advanced Swift


Chris Eidhof - 2016
    If you have read the Swift Programming Guide, and want to explore more, this book is for you.Swift is a great language for systems programming, but also lends itself for very high-level programming. We'll explore both high-level topics (for example, programming with generics and protocols), as well as low-level topics (for example, wrapping a C library and string internals).

MongoDB Applied Design Patterns


Rick Copeland - 2013
    You’ll learn how to apply MongoDB design patterns to several challenging domains, such as ecommerce, content management, and online gaming. Using Python and JavaScript code examples, you’ll discover how MongoDB lets you scale your data model while simplifying the development process.Many businesses launch NoSQL databases without understanding the techniques for using their features most effectively. This book demonstrates the benefits of document embedding, polymorphic schemas, and other MongoDB patterns for tackling specific big data use cases, including:Operational intelligence: Perform real-time analytics of business dataEcommerce: Use MongoDB as a product catalog master or inventory management systemContent management: Learn methods for storing content nodes, binary assets, and discussionsOnline advertising networks: Apply techniques for frequency capping ad impressions, and keyword targeting and biddingSocial networking: Learn how to store a complex social graph, modeled after Google+Online gaming: Provide concurrent access to character and world data for a multiplayer role-playing game

Machine Learning: Fundamental Algorithms for Supervised and Unsupervised Learning With Real-World Applications


Joshua Chapmann - 2017
    Right?! Machine Learning is a branch of computer science that wants to stop programming computers using a detailed list of commands to follow blindly. Instead, their aim is to implement high-level routines that teach computers how to approach new and unknown problems – these are called algorithms. In practice, they want to give computers the ability to Learn and to Adapt. We can use these algorithms to obtain insights, recognize patterns and make predictions from data, images, sounds or videos we have never seen before – or even knew existed. Unfortunately, the true power and applications of today’s Machine Learning Algorithms remain deeply misunderstood by most people. Through this book I want fix this confusion, I want to shed light on the most relevant Machine Learning Algorithms used in the industry. I will show you exactly how each algorithm works, why it works and when you should use it. Supervised Learning Algorithms K-Nearest Neighbour Naïve Bayes Regressions Unsupervised Learning Algorithms: Support Vector Machines Neural Networks Decision Trees

You Look Like a Thing and I Love You: How Artificial Intelligence Works and Why It's Making the World a Weirder Place


Janelle Shane - 2019
    according to an artificial intelligence trained by scientist Janelle Shane, creator of the popular blog "AI Weirdness." She creates silly AIs that learn how to name paint colors, create the best recipes, and even flirt (badly) with humans--all to understand the technology that governs so much of our daily lives.We rely on AI every day for recommendations, for translations, and to put cat ears on our selfie videos. We also trust AI with matters of life and death, on the road and in our hospitals. But how smart is AI really, and how does it solve problems, understand humans, and even drive self-driving cars?Shane delivers the answers to every AI question you've ever asked, and some you definitely haven't--like, how can a computer design the perfect sandwich? What does robot-generated Harry Potter fan-fiction look like? And is the world's best Halloween costume really "Vampire Hog Bride"?In this smart, often hilarious introduction to the most interesting science of our time, Shane shows how these programs learn, fail, and adapt--and how they reflect the best and worst of humanity. You Look Like a Thing and I Love You is the perfect book for anyone curious about what the robots in our lives are thinking.

The Filter Bubble: What the Internet is Hiding From You


Eli Pariser - 2011
    Instead of giving you the most broadly popular result, Google now tries to predict what you are most likely to click on. According to MoveOn.org board president Eli Pariser, Google's change in policy is symptomatic of the most significant shift to take place on the Web in recent years - the rise of personalization. In this groundbreaking investigation of the new hidden Web, Pariser uncovers how this growing trend threatens to control how we consume and share information as a society-and reveals what we can do about it.Though the phenomenon has gone largely undetected until now, personalized filters are sweeping the Web, creating individual universes of information for each of us. Facebook - the primary news source for an increasing number of Americans - prioritizes the links it believes will appeal to you so that if you are a liberal, you can expect to see only progressive links. Even an old-media bastion like "The Washington Post" devotes the top of its home page to a news feed with the links your Facebook friends are sharing. Behind the scenes a burgeoning industry of data companies is tracking your personal information to sell to advertisers, from your political leanings to the color you painted your living room to the hiking boots you just browsed on Zappos.In a personalized world, we will increasingly be typed and fed only news that is pleasant, familiar, and confirms our beliefs - and because these filters are invisible, we won't know what is being hidden from us. Our past interests will determine what we are exposed to in the future, leaving less room for the unexpected encounters that spark creativity, innovation, and the democratic exchange of ideas.While we all worry that the Internet is eroding privacy or shrinking our attention spans, Pariser uncovers a more pernicious and far-reaching trend on the Internet and shows how we can - and must - change course. With vivid detail and remarkable scope, The Filter Bubble reveals how personalization undermines the Internet's original purpose as an open platform for the spread of ideas and could leave us all in an isolated, echoing world.

The Bug


Ellen Ullman - 2003
    She brings it to its inadvertent creator, longtime programmer Ethan Levin, and the two embark on a hunt for the elusive bug, nicknamed “The Jester” for its tendency to appear randomly and only at the least opportune moments, jeopardizing the fate of the company. Ethan’s attempts to find a solution soon become a frightening obsession that threatens to destroy both his professional and personal life. Roberta, on the other hand, is drawn to the challenge. Forced to learn how to program, and seeking refuge from her own private troubles, she becomes enthralled with learning to speak the computer’s language. Expertly merging code with prose, big ideas with intensely personal stories, Ellen Ullman brilliantly illuminates the space between human beings and computers—a space we occupy every day as we peer into our monitors.

The Most Human Human: What Talking with Computers Teaches Us About What It Means to Be Alive


Brian Christian - 2011
    Its starting point is the annual Turing Test, which pits artificial intelligence programs against people to determine if computers can “think.”Named for computer pioneer Alan Turing, the Tur­ing Test convenes a panel of judges who pose questions—ranging anywhere from celebrity gossip to moral conundrums—to hidden contestants in an attempt to discern which is human and which is a computer. The machine that most often fools the panel wins the Most Human Computer Award. But there is also a prize, bizarre and intriguing, for the Most Human Human.In 2008, the top AI program came short of passing the Turing Test by just one astonishing vote. In 2009, Brian Christian was chosen to participate, and he set out to make sure Homo sapiens would prevail.The author’s quest to be deemed more human than a com­puter opens a window onto our own nature. Interweaving modern phenomena like customer service “chatbots” and men using programmed dialogue to pick up women in bars with insights from fields as diverse as chess, psychiatry, and the law, Brian Christian examines the philosophical, bio­logical, and moral issues raised by the Turing Test.One central definition of human has been “a being that could reason.” If computers can reason, what does that mean for the special place we reserve for humanity?

Masters of Doom: How Two Guys Created an Empire and Transformed Pop Culture


David Kushner - 2003
    Together, they ruled big business. They transformed popular culture. And they provoked a national controversy. More than anything, they lived a unique and rollicking American Dream, escaping the broken homes of their youth to produce the most notoriously successful game franchises in history—Doom and Quake— until the games they made tore them apart. This is a story of friendship and betrayal, commerce and artistry—a powerful and compassionate account of what it's like to be young, driven, and wildly creative.