ONLamp.com
O'Reilly Network.oreilly.comSafari Bookshelf.Conferences.
advertisement
O'Reilly Emerging Technology Conference March 6-9 2006, San Diego, CA

Search ONLamp

 

Login
Register
Manage Newsletters
Register Your Books




Atom 1.0 Feed RSS 1.0 Feed RSS 2.0 Feed

Related O'Reilly Books



  

Black Box with a View, Part 2
Hack a microcontroller without going crazy

  

Theming Bash
Customize your shell per project

  

Doing HTTP Caching Right: Introducing httplib2
Do you really know how to use caching in HTTP?

  

Building Recursive Descent Parsers with Python  Someday your program will have to parse text. If you're lucky, a few regular expressions will handle it. Otherwise, you need to write a parser. Don't be afraid of that dragon book from college--writing a parser in Python is easy with Pyparsing. Paul McGuire explains everything you need to know.   [Python]

Implementing MVC in PHP: The View  The most popular "proper" way to build a web application seems to be to use the Model-View-Controller design pattern. While it sounds complex, the concepts are sound and the ease of development it provides are compelling. Joe Stump shows how the View works by developing a working version in PHP 5.   [PHP]

Linux Virtualization with Xen  Virtualization is an old idea--running multiple distinct operating systems atop a powerful box has a lot of advantages. Xen is a new virtualization platform. Despite its youth, its Linux support is very good. Kris Buytaert explains the basics of virtualization and shows how to configure and install Xen and to create new virtual machines.   [Linux]

O'Reilly Learning LabLinux/Unix System Administration Certificate Series Special -- Beginners and professionals alike can plunge into the art of system administration through our four-course series, spanning basic directories to sed, awk, and perl. You'll get your own root server to work on, and free O'Reilly books for reference. Upon completion of the series, you'll receive a Certificate of Professional Development from the University of Illinois Office of Continuing Education. Pre-enroll in all four courses and receive a $300 instant rebate. Offer extended till Feb 2. Last chance!

Testing C with Libtap  Regression and unit tests are your first line of defense against bugs, bad design, and silly mistakes. Unfortunately, C programmers rarely use the good testing tools of other languages--but now there's libtap. Stig Brautaset explains how to test your C code using libtap and the wonderful Perl testing tools.   [ONLamp]

Simplify PHP Development with WASP  Where are the all-in-one PHP frameworks that make building well-factored and maintainable applications as easy as building simple sites? Brian Fioca shows how to make a simple database-backed site with WASP in just a few lines of code.   [PHP]

There Is No Open Source Community  Conventional wisdom argues that open source success is the result of individual iconoclasts who work against the economic grain to institute a methodology of sharing. That's nice--but it ignores strong economic trends that push open source development and adoption. John Mark Walker explains why the myth of the open source community is wrong and even harmful to business.   [ONLamp]

Big Scary Daemons
Running Commercial Linux Software on FreeBSD  One intriguing feature of the BSDs is their ability to run binaries for Linux distributions. This can be very useful for running commercial software. Michael W. Lucas demonstrates how to configure and use the Linux compatibility layer on FreeBSD.   [BSD]

Previewing KDE 4  The next major release of KDE will come out in the fall, and the developers are already planning new features and benefits. John Littler recently interviewed Aaron J. Seigo about the team's plans--and controversy surrounding upcoming ports to nonfree platforms.   [Linux]

Advertisement

Analyzing Web Logs with AWStats, Part 2  If you don't know where you are and what you're doing, how do you know where you're going? A crucial part of any successful web site is statistical analysis. AWStats is a powerful open source tool for collecting, summarizing, and reporting web statistics. Sean Carlos shows how to interpret the reports--not just what they say, but what they mean.   [ONLamp]

FreeBSD Basics
Building Binary PC-BSD Packages  Several BSD-based distributions have emerged recently--and a few are relevant to and accessible by end users. One such is PC-BSD, whose innovations include a binary package installation system. Of course, that requires people to build binary packages for it. Fortunately, as Dru Lavigne demonstrates, doing so is both easy and addictively fun.   [BSD]

