Ruby on Rails has taken the web application development world by storm.
Those of us who have been writing web apps for a few years remember the
good ol’ days when the leading contenders for web programming languages
were PHP and Java, with Perl, Smalltalk, and even C++ as fringe choices.
Either PHP or Java could get the job done, but millions of lines of legacy code
attest to the difficulty of using either of those languages to deliver solid web
applications that are easy to evolve.
But Ruby on Rails changed all that. Now thousands of developers around the
world are writing and delivering high-quality web applications on a regular
basis. Lots of people are programming in Ruby. And there are plenty of books,
screencasts, and tutorials for almost every aspect of bringing a Rails application
We say “almost every aspect” because there’s one crucial area in which Rails
applications are not necessarily a joy; that area is deployment. The most elegant
Rails application can be crippled by runtime environment issues that
make adding new servers an adventure, unexpected downtime a regularity,
scaling a difficult task, and frustration a constant. Good tools do exist for
deploying, running, monitoring, and measuring Rails applications, but pulling
them together into a coherent whole is no small effort.
In a sense, we as Rails developers are spoiled. Since Rails has such excellent
conventions and practices, we expect deploying and running a Rails application
to be a similarly smooth and easy path. And while there are a few standard
components for which most Rails developers will reach when rolling out a
new application, there are still plenty of choices to make and decisions that
can affect an application’s stability.
Foundation Blender Compositing
Anyone who uses Blender needs this book. Blender users know that it can be used for modeling, animation, and rendering, but it can also be used as a fully functional compositing and post-production application. This book explores Blender's use as a compositing and post-production tool in the video and film production pipeline. In this book, you...
The Art of Software Testing, Second Edition At the time this book was first
published, in 1979, it was a well-known rule of thumb that in a typical
programming project approximately 50 percent of the elapsed
time and more than 50 percent of the total cost were expended in
testing the program or system being developed.
Today, a quarter of the century later, the...
Holub on Patterns: Learning Design Patterns by Looking at Code
Most programmers learn by looking at computer programs. This book teaches you design patterns in exactly this way: by looking at computer programs and analyzing them in terms of the patterns that they use. Consequently, you learn how the patterns actually occur in the real world, and how to apply the patterns to solve real problems. This book...
Beginning C# 2005 Databases (Programmer to Programmer) Welcome to Beginning C# 2005 Databases! In this book you learn everything you need to know about
developing C# applications that access databases. If you are wondering why this is such an important
topic, just consider how many applications use the functionality. At first glance, you might notice a few
specialized ones such as...
Activist Business Ethics “The truth can wait, for it lives a long life”
(Arthur Schopenhauer, German philosopher, 1788-1860)
The philosopher Schopenhauer believed in the eventual triumph of truth, despite the disappointments engendered by his indifferent contemporaries. Two centuries later, we live in a time of accelerated changes, and we do not...