Applied Cryptography: Protocols, Algorithms, and Source Code in C


Bruce Schneier - 1993
    … The book the National Security Agency wanted never to be published." –Wired Magazine "…monumental… fascinating… comprehensive… the definitive work on cryptography for computer programmers…" –Dr. Dobb's Journal"…easily ranks as one of the most authoritative in its field." —PC Magazine"…the bible of code hackers." –The Millennium Whole Earth CatalogThis new edition of the cryptography classic provides you with a comprehensive survey of modern cryptography. The book details how programmers and electronic communications professionals can use cryptography—the technique of enciphering and deciphering messages-to maintain the privacy of computer data. It describes dozens of cryptography algorithms, gives practical advice on how to implement them into cryptographic software, and shows how they can be used to solve security problems. Covering the latest developments in practical cryptographic techniques, this new edition shows programmers who design computer applications, networks, and storage systems how they can build security into their software and systems. What's new in the Second Edition? * New information on the Clipper Chip, including ways to defeat the key escrow mechanism * New encryption algorithms, including algorithms from the former Soviet Union and South Africa, and the RC4 stream cipher * The latest protocols for digital signatures, authentication, secure elections, digital cash, and more * More detailed information on key management and cryptographic implementations

Compilers: Principles, Techniques, and Tools


Alfred V. Aho - 1986
    The authors present updated coverage of compilers based on research and techniques that have been developed in the field over the past few years. The book provides a thorough introduction to compiler design and covers topics such as context-free grammars, fine state machines, and syntax-directed translation.

Learn CSS in One Day and Learn It Well: CSS for Beginners with Hands-on Project. Includes HTML5


Jamie Chan - 2015
    Learn them fast and learn them well. Have you always wanted to learn to build your own website but are afraid it'll be too difficult for you? Or perhaps you are a blogger who wants to tweak your blog's design, without having to spend money on an expensive theme. This book is for you. You no longer have to waste your time and money learning HTML and CSS from lengthy books, expensive online courses or complicated tutorials. What this book offers... HTML and CSS for Beginners Complex concepts are broken down into simple steps to ensure that you can easily master the two languages even if you have never coded before. Carefully Chosen Examples (with images) Examples are carefully chosen to illustrate all concepts. In addition, images are provided whenever necessary so that you can immediately see the visual effects of various CSS properties. Learn The Languages Fast Concepts are presented in a "to-the-point" style to cater to the busy individual. With this book, you can learn HTML and CSS in just one day and start coding immediately. How is this book different... The best way to learn programming is by doing. End-of-Chapter Exercises Each CSS chapter comes with an end-of-chapter exercise where you get to practice the different CSS properties covered in the chapter and see first hand how different CSS values affect the design of the website. Bonus Project The book also includes a bonus project that requires the application of all the HTML and CSS concepts taught previously. Working through the project will not only give you an immense sense of achievement, it’ll also help you see how the various concepts tie together. Are you ready to dip your toes into the exciting world of web development? This book is for you. Click the BUY button and download it now. What you'll learn: - What is CSS and HTML? - What software do you need to write and run CSS codes? - What are HTML tags and elements? - What are the commonly used HTML tags and how to use them? - What are HTML IDs and Classes? - What is the basic CSS syntax? - What are CSS selectors? - What are pseudo classes and pseudo elements? - How to apply CSS rules to your website and what is the order of precedence? - What is the CSS box model? - How to position and float your CSS boxes - How to hide HTML content - How to change the background of CSS boxes - How to use the CSS color property to change colors - How to modify text and font of a website - How to create navigation bars - How to create gorgeous looking tables to display your data .. and more... Click the BUY button and download the book now to start learning HTML and CSS now. Learn them fast and learn them well. Tags: ------------ CSS, HTML5, web development, web page design, CSS examples, CSS tutorials, CSS coding, CSS for Dummies

Masterminds of Programming: Conversations with the Creators of Major Programming Languages