Retro Gaming Hacks, Part 3: Add a Ball and Score to Pong  Now that we have moving paddles for our SDL Pong clone, the only thing standing in the way of some real fun is making the ball move (and adding scorekeeping). Josh Glover delivers the finale to his three-part Pong hack by showing you how to add these last two elements to finish off your very own table tennis computer game.   [O'Reilly Network]

Improve Your Build Process with Ant  Building and bundling web applications hasn't exactly grown easier over the years. This is especially true if you customize your projects for different clients. Don't go crazy with manual solutions--automate them. Michael Kimsal shows how the Ant build tool can make building, bundling, and deploying PHP applications much easier.   [PHP]

Inside NetBSD's CGD  Security-minded laptop users live in fear of theft, not only of their computer but also of their precious secret data. NetBSD's CGD project is a cryptographic virtual disk that can protect sensitive data while acting like a normal filesystem. Federico Biancuzzi recently interviewed its author, Roland Dowdeswell, on the goals and implementation of the system.   [BSD]

Retro Gaming Hacks, Part 2: Add Paddles to Pong  In part one of this three-part series on hacking Pong, Josh Glover detailed how you can write your own Pong clone, using SDL. So what's next? Adding the paddles. Today Josh walks through how, with the help of sprites, you can create and animate player-controlled paddles for your Pong clone. Tune in the first week of '06 for Josh's conclusion--you'll need to add the ball and scoring next, right?   [Linux]

Hacking Asterisk and Rails with RAGI  RAGI combines Asterisk's VoIP handling capabilities with the power and efficiency of Ruby on Rails. Joe Heitzenberg will lead a tutorial using his bindings for Asterisk with the Ruby on Rails framework at the Emerging Telephony conference.   [O'Reilly Network]

Organizing Files  Is your home directory full of thousands of poorly organized files? Do you have deep directory hierarchies you are unable to navigate and barely remember creating? Are you sinking in a sea of data and just can't get out? Karl Fogel explains how he organized his life and his home directory.   [ONLamp]

Profiling and Optimizing Python  Premature optimization is the root of all sorts of evil in programming, but meaningful and necessary optimization is vital to effective and efficient programming. When your Python program just doesn't perform, don't reach for C or C++ without first playing with the Python profiler. Jeremy Jones shows how to find and fix bottlenecks in your programs.   [Python]

Retro Gaming Hacks, Part 1: Clone Pong, Using Only SDL (and Your Brain)  One of the great things about the games of yore is that they tended to be pretty simple, and as Josh Glover explains, Pong is one of the simplest to implement. In this first article of a three-part series, Josh shows you how to clone Pong all by yourself. Josh contributed a number of the hacks in O'Reilly's Retro Gaming Hacks.   [Linux]

Managing TV with XMLTV  XMLTV is a set of open source utilities for working with television schedules. It's not just for people building their own PVRs, though--with a little cleverness, you can build your own schedule applications. Brian Murray shows how he manages his family's entertainment time.   [ONLamp]

Testing PHP Code with PHPUnit  Type; reload web site; eyeball output; fix bugs; repeat--there's a better way to write PHP code! Testing gives you confidence not only that your code works, but also that you can make changes to improve your design and flexibility without breaking behavior. Sebastian Bergmann, the author of PHPUnit, shows how his library can help to ease your development woes.   [PHP]

Through Project Looking Glass with Hideya Kawahara  3D has taken over video gaming. When will it take over mundane computing areas such as file managers, word processors, and desktop environments? Maybe soon, if Hideya Kawahara and the Project Looking Glass team have their way. John Littler explores the ideas, implementations, and possibilities of 3D interfaces in this interview.   [Linux]

ONLamp 2005 Survey Results  We recently ran a survey on ONLamp.com to find out more about our readers. Here are some of the interesting tidbits of information we learned.   [ONLamp]

