Teach Yourself C++


Herbert Schildt - 1992
    It also gives readers the opportunity to test their understanding with multiple exercises. Readers can test their knowledge of individual concepts, and then test their comprehension of the topic in a larger setting.

Documenting Software Architectures: Views and Beyond


Paul Clements - 2002
    For all but the most trivial software systems, you must pay close attention to its architecture, the conceptual glue that holds every phase of a project together.

UNIX: A History and a Memoir


Brian W. Kernighan - 2019
    Brian Kernighan was a member of the original group of Unix developers, the creator of several fundamental Unix programs, and the co-author of classic books like "The C Programming Language" and "The Unix Programming Environment."

Java in a Nutshell


David Flanagan - 1996
    And now, with the release of the 5.0 version of Java, O'Reilly has given the book that defined the "in a Nutshell" category another impressive tune-up.In this latest revision, readers will find "Java in a Nutshell," 5th Edition, does more than just cover the extensive changes implicit in 5.0, the newest version of Java. It's undergone a complete makeover--in scope, size, and type of coverage--in order to more closely meet the needs of the modern Java programmer.To wit, "Java in a Nutshell," 5th Edition now places less emphasis on coming to Java from C and C++, and adds more discussion on tools and frameworks. It also offers new code examples to illustrate the working of APIs, and, of course, extensive coverage of Java 5.0. But faithful readers take comfort: it still hasn't lost any of its core elements that made it such a classic to begin with.This handy reference gets right to the heart of the program with an accelerated introduction to the Javaprogramming language and its key APIs--ideal for developers wishing to start writing code right away. And, as was the case in previous editions, " Java in a Nutshell," 5th Edition is once again chock-full of poignant tips, techniques, examples, and practical advice. For as longas Java has existed, "Java in a Nutshell" has helped developers maximize the capabilities of the program's newest versions. And this latest edition is no different.

Practical Object Oriented Design in Ruby


Sandi Metz - 2012
    The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples. Sandi Metz has distilled a lifetime of conversations and presentations about object-oriented design into a set of Ruby-focused practices for crafting manageable, extensible, and pleasing code. She shows you how to build new applications that can survive success and repair existing applications that have become impossible to change. Each technique is illustrated with extended examples, all downloadable from the companion Web site, poodr.info. The first title to focus squarely on object-oriented Ruby application design, Practical Object-Oriented Design in Ruby will guide you to superior outcomes, whatever your previous Ruby experience. Novice Ruby programmers will find specific rules to live by; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues. This guide will help you Understand how object-oriented programming can help you craft Ruby code that is easier to maintain and upgrade Decide what belongs in a single Ruby class Avoid entangling objects that should be kept separate Define flexible interfaces among objects Reduce programming overhead costs with duck typing Successfully apply inheritance Build objects via composition Design cost-effective tests Solve common problems associated with poorly designed Ruby code

Master Todoist: How to Use a Simple App to Create Actionable To-Do Lists and Organize Your Life


S.J. Scott - 2017
    The truth is: Most to-do lists are a distraction that often cause you to procrastinate on important tasks. Fortunately, the TODOIST app is specifically designed help you manage all your day-to-day tasks -- even when juggling dozens of projects. Todoist is widely considered to be the #1 to-do list app because of its simple functionality. It's elegantly designed so you can download it right now and create your first task list within five minutes. On the other hand, it has many advanced features that allow you to manage hundreds of tasks and projects, without making you feel overwhelmed. All of this and more is covered in the book, " Master Todoist ." DOWNLOAD: Master Todoist: How to Use a Simple App to Create Actionable To-Do Lists The goal of Master Todoist is to help you rethink your to-do lists. On the surface, you’ll find a walkthrough of all the app's features, but you’ll also discover many advanced strategies for focusing on the tasks that truly matter. Specifically, you will learn how to: Identify the activities that are most important for your personal and professional life Remember every single date-specific appointment, meeting, and personal obligation Create projects with clearly identifiable next steps Use Todoist to remove the distractions and "noise" that prevent you from focusing on your big-picture activities Implement the advanced features to streamline the most precious asset that you possess -- your time You can eliminate that feeling of overwhelm by redesigning the way you manage tasks. And in Master Todoist, you'll discover how you can take massive action in your life by relying on a simple app that's trusted by over 5 million users. Learn How to Get the Important Things Done by Clicking the "Buy Now" Button at the Top of the Page.

Making Things Happen: Mastering Project Management


Scott Berkun - 2001
    Each essay distills complex concepts and challenges into practical nuggets of useful advice, and the new edition now adds more value for leaders and managers of projects everywhere. Based on his nine years of experience as a program manager for Internet Explorer, and lead program manager for Windows and MSN, Berkun explains to technical and non-technical readers alike what it takes to get through a large software or web development project. Making Things Happen doesn't cite specific methods, but focuses on philosophy and strategy. Unlike other project management books, Berkun offers personal essays in a comfortable style and easy tone that emulate the relationship of a wise project manager who gives good, entertaining and passionate advice to those who ask. Topics in this new edition include:How to make things happenMaking good decisionsSpecifications and requirementsIdeas and what to do with themHow not to annoy peopleLeadership and trustThe truth about making datesWhat to do when things go wrongComplete with a new forward from the author and a discussion guide for forming reading groups/teams, Making Things Happen offers in-depth exercises to help you apply lessons from the book to your job. It is inspiring, funny, honest, and compelling, and definitely the one book that you and your team need to have within arm's reach throughout the life of your project. Coming from the rare perspective of someone who fought difficult battles on Microsoft's biggest projects and taught project design and management for MSTE, Microsoft's internal best practices group, this is valuable advice indeed. It will serve you well with your current work, and on future projects to come.

Computer Networks


Andrew S. Tanenbaum - 1981
    In this revision, the author takes a structured approach to explaining how networks function.

Concurrency in C# Cookbook


Stephen Cleary - 2014
    With this cookbook, you will find recipes for writing asynchronous, parallel, and reactive code in C# that enables your app or program to engage in more than one process at a time. Presented in O’Reilly’s popular problem-solution-discussion cookbook format, this guide provides ready-to-use code, along with an explanation of why and how the solution works.

Tubes: A Journey to the Center of the Internet


Andrew Blum - 2012
    But what is it physically? And where is it really? Our mental map of the network is as blank as the map of the ocean that Columbus carried on his first Atlantic voyage. The Internet, its material nuts and bolts, is an unexplored territory. Until now.In Tubes, journalist Andrew Blum goes inside the Internet's physical infrastructure and flips on the lights, revealing an utterly fresh look at the online world we think we know. It is a shockingly tactile realm of unmarked compounds, populated by a special caste of engineer who pieces together our networks by hand; where glass fibers pulse with light and creaky telegraph buildings, tortuously rewired, become communication hubs once again. From the room in Los Angeles where the Internet first flickered to life to the caverns beneath Manhattan where new fiber-optic cable is buried; from the coast of Portugal, where a ten-thousand-mile undersea cable just two thumbs wide connects Europe and Africa, to the wilds of the Pacific Northwest, where Google, Microsoft, and Facebook have built monumental data centers—Blum chronicles the dramatic story of the Internet's development, explains how it all works, and takes the first-ever in-depth look inside its hidden monuments.This is a book about real places on the map: their sounds and smells, their storied pasts, their physical details, and the people who live there. For all the talk of the "placelessness" of our digital age, the Internet is as fixed in real, physical spaces as the railroad or telephone. You can map it and touch it, and you can visit it. Is the Internet in fact "a series of tubes" as Ted Stevens, the late senator from Alaska, once famously described it? How can we know the Internet's possibilities if we don't know its parts?Like Tracy Kidder's classic The Soul of a New Machine or Tom Vanderbilt's recent bestseller Traffic, Tubes combines on-the-ground reporting and lucid explanation into an engaging, mind-bending narrative to help us understand the physical world that underlies our digital lives.

Programming Entity Framework: DbContext


Julia Lerman - 2011
    This concise book shows you how to use the API to perform set operations with the DbSet class, handle change tracking and resolve concurrency conflicts with the Change Tracker API, and validate changes to your data with the Validation API.With DbContext, you’ll be able to query and update data, whether you’re working with individual objects or graphs of objects and their related data. You’ll find numerous C# code samples to help you get started. All you need is experience with Visual Studio and database management basics.Use EF’s query capabilities to retrieve data, and use LINQ to sort and filter dataLearn how to add new data, and change and delete existing dataUse the Change Tracker API to access information EF keeps about the state of entity instancesControl change tracking information of entities in disconnected scenarios, including NTier applicationsValidate data changes before they’re sent to the database, and set up validation rulesBypass EF’s query pipeline and interact directly with the database

Microserfs


Douglas Coupland - 1995
    Known as "microserfs," they spend upward of 16 hours a day "coding" (writing software) as they eat "flat" foods (such as Kraft singles, which can be passed underneath closed doors) and fearfully scan the company email to see what the great Bill might be thinking and whether he is going to "flame" one of them. Seizing the chance to be innovators instead of cogs in the Microsoft machine, this intrepid bunch strike out on their own to form a high-tech start-up company named Oop! in Silicon Valley. Living together in a sort of digital flophouse --"Our House of Wayward Mobility" -- they desperately try to cultivate well-rounded lives and find love amid the dislocated, subhuman whir and buzz of their computer-driven world.Funny, illuminating and ultimately touching, Microserfs is the story of one generation's very strange and claustrophobic coming of age.

Head First PMP


Jennifer Greene.PMP & Andrew Stellman, PMP - 2007
    The second edition of this book helps you prepare for the PMP certification exam using a visually rich format designed for the way your brain works. You'll find a full-length sample exam included inside the book. More than just proof of passing a test, a PMP certification means that you have the knowledge to solve most common project problems. But studying for a difficult four-hour exam on project management isn't easy, even for experienced project managers. Drawing on the latest research in neurobiology, cognitive science, and learning theory, Head First PMP offers you a multi-sensory experience that helps the material stick, not a text-heavy approach that puts you to sleep. This book will help you:Learn PMP's underlying concepts to help you understand the PMBOK principles and pass the certification exam with flying colorsGet 100% coverage of the latest principles and certification objectives in The PMBOK Guide, Fourth Edition, including two new processes: Collect Requirements and Identify StakeholdersMake use of a thorough and effective preparation guide with hundreds of practice questions and exam strategiesExplore the material through puzzles, games, problems, and exercises that make learning easy and entertainingHead First PMP puts project management principles into context to help you understand, remember, and apply them -- not just on the exam, but also on the job.

Introducing Windows Server 2012


Mitch Tulloch - 2012
    This practical introduction illuminates new features and capabilities, with scenarios demonstrating how the platform can meet the needs of your business.Based on beta software, this book provides the early, high-level information you need to begin preparing now for deployment and management. Topics include:Virtualization and cloud solutions Availability Provisioning and storage management Security and scalability Infrastructure options Server administration

What Is Node?


Brett McLaughlin - 2011
    It’s the latest in a long line of “Are you cool enough to use me?” programming languages, APIs, and toolkits. In that sense, it lands squarely in the tradition of Rails, and Ajax, and Hadoop, and even to some degree iPhone programming and HTML5.Dig a little deeper, and you’ll hear that Node.js (or, as it’s more briefly called by many, simply “Node”) is a server-side solution for JavaScript, and in particular, for receiving and responding to HTTP requests. If that doesn’t completely boggle your mind, by the time the conversation heats up with discussion of ports, sockets, and threads, you’ll tend to glaze over. Is this really JavaScript? In fact, why in the world would anyone want to run JavaScript outside of a browser, let alone the server?The good news is that you’re hearing (and thinking) about the right things. Node really is concerned with network programming and server-side request/response processing. The bad news is that like Rails, Ajax, and Hadoop before it, there’s precious little clear information available. There will be, in time — as there now is for these other “cool” frameworks that have matured — but why wait for a book or tutorial when you might be able to use Node today, and dramatically improve the maintainability.