Federico BiancuzziJohn Hughes - 2009
    In this unique collection, you'll learn about the processes that led to specific design decisions, including the goals they had in mind, the trade-offs they had to make, and how their experiences have left an impact on programming today. Masterminds of Programming includes individual interviews with:Adin D. Falkoff: APL Thomas E. Kurtz: BASIC Charles H. Moore: FORTH Robin Milner: ML Donald D. Chamberlin: SQL Alfred Aho, Peter Weinberger, and Brian Kernighan: AWK Charles Geschke and John Warnock: PostScript Bjarne Stroustrup: C++ Bertrand Meyer: Eiffel Brad Cox and Tom Love: Objective-C Larry Wall: Perl Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes: Haskell Guido van Rossum: Python Luiz Henrique de Figueiredo and Roberto Ierusalimschy: Lua James Gosling: Java Grady Booch, Ivar Jacobson, and James Rumbaugh: UML Anders Hejlsberg: Delphi inventor and lead developer of C# If you're interested in the people whose vision and hard work helped shape the computer industry, you'll find Masterminds of Programming fascinating.

Introduction to Artificial Intelligence


Philip C. Jackson Jr. - 1974
    Introduction to Artificial Intelligence presents an introduction to the science of reasoning processes in computers, and the research approaches and results of the past two decades. You'll find lucid, easy-to-read coverage of problem-solving methods, representation and models, game playing, automated understanding of natural languages, heuristic search theory, robot systems, heuristic scene analysis and specific artificial-intelligence accomplishments. Related subjects are also included: predicate-calculus theorem proving, machine architecture, psychological simulation, automatic programming, novel software techniques, industrial automation and much more.A supplementary section updates the original book with major research from the decade 1974-1984. Abundant illustrations, diagrams and photographs enhance the text, and challenging practice exercises at the end of each chapter test the student's grasp of each subject.The combination of introductory and advanced material makes Introduction to Artificial Intelligence ideal for both the layman and the student of mathematics and computer science. For anyone interested in the nature of thought, it will inspire visions of what computer technology might produce tomorrow.

The Software Craftsman: Professionalism, Pragmatism, Pride


Sandro Mancuso - 2014
    Why? Too many organizations still view software development as just another production line. Too many developers feel that way, too--and they behave accordingly. In The Software Craftsman: Professionalism, Pragmatism, Pride, Sandro Mancuso offers a better and more fulfilling path. If you want to develop software with pride and professionalism; love what you do and do it with excellence; and build a career with autonomy, mastery, and purpose, it starts with the recognition that you are a craftsman. Once you embrace this powerful mindset, you can achieve unprecedented levels of technical excellence and customer satisfaction. Mancuso helped found the world's largest organization of software craftsmen; now, he shares what he's learned through inspiring examples and pragmatic advice you can use in your company, your projects, and your career. You will learn Why agile processes aren't enough and why craftsmanship is crucial to making them work How craftsmanship helps you build software right and helps clients in ways that go beyond code How and when to say "No" and how to provide creative alternatives when you do Why bad code happens to good developers and how to stop creating and justifying it How to make working with legacy code less painful and more productive How to be pragmatic--not dogmatic--about your practices and tools How to lead software craftsmen and attract them to your organization What to avoid when advertising positions, interviewing candidates, and hiring developers How developers and their managers can create a true culture of learning How to drive true technical change and overcome deep patterns of skepticism Sandro Mancuso has coded for startups, software houses, product companies, international consultancies, and investment banks. In October 2013, he cofounded Codurance, a consultancy based on Software Craftsmanship principles and values. His involvement with Software Craftsmanship began in 2010, when he founded the London Software Craftsmanship Community (LSCC), now the world's largest and most active Software Craftsmanship community, with more than two thousand craftsmen. For the past four years, he has inspired and helped developers to organize Software Craftsmanship communities throughout Europe, the United States, and the rest of the world.

Engines of Creation: The Coming Era of Nanotechnology


K. Eric Drexler - 1986
    This brilliant work heralds the new age of nanotechnology, which will give us thorough and inexpensive control of the structure of matter.  Drexler examines the enormous implications of these developments for medicine, the economy, and the environment, and makes astounding yet well-founded projections for the future.

Programming Erlang


