Free Books under Programming Languages

PHP Cookbook

PHP Cookbook

The PHP Cookbook is a collection of problems, solutions, and practical examples for PHP programmers. The book contains a unique and extensive collection of best practices for everyday PHP programming dilemmas. It contains over 250 recipes, ranging from simple tasks to entire programs that demonstrate complex tasks, such as printing HTML tables and generating bar charts -- a treasure trove of useful code for PHP programmers, from novices to advanced practitioners.

XPath and XPointer

XPath and XPointer

Referring to specific information inside an XML document is a little like finding a needle in a haystack. XPath and XPointer are two closely related languages that play a key role in XML processing by allowing developers to find these needles and manipulate embedded information. By the time you've finished XPath and XPointer, you'll know how to construct a full XPointer (one that uses an XPath location path to address document content) and completely understand both the XPath and XPointer features it uses.

Beyond Java

Beyond Java

When C++ faded into relative obscurity, many of my best friends got burned, badly. They didn't recognize that change was in the air, or how violently change could come. Though I have a whole lot to lose, I'm writing this book because I don't want to see it happen again. If you don't want to be caught by surprise, you need to read this book.

If you think I'm right, you can start to build your skills accordingly. You might download some of the frameworks I discuss, and learn a few new languages. This book will teach you what a new language needs to succeed. If I've gotten lucky and found one of the likely winners, you'll be just a little bit more prepared when things do change.

If you think I am wrong, you can use the best techniques from the best frameworks written in any language to improve what you're doing in Java today. New frameworks like PHP, C Omega for .NET, and Ruby on Rails will come occasionally. You need to know about them, and understand how to evaluate them.

Either way, you win. It's time to start paying attention again. It's time to look to the horizon, beyond Java.

Visual Basic 2005: A Developer's Notebook

Visual Basic 2005: A Developer's Notebook

TEST When Beta 1 of Visual Basic .NET hit the programming scene in 2001, the new tool challenged experienced Visual Basic developers to step up to an entirely new programming platform and a whole new way of writing code. Fortunately, four years later, it's clear that the rewards of moving to .NET make up for the steep learning curve developers experience when they try to do so. Developers who have made the jump have a powerful set of tools for building Windows and web applications—a set that other programming frameworks are hard-pressed to match.

Visual Basic 2005 and the platform it's built on, .NET 2.0, don't represent the same seismic change. Instead, Visual Basic 2005 and .NET 2.0 are the latest releases of what are now a mature language and platform. Microsoft architects have ironed out inconsistencies, corrected flaws, and added dozens of requested features, from VB 6's edit-and-continue debugger to new Windows and web controls for displaying data. Still, even the keenest developer could use a quick tour of Visual Basic 2005 and .NET 2.0 to come to terms with all the changes.

This book provides a series of hands-on labs that take you through the new features you'll find in Visual Basic 2005, the .NET Framework 2.0, and the Visual Studio 2005 development tool. Visual Basic 2005: A Developer's Notebook is perfect for developers who have worked with a previous version of .NET and need to quickly get up to speed with what's new. Best of all, you'll learn everything through concise, focused examples (all of which are just a short download away).

Practical mod_perl

Practical mod_perl

mod_perl is an Apache module that builds the power of the Perl programming language directly into the Apache web server. With mod_perl, CGI scripts run as much as 50 times faster, and you can integrate databases with the server, write Apache modules in Perl, embed Perl code directly into Apache configuration files, and even use Perl in server-side includes. With mod_perl, Apache is not only a web server, it is a complete programming platform.

Getting mod_perl running is easy. Tweaking mod_perl and Apache for the best performance and reliability is much more difficult. This book is about building mod_perl, using it, programming with it, and optimizing it.

Learning JavaScript Design Patterns

Learning JavaScript Design Patterns

Design patterns are reusable solutions to commonly occurring problems in software design. They are both exciting and a fascinating topic to explore in any programming language.

One reason for this is that they help us build upon the combined experience of many developers that came before us and ensure we structure our code in an optimized way, meeting the needs of problems we're attempting to solve.

Design patterns also provide us a common vocabulary to describe solutions. This can be significantly simpler than describing syntax and semantics when we're attempting to convey a way of structuring a solution in code form to others.

In this book we will explore applying both classical and modern design patterns to the JavaScript programming language.

Embedding Perl in HTML with Mason

Embedding Perl in HTML with Mason

Mason is a tool for embedding the Perl programming language into text, in order to create text dynamically, most often in HTML. But Mason does not simply stop at HTML. It can just as easily create XML, WML, POD, configuration files, or the complete works of Shakespeare.

Mason was originally written by Jonathan Swartz, with the help of the rest of the CMP development team at CMP Media in 1996, and in its earliest incarnations it was known as Scribe.

Mason was first made publicly available as Version 0.1 in August of 1998. Since that time, Jonathan Swartz has invited your humble authors to participate in the further development of Mason. Mason has been expanded, and rewritten and is much changed from those early days. This book covers Version 1.12 of Mason.