Analyzing Web Logs with AWStats  If you don't know where you are and what you're doing, how do you know where you're going? A crucial part of any successful web site is statistical analysis. AWStats is a powerful open source tool for collecting, summarizing, and reporting web statistics. Sean Carlos shows how to install, configure, and understand the output of the program.   [ONLamp]

Using the Root Account on Debian  Debian GNU/Linux is a powerful and popular community-developed Linux distribution--and the basis for several other useful and usable distributions. With the recent release of Debian Sarge, it's better than ever. Edd Dumbill, Debian developer and GNU/Linux advocate, shows how to use the root account safely and responsibly.   [Linux]

What's New in ModSecurity  Two years ago, Ivan Ristic introduced ModSecurity, an Apache httpd module to increase the security and safety of web applications. Now his team has released version 1.9 with many features and improvements. Here's why you should use ModSecurity.   [Apache]

Modern Memory Management, Part 2  Modern Unix-like operating systems have their own characteristics for allocating and using memory. Howard Feldman explains how modern programming languages use memory, why this matters, and how to avoid memory and resource leaks.   [ONLamp]

PHP Code Generation with Elisp  There's plenty of near-repetition in software development; writing very similar code over and over again. Stop copying, pasting, and modifying, and start automating the process! Zachary Kessin shows how to use Emacs Lisp to generate useful and reusable database-access code for PHP.   [PHP]

Security Alerts
PHP Problems  Noel Davis looks at problems in PHP, Emacs, ftpd-ssl, Lynx, Roaring Penguin pppoe, OpenVPN, RAR, Fedora Core X-Chat, HP-UX xterm, libungif4, and GpsDrive.   [Linux]

TCP Tuning and Network Troubleshooting  Information doesn't travel across networks in one big chunk--it goes in little packets wrapped in packets wrapped in packets. Sure, you know that, but did you know that a bit of measuring and a bit of tweaking can improve your networking performance by two orders of magnitude? Brian Tierney shows how.   [ONLamp.com]

Analyzing Statistics with GNU R  Analyzing and graphing statistical data doesn't have to be as dry and boring as it sounds. With the GNU R programming language, it can be as easy as writing a few lines of code--R is to statistics and analysis as Perl is to text files. Kevin Farnham shows how easy it is to use GNU R productively with just a little bit of training.   [ONLamp]

Run Python Scripts on Your Nokia Smartphone  Most users do not need a full-blown programming platform to develop small hacks for their phones. A scripting language like Python is the perfect tool to automate simple tasks and perform simple logical processing. This excerpt from Nokia Smartphone Hacks shows you how to use Python to develop and run scripts for your Series 60 device.   [Python]

Installing and Configuring Ubuntu on a Laptop  Jeremy Jones recently bought a new laptop and decided to run Linux. Don't shudder--it actually works! Here's how he installed, reinstalled, and configured Ubuntu GNU/Linux on a Dell Inspiron.   [Linux]

What Is Prefactoring  You've probably heard of Refactoring (the process of restructuring code without changing its external behavior), but what is Prefactoring? Ken Pugh provides the answer, then covers some of the guidelines to prefactoring in the areas of Extreme Abstraction, Extreme Separation, and Extreme Readability. Ken is the author of Prefactoring.   [O'Reilly Network]

Processing XML with Xerces and SAX  It's rare to write an application these days and not run into the use of XML as a data interchange format. Perl, Java, Python, C#, Ruby, JavaScript, and PHP all have good XML processing libraries. Where's the love for C++ applications? It's in Xerces, a capable open source library. Ethan McCallum shows how to use Xerces and C++ to process, manipulate, search, and write valid XML with the event-based and memory-lean SAX processing model.   [ONLamp]