Joe Armstrong - 2007
    It's used worldwide by companies who need to produce reliable, efficient, and scalable applications. Invest in learning Erlang now.Moore's Law is the observation that the amount you can do on a single chip doubles every two years. But Moore's Law is taking a detour. Rather than producing faster and faster processors, companies such as Intel and AMD are producing multi-core devices: single chips containing two, four, or more processors. If your programs aren't concurrent, they'll only run on a single processor at a time. Your users will think that your code is slow.Erlang is a programming language designed for building highly parallel, distributed, fault-tolerant systems. It has been used commercially for many years to build massive fault-tolerated systems that run for years with minimal failures.Erlang programs run seamlessly on multi-core computers: this means your Erlang program should run a lot faster on a 4 core processor than on a single core processor, all without you having to change a line of code.Erlang combines ideas from the world of functional programming with techniques for building fault-tolerant systems to make a powerful language for building the massively parallel, networked applications of the future.This book presents Erlang and functional programming in the familiar Pragmatic style. And it's written by Joe Armstrong, one of the creators of Erlang.It includes example code you'll be able to build upon. In addition, the book contains the full source code for two interesting applications:A SHOUTcast server which you can use to stream music to every computer in your house, and a full-text indexing and search engine that can index gigabytes of data. Learn how to write programs that run on dozens or even hundreds of local and remote processors. See how to write robust applications that run even in the face of network and hardware failure, using the Erlang programming language.

344 Questions: The Creative Person's Do-It-Yourself Guide to Insight, Survival, and Artistic Fulfillment


Stefan G. Bucher - 2011
    Hopefully, you'll also laugh along the way.Each spread in this colorful, pocket-sized book contains a series of several questions illustrated in Stefan Bucher's unique, whimsical, hand-lettered style. The questions are designed to get you thinking and drawing and writing with room on each spread to fill in the blanks and jot down ideas. Sample questions include: Can you name 10 things that reliably stress you out? Do you need 10 more spaces? Was filling out lists on your list? Or the decimal system? What happens when you get stressed out? Do you think stress is heroic? Can you please convince me that that's really stupid?In addition to the questions provided by Bucher, the book features questions from creative celebrities who share some of the questions they were asked on the way to success, or, in some cases, the questions they wish they had been asked. The talented group of writers, musicians, and artists contributing to the book include: Jed Alger Judd Apatow Marian Bantjes Ken Carbone Tim Carvell Deanne Cheuk Wayne Coyne Russell Davies Arem Duplessis Dave Eggers Karen Fowler Ze Frank Jona Frank Jill Greenberg Stanley Hainsworth Peter Hannan Debbie Millman Rick Morris Seth Morris Christoph Niemann David Norland Patton Oswalt Martha Rich Stefan Sagmeister Meredith Scardino J.J. Sedelmaier Dave Stewart Lara Tomlin Jakob Trollb�ck Rick Valicenti Esther Pearl Watson Lynda Weinman Jan Wilker Doyald Young Tarsem If you answer even half of the questions in this book, it will change your life.

Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching


Robert Sedgewick - 1997
    Many new algorithms are presented, and the explanations of each algorithm are much more detailed than in previous editions. A new text design and detailed, innovative figures, with accompanying commentary, greatly enhance the presentation. The third edition retains the successful blend of theory and practice that has made Sedgewick's work an invaluable resource for more than 250,000 programmers! Whether you are a student learning the algorithms for the first time or a professional interested in having up-to-date reference material, you will find a wealth of useful information in this book.

Speccy Nation


Dan Whitehead - 2012
    The British games industry would go on to create such hits as Tomb Raider and Grand Theft Auto, our innovation and imagination the envy of the world, our programmers the most sought after talent in the fastest growing entertainment medium in history.And it all started here.Welcome to the Speccy Nation.Join veteran games journalist and author Dan Whitehead on a journey through fifty games that helped to define the golden age of British gaming. From the timeless classics to unlikely cult favourites, and even the games so eccentric they could only have come from Britain in the 1980s.Part nostalgic look at the past, and part critical eye on the present and future, Speccy Nation is essential reading for all retro gaming enthusiasts.Includes a foreword by Your Sinclair's Phil "Snouty" South.

