A Programmer's Introduction to PHP 4.0

W. J. Gilmore
Published: 2001, Apress
478 pages   Format: pdf

The sixteen chapters in this book delve into the many features that make PHP so popular, beginning with a thorough introduction of the general concepts and constructs of the language, then moving into issues pertaining to Web development, such as building dynamic pages, creating dynamic links, and database interfacing. Finally, attention is directed toward advanced Web development and the role PHP can play in it, discussing XML, JavaScript, COM objects, and security.

AJAX Guide

Published: 2007, Mozilla Developer Center
Format: HTML

This is less a book than a category of the Mozilla Developer Center wiki, but it does contain good information on AJAX development. It also includes links to some external resources for learing AJAX.

Advanced Linux Programming

Mark Mitchell, Jeffrey Oldham, Alex Samuel
Published: 2001, New Riders
320 pages   Format: pdf

This book covers:

  • Developing user-friendly GNU/Linux software
  • Writing more sophisticated programs with multiprocessing, multi-threading, interprocess communication, and interaction with hardware devices
  • Program optimization and security
  • Understanding the conventions, limitation and unique capabilities of a GNU/Linux system

Beginning Perl

Simon Cozens
Published: 2000, Apress
700 pages   Format: pdf

This book is for those new to programming who want to learn with Perl. You will find it easier if you already have some basic programming experience, but the material covered can be mastered by anyone with just a text editor, some common sense and a computer.

This book covers:

  • Installing Perl on Windows and UNIX
  • Making use of online Perl resources like CPAN
  • First principles in programming and the Perl syntax
  • Working with files and databases
  • Writing web pages in Perl
  • Using Perl as an object-oriented language

C Elements of Style

Steve Oualline
Published: 1992, M&T Books
Format: pdf, HTML

Though somewhat dated, this online book still contains much useful advice on programming style and organization.

Contents include:

  • Style and Program Organization
  • File Basics, Comments, and Program Headings
  • Variable Names
  • Statement Formatting
  • Statement Details
  • Preprocessor
  • Directory Organization and Makefile Style
  • User-Friendly Programming
  • Rules

C# - The Basics

Vijay Mukhi, Sandeep Shanbhag, Sonal Mukhi
Published: 2004,
Format: HTML

This C# book is written in a tutorial style, and assumes no prior programming knowledge on the part of the reader.

Chapters include:

  1. Getting Started
  2. Namespaces
  3. Constructors and Destructors
  4. Components and Databases
  5. Web Enabling Data
  6. Miscellaneous
  7. Function Overloading and Inheritance
  8. Modifiers
  9. Virtual Functions - new, override
  10. Properties and Indexers  
  11. Interfaces and Structures
  12. Operator Overloading
  13. Collection Objects
  14. Attributes, The Reflection API and Conditionals  
  15. Unsafe code

C++ In Action: Industrial-Strength Programming Techniques

Bartosz Milewski
Published: 2001, Addison Wesley
485 pages   Format: HTML

This free online book attempts to provide a comprehensive guide to C++ software engineering for maximum performance, reliability, and maintainability. The reader witnesses the development of a simple parser and a symbolic calculator starting as a simple command-line program, gradually developing into a full-fledged GUI Windows application.

Downloadable code from the sample projects is also available.

C++: A Dialog - Programming with C++ Standard Library

Steve Heller
Published: 2002, Prentice-Hall
1000 pages   Format: HTML

This is a highly effective tutorial book on standard C++ that requires no prior knowledge of programming.

From the preface:
Is this book for you? If you're a programmer in a language other than C++ and you want to upgrade your skills, then you shouldn't have much difficulty figuring that out for yourself by reading a few pages. But what if you have no previous programming experience? In that case, here's a little quiz that may help you decide:

  1. Do you want to know how the programs in your computer work inside and how to write some of your own?
  2. Are you willing to exert yourself mentally to learn a complex technical subject?
  3. Do you have a sense of humor?

If you've answered yes to these questions and follow through with the effort required, then you will get a lot out of this book.

Core JavaScript 1.5 Guide

Published: 2007, Mozilla Developer Center
Format: HTML

The Core Javascript guide is a wiki-based online tutorial for learning to program Javascript. Assumes a general understanding of the Internet and the Web, and good working knowledge of HTML.

Chapters include:

  1. About this Guide
  2. JavaScript Overview
  3. Core Language Features
  4. Expressions and Operators
  5. Regular Expressions
  6. Statements
  7. Functions
  8. Working with Objects
  9. Details of the Object Model
  10. LiveConnect Overview
  11. Processing XML with E4X

Core JavaScript 1.5 Reference

Published: 2007, Mozilla Developer Center
Format: HTML

