May the source be with you, but remember the KISS principle ;-)
Home Switchboard Unix Administration Red Hat TCP/IP Networks Neoliberalism Toxic Managers
(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and  bastardization of classic Unix

Unix programming




Open content

Classic books

Unix System Administration




Shell programming




Architecture and kernel internals


 Open Source books



Network Administration


Etc buying info Linux Programming by Example (By Example)

by Kurt Wall

4 of 5 stars Pretty good book, June 27, 2000
Reviewer: Christopher Brown from USA
The general idea of this book is: "Here's a few examples, now go read the man pages". Which I don't have a problem with.

However, this is NOT a book for beginning C programmers. It mainly focuses on system calls, signals, processes, and the like. I think it should be used as a POSIX geared supplement to "Advanced Programming In the UNIX Environment".

By the way, pages 134-135 contains a typo. In the paragraph "The Access Bits", 1 is execute, 2 is write, and 4 is read. The author corrects this in a later paragraph.

All in all, I'd say it's a good book for users looking for more insight into UNIX and Linux development.

4 of 4 people found the following review helpful:

4 of 5 stars Very decent book, June 20, 2000
Reviewer: a_k (see more about me) from Moscow, Russia

The book consists of 5 parts, appendices (the 6th part) and covers the following topics:

1. Introduction to Linux environment and basic development tools (gcc and make).

2. System programming (processes, signals, system calls, file handling and daemons).

3. Some Linux APIs (Berkeley database, ncurses, sound API) and creating your own libraries.

4. Interprocess communication (pipes, shared memory, semaphores and sockets).

5. Programming utilities (RCS, gdb, RPM and other packaging).

Everything is done using C. All explanations are clear and concise, and are illustrated by the sample project. Appendices contain lots of useful Internet links by categories.

The book looks very good but in my opinion it could be even better if the author used C++ instead of C. Writing UI with ncurses is a bit obsolete, but the author has promised to write about Xwindow and OpenGL in his next book. We'll see.

SUMMARY: in my opinion if you have at least a moderate Unix/Linux experience you won't learn too much from this book. But if you know a little about Unix/Linux programming (and have a working knowledge of C) you will probably love it.

Linux Programming Unleashed (Unleashed)

3 of 5 stars Acceptable, but not excellent, October 14, 1999
Reviewer: a_k (see more about me) from Moscow, Russia

Probably I would give it 3 stars and a quarter, or even one third, but obviously less than 4 stars.

The authors tried to cover nearly all the topics in linux programming (excluding databases). The results are quite mixed. The most of explanation is done using C, though C++ is also touched a couple of times.

The book consists of 6 parts.

Part 1 is the linux programming toolkit. Not bad at all. Suprising things are that gdb is described in part 5, and electric fence in part 2, not here.

Part 2 - System programming, Part 3 - Interprocess communication and networking. These parts are central and most valuable in the book. Good. Though I like Linux Application Development by M.K.Johnson and E.W.Troan better.

Part 4 - Programming the user interface. Very shallow. You can learn that such and such techniques exist but may hardly understand how to use them.

Part 5 - Special programming techniques. A strange feeling. As if the authors decided to collect here the material which they did'nt know where else to place.

Part 6 - Finishing touches (about creating the software packages and documentation). Not bad at all, though a little shallow again.

As it was already said in the previous reviews there are regular references to the non-existing CD.

RESUME: it is an acceptable book, espesially if you just start programming linux, or migrate from another platform. You will get acquainted quickly with the most necessary things. So if you have bought it, try to enjoy it:).

If you don't have it yet I recommend better to buy already mentioned Linux Application Development for both application and system programmers, plus Programming with Qt by M.Dalheimer or Developing Linux Application by E.Harlow if you are interested in GUI development for KDE or GNOME respectively.

5 of 5 stars Seems good so far., February 3, 2000
Reviewer: Anonymous linuxer. from Melbourne, Australia

The book is very much in the style of Stephen Williams' Advanced Programming in the UNIX environment. Similar concepts and explanations, but held tightly in the Linux realm and style. Deviations and additions of LINUX to the POSIX standards are shown, and the book is full of examples that more often than not illustrate the point at hand with out other excess baggage.

Although not finished yet, it has been very good so far.

Understanding Internet Protocols Through Hands-On Programming