Computer Science: A Very Short Introduction


Subrata Dasgupta - 2016
    Yet, the science underpinning this technology is less visible and little understood outside the professional computer science community. As a scientific discipline, computer science stands alongside the likes of molecular biology and cognitive science as one of the most significant new sciences of the post Second World War era.In this Very Short Introduction, Subrata Dasgupta sheds light on these lesser known areas and considers the conceptual basis of computer science. Discussing algorithms, programming, and sequential and parallel processing, he considers emerging modern ideas such as biological computing and cognitive modelling, challenging the idea of computer science as a science of the artificial.ABOUT THE SERIES: The Very Short Introductions series from Oxford University Press contains hundreds of titles in almost every subject area. These pocket-sized books are the perfect way to get ahead in a new subject quickly. Our expert authors combine facts, analysis, perspective, new ideas, and enthusiasm to make interesting and challenging topics highly readable.

Saint Vidicon to the Rescue


Christopher Stasheff - 2005
    Pages of Biblical text have been appearing on every terminal throughout the network--disrupting the staff and costing the company a lot of time and work.But he's astonished to discover that the religious text tells the story of St. Vidicon of cathode, who protects people from the consequences of Finagle's General Principle and its most famous corollary, Murphy's Law. Then his attempt to exorcise the virus places him face-to-0face with the blessed saint. Father Vidicon needs a disciple to aid him in answering prayers, solving problems and averting disasters across the globe. In exchange, the Saint will give Tony some much-needed help with his love life. Now Tony's providing tech support for a world in peril. And it's going to take more than rebooting to fix this kind of system failure...

The IDA Pro Book: The Unofficial Guide to the World's Most Popular Disassembler


Chris Eagle - 2008
    With IDA Pro, you live in a source code-optional world. IDA can automatically analyze the millions of opcodes that make up an executable and present you with a disassembly. But at that point, your work is just beginning. With The IDA Pro Book, you'll learn how to turn that mountain of mnemonics into something you can actually use.Hailed by the creator of IDA Pro as the "long-awaited" and "information-packed" guide to IDA, The IDA Pro Book covers everything from the very first steps to advanced automation techniques. While other disassemblers slow your analysis with inflexibility, IDA invites you to customize its output for improved readability and usefulness. You'll save time and effort as you learn to:Identify known library routines, so you can focus your analysis on other areas of the code Extend IDA to support new processors and filetypes, making disassembly possible for new or obscure architectures Explore popular plug-ins that make writing IDA scripts easier, allow collaborative reverse engineering, and much more Utilize IDA's built-in debugger to tackle obfuscated code that would defeat a stand-alone disassembler You'll still need serious assembly skills to tackle the toughest executables, but IDA makes things a lot easier. Whether you're analyzing the software on a black box or conducting hard-core vulnerability research, a mastery of IDA Pro is crucial to your success. Take your skills to the next level with The IDA Pro Book.

VMware vSphere 5 Clustering Technical Deepdive


Frank Denneman - 2011
    It covers the basic steps needed to create a vSphere HA and vSphere DRS cluster and to implement vSphere Storage DRS. Even more important, it explains the concepts and mechanisms behind HA, DRS and Storage DRS which will enable you to make well educated decisions. This book will take you in to the trenches of HA, DRS and Storage DRS and will give you the tools to understand and implement e.g. HA admission control policies, DRS resource pools, Datastore Clusters and resource allocation settings. On top of that each section contains basic design principles that can be used for designing, implementing or improving VMware infrastructures and fundamental supporting features like (Storage) vMotion, Storage I/O Control and much more are described in detail for the very first time. This book is also the ultimate guide to be prepared for any HA, DRS or Storage DRS related question or case study that might be presented during VMware VCDX, VCP and or VCAP exams.Coverage includes: HA node types HA isolation detection and response HA admission control VM Monitoring HA and DRS integration DRS imbalance algorithm Resource Pools Impact of reservations and limits CPU Resource Scheduling Memory Scheduler DPM Datastore Clusters Storage DRS algorithm Influencing SDRS recommendationsBe prepared to dive deep!