ONLamp.com
O'Reilly Network.oreilly.comSafari Bookshelf.Conferences.
advertisement
O'Reilly Emerging Telephony Conference January 24-26 2006, San Francisco, 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



  

Analyzing Web Logs with AWStats, Part 2
What AWStats reports mean and how to use them

  

Building Binary PC-BSD Packages
Building binary packages for PC-BSD

  

Retro Gaming Hacks, Part 3: Add a Ball and Score to Pong
Adding a ball and score to your SDL Pong clone

  

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]

O'Reilly Learning LabHoliday Special: Web Programming Certificate Series — Go from newbie to know-how in six 40-hour courses spanning the client-server spectrum. Upon completion of the series, receive a Certificate of Professional Development from the University of Illinois Office of Continuing Education. Keep your free O'Reilly books for reference and your Learning Lab account as an online portfolio. Pre-enroll in all six courses and receive a $300 instant rebate. Offer extended until January 10th.

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]

Advertisement

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]

What Is TurboGears (Hint: Python-Based Framework for Rapid Web Development)  TurboGears is a Python-based framework that enables you to quickly build database-driven, ready-to-extend web applications. In this article, Matthew Russell takes you inside this framework for a look at its internal mechanisms, then introduces you to its creator, Kevin Dangoor.   [Mac]

Features
Fixing AJAX: XmlHttpRequest Considered Harmful  Jason Levitt shows us how to work around XmlHttpRequest restrictions in order to get more joy from third-party web services.   [XML.com]

Features
REXML: Processing XML in Ruby  Ruby web apps, including those built with Rails, don't always use XML to represent data. But sometimes you just don't have a choice. Koen Vervloesem shows us how to process XML in Ruby using Ruby Electric XML (REXML).   [XML.com]

Security Alerts
Ethereal Trouble  Noel Davis looks at problems in sudo, Ethereal, Apache mod_auth_shadow, fetchmailconf, lynx, Mantis, pnmtopng, gnump3d, Squid, unzip, uim, Curl, and imlib.   [Linux]

Testing Web Apps Effectively with twill  There's a real drive toward testing these days. If you develop any sort of application seriously, you've likely heard recommendations to write comprehensive automated tests. Is that really useful? Michele Simionato explores the arguments for and against automated testing, and shows how to automate web app testing using Python and the twill utility.   [Python]

REST on Rails  Ruby on Rails is an increasingly popular framework for building web applications. Matt Biddulph shows us how good the fit is between Rails and lightweight REST web apps and services.   [XML.com]

Modern Memory Management  Modern memory management isn't as simple as knowing that you have 150MB of programs to run and 256MB of memory to do it in. Modern Unix-like operating systems have their own characteristics for allocating and using memory. Howard Feldman explains how this works and shows how to analyze and reduce the memory consumption of your programs, no matter what language you use.   [ONLamp]

Big Scary Daemons
Building Detailed Network Reports with Netflow  You can trace every packet on your network from source to destination, if you really want to. Having all of this information is useless unless you can actually find what you need to know. Netflow not only helps record traffic information but also can help you report on just the types of packets you want. Michael W. Lucas demonstrates.   [BSD]

What Is a Linux Distribution  The Linux kernel may be the star of the show, but like any star, it needs a supporting cast. In this case, the supporting cast is known as a Linux distribution--a useful set of system and application programs bundled with the OS. Edd Dumbill serves up overviews of the major Linux distributions as well as the specialist distros, and for who (or what) each distro is best suited.   [Linux]

EuroOSCON: Remembering the End User  Daniel Steinberg reports on some of the sessions and keynotes that spanned the first two days of O'Reilly's first-ever European Open Source Convention, in Amsterdam. In one way or another, these sessions--by Jeff Waugh, Alan Cox, and Simon Phipps--focused on the user. For more news items, press releases, blogs, and photos about the convention, check out our EuroOSCON Conference Coverage page.  [O'Reilly Network]

Assessing Web App Security with Mozilla  If your web application expects only that users always follow instructions and can never do anything other than what you want, it's probably insecure. You might find it surprising how much information your app exposes to a potentially hostile world. Shreeraj Shah demonstrats how to use Mozilla's LiveHTTPHeaders extension to see what your app does and probe it for vulnerabilities.   [O'Reilly Network]





ONLamp Open Source Project
Putty
Putty is not the most exciting program in the world, but it's truly essential. Putty is a little tool to connect to a remote shell. When I need to use Windows, Putty is essential in being able to talk to a remote Linux or Mac machine. The makers of Putty also provide pscp; a Windows version of scp. I have used to this literally hundreds of times when out with clients and I need to grab a much needed file.

Atom 1.0 Feed RSS 1.0 Feed RSS 2.0 Feed


Weblogs: Links & Commentary

Amir Shevat Amir Shevat's Weblog
Are SOA and web-services synonymous?
As we all know, there is a big buzz over SOA and most of that buzz ties-up SOA with Web Services. I am not sure this coupling is required or even beneficiary for both technologies.


A GUI Library For Lisp On OS X [Christopher Roach]

Apple and the Art of Podcasting [David Battino]

Newsvine is *fantastic* [Nitesh Dhanjani]



Events

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

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

STAREAST-Software Testing Analysis & Review
Orlando, FL May. 15, 2606

> More


Today's News
January 08, 2006

Winning the Linux Wars (MCP) [Source: Linux Weekly News]

Tapestry makes web development a breeze (8 Jan 2006) Simplify your Web-based development with Tapestry, an open-source, Java-based framework that makes developing a breeze. This article shows you around Tapestry, from installation to file structure. See for yourself how Tapestry facilitates servlet-based Web application development using HTML and template tags. [Source: RootPrompt.org -- Nothing but Unix]

Basic GNU Autotools (7 Jan 2006) Setting up software for distribution can be a daunting task. Most of the the time, a well written makefile does the trick. Sometimes a little more is needed - or even expected. The GNU autotools for setting up a software distribution can help iron out some of the problems a programmer might run into. More... [Source: RootPrompt.org -- Nothing but Unix]

Alternative input devices under Linux (Linux.com) [Source: Linux Weekly News]

EuroBSDCon 2005 (NewsForge) [Source: Linux Weekly News]

Linux Gazette #122 is out! [Source: Linux Weekly News]


Sponsored by:




Contact Us | Advertise with Us | Privacy Policy | Press Center | Jobs

Copyright © 2000-2006 O'Reilly Media, Inc. All Rights Reserved.
All trademarks and registered trademarks appearing on the O'Reilly Network are the property of their respective owners.

For problems or assistance with this site, email