This online book in wiki format provides a thorough reference  to the core JavaScript language.

Topics covered include:

  1. About this Reference
  2. Global Objects
  3. Global Properties
  4. Global Functions
  5. Functions
  6. Statements
  7. Operators
  8. 8 Comments
  9. LiveConnect Class Reference
  10. Appendix A - Reserved Words
  11. Appendix B - Deprecated Features

Data Structures and Algorithms with Object-Oriented Design Patterns

Bruno R. Preiss
Published: 2004,
Format: HTML

This book uses the Python programming language to teach the fundamentals of data structures and algorithms. It also illustrates object-oriented design and the use of common, object-oriented design patterns. The programs presented in the later chapters are built upon those presented in the earlier chapters.

Dive Into Python: Python from novice to pro

Mark Pilgrim
Published: 2004, Apress
400 pages   Format: HTML, pdf, MSWord, plain text

This is a book on Python aimed at experienced programmers. It skips the usual chapters on basic programming practices and, as the title suggests, dives right into the process of writing useful programs in Python.

Extreme Perl

Robert Nagler
Published: 2004,
194 pages   Format: HTML, pdf

Extreme Perl is a book about Extreme Programming using the  Perl programming language. Extreme Programming (XP) is a software development methodology that enables users, business people, programmers, and computers to communicate effectively. Perl is a dynamic programming language that lets an XP team embrace the inevitable change caused by effective communication.

The numerous examples demonstrate Extreme Perl in action, including the development of a complete, end-to-end application in the last chapter.

How to Think Like a (Python) Programmer

Allen Downey, Jeff Elkner, Chris Meyers
Published: 2007, Green Tea Press
239 pages   Format: HTML. pdf, postscript

The goal of the book is to teach the reader how to think like a computer scientist, using the Python programming language.

Learning Perl the Hard Way

Allen B. Downey
Published: 2003, Green Tea Press
69 pages   Format: HTML. pdf, postscript

Goals of the book:

  • for people who already know how to program in another language, but don't know Perl
  • get through the basics as quickly as possible, and on to the fun stuff
  • emphasize good programming style in Perl
  • bring object-oriented programming closer to the center of focus (without being an object-oriented bigot)

Mastering Enterprise JavaBeans 3.0

Rima Patel Sriganesh, Gerald Brose, Micah Silverman
Published: 2006, Wiley
700 pages   Format: pdf

This book covers EJB concepts, methodology, and development. It also contains a number of advanced EJB topics, giving a practical and real-world understanding of the subject. By reading this book, the reader will acquire a deep understanding of EJB. This edition features chapters on session beans and message-driven beans, EJB-Java EE integration and advanced persistence concepts.
-(download requires free registration)-

Mr. Neighborly's Humble Little Ruby Book

Jeremy McAnally
Format: pdf

This book covers the basic concepts of the Ruby language, including syntax, flow control, and object oriented programming. It also gets into some of the Ruby library functions, such as databases and web services.

Optimizing C++

Steve Heller
Published: 2000, Prentice-Hall
400 pages   Format: HTML

This free online book provides working programmers with a practical, real-world approach to program optimization. It draws on the author's nearly 30 years of experience as a programmer in diverse fields of application, during which he has become increasingly concerned about the amount of effort spent in reinventing optimization techniques rather than applying those already developed.

PHP 5 Power Programming

Andi Gutmans, Stig Sæther Bakken, Derick Rethans
Published: 2005, Bruce Perens’ Open Source Series
700 pages   Format: pdf

Written by one of PHP 5's co-creators and two leading PHP developers, this book is an introduction to the advanced features in PHP 5. It also includes an introduction to PHP 5 syntax. Though not aimed at novice programmers, web developers with experience in other high-level languages should find that this tutorial is all they need
in order to make the most of PHP 5.

Perl for the Web

Chris Radcliff
Published: 2001, New Riders
416 pages   Format: HTML

Perl for the Web provides tools and strategies to improve the performance of existing Web applications in Perl. It also provides principles and ideas that help Web programmers create an extensible framework for future growth.

Topics covered include:

  • speed optimization
  • document management with templates and embedded Perl
  • persistent Perl for faster performance
  • coding style
  • faster database access from Perl
  • XML + Perl for content management and B2B communication

Practical PHP Programming

Paul Hudson
Format: Wiki

The basis of the O'Reilly published: PHP in a Nutshell. This book covers topics like Simple variables and operators, Functions, Arrays, Objects, HTML Forms, Files, Databases, Cookies and Sessions, Multimedia, XML & XSLT, Output Buffering and Java and COM.

Programming Ruby: A Pragmatic Programmer's Guide

