This book has been a rather long time in the making. I have been using PHP for many years now, and have grown to love it more and more for its simplistic approach to programming, its flexibility, and its power. Of all the programming languages I have used throughout my over 20-year career, PHP is my favorite, hands down. PHP has grown from a small set of functions to a very large volume of func…
Computers don’t naturally understand human languages such as English. Instead, we invent artificial languages to communicate with them. These artificial languages are typically much simpler than any human language, so it’s easier to learn them than for, say, an English speaker to learn Chinese. But it’s still hard work. As with any language, you’ll need to learn the spelling, punctuat…
We have been involved with JSF and RichFaces for many years now, including teaching JSF and RichFaces courses for many years. From our experience, we have come to realize that many developers are using RichFaces and JSF without understanding the full potential of the technology. Without this understanding, developers can't fully utilize the framework. Of course, after a bit of trial and error,…
The world of version control systems(VCSs) has undergone a major shift over the past few years. Fast, reliable,and approachable distributed version control systems(DVCSs) such as Git have burst on to the scene and changed the land scape of open source software development and corporate software workflows. This book is your guide to this new paradigm.It’s not a complete reference; instead,it …
With Web Forms, Microsoft attempted to hide both HTTP (with its intrinsic statelessness) and HTML (which at the time was unfamiliar to many developers) by modeling the user interface (UI) as a hierarchy of server-side control objects. Each control kept track of its own state across requests (using the View State facility), rendering itself as HTML when needed and automatically connecting client…
This book has existed, in one form or another, since the first release of C# and the .NET Platform was published in step with Microsoft’s release of .NET 1.0 Beta 2 (circa the summer of 2001). Since that point, I have been extremely happy to see that this text continues to be very well received by the press. Over the years, it was nominated as a 2002 Jolt Award finalist (I lost, but hey, life…
This book is about HTML5 Programming. Before you can understand HTML5 programming, however, you need to take a step back and understand what HTML5 is, a bit of the history behind it, and the differences between HTML 4 and HTML5. In this chapter, we get right to the practical questions to which everyone wants answers. Why HTML5, and why all the excitement just now? What are the new design princi…
It’s been a while since I last revised this material and even longer than that since the first edition was published. In that time the technologies that Java programmers use have changed quite a bit and there’s no doubt that if I were writing this book for the first time I would do some things differently. For example, I’d place more of an emphasis on technologies related to web developme…
W elcome to yet another book on the great programming language of PHP. This book is unique in that it focuses on higher-end materials and more advanced, cutting-edge topics. We have kept it as modern as possible with the fast-paced world of the Internet. We take the reader from an intermediate level to a more advanced level of this great programming language.
But the fact is, the business world runs on batch. Your bank and 401k statements are all generated via batch processes. The e-mails you receive from your favorite stores with coupons in them? Probably sent via batch processes. Even the order in which the repair guy comes to your house to fix your laundry machine is determined by batch processing. In a time when we get our news from Twitter, Goo…
My first experience with a computer was at the age of 15 at a technical high school in the Netherlands where I was introduced to the Sinclair ZX-81. It was a little computer with only 16 KB of memory, but it was amazing and I started programming on it from day one. In 1981 when the hardware and software revolution started, I moved on to an Exidy Sourcer and the Commodore 64, soon followed by my…
Linux has come a long way in the last few years. From relatively humble beginnings, Linux now powers a growing number of Fortune 500 companies. Everything from your cell phone right on up to the largest supercomputing clusters are now built using the Linux kernel and the software distributions built around it. But what really is Linux? What makes it different from any other UNIX-like Operating …
Microsoft Robotics Developer Studio (MRDS) introduces a new way to program robots in the Windows environment. It attempts to bring some order to the chaos that has marred the field of robotics, at least as far as Windows - based applications are concerned. If it meets its objectives, you will see the emergence of a common standard for robotics software in the next few years. This is potentially…
The multicore revolution is at hand. Parallel processing is no longer the exclusive domain of supercomputers or clusters. The entry - level server and even the basic developer workstation have the capacity for hardware - and software - level parallel processing. The question is what does this mean for the software developer and what impact will it have on the software development process? In t…
The life of the Oracle database programmer is in a state of flux. Oracle Corporation is advancing rapidly into the middle and presentation tiers of the enterprise application with an array of new products and technologies. Perhaps more significantly, with the launch of Oracle 8i, more and more enterprise features are being moved into the database, bringing with them a wealth of new programming …
Professional Oracle Programming is intended for application developers who use Oracle as their database. As such, this book does not devote much space to topics which are primarily of interest to database administrators, such as backup and recovery. Most importantly, this book is designed to help a programmer understand the database issues that can have a direct impact on the operation and perf…
RECENT YEARS HAVE SEEN DRAMATIC EXPANSION in the use of mobile computing and social media on the Internet. Organizations show increasing interest in web analytics, and will soon comprehend the importance of engagement and experience management and monitoring. With the increasing value of Search Engine Optimization (SEO) and the nature of the web as a crucial channel for customer service, sales,…
XMPP Powers a w Ide range of applications including instant messaging, multi-user chat, voice and video conferencing, collaborative spaces, real-time gaming, data synchronization, and even search. Although XMPP started its life as an open, standardized alternative to proprietary instant messaging systems like ICQ and AOL Instant Messenger, it has matured into an extremely robust protocol for al…
This course reader has had an interesting evolutionary history that in some ways mirrors the genesis of the C++ language itself. Just as Bjarne Stroustup’s first version of C++ was implemented on top of a C language base, this reader began its life as Eric Roberts’s textbook Programming Abstractions in C (Addison-Wesley, 1998). In 2002-03, Julie Zelenski updated it for use with the C++ pr…
This book is about ASP.NET AJAX (known in prerelease versions as “Atlas”), a collection of new Microsoft technologies that enables web developers—particularly ASP.NET 2.0 developers—to more easily create web sites with pages that use Ajax. Ajax-style pages provide a richer user interface. Such a page is also more responsive because it can respond immediately to users, and can interact m…
The web application landscape is vast and varied. Microsoft’s ASP.NET Framework— built on top of the mature and robust .NET Framework—is one of the most trusted platforms in the industry. ASP.NET MVC is Microsoft’s latest addition to the world of ASP.NET providing web developers with an alternative development approach that helps you build web applications with ease. The main goal of th…
On top of the .NET infrastructure sits a high-level abstraction of the operating system, designed to facilitate object-oriented software development. This top tier includes ASP.NET and Windows applications. ASP.NET (with AJAX) is one of the world’s most popular ways to create web applications. Although C# is a standalone programming language, it is my premise that the vast majority of the rea…