by J. Mark Pullen
Paperback - 304 pages 1st edition (January 26, 2000)
John Wiley & Sons; ISBN: 0471356263 ; Dimensions (in inches): 0.78 x 9.21 x 7.51 Sales Rank: 173,048
Avg. Customer Rating: 5.0 out of 5 stars

Number of Reviews: 1

5 of 5 stars Good book for learning network protocols pratically, April 1, 2000
Reviewer: A reader from Ames, USA
This book is just what I am looking for. It combines the theories and the practical applications well.


See also Perl books

***** Linux Application Development
Michael K. Johnson, Erik W. Troan / Hardcover / Published 1998 / $32.17
Publisher WEB page: Linux Application Development and Red Hat mirror 
Great book. IMHO the best on the topic.
I would not agree that the fact that the authors skipped X windows programming is a problem, but generally would agree with the Amazon reviewer other statements:
5 out of 5 stars Enlightening Introduction plus Excellent Reference Book, July 3, 1999
Reviewer: A reader from Ontario, Canada

This book was written with an easy to read style, and the content is excellent. I'll forgive them for not including anything related to X11 programming, but they mention that their reason was that X Windows programming is not specific to Linux, and this is a *LINUX* programming book. Well fine, but I still have to find a book on X Programming. Imagine a book on Windows NT Programming that skipped all the GUI parts. I guess the Unix crowd is 10 years behind the NT crowd in acceptance of GUIs.

Reading this book made many of the arcane details of Unix architecture make sense, finally. I have read many Linux books, and most are long on technical drivel and short on enlightenment. If you are enlightened, you don't need the drivel, because the technical details are easy to absorbe and remember once they make sense.

This book excels at making sense of Linux. It should have been called "Making Sense of Linux Application Development", because that's what it is. You could probably get a lot out of it, even if you don't know C very well or you aren't all that interested in C programming in Linux. The explanations are clearly presented, and the chapters stand alone, and are a great reference material, as well as interesting general reading for those interested in the internals of Linux.

This book explains a lot of services that the kernel provides, especially in regards to the Linux process model and unix filesystems, as well as interprocess communications (Unix domain sockets) and network programming (TCP/IP sockets).

CAVEAT: This shouldn't be your *first* Linux book. There's a lot of material besides the writing of the code that you need to cover first. To get you comfy in the classic Unix shell environment read Hands On Unix, by Mark Sobell.

***+ Beginning Linux Programming
Neil Matthew and Richard Stones / Paperback, 980 pp/ Published 1999, second edition Wrox Press Inc; ISBN: 1861002971  /$31.99
Source code available from the;
Publisher page: Wrox Press Inc.
Paperback - 980 pages 2nd edition (September 1999)
Wrox Press Inc; ISBN: 1861002971 ; Dimensions (in inches): 2.08 x 9.17 x 7.26 Sales Rank: 2,256
Avg. Customer Review: 4.5 out of 5 stars
Number of Reviews: 46
Table of contents
I did not read the second edition, but many Amazon readers suggest that the authors managed to improve the book. Still the main problem is that you need to be very careful in selecting topics for the beginning programming course and not to overload the boat.