Dave Thomas and Andy Hunt
Published: 2001, Addison Wesley Longman
~500 pages   Format: HTML

A guide to working with the object-oriented programming language, Ruby, which allows for programming without extra syntax or code. Shows how to easily mine the Ruby language, teaching the basics, plus how to write large programs, how to extend Ruby using C code, and more.

Ruby Cookbook

various authors
Published: , PLEAC Project
Format: HTML

An online book which implements the solutions from the Perl Cookbook in the Ruby language. The book is a work in progress.

Sams Teach Yourself JavaScript in 24 Hours

Michael Moncur
Published: 2002, Sams
428 pages   Format: HTML

This book serves as a tutorial on both scripting basics and the JavaScript language in particular. The writing style is light and easy to follow with lots of practical examples.

Included topics:

  • Using Javascript to enhance interactive forms
  • objects
  • Javascript for manupulating cookies
  • JavaScript for games, animation, and multimedia

Each chapter ends with a Summary, Q&A, Quiz and Exercises.

This book does not specifically cover using Javascript for AJAX.

Sams Teach Yourself Java 2 in 24 Hours

Rogers Cadenhead
Published: 2003, Sams
Format: HTML

This book provides a step-by-step tutorial that teaches someone with no previous programming experience how to create simple, but useful Java programs and applets.

Sams Teach Yourself Visual Studio .NET 2003 in 21 Days

Jason Beres
Published: 2003, Sams
696 pages   Format: HTML

This book is intended to help both novice and experienced developers understand how to use the .NET Framework and Visual Studio .NET to rapidly develop any type of computer software.
The errata for the book is available on the site in pdf format.

Text Processing in Python

David Mertz
Published: 2003, Addison Wesley
540 pages   Format: Plain text

This book is ideally suited for programmers who are somewhat  familiar with Python, and whose work involves a fair amount of text processing. It also contains a quick Python tutorial to get you up to speed.

Chapters:

  • Introduction
  • Python Basics
  • Basic String Operations
  • Regular Expressions
  • Parlsers and State-Machines
  • Internet Tools and Techniques
  • A Selective and Impressionistic Short Review of Python
  • Understanding Unicode
  • A State-Machine For Adding Markup to Text

The C Book

Mike Banahan, Declan Brady, Mark Doran
Published: 1991, Addison Wesley
333 pages   Format: HTML, pdf

This is the online version of The C Book, second edition. While the print version of this book is no longer in print, its content is still very relevant today for anyone interested in C programming.

Contents include:

  • Variables & arithmetic
  • Control flow
  • Functions
  • Arrays & pointers
  • Structures
  • Preprocessor
  • Specialized areas
  • Libraries
  • Complete Programs
  • Answers

The PHP Cookbook

Published: 2007, PLEAC Project
Format: HTML

An online book which implements the solutions from the Perl Cookbook in PHP. The book is a work in progress - at the time this link was added, the book was around 36% complete.

Thinking in Java, 3rd Edition

Bruce Eckel
Published: 2003, Prentice Hall
Format: HTML

Thinking in Java is a free online version of the classic Java book.

The book discusses various programming problems and the approach Java has taken to solve them. In this way the author attempts to teach the user to make Java his or her native tongue.

Topics coverd include:

  • Introduction to Objects
  • Controlling Program Flow
  • Reusing Classes
  • Error Handling with Exceptions
  • Java Programming Guidelines

Visual Studio.Net with C#

Vijay Mukhi, Suraj Godhwani, Sonal Mukhi
Published: 2002,
Format: HTML

This free online book takes a step-by-step approach to unraveling the various features of Visual Studio.NET.

Chapters:

  1. Working with the Framework
  2. Building Database Applications
  3. Building Web Applications
  4. Setup and Deployment Projects
  5. The Basics of C#
  6. The C# code in .Net Applications
  7. C# and ASP.Net

Who's Afraid of Java?

Steve Heller
Published: 2000, Chrysalis Software Corporation
370 pages   Format: HTML

A thorough and concise guide to learning both the Java programming language and the art of programming in general.

Why's (Poignant) Guide to Ruby

Why the Lucky Stiff
Published: 2003,
Format: HTML

A thorough and entertaining introduction to the Ruby scripting language.

Writing Perl Modules for CPAN

Sam Tregar
Published: 2002, Apress
300 pages   Format: pdf

THE COMPREHENSIVE PERL ARCHIVE NETWORK (CPAN) is an Internet resource containing a wealth of downloadable, open source Perl materials — modules, scripts, documentation, and Perl itself.

This book is an in-depth guide on how to make the most of CPAN, and on how to build your own re-usable Perl modules.