Using Perl in PostgreSQL  Perl's DBI module makes it easy to use a database. That's not the only way to interact with a database, though. If your PostgreSQL database doesn't do exactly what you want, you can write server-side extensions--in Perl. Andrew Dunstan shows how to enable PL/Perl and how to write triggers with it.   [Databases]

FreeBSD Basics
Using Software RAID-1 with FreeBSD  Disk space is cheap, and putting multiple disks in a computer is relatively cheap. Taking advantage of redundant disks to protect against hardware failure is invaluable. Though some RAID solutions require special hardware, FreeBSD 5.0 and later support software RAID. Dru Lavigne shows how to configure and enable disk mirroring.   [BSD]

Inside a Luxury Synth: Creating the Linux-Powered Korg OASYS  Defying the trend toward ever-cheaper plastic gear and soulless soft synths, this super-keyboard is designed to rock the world for years to come. Create Digital Music's Peter Kirn goes behind the scenes at Korg USA to learn how the designers finally built the dream instrument they'd been planning for 15 years.   [Digital Media]

Implementing MVC in PHP: The Controller  The most popular "proper" way to build a web application seems to be to use the Model-View-Controller design pattern. While it sounds complex, the concepts are sound and the ease of development it provides are compelling. Joe Stump shows how the Controller part of MVC works by developing a working version in PHP 5.   [PHP]





Weblogs: Links & Commentary

Kurt Cagle Kurt Cagle's Weblog
(Open) Office Party
Kurt Cagle looks at recent developments in the Open Office suite.


The changing role of open source software [Jim Alateras]

openQRM cluster manager released as open source [Andy Oram]

The Best Firefox Extension Ever? [Preston Gralla]



Events

Microsoft MIX '06 Conference
Las Vegas, Nevada Mar. 20, 2006

Better Software Conference & EXPO
Las Vegas Jun. 26, 2006

STARWEST-Software Testing Analysis & Review
Anaheim, CA Oct. 16, 2006

> More


Today's News
January 26, 2006

SARA, spawn of SATAN (Linux.com) [Source: Linux Weekly News]

Status Report Q3/Q4 2005 published [Source: NetBSD org News]

File System Design part 1: XFS (26 Jan 2006) All about XFS."Looking around on the net, you get the idea that for every strange, complicated, and niche subject there is an author that is utterly convinced that people need to know about it. Add me to the list. This article (or actually three articles, because I am much more delusional than most of these authors) will be on file system design and specifically the new file systems that are just appearing. We will start with the basics, UFS/FFS, and then proceed to our first modern file sy [Source: RootPrompt.org -- Nothing but Unix]

Explore the Linux Memory Model (26 Jan 2006) Memory management is a large, complex, and time-consuming set of tasks, one that is difficult to achieve because crafting a model how systems behave in real-world, multi-programmed environments is a tough job. Components like scheduling, paging behavior, and multiple-process interactions presents a considerable challenge. This article will help you decipher the basic knowledge required to engage the challenge of Linux memory management, providing you with a start. [Source: RootPrompt.org -- Nothing but Unix]

Vim: Seven habits of effective text editing (26 Jan 2006) Article about editing more efficiently that uses the Vim editor for its examples."The open source text editor Vim (Vi IMproved) will be used here to present the ideas about effective editing, but they apply to other editors just as well. Choosing the right editor is actually the first step towards effective editing. The discussion about which editor is the best for you would take too much room and is avoided. If you don't know which editor to use or are dissatisfied [Source: RootPrompt.org -- Nothing but Unix]

How-To: Build a practical HTPC (26 Jan 2006) Nice Linux based media workstation for about one thousand bucks."We've seen a lot of home theater PCs lately and being in need of a new workstation, we decide to build one of our own. We started planning by looking around to see what others had done. It would be fun to own a HD capable 2TB box , but we're not going to drop $7,4. SnapStream's 11-tuner performance art piece looked fun too, but not practical. Even Ars Technica and ExtremeTech had decent looking guides, but both systems broke $ [Source: RootPrompt.org -- Nothing but Unix]


Sponsored by: