Book picks similar to
Linux for Beginners by Terence Lawfield


computer
computers
learning
self-help-ebooks

Hacking Linux Exposed: Linux Security Secrets & Solutions


Brian Hatch - 2001
    Hacking Exposed Linux provides the most up-to-date coverage available from a large team of topic-focused experts. The book is based on the latest security research and shows you, in full detail, how to lock out intruders and defend your Linux systems against catastrophic attacks.Secure Linux by using attacks and countermeasures from the latest OSSTMM researchFollow attack techniques of PSTN, ISDN, and PSDN over LinuxHarden VoIP, Bluetooth, RF, RFID, and IR devices on LinuxBlock Linux signal jamming, cloning, and eavesdropping attacksApply Trusted Computing and cryptography tools for your best defenseFix vulnerabilities in DNS, SMTP, and Web 2.0 servicesPrevent SPAM, Trojan, phishing, DoS, and DDoS exploitsFind and repair errors in C code with static analysis and Hoare Logic

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?

Data Structures: A Pseudocode Approach with C


Richard F. Gilberg - 1998
    A new four-part organizational structure increases the flexibility of the text, and all material is presented in a straightforward manner accompanied by an array of examples and visual diagrams.

T-SQL Fundamentals


Itzik Ben-Gan - 2016
    Itzik Ben-Gan explains key T-SQL concepts and helps you apply your knowledge with hands-on exercises. The book first introduces T-SQL's roots and underlying logic. Next, it walks you through core topics such as single-table queries, joins, subqueries, table expressions, and set operators. Then the book covers more-advanced data-query topics such as window functions, pivoting, and grouping sets. The book also explains how to modify data, work with temporal tables, and handle transactions, and provides an overview of programmable objects. Microsoft Data Platform MVP Itzik Ben-Gan shows you how to: Review core SQL concepts and its mathematical roots Create tables and enforce data integrity Perform effective single-table queries by using the SELECT statement Query multiple tables by using joins, subqueries, table expressions, and set operators Use advanced query techniques such as window functions, pivoting, and grouping sets Insert, update, delete, and merge data Use transactions in a concurrent environment Get started with programmable objects-from variables and batches to user-defined functions, stored procedures, triggers, and dynamic SQL

Diary Of An 80s Computer Geek: A Decade of Micro Computers, Video Games & Cassette Tape


Steven Howlett - 2014
    The 1980s were certainly loud, often garish and utterly fabulous - no matter how embarrassing the outfits were.There are so many elements, which made the 80s a truly great decade, but one of the greatest contributions, if not the greatest, is the mass introduction of affordable 8-bit home micro computers.These curious machines of geekdom changed the way we regarded computers and technology. No longer were they the sole perverse of tweed jacket clad scientists sporting unruly beards, micro computers were now forming a staple inventory in millions of homes.Much of the technology that we enjoy today, such as desktop computers, notebooks, tablets, gaming consoles and smart phones, all of which are often taken for granted, can be traced back to this innovative decade.If you were a child of the 80s and remember the joy of receiving your very first home computer or maybe a young adult who fondly remembers the excitement, then you will appreciate this unabashed reminiscence of a simpler time whose adolescent technological was on the cusp of great advancements.This book is intended as celebration and reflection of all the computer technology that made the 80s such a wonderful, pioneering period and follows the journey of a self confessed, teenaged computer geek who experienced and enjoyed every ground breaking moment, including publishing his own software.10 Print “The 80s are fab!”20 Goto 10RunAuthor's Comments:The current edition is dated 31st January 2016 and has been edited based on customer feedback.

A Practitioner's Guide to Software Test Design


Lee Copeland - 2003
    This book presents all the important test design techniques in a single place and in a consistent and easy-to-digest format. An immediately useful handbook for test engineers, developers, quality assurance professionals and requirements and systems analysts, it enables you to: choose the best test case design; find software defects in less time and with fewer resources; and develop optimal strategies that help reduce the likelihood of costly errors. It also assists you in estimating the effort, time and cost of good testing. included, helping you to fully understand the practical applications of these techniques. From well-established techniques such as equivalence classes, boundary value analysis, decision tables and state-transition diagrams, to new techniques like use case testing, pairwise testing and exploratory testing, the book is a usful resource for testing professionals seeking to improve their skills and a handy reference for college-level courses in software test design.

I'm Feeling Lucky: The Confessions of Google Employee Number 59


Douglas Edwards - 2011
    No academic analysis or bystander’s account can capture it. Now Doug Edwards, Employee Number 59, offers the first inside view of Google, giving readers a chance to fully experience the bizarre mix of camaraderie and competition at this phenomenal company. Edwards, Google’s first director of marketing and brand management, describes it as it happened. We see the first, pioneering steps of Larry Page and Sergey Brin, the company’s young, idiosyncratic partners; the evolution of the company’s famously nonhierarchical structure (where every employee finds a problem to tackle or a feature to create and works independently); the development of brand identity; the races to develop and implement each new feature; and the many ideas that never came to pass. Above all, Edwards—a former journalist who knows how to write—captures the “Google Experience,” the rollercoaster ride of being part of a company creating itself in a whole new universe. I’m Feeling Lucky captures for the first time the unique, self-invented, yet profoundly important culture of the world’s most transformative corporation.

