This book is meant to help the reader learn how to program in C. It is the definitive reference guide, now in a second edition. Although the first edition was written in 1978, it continues to be a worldwide best-seller. This second edition brings the classic original up to date to include the ANSI standard. From the Preface: We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form. As we said in the first preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way. We hope that this book will help you to learn C and use it well.
With the same insight and authority that made their book The Unix programming Environment a classic, Brian Kernighan and Rob Pike have written The Practice of Programming to help make individual programmers more effective and productive.
Designed for first-time and experienced users, this book describes the UNIX® programming environment and philosophy in detail. Readers will gain an understanding not only of how to use the system, its components, and the programs, but also how these fit into the total environment.
The fascinating story of how Unix began and how it took over the world. 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."
This rounds out a collection of works by Kernighan. Each book of his covers a different aspect of software, in clear form with logical concepts. This book covers the look and feel of the code itself. As with the other works, some concepts have evolved as languages have evolved and the normal size of software projects has continued to expand. But the book still has many relevant points and is an interesting read for those wanting to delve into how software development as a process has been growing and evolving over time.
by Brian W. Kernighan
Rating: 4.2 ⭐
The basics of how computer hardware, software, and systems work, and the risks they create for our privacy and securityComputers are everywhere. Some of them are highly visible, in laptops, tablets, cell phones, and smart watches. But most are invisible, like those in appliances, cars, medical equipment, transportation systems, power grids, and weapons. We never see the myriad computers that quietly collect, share, and sometimes leak vast amounts of personal data about us. Through computers, governments and companies increasingly monitor what we do. Social networks and advertisers know far more about us than we should be comfortable with, using information we freely give them. Criminals have all-too-easy access to our data. Do we truly understand the power of computers in our world?Understanding the Digital World explains how computer hardware, software, networks, and systems work. Topics include how computers are built and how they compute; what programming is and why it is difficult; how the Internet and the web operate; and how all of these affect our security, privacy, property, and other important social, political, and economic issues. This book also touches on fundamental ideas from computer science and some of the inherent limitations of computers. It includes numerous color illustrations, notes on sources for further exploration, and a glossary to explain technical terms and buzzwords.Understanding the Digital World is a must-read for all who want to know more about computers and communications. It explains, precisely and carefully, not only how they operate but also how they influence our daily lives, in terms anyone can understand, no matter what their experience and knowledge of technology.
by Brian W. Kernighan
Rating: 4.2 ⭐
This book explains how today's computing and communications world operates, from hardware through software to the Internet and the web. It includes enough detail that you can understand how these systems work, no matter what your technical background. The social, political and legal issues that new technology creates are discussed as well, so you can understand the difficult issues we face and appreciate the tradeoffs that have to be made to resolve them. A compact but detailed and thorough explanation of how computers and communications systems work, for non-technical readers who want to better understand the world they live in. A great source for technical readers who want something that will help their friends and family learn about digital systems.
With the same style and clarity that characterized their highly acclaimed book, The Elements of Programming Style, the authors have written Software Tools to teach how to write good programs that make good tools. The programs contained in the book are not artificial, but are actual programs ae tools which have proved valuable in the production of other programs.Modern programming techniques such as structured programming and top-down design are emphasized and applied to every program. The programs are presented in a structured language called Ratfor ("Rational Fortran") which can be easily understood by anyone familiar with Fortran or PL/I, Algol, PASCAL, or similar languages. (Ratfor translates readily into Fortran or PL/I. One of the tools presented is a preprocessor to translate Ratfor into Fortran). All of the programs are complete and have been tested directly from the text. The programs are available in machine-readable form from Addison-Wesley.Software Tools is ideal for use in a "software engineering" course, for a second course in programming, or as a supplement in any programming course. All programmers, professional and student, will find the book invaluable as a source of proven, useful programs for reading and study. Numerous exercises are provided to test comprehension and to extend the concepts presented in the text.
by Brian W. Kernighan
Rating: 3.7 ⭐
An essential guide to recognizing bogus numbers and misleading dataNumbers are often intimidating, confusing, and even deliberately deceptive--especially when they are really big. The media loves to report on millions, billions, and trillions, but frequently makes basic mistakes or presents such numbers in misleading ways. And misunderstanding numbers can have serious consequences, since they can deceive us in many of our most important decisions, including how to vote, what to buy, and whether to make a financial investment. In this short, accessible, enlightening, and entertaining book, leading computer scientist Brian Kernighan teaches anyone--even diehard math-phobes--how to demystify the numbers that assault us every day.With examples drawn from a rich variety of sources, including journalism, advertising, and politics, Kernighan demonstrates how numbers can mislead and misrepresent. In chapters covering big numbers, units, dimensions, and more, he lays bare everything from deceptive graphs to speciously precise numbers. And he shows how anyone--using a few basic ideas and lots of shortcuts--can easily learn to recognize common mistakes, determine whether numbers are credible, and make their own sensible estimates when needed.Giving you the simple tools you need to avoid being fooled by dubious numbers, Millions, Billions, Zillions is an essential survival guide for a world drowning in big--and often bad--data.
With the same style and clarity that characterized their highly acclaimed The Elements of Programming Style and Software Tools, the authors have written Software Tools in Pascal to teach how to write good Pascal programs that make good tools. The programs contained in the book are not artificial, but are actual tools that have proved valuable in the production of other programs. Structured programming and top-down design are emphasized and applied to every program, as are principles of sound design, testing, efficiency, and portability. All of the programs are complete and have been tested directly from the text. The programs are available in machine-readable form from Addison-Wesley. Software Tools in Pascal is ideal for use in a software engineering course, for a second course in programming, or as a supplement in any programming course. All programmers, professional and student, will find the book invaluable as a source of proven, useful programs for reading and study. Numerous exercises are provided to test comprehension and to extend the concepts presented in the book.
by Brian W. Kernighan
Rating: 4.0 ⭐
nan
A collection of monthly columns from Princeton's student newspaper, The Daily Princetonian. Nine additional columns added in May, 2013
by Brian W. Kernighan
Il volume, considerato a ragione un successo internazionale, è si occupa di hardware, software e comunicazioni, senza tralasciare dati, privacy e cybersecurity. Lo stile efficace e diretto, capace di legare concetti squisitamente informatici a conseguenze pratiche nella vita personale e professionale e l’onnipresente lucidità, fanno sembrare ogni cosa l’ovvia conseguenza di tante altre ovvietà. Ma nulla è ovvio, se non la chiara esigenza di padroneggiare un fenomeno che a volte sembra invece intenzionato a dominarci. Una seconda caratteristica del libro è l’impronta di chiaro stile nordamericano che è visibile ovunque nel dalla narrazione in prima persona, ai consigli ai lettori, dai legittimi dubbi dell’autore su tecnologie o norme all’invito a sviluppare un senso critico e a dubitare intelligentemente di qualunque stranezza o nuova verità assoluta provenienti dal mondo digitale. E assieme a ciò, una visione molto più europea che americana dei pericoli legati alla cessione a terzi, spontanea o inconsapevole, dei nostri dati personali o aziendali. L’edizione italiana è stata arricchita da una piccola integrazione, per descrivere esplicitamente la più diffusa tecnica usata per tracciare e registrare il comportamento degli utenti web, spiegare metodi di difesa e introdurre alcuni aspetti normativi piuttosto rilevanti nella UE, come per esempio il GDPR o la legge sui cookies. Il libro è una lettura obbligata per tutti coloro che vogliono saperne di più su computer e comunicazioni. Spiega, con precisione e attenzione, non solo come funzionano ma anche come influenzano la nostra vita quotidiana, in termini che chiunque può capire, indipendentemente dalla propria esperienza e conoscenza della tecnologia.
by Brian W. Kernighan
by Brian W. Kernighan
by Brian W. Kernighan
by Brian W. Kernighan
TΩPA, OI KERNIGHAN KAI PIKE ΠPOΣΦEPOYN ΣTOYΣ ΠPOΓPAMMATIΣTEΣ, APXAPIOYΣ KAI ΠEΠEIPAMENOYΣ, ENAN TPOΠO ΠPOΣEΓΓIΣHΣ ΣTO UNIX, ΠOY AΞIOΠOIEI ΣTO EΠAKPO THN IΣXY TOY ΔHMOΦIΛOYΣ AYTOY ΛEITOYPΓIKOY ΣYΣTHMATOΣ. TO BIBΛIO EINAI ΓPAMMENO ΓIA NA ΔIABAZETAI ΔIΠΛA ΣTO TEPMATIKO, ΩΣTE NA MΠOPEITE NA ΠEIPAMATIZEΣTE ME TA EPΓAΛEIA ΠPOΓPAMMATIΣMOY TA OΠOIA ANAΠTYΣΣEI, KAI NA ΣYNΔYAZETE H NA XPHΣIMOΠOIEITE YΠAPXONTA ΠPOΓPAMMATA ΓIA NA ΔHMIOYPΓEITE NEA.TO "ΠEPIBAΛΛON ΠPOΓPAMMATIΣMOY UNIX" ΦΩTIZEI TH ΦIΛOΣOΦIA TOY UNIX. ΘEΩPEITAI ΣAN TO ΠΛEON OΛOKΛHPΩMENO BOHΘHMA ΠPOΓPAMMATIΣMOY ΣE UNIX.
by Brian W. Kernighan
I computer sono ovunque. Alcuni sono molto visibili, come i computer portatili, i tablet, i telefoni cellulari e gli smartwatch. Ma la maggior parte sono invisibili, come quelli presenti in elettrodomestici, automobili, dispositivi medici, sistemi di trasporto, reti elettriche e armi. Non vediamo mai i tanti computer che silenziosamente raccolgono, condividono e talvolta diffondono i nostri dati personali. Sempre più spesso governi e aziende utilizzano i computer per monitorare ciò che facciamo. Social network e inserzionisti sanno più cose su di noi di quanto ci piacerebbe ammettere. E i malintenzionati hanno un accesso fin troppo facile ai nostri dati. Siamo veramente consapevoli del potere dei computer nella nostra società?In questa edizione aggiornata, Brian Kernighan spiega il funzionamento di hardware, software e reti di computer. Gli argomenti trattati comprendono come si costruisce un computer e come questo elabora le informazioni; che cos’è la programmazione; come funzionano Internet e il web; e come tutto ciò influisce sulla sicurezza, sulla privacy, sulla proprietà e su altre importanti questioni sociali, politiche ed economiche. L’autore affronta con un linguaggio chiaro e comprensibile i principi fondamentali dell’informatica e alcuni dei limiti intrinseci dei computer, mentre nuove sezioni sono dedicate ai temi della programmazione in Python, dei big data e del machine learning.