I do not recommend this book to be used in the introductory course and I would agree with one of Slashdot readers --  "Beginning Linux Programming" tries to cover way too much in too small of a space. It is actually an intermediate book that tries to cover everything from shell scripting to X11 programming (but tells you it's a waste of time and you should use a toolkit) to Tcl/Tk. It covers just about everything, but covers nothing well. See SlashdotReviewBeginning Linux Programming.

The main problem for authors of "Beginning" books is to decide on a minimal subset of topics they should cover. The authors seems decided to avoid this hard decision by including as much as possible. But it can be considered as a decent "Tools" book. Here is another comment from Amazon reader that address the same problem:

3 out of 5 stars good book - could be great, July 13, 2000
Reviewer: jk_ny (see more about me) from Poughkeepsie, NY United States

This book will bring you up to speed on the Linux API. My only complaint is that it skims the surfaces. Take out the sections on Tcl, HTML, Perl, and CGI; they are so basic that they are useless anyway, and they don't fit in here. "Beginning Linux Programming" has the potential be the master of all of the Linux books if they would cut out these non-Linux topics and replace them with more Linux information.

For example, I loved the compiler section but it stopped short on shared libraries to save room for Perl and CGI later in the book. If the authors are listening: the cover of the book says Linux programming, not web programming.

As for the presentation of the book: Great examples, great explanations, and very clear.

Linux Socket Programming by Example (By Example)
by Warren W. Gay
Amazon price: $29.99
Paperback - 576 pages 1 edition (April 18, 2000)
Que Education & Training; ISBN: 0789722410 ; Dimensions (in inches): 1.38 x 9.21 x 7.47 Sales Rank: 8,798
Avg. Customer Review: 4.5 out of 5 stars
Number of Reviews: 3
Linux Programming by Example (By Example)
by Kurt Wall
Amazon price: $24.99
Paperback - 560 pages 1 edition (December 3, 1999)
Que Education & Training; ISBN: 0789722151 ; Dimensions (in inches): 1.29 x 9.06 x 7.34 Sales Rank: 28,612
Avg. Customer Review: 4.5 out of 5 stars
Number of Reviews: 4
Linux Programming Unleashed 2nd Edition (Unleashed)
by Kurt Wall
Amazon price: $39.99
Paperback - 817 pages (August 1999)
Sams; ISBN: 0672316072 ; Dimensions (in inches): 1.88 x 9.10 x 7.34 Sales Rank: 75,109
Avg. Customer Review: 3 out of 5 stars
Number of Reviews: 11
First edition was average. It looks like Linux Programming by Example (By Example) by the same author is a better (and cheaper) book.
Unix: Network Programming - W. Richard Stevens; Hardcover
see also: W. Richard Stevens' FAQ
A classic book.
Advanced Programming in the Unix Environment (Addison-Wesley Professional Computing Series) - W. Richard Stevens; Hardcover
 The author page: W. Richard Stevens' Home Page
Practical Unix Programming : A Guide to Concurrency, Communication, and Multithreading
Kay A. Robbins, et al / Hardcover / Published 1996
Programming With Curses (A Nutshell Handbook)
John Strang / Paperback / Published 1986
Programming With Gnu Software (Nutshell Handbook)
Michael Kosta Loukides, et al / Paperback / Published 1997
Programming With Threads
Steve Kleiman, et al / Paperback / Published 1995
Programming With Unix Threads
Charles J. Northrup, Charles Northrup / Paperback / Published 1996
Pthreads Programming
Bradford Nichols, et al / Paperback / Published 1996
Termcap and Terminfo
John Strang, et al / Paperback / Published 1991
Panic! : Unix System Crash Dump Analysis
Chris Drake, et al / Paperback / Published 1995
Advanced Topics in Unix
Ronald J. Leach / Paperback / Published 1994
Applying Rcs and Sccs : From Source Control to Project Control (Nutshell Handbook)
Don Bolinger, Tan Bronson / Paperback / Published 1995
Adventures in Unix Network Applications Programming (Wiley Professional Computing)
Bill Rieken, Lyle Wieman / Paperback / Published 1992



Groupthink : Two Party System as Polyarchy : Corruption of Regulators : Bureaucracies : Understanding Micromanagers and Control Freaks : Toxic Managers :   Harvard Mafia : Diplomatic Communication : Surviving a Bad Performance Review : Insufficient Retirement Funds as Immanent Problem of Neoliberal Regime : PseudoScience : Who Rules America : Neoliberalism  : The Iron Law of Oligarchy : Libertarian Philosophy


War and Peace : Skeptical Finance : John Kenneth Galbraith :Talleyrand : Oscar Wilde : Otto Von Bismarck : Keynes : George Carlin : Skeptics : Propaganda  : SE quotes : Language Design and Programming Quotes : Random IT-related quotesSomerset Maugham : Marcus Aurelius : Kurt Vonnegut : Eric Hoffer : Winston Churchill : Napoleon Bonaparte : Ambrose BierceBernard Shaw : Mark Twain Quotes


Vol 25, No.12 (December, 2013) Rational Fools vs. Efficient Crooks The efficient markets hypothesis : Political Skeptic Bulletin, 2013 : Unemployment Bulletin, 2010 :  Vol 23, No.10 (October, 2011) An observation about corporate security departments : Slightly Skeptical Euromaydan Chronicles, June 2014 : Greenspan legacy bulletin, 2008 : Vol 25, No.10 (October, 2013) Cryptolocker Trojan (Win32/Crilock.A) : Vol 25, No.08 (August, 2013) Cloud providers as intelligence collection hubs : Financial Humor Bulletin, 2010 : Inequality Bulletin, 2009 : Financial Humor Bulletin, 2008 : Copyleft Problems Bulletin, 2004 : Financial Humor Bulletin, 2011 : Energy Bulletin, 2010 : Malware Protection Bulletin, 2010 : Vol 26, No.1 (January, 2013) Object-Oriented Cult : Political Skeptic Bulletin, 2011 : Vol 23, No.11 (November, 2011) Softpanorama classification of sysadmin horror stories : Vol 25, No.05 (May, 2013) Corporate bullshit as a communication method  : Vol 25, No.06 (June, 2013) A Note on the Relationship of Brooks Law and Conway Law


Fifty glorious years (1950-2000): the triumph of the US computer engineering : Donald Knuth : TAoCP and its Influence of Computer Science : Richard Stallman : Linus Torvalds  : Larry Wall  : John K. Ousterhout : CTSS : Multix OS Unix History : Unix shell history : VI editor : History of pipes concept : Solaris : MS DOSProgramming Languages History : PL/1 : Simula 67 : C : History of GCC developmentScripting Languages : Perl history   : OS History : Mail : DNS : SSH : CPU Instruction Sets : SPARC systems 1987-2006 : Norton Commander : Norton Utilities : Norton Ghost : Frontpage history : Malware Defense History : GNU Screen : OSS early history

Classic books:

The Peter Principle : Parkinson Law : 1984 : The Mythical Man-MonthHow to Solve It by George Polya : The Art of Computer Programming : The Elements of Programming Style : The Unix Haterís Handbook : The Jargon file : The True Believer : Programming Pearls : The Good Soldier Svejk : The Power Elite

Most popular humor pages:

Manifest of the Softpanorama IT Slacker Society : Ten Commandments of the IT Slackers Society : Computer Humor Collection : BSD Logo Story : The Cuckoo's Egg : IT Slang : C++ Humor : ARE YOU A BBS ADDICT? : The Perl Purity Test : Object oriented programmers of all nations : Financial Humor : Financial Humor Bulletin, 2008 : Financial Humor Bulletin, 2010 : The Most Comprehensive Collection of Editor-related Humor : Programming Language Humor : Goldman Sachs related humor : Greenspan humor : C Humor : Scripting Humor : Real Programmers Humor : Web Humor : GPL-related Humor : OFM Humor : Politically Incorrect Humor : IDS Humor : "Linux Sucks" Humor : Russian Musical Humor : Best Russian Programmer Humor : Microsoft plans to buy Catholic Church : Richard Stallman Related Humor : Admin Humor : Perl-related Humor : Linus Torvalds Related humor : PseudoScience Related Humor : Networking Humor : Shell Humor : Financial Humor Bulletin, 2011 : Financial Humor Bulletin, 2012 : Financial Humor Bulletin, 2013 : Java Humor : Software Engineering Humor : Sun Solaris Related Humor : Education Humor : IBM Humor : Assembler-related Humor : VIM Humor : Computer Viruses Humor : Bright tomorrow is rescheduled to a day after tomorrow : Classic Computer Humor

The Last but not Least Technology is dominated by two types of people: those who understand what they do not manage and those who manage what they do not understand ~Archibald Putt. Ph.D

Copyright © 1996-2021 by Softpanorama Society. was initially created as a service to the (now defunct) UN Sustainable Development Networking Programme (SDNP) without any remuneration. This document is an industrial compilation designed and created exclusively for educational use and is distributed under the Softpanorama Content License. Original materials copyright belong to respective owners. Quotes are made for educational purposes only in compliance with the fair use doctrine.

FAIR USE NOTICE This site contains copyrighted material the use of which has not always been specifically authorized by the copyright owner. We are making such material available to advance understanding of computer science, IT technology, economic, scientific, and social issues. We believe this constitutes a 'fair use' of any such copyrighted material as provided by section 107 of the US Copyright Law according to which such material can be distributed without profit exclusively for research and educational purposes.

This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Grammar and spelling errors should be expected. The site contain some broken links as it develops like a living tree...

You can use PayPal to to buy a cup of coffee for authors of this site


The statements, views and opinions presented on this web page are those of the author (or referenced source) and are not endorsed by, nor do they necessarily reflect, the opinions of the Softpanorama society. We do not warrant the correctness of the information provided or its fitness for any purpose. The site uses AdSense so you need to be aware of Google privacy policy. You you do not want to be tracked by Google please disable Javascript for this site. This site is perfectly usable without Javascript.

Last modified: March 12, 2019