The Rails 4 Way


Obie Fernandez - 2013
    It has conquered developer mindshare at startups and enterprises alike with its focus of simplicity, convention and clean, maintainable code. The latest version, Rails 4, continues the tradition of enhanced performance, security and developer productivity, with improvements that enable professional developers to focus on what matters most: delivering business value quickly and consistently.The Rails™ 4 Way is the only comprehensive, authoritative guide to delivering production-quality code with Rails 4. Pioneering Rails expert Obie Fernandez and his team of leading Rails experts illuminate the entire set of Rails APIs, along with the idioms, design approaches, and libraries that make developing applications with Rails so powerful. Drawing on their unsurpassed experience and track record, they address the real challenges development teams face, showing how to use Rails to maximize your productivity.Using numerous detailed code examples, the author systematically cover Rails key capabilities and subsystems, making this book a reference that you depend on everyday. He presents advanced Rails programming techniques that have been proven effective in day-to-day usage on dozens of production Rails systems and offers important insights into behavior-driven development and production considerations such as scalability. Dive deep into the subtleties of the asset pipeline and other advanced Rails topics such as security and scalability. The Rails 4 Way is your best guide for making Rails do exactly what you want it to do.

Hamlet's BlackBerry: A Practical Philosophy for Building a Good Life in the Digital Age


William Powers - 2010
    Part intellectual journey, part memoir, Hamlet's BlackBerry sets out to solve what William Powers calls the conundrum of connectedness. Our computers and mobile devices do wonderful things for us. But they also impose an enormous burden, making it harder for us to focus, do our best work, build strong relationships, and find the depth and fulfillment we crave.Hamlet's BlackBerry argues that we need a new way of thinking, an everyday philosophy for life with screens. To find it, Powers reaches into the past, uncovering a rich trove of ideas that have helped people manage and enjoy their connected lives for thousands of years. New technologies have always brought the mix of excitement and stress that we feel today. Drawing on some of history's most brilliant thinkers, from Plato to Shakespeare to Thoreau, he shows that digital connectedness serves us best when it's balanced by its opposite, disconnectedness.Using his own life as laboratory and object lesson, Powers demonstrates why this is the moment to revisit our relationship to screens and mobile technologies, and how profound the rewards of doing so can be. Lively, original, and entertaining, Hamlet's BlackBerry will challenge you to rethink your digital life.

Head First Programming: A Learner's Guide to Programming Using the Python Language


Paul Barry - 2008
    This book offers concrete examples and exercises in the dynamic and versatile Python language to demonstrate and reinforce these concepts. Learn the basic tools to start writing the programs that interest you, and get a better understanding of what software can (and cannot) do. When you're finished, you'll have the necessary foundation to learn any programming language or tackle any software project you choose. With a focus on programming concepts, this book teaches you how to:Understand the core features of all programming languages, including: variables, statements, decisions, loops, expressions, and operatorsReuse code with functionsUse library code to save time and effortSelect the best data structure to manage complex dataWrite programs that talk to the WebShare your data with other programsWrite programs that test themselves and help you avoid embarrassing coding errors.Contents Intro xxiii1 Starting to Code: Finding Your Way2 Textual Data: Every String Has Its Place3 Functions: Let’s Get Organized4 Data Files and Arrays: Sort It Out5 Hashes and Databases: Putting Data in Its Place6 Modular Programming: Keeping Things Straight7 Building a Graphical User Interface: Going All Gooey8 GUIs and Data: Data Entry Widgets8 1/2 Exceptions and Message Boxes: Get the Message? 9 Graphical Interface Elements: Selecting the Right Tool10 Custom Widgets and Classes: With an Object in MindAppendix i Leftovers: The Top Ten Things (We Didn’t Cover)

HTML5 for Masterminds: How to take advantage of HTML5 to create amazing websites and revolutionary applications


Juan Diego Gauchat
    

Problem Solving with C++: The Object of Programming


Walter J. Savitch - 1995
    It introduces the use of classes; shows how to write ADTs that maximize the perfomance of C++ in creating reusable code; and provides coverage of all important OO functions, including inheritance, polymorphism and encapsulation.

Mastering Excel Macros: Introduction (Book 1)


Mark Moore - 2014
    Everybody wants to learn them. You're not a programmer though. How is a non technical user going to learn how to program? You do want to use macros to make your work easier but are you really going to sit down with a huge programming textbook and work your way through every. single. boring. page? Like most people, you'll start with great enthusiasm and vigor but after a few chapters, the novelty wears off. It gets boring. I'm going to try and change that and make learning macro programming entertaining and accessible to non-techies. First of all, programming Excel macros is a huge topic. Let's eat the elephant one bite at a time. Instead of sitting down with a dry, heavy text, you will read very focused, to the point topics. You can then immediately use what you learned in the real world. This is the first lesson in the series. You will learn what macros are, how to access them, a tiny bit of programming theory (just so you have a clue as to what's going on) and how to record macros. As with all my other lessons, this one has a follow along workbook that you can use to work through the exercises. The images in the lessons are based on Excel 2013 for Windows.

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

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.