Filter by products, topics, and types of content

(0 Products)

(94 Topics)

(1 Industries)

(7 Types)

1 - 100 of 687 results | Next
Show Summaries | Hide Summaries
View Results
Title none Type none Date up
Home, smart home
An intruder is detected in the back yard by infrared sensors, setting off the automatic sprinklers -- or even dialling 911. Not that he'd have been able to get in anyway, as the house is protected by Java-based iButton keys.... In the 1960s, MI6 or U.N.C.L.E. might have paid millions for the things you can do today on your Linux box with MisterHouse -- without installing any new wiring.
Articles 01 Dec 1999
Bash by example, Part 1
By learning how to program in the bash scripting language, your day-to-day interaction with Linux will become more fun and productive, and you'll be able to build upon those standard UNIX constructs (like pipelines and redirection) that you already know and love. In this three-part series, Daniel Robbins will teach you how to program in bash by example. He'll cover the absolute basics (making this an excellent series for beginners) and bring in more advanced features as the series proceeds.
Also available in: Japanese  
Articles 01 Mar 2000
Parsing with Perl modules
One of Perl's main goals is parsing text. This tutorial discusses CPAN modules for text parsing, and shows how you can use them easily in your own programs. Analyzing code comments, adapting existing lex grammars, and many other tasks can be easy with the right tools. Teodor shows examples of each one, with an eye to real-world programming.
Also available in: Japanese  
Articles 01 Apr 2000
Partitioning in action: Moving /home
In this new series of tips, Daniel Robbins shows you how to change partition layout on a running system. He'll also cover several tricks of the trade to minimize downtime and avoid making costly mistakes. In this particular tip, he'll show you how to move /home to another partition.
Also available in: Japanese  
Articles 01 May 2000
Bash by example, Part 3
Daniel Robbins takes a good look at the Gentoo Linux ebuild system, an excellent example of the power of bash.
Articles 01 May 2000
POSIX threads explained
POSIX (Portable Operating System Interface) threads are a great way to increase the responsiveness and performance of your code. In this series, Daniel Robbins shows you exactly how to use threads in your code. A lot of behind-the-scenes details are covered, so by the end of this series you'll really be ready to create your own multithreaded programs.
Also available in: Japanese  
Articles 01 Jul 2000
Charming Python: My first Web-based filtering proxy
This article introduces Txt2Html, a public-domain working project created by David to illustrate programming techniques in Python. Txt2Html is a "Web-based filtering proxy" -- a program that reads Web-based documents for the user, then presents a modified page to the user's browser. To make this possible, Txt2Html runs as a CGI program, queries outside Web resources, and makes use of regular-expressions. David steps you through each of these general-purpose subtasks, explaining, clarifying, and demonstrating along the way.
Also available in: Japanese  
Articles 01 Jul 2000
Common threads: POSIX threads explained, Part 2
POSIX threads are a great way to increase the responsiveness and performance of your code. In this second article of a three-part series, Daniel Robbins shows you how to protect the integrity of shared data structures in your threaded code by using nifty little things called mutexes.
Also available in: Japanese  
Articles 01 Aug 2000
Charming Python: Using state machines
State machines, in a theoretical sense, underlie almost everything related to computers and programming. And it also turns out that state machines, in a practical sense, can help solve many ordinary problems (especially for Python programmers). In this article, David Mertz discusses some practical examples of when and how to code a state machine in Python.
Also available in: Japanese  
Articles 01 Aug 2000
Charming Python: Text processing in Python
Along with several other popular scripting languages, Python is an excellent tool for scanning and manipulating textual data. This article summarizes Python's text processing facilities for the programmer new to Python. The article explains some general concepts of regular expressions and offers advice on when to use (or not use) regular expressions while processing text.
Also available in: Russian   Japanese  
Articles 01 Sep 2000
Common threads: Sed by example, Part 1
In this series of articles, Daniel Robbins will show you how to use the very powerful (but often forgotten) UNIX stream editor, sed. Sed is an ideal tool for batch-editing files or for creating shell scripts to modify existing files in powerful ways.
Also available in: Japanese  
Articles 01 Sep 2000
Charming Python: Curses programming
A certain class of Python applications works best with an interactive user interface without the overhead or complexity of a graphical environment. For interactive text-mode programs (under Linux/UNIX), for example, the ncurses library, wrapped in Python's standard curses module, is just what you need. In this article, David Mertz discusses the use of curses in Python. He illustrates the curses environment using sample source code from a front-end to the Txt2Html program.
Also available in: Japanese  
Articles 01 Sep 2000
Tip: Prompt magic
Why stick with the standard boring shell prompt when you can easily make it colorful and more informative? In this tip, Daniel Robbins will show you how to get your shell prompt just the way you like it, as well as how to dynamically update your X terminal's title bar.
Also available in: Japanese   Portuguese  
Articles 01 Sep 2000
Common threads: POSIX threads explained, Part 3
In this article, the last of a three-part series on POSIX threads, Daniel takes a good look at how to use condition variables. Condition variables are POSIX thread structures that allow you to "wake up" threads when certain conditions are met. You can think of them as a thread-safe form of signalling. Daniel wraps up the article by using all that you've learned so far to implement a multi-threaded work crew application.
Also available in: Japanese  
Articles 01 Sep 2000
Common threads: Sed by example, Part 2
Sed is a very powerful and compact text stream editor. In this article, the second in the series, Daniel shows you how to use sed to perform string substitution; create larger sed scripts; and use sed's append, insert, and change line commands.
Also available in: Japanese  
Articles 01 Oct 2000
Common threads: Sed by example, Part 3
In this conclusion of the sed series, Daniel Robbins gives you a true taste of the power of sed. After introducing a handful of essential sed scripts, he'll demonstrate some radical sed scripting by converting a Quicken .QIF file into a text-readable format. This conversion script is not only functional, it also serves as an excellent example of sed scripting power.
Also available in: Japanese  
Articles 01 Nov 2000
Cultured Perl: Debugging Perl with ease
Teodor Zlatanov walks you through both the built-in Perl debugger and CPAN's Devel::ptkdb. The Perl debugger is powerful but frustrating to navigate. CPAN's Devel::ptkdb, on the other hand, works wonders by simplifying code debugging and thereby saving hours of your precious time. In his discussion Zlatanov concentrates on explaining debugging methods and general concepts rather than looking at specific tools.
Also available in: Japanese  
Articles 01 Nov 2000
Charming Python: TK programming in Python
David Mertz introduces TK and the Tkinter wrapper (Python's GUI library) with source code samples accompanied by detailed running commentary. To make life easy, he illustrates his examples with the GUI port of the Txt2Html front-end that he's used in many of his earlier articles. He assumes, of course, that you follow his column regularly. :)
Articles 01 Dec 2000
Common threads: Awk by example, Part 2: Records, loops, and arrays
In this sequel to his previous Intro to awk, Daniel Robbins continues to explore awk, a great language with a strange name.
Also available in: Japanese  
Articles 01 Jan 2001
Cyrillic in Unicode
In this article, Thomas Burger describes the Cyrillic script fonts and the various methods for representating them in Linux, including UTF-8. He provides instructions for setting up the font support and installation, and describes how it is supported in applications. He also supports his claim that the use of UTF-8 Cyrillic script fonts will make Linux the first truly international operating system.
Also available in: Japanese  
Articles 01 Jan 2001
Linux software debugging with GDB
Most flavours of Linux come with the GNU debugger, or gdb to the shell. Gdb lets you see the internal structure of a program, print out variable values, set breakpoints and single step through source code. It makes an extremely powerful tool for fixing problems in program code. In this article I'll try to show how cool and useful gdb is.
Articles 01 Feb 2001
Charming Python: Updating your Python reading list
In little more than a year, the availability of material for learning and programming in Python has gone from a thin selection of books to the current forest of dead trees. Some books are general introductions to the Python language, while others specialize in particular tasks. Even within the 'general' category, level and focus differ considerably. This column gives David's impressions and recommendations on eight of the best known books about Python.
Articles 01 Feb 2001
Setting up a Local Area Network
This article describes how to build a Local Area Network (LAN) consisting of two or more computers running the Red Hat Linux operating system. The article begins with the basics: an overview of the TCP/IP (Transmission Control Protocol/Internet protocol) suite, and an explanation of assigning IP addresses in a LAN. Then the article covers the LAN hardware and configuration using a tool called LinuxConf in the Red Hat Linux operating system environment. Lastly, the article walks you through the critical steps of testing and troubleshooting your LAN.
Also available in: Japanese  
Articles 01 Feb 2001
Common threads: Learning Linux LVM, Part 1
In this article, Daniel introduces you to the concepts behind Linux LVM (Logical Volume Management) and shows you how to get the latest kernel patches and tools installed on your system. LVM allows you to create logical volumes out of the physical storage resources on your machine. However, unlike physical volumes, the logical volumes can be expanded 0and shrunk while the system is still running, providing Linux system administrators with the storage flexibility that they've until now only dreamed of.
Also available in: Japanese  
Articles 01 Mar 2001
Cultured Perl: A programmer's Linux-oriented setup
After customizing tcsh, Enlightenment, Eterm, and Emacs for a Java and Perl-oriented programming environment, Teodor shows us the configuration of his desktop in Linux. It is optimized for a Java and Perl programming setup, but doubtless other programmers will find many useful tips.
Articles 01 Mar 2001
Inline assembly for x86 in Linux
Bharata B. Rao offers a guide to the overall use and structure of inline assembly for x86 on the Linux platform. He covers the basics of inline assembly and its various usages, gives some basic inline assembly coding guidelines, and explains the instances of inline assembly code in the Linux kernel.
Also available in: Japanese  
Articles 01 Mar 2001
Using Bash shell scripts for function testing
Function testing is a critical part of software development -- and Bash, which is already loaded in Linux and ready to go, can help you do it quickly and easily. In this article, Angel Rivera explains how to use Bash shell scripts to perform function testing of Linux applications that use line commands. The scripts rely on the return code of the line commands, so you will not be able to use this approach for GUI applications.
Also available in: Japanese  
Articles 01 Mar 2001
Charming Python: Functional programming in Python, Part 1
Although users usually think of Python as a procedural and object-oriented language, it actually contains everything you need for a completely functional approach to programming. This article discusses general concepts of functional programming, and illustrates ways of implementing functional techniques in Python.
Also available in: Russian   Japanese  
Articles 01 Mar 2001
Common threads: Awk by example, Part 3: String functions and ... checkbooks?
In this conclusion to the awk series, Daniel introduces you to awk's important string functions, and then shows you how to write a complete checkbook-balancing program from scratch. Along the way, you'll learn how to write your own functions and use awk's multidimensional arrays. By the end of this article, you'll have even more awk experience, allowing you to create more powerful scripts.
Also available in: Japanese  
Articles 01 Apr 2001
Charming Python: Functional programming in Python, Part 2
This column continues David's introduction to functional programming (FP) in Python. Enjoy this introduction to different paradigms of program problem-solving, where David demonstrates several intermediate and advanced FP concepts.
Also available in: Russian   Japanese  
Articles 01 Apr 2001
Shared objects for the object disoriented!
Ashish Bansal tells you how to write dynamically loadable libraries and suggests tools you want to use in the process. He reviews the compilation process and naming conventions, and then walks you through writing, compiling, and installing a shared library.
Also available in: Japanese  
Articles 01 Apr 2001
Charming Python: Developing a full-text indexer in Python
As the volume of information grows, effective means of locating specific information become ever more crucial. This column discusses the field of full-text indexing, with a focus on the author's public-domain indexer module.
Also available in: Japanese  
Articles 01 May 2001
Creating dynamic Web sites with PHP and MySQL
This tutorial shows you how to create a dynamic Web site using PHP and MySQL. You learn how dynamic sites work and how they serve the content. After reading this tutorial, you will be ready to serve your own dynamic content from your own site.
Tutorial 15 May 2001
Charming Python: Functional programming in Python, Part 3
David Mertz illustrates currying and other higher-order functions contained in the Xoltar Toolkit.
Also available in: Japanese  
Articles 01 Jun 2001
Common threads: Advanced filesystem implementor's guide, Part 1
With the 2.4 release of Linux come a host of new filesystem possibilities, including ReiserFS, XFS, GFS and others. Sure, these filesystems sound cool, but what exactly can they do, what are they good at and exactly how do you go about safely using them in a Linux production environment? In the advanced filesystem implementor's guide, Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. Along the way, he shares valuable practical implementation advice, performance information and important technical notes so that your new filesystem experience is as pleasant as possible. In this, the first article in the series, he explains the benefits of journalling and ReiserFS.
Articles 01 Jun 2001
An introduction to neural networks
Neural nets may be the future of computing. A good way to understand them is with a puzzle that neural nets can be used to solve. Suppose that you are given 500 characters of code that you know to be C, C++, Java, or Python. Now, construct a program that identifies the code's language. One solution is to construct a neural net that learns to identify these languages. This article discusses the basic features of neural nets and approaches to constructing them so you can apply them in your own coding.
Also available in: Japanese  
Articles 01 Jul 2001
Common threads: OpenSSH key management, Part 1
In this series, you'll learn how RSA and DSA authentication work, and see how to set up passwordless authentication the right way. In the first article of the series, Daniel Robbins focuses on introducing the RSA and DSA authentication protocols and showing you how to get them working over the network.
Also available in: Japanese  
Articles 01 Jul 2001
Embedded Linux applications: An overview
After a survey of Embedded Linux applications and their environments, Darrick Addison gives you step-by-step instructions for setting up a suitable hardware and software environment for developing those applications.
Also available in: Japanese  
Articles 01 Aug 2001
Common threads: Advanced filesystem implementor's guide, Part 2
With the 2.4 release of Linux comes a host of new filesystem possibilities, including ReiserFS, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment?
Articles 01 Aug 2001
Charming Python: pydoc and distutils modules
The introduction of several modules and tools in recent Python versions has improved Python, not so much as a language, but as a tool. Author David Mertz reviews these modules that make the job of Python developers substantially easier by improving the documentation and distribution of Python modules and packages.
Also available in: Japanese  
Articles 01 Aug 2001
Linux Unicode programming
A multi-byte character representation system for computers, Unicode provides for the encoding and exchanging of all of the text of the world's languages. This article explains the importance of international language support and the concepts of designing and incorporating Unicode support in Linux applications.
Articles 01 Aug 2001
Backing up your Linux machines
Cover your back in the worst-case scenario with the techniques in this tutorial. Even new, high-quality hard drives will occasionally fail. Regular system backups are essential, especially for busy developers who make continual improvements to their code. This tutorial shows you how to protect yourself from losing huge amounts of critical data.
Tutorials 08 Aug 2001
Linux and USS: Heavy hitters for zSeries
You don't have to pick your weapon -- Linux or z/OS -- you can use both. Workloads big and small don't stand a chance.
Articles 27 Aug 2001
Linux on iSeries
IBM eServer iSeries is the integrated business server. iSeries is reliable, scalable, and recognized as one of the most flexible, easy to use systems in the industry with the ability to run multiple environments and quickly deploy applications. These attributes position iSeries as one of the best platforms to manage the complexity and cost of e-business enablement. The key characteristics of Linux on iSeries - new generation of applications, integration, and consolidation - strongly support the IBM eServer initiatives and can result in measurable customer benefits for the deployment of e-business solutions.
Articles 27 Aug 2001
Common threads: OpenSSH key management, Part 2
This article introduces ssh-agent (a private key cache) and keychain, a special bash script designed to make key-based authentication incredibly convenient and flexible.
Also available in: Japanese  
Articles 01 Sep 2001
Charming Python: Iterators and simple generators
Python 2.2 introduces a new construct accompanied by a new keyword. The construct is generators; the keyword is yield. Generators make possible several new, powerful, and expressive programming idioms, but are also a little bit hard to get one's mind around at first glance. In this article, David provides a gentle introduction to generators, and also to the related topic of iterators.
Also available in: Japanese  
Articles 01 Sep 2001
Common threads: Advanced filesystem implementor's guide, Part 3
With the 2.4 release of Linux come a host of new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel takes a look at tmpfs, a VM-based filesystem, and introduces you to the new possibilities available with 2.4's "bind"-mounting abilities.
Articles 01 Sep 2001
Introduction to Quantum Computing
This article, which builds on a basic knowledge of the mathematics of vectors, gives an introduction to quantum computing.
Articles 01 Sep 2001
Beginning Haskell
This tutorial is for programmers of imperative languages wanting to learn about functional programming in the language Haskell. If you have programmed in languages such as C, Pascal, Fortran, C++, Java, Cobol, Ada, Perl, TCL, REXX, JavaScript, Visual Basic, or many others, you have been using an imperative paradigm. This tutorial provides a gentle introduction to the paradigm of functional programming, with specific illustrations in the Haskell 98 language.
Tutorial 27 Sep 2001
Common threads: Advanced filesystem implementor's guide, Part 5
With the 2.4 release of Linux come a host of new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel guides you through the process of preparing your system for devfs. By the end of this article, you'll be ready to enable devfs on your system; Daniel will cover final devfs setup in detail in the next article.
Articles 01 Oct 2001
Writing DLLs for Linux apps
Plugins and DLLs are often a great way to add functionality without writing a whole new application. In Linux, plugins and DLLs are implemented as dynamic libraries. e-business consultant and architect Allen Wilson introduces dynamic libraries and shows you how to use them to change an application after the app is running.
Articles 01 Oct 2001
Common threads: Advanced filesystem implementor's guide, Part 6
With the 2.4 release of Linux come a host of new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel shows you how to use an init wrapper to (finally!) convert your system to "devfs mode".
Articles 01 Oct 2001
Common threads: Advanced filesystem implementor's guide, Part 7
With the 2.4 release of Linux come a host of new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel takes a look at ext3, a new improved version of ext2 with journaling capabilities.
Also available in: Japanese  
Articles 01 Nov 2001
Common threads: Advanced filesystem implementor's guide, Part 8
With the 2.4 release of Linux come many new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel continues his look at ext3, a new improved version of ext2 with journaling capabilities. He reveals all the inside information on ext3, and demonstrates some shockingly good ext3 data=journal interactive performance numbers.
Also available in: Japanese  
Articles 01 Dec 2001
Sharing computers on a Linux (or heterogeneous) network, Part 1
In the first of this pair of articles, David compares and contrasts Secure shell (SSH) and Virtual Network Computing (VNC), two technologies that allow a user at one workstation to run an application that lives on another computer. (He does not cover file-and-print sharing or "Internet" services like httpd, ftpd, smtp, or nntpd, even though these technologies also usefully "share" something about the computers in question.) He does, however, give tips on installing and configuring SSH and VNC, and comments on tool stability, choices, and licensing status.
Articles 01 Dec 2001
Understanding Linux configuration files
This article explains configuration files on a Linux system that control user permissions, system applications, daemons, services, and other administrative tasks in a multi-user, multi-tasking environment. These tasks include managing user accounts, allocating disk quotas, managing e-mails and newsgroups, and configuring kernel parameters. This article also classifies the config files present on a Red Hat Linux system based on their usage and the services they affect.
Articles 01 Dec 2001
Common threads: Advanced filesystem implementor's guide, Part 9
With the 2.4 release of Linux come many new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel introduces XFS, SGI's free enterprise-class filesystem now available for Linux.
Also available in: Japanese  
Articles 01 Jan 2002
Charming Python: Parsing with the SimpleParse module
Many parsing tools have been written for Python. This column discusses a high-level parsing language built on top of Python.
Also available in: Japanese  
Articles 01 Jan 2002
Common threads: OpenSSH key management, Part 3
In this third article in a series, Daniel Robbins shows you how to take advantage of OpenSSH agent connection forwarding to enhance security. He also shares recent improvements to the keychain shell script.
Also available in: Japanese  
Articles 01 Feb 2002
Get the latest innovations for the eServer iSeries
The iSeries servers are bigger, better, and less expensive than ever. One model even lets you support dynamic logical partitioning and manage Linux, OS/400, and Windows servers on one machine. Now you can do midrange server consolidation with the greatest reliability and at the lowest total cost of ownership.
Articles 01 Feb 2002
Technical guide for porting applications from Solaris to Linux, Version 1.0
Solaris and Linux are loosely related to Unix, so they ought to be a lot alike, right? Not so - the differences pose a great many "gotchas." Let this technical porting guide show you the ropes for porting your Solaris application to the Linux platform.
Articles 12 Feb 2002
Linux system development on an embedded device
Especially if you're just starting out in embedded development, the wealth of available bootloaders, scaled-down distributions, filesystems, and GUIs can seem overwhelming. But this wealth of options is actually a boon, allowing you to tailor your development or user environment exactly to your needs. This overview of embedded development on Linux will help you make sense of it all.
Also available in: Japanese  
Articles 01 Mar 2002
Common threads: Advanced filesystem implementor's guide, Part 10
With the 2.4 release of Linux come many new filesystem possibilities, including Reiserfs, XFS, GFS, and others. These filesystems sound cool, but what exactly can they do, what are they good at, and exactly how do you go about safely using them in a production Linux environment? Daniel Robbins answers these questions by showing you how to set up these new advanced filesystems under Linux 2.4. In this installment, Daniel shows you how to get XFS up and running on your system and explores some of XFS's more advanced features.
Also available in: Japanese  
Articles 01 Apr 2002
Charming Python: Implementing "weightless threads" with Python generators
David Mertz introduces weightless threads. Similar to Stackless Python microthreads, but using standard Python 2.2 -- they allow for extremely large numbers of cooperating processes with virtually no overhead.
Also available in: Russian   Japanese  
Articles 01 Jun 2002
GNOMEnclature: Getting ready for GNOME 2, Part 2
In this second installment of the newly relaunched GNOMEnclature column, relative GNOME newbie and Common threads columnist Daniel Robbins takes a look at the new Glib object system from a new GNOME developer's perspective. By the end of this article, you'll know enough about GNOME to decide if you want to try it for yourself (even if you are a stalwart C fan).
Articles 01 Jun 2002
Charming Python: Generator-based state machines
Introduced in Python 2.2, simple generators may be used to simplify state machines and to simulate coroutines. Coroutines are an exotic flow mechanism that few widely used languages -- not even non-Stackless Python -- allow. Python's new generators, however, get you almost all the way to coroutines, and the extra few steps can be faked. In this installment of Charming Python, David Mertz explains all the relevant concepts through illustrative code samples.
Also available in: Russian   Japanese  
Articles 01 Jul 2002
PowerPC assembly
Assembly language is not widely known among the programming community these days, and PowerPC assembly is even more exotic. Hollis Blanchard presents an overview of assembly language from a PowerPC perspective and contrasts examples for three architectures: ia32, ppc, and ppc64.
Also available in: Japanese  
Articles 01 Jul 2002
Matrix libraries for C and C++
This article presents some of the currently available options for open source C/C++ matrix libraries employable within a Linux environment. Particular libraries discussed are Meschach, which provides routines for operating on matrices and vectors for projects coded in C, the Cooperware Matrix (CwMtx) for C++ coding, and Blitz, which provides an n-dimensional array class for C++ with integral, floating, complex, and well-behaved, user-defined types. Andrew Blais, who has contributed several articles to developerWorks, is a researcher and writer for Gnosis, Inc., and does work in neural nets.
Also available in: Japanese  
Articles 01 Jul 2002
Using HTML forms with PHP
One of the advantages of PHP has always been the ability to easily manipulate information submitted by the user through an HTML form. In fact, PHP version 4.1 adds several new ways to access this information and effectively removes the one most commonly used in previous versions. This article looks at different ways to use the information submitted on an HTML form, in both older and more recent versions of PHP. It starts out by looking at individual values and builds to a page that can generically access any available form values.
Articles 01 Aug 2002
Charming Python: Parsing with the Spark module
Spark is a powerful and general parser/compiler framework written in Python. In some respects, Spark offers more than SimpleParse or other Python parsers. Being pure Python, however, it is also slower. In this article, David discusses the Spark module, with code samples, an explanation of its usage, and suggestions for its areas of application.
Also available in: Japanese  
Articles 01 Aug 2002
Charming Python: Make Python run as fast as C with Psyco
With only a tiny amount of extra programming, Python programmers can often increase code speed by orders of magnitude with the help of an external module known as the Python Specializing Compiler (or Psyco for short). David Mertz looks at what Psyco is, and tests it in some applications.
Also available in: Russian   Japanese  
Articles 01 Oct 2002
Tip: Concatenating files with cat
In our continuing series on GNU text utilities, Jacek Artymiak takes a look at cat -- the command that UNIX lovers love to love, and UNIX haters love to hate.
Also available in: Japanese  
Articles 01 Oct 2002
Developing LSB-certified applications
The Linux Standard Base is a big step toward ensuring binary compatibility among Linux applications, and it should greatly reduce the amount of testing and validation required for operation on multiple platforms. In five straightforward steps, George Kraft, chairman of the Linux Standard Base, shows you how to build an LSB-certified application.
Articles 01 Oct 2002
Python persistence management
Persistence is all about keeping objects around, even between executions of a program. In this article you'll get a general understanding of various persistence mechanisms for Python objects, from relational databases to Python pickles and beyond. You'll also take an in-depth look at Python's object serialization capabilities.
Also available in: Russian   Japanese  
Articles 01 Nov 2002
Guide to Python introspection
Introspection reveals useful information about your program's objects. Python, a dynamic, object-oriented programming language, provides tremendous introspection support. This article showcases many of its capabilities, from the most basic forms of help to the more advanced forms of inquisition.
Also available in: Russian   Japanese  
Articles 01 Dec 2002
Charming Python: SimPy simplifies complex models
The stochastic behavior of real-world systems is often difficult to understand or predict. Sometimes it is possible rigorously to demonstrate statistical properties of systems, such as average, worst-case, and best-case performance features. But at other times, pitfalls of concrete designs only become evident when you actually run (or simulate) a system. In this article, David takes a look at SimPy, a Python package that allows you to very easily create models of discrete event systems.
Also available in: Japanese  
Articles 01 Dec 2002
Hyper-Threading speeds Linux
The Intel Xeon processor introduces a new technology called Hyper-Threading (HT) that, to the operating system, makes a single processor behave like two logical processors. When enabled, the technology allows the processor to execute multiple threads simultaneously, in parallel within each processor, which can yield significant performance improvement. We set out to quantify just how much improvement you can expect to see.
Also available in: Japanese  
Articles 01 Jan 2003
Server clinic: Xmingwin for cross-generating apps
Xmingwin makes it practical to generate Windows programs from a Linux server. This column gives a recipe for setting up Xmingwin, and outlines the most important reasons for doing so.
Articles 30 Jan 2003
Charming Python: Create declarative mini-languages
The object orientation and transparent introspective capabilities of Python allow you to easily create declarative mini-languages for programming tasks. In this installment, David looks not so much at using Python to interpret or translate other specialized languages (although that is possible), but rather the ways that Python code itself can be helpfully restricted to a set of declarative elements. He'll show you how developers can use declarative techniques to state application requirements in a concise and clear way, while letting the behind-the-scenes framework do the heavy work.
Also available in: Russian   Japanese  
Articles 27 Feb 2003
Cultured Perl: One-liners 102
From printing a range of lines to listing a file's contents in reverse order, Ted shows how to do more with less using these succinct, one-line Perl scripts.
Also available in: Japanese  
Articles 12 Mar 2003
Charming Python: Multiple dispatch
Object-oriented programming gains much of its versatility through polymorphism: objects of different kinds can behave in similar ways, given the right contexts. But most OOP programming is single dispatch; that is, just one designated object determines which code path is taken. Conceptually, a more general technique is to allow all the arguments to a function/method to determine its specialization. This article presents an implementation of multiple dispatch in Python, and shows examples where this makes for better programs."
Also available in: Russian   Japanese  
Articles 20 Mar 2003
Tip: Remove duplicate lines with uniq
Duplicate lines don't often cause a problem, but sometimes they really do. And when they do, there's little need to spend an afternoon working up a filter for them, when the uniq command is at your very fingertips. Find out how it can save you time and headaches.
Also available in: Japanese  
Articles 03 Apr 2003
Server clinic: Put virtual filesystems to work
A virtual filesystem (VFS) is an abstraction with surprisingly productive uses. Several popular languages now support VFS constructs, and Cameron Laird shows you what they are good for.
Articles 29 Apr 2003
Administer Linux on the fly
The /proc filesystem is one of Linux's great features, and this article gives you a thorough grounding in some of its most useful aspects. With it, you can administer many details of the operating system without ever having to shut down and reboot the machine, which is a boon for those who need to keep their systems as available as possible.
Also available in: Russian   Japanese  
Articles 14 May 2003
Build a Linux test network
This tutorial shows how to combine Samba and GRUB to build a compact, highly adaptable, cross-platform test network, capable of booting and networking a large number of operating systems on a small number of machines. Though Samba and GRUB can manage many different operating systems, this tutorial focuses on Linux and Windows.
Tutorial 19 May 2003
Linux on POWER application performance optimization
The path to enablement of IA32 code on Linux PPC travels through one of two compiler sets, the GNU Compiler Collection (GCC) and the Visual Age Compilers. This article reviews some tips for porting 32-bit software from Linux IA32 to Linux PowerPC with both of these compiler sets.
Articles 06 Jun 2003
Charming Python: Using combinatorial functions in the itertools module
Python 2.2 introduced simple generators to the Python language and reconceived standard loops in terms of underlying iterators. With Python 2.3, generators become standard (no need for _future_, and the new module itertools is introduced to work flexibly with iterators. The itertools module is essentially a set of combinatorial higher-order functions, but ones that work with lazy iterators rather than with finite lists. In this installment, David explores the new module, and gives you a sense of the new expressive power available with combinatorial iterators.
Also available in: Russian   Japanese  
Articles 12 Jun 2003
Cultured Perl: Use IMAP with Perl
Ted introduces you to accessing IMAP with the Mail::IMAPClient CPAN module. Using Mail::IMAPClient, he built the ifrom utility as an alternative to other IMAP and POP3 mail checkers. ifrom has its own unique advantages that can be used for listing, printing, and moving messages on an IMAP server, and backing up IMAP mail.
Also available in: Japanese  
Articles 19 Jun 2003
Network programming with the Twisted framework, Part 1
Twisted is an increasingly popular pure-Python framework for programming network services and applications. While there are a large number of loosely coupled modular components within Twisted, a central concept to the framework is the idea of non-blocking asynchronous servers. In this article, David introduces you to this style of programming -- a novel one for developers accustomed to threading or forking servers, but one capable of great efficiency under heavy loads.
Articles 25 Jun 2003
Server clinic: Connect securely with ssh
You'll undoubtedly want to use ssh to work on your servers from remote sites, but it takes an assortment of tricks to keep progress rolling smoothly.
Also available in: Japanese  
Articles 10 Jul 2003
Network programming with the Twisted framework, Part 2
In the first installment in this series on Twisted, David introduced asynchronous server programming. While a Web server is, in a sense, just another network service, as David shows in this installment, Twisted provides a number of higher-level techniques for writing Web services.
Articles 15 Jul 2003
Graphics from the command line
There's nothing quite like command-line tools for handling large batches of tasks, and image manipulations are no exception. Web developers and administrators will appreciate the ability to handle large numbers of files easily, either at the command line or in scripts. Programmer Michael Still presents the ImageMagick suite, a Linux toolkit for sizing, rotating, converting, and otherwise manipulating images, in a huge number of formats, whether one or a hundred at a time.
Also available in: Japanese  
Articles 16 Jul 2003
Building a wireless access point on Linux
When the ability to write and modify your own management software is the main objective, a custom-built wireless access point is the way to go. Take a look at what's involved in building a wireless bridge using Linux, including software and hardware considerations.
Also available in: Japanese  
Articles 22 Jul 2003
Server clinic: R handy for crunching data
R is sophisticated open-source software for managing statistical calculations. It's easy enough to use that it can benefit you even if you need only a fraction of its capabilities.
Also available in: Japanese  
Articles 30 Jul 2003
Network programming with the Twisted framework, Part 3
In the previous installment of this series, David looked at some higher-level techniques for writing Web services, including serving dynamic pages using the .rpy extension. In this article, he moves on to look at dynamic Web serving, and how to generate dynamic Web pages using the Woven application for templating pages.
Articles 07 Aug 2003
Installing Tivoli Access Manager on Linux
Linux is quickly becoming a dominant platform for e-business and enterprise applications. The recent release of IBM Tivoli Access Manager 4.1 Fixpack 2 recognized this fact by adding support for Linux on the Intel platform. In this tutorial, you'll learn how to install and configure IBM Tivoli Access Manager 4.1 on Linux. You'll also walk through some simple steps that will test your installation, including the creation of a WebSEAL junction.
Tutorial 08 Aug 2003
Network programming with the Twisted framework, Part 4
In this final installment of his series on Twisted, David looks at specialized protocols and servers contained in the Twisted package, with a focus on secure connections.
Articles 11 Sep 2003
Deploying Linux Solutions on IBM iSeries and pSeries Servers
POWER-based servers from IBM, the pSeries and iSeries servers, run Linux as well as their respective traditional operating systems (AIX and i5/OS). Linux is available both as the primary operating system on pSeries, and also as a logical partition on the POWER4 and POWER5 pSeries and iSeries servers. Linux applications such as the desktop environments, compilers, debuggers, and many other client and server applications are available for the POWER-based platforms. Outstanding performance of IBM’s servers coupled with comprehensive services make make Linux on iSeries and pSeries servers a winning choice. This article gives an overview of deploying your solution on Linux on POWER-based servers.
Articles 30 Sep 2003
Smashing performance with OProfile
Analyzing the performance of the Linux operating system and application code can be difficult due to unexpected interactions between the hardware and the software, but profiling is one way you can identify such performance problems. This article looks at OProfile, a profiling tool for Linux that will be included in the upcoming stable kernel.
Articles 16 Oct 2003
Secure programmer: Validating input
This article shows how to validate input -- one of the first lines of defense in any secure program.
Articles 23 Oct 2003
1 - 100 of 687 results | Next
Show Summaries | Hide Summaries