Skip to main content

Skip over site navigation to main content

developerWorks  >   Open source  >   Technical library  >  

Technical library view  RSS for Open source

developerWorks
 Related links:    Redbooks

Filter your search and/or enter a keyword. If you don't filter your search or enter a keyword, the search results will default to all results.

 
 
 
  1 - 1270 of 1297 results    Next   Show All   Hide Summaries
Title   Type   Date  

Table that contains the results that meet the search criteria.

Git for Subversion users, Part 2: Taking control
Git offers Linux developers a number of advantages over Subversion for software version control, so developers working collaboratively owe it to themselves get familiar with the basic concepts behind it. In this installment, Ted dissects branching and merging in both Git and Subversion, introduces "git bisect" for bisecting changes, and shows how to resolve merge conflicts.
Articles 25 Nov 2009  
 
Using Simple for XML serialization
Java developers have a variety of choices when it comes to serializing and deserializing Extensible Markup Language (XML) objects. Simple is one such example, and it offers a number of advantages over its competitors. In this article, explore an introductory overview of how to use Simple within an XML communication system.
Articles 24 Nov 2009  
 
Charming Python: Easy Web data collection with mechanize and Beautiful Soup
For collecting data from Web pages, the mechanize library automates scraping and interaction with Web sites. Mechanize lets you fill in forms and set and save cookies, and it offers miscellaneous other tools to make a Python script look like a genuine Web browser to an interactive Web site. A frequently used companion tool called Beautiful Soup helps a Python program makes sense of the messy "almost-HTML" that Web sites tend to contain.
Articles 24 Nov 2009  
 
Cultured Perl: Flickr, a business's bst frnd
Flickr isn't just for photo sharing and social networking; it's a legitimate business tool. Learn how Perl programmers can use the CPAN Chart modules to create charts and graphs, and the Flickr::Upload module to upload the charts to Flickr.
Articles 24 Nov 2009  
 
The Equinox p2 provisioning framework
With the Ganymede release, the Eclipse Update Manager has been replaced by the Equinox/p2 provisioning framework. Author Nathan Good gives a high-level overview of the framework, and discover its benefits for users and update site builders.
Articles 24 Nov 2009  
 
Build a Twitter Web application
Learn how to create a Twitter-enabled Web 2.0-style application using Django, jQuery, and the python-twitter wrapper that you can easily use and plug in to your own Django project. With this application, you'll be able to see recent tweets, post updates, and show your friends and followers.
Articles 24 Nov 2009  
 
Explore refactoring functions in Eclipse JDT
This article describes the various refactorings available in Eclipse Java Development Tools (JDT), including what each refactoring does, when to use it, and how to use it. It also explores the refactoring scripts functionality in Eclipse that allows library developers to share refactorings of their code with their clients.
Articles 24 Nov 2009  
 
Total security in a PostgreSQL database
Database security is the single biggest concern with today's Web-based applications. Without control, you risk exposing sensitive information about your company or, worse yet, your valuable customers. In this article, learn about security measures you can take to protect your PostgreSQL database.
Articles 17 Nov 2009  
 
Building OSGi applications with the Blueprint Container specification
The OSGi framework is becoming increasingly popular. It provides great mechanisms for developing modular and dynamic applications. The recent OSGi Service Platform Release 4 V4.2 specifications introduced the Blueprint Container specification. In this article, learn how the Blueprint Container provides a simple programming model for creating dynamic applications in the OSGi environment. Numerous examples help get you started with the Blueprint XML file and the component XML definitions.
Articles 17 Nov 2009  
 
A tiny cloud in Android
Cloud computing minimally requires two components: the client software that runs on the portable device and the server software that normally runs on a network server. This article proposes creating an Android-based service that emulates a network server that enhances the value of the local machine in unique and unexpected ways. Put a tiny cloud in your Android handset and experience the usefulness of a local Web server.
Articles 17 Nov 2009  
 
Use Technology Explorer for IBM DB2 to manage user and group authentication for DB2 for Linux, UNIX, and Windows
Learn how to use the Technology Explorer (TE) for IBM DB2(R) to control user and group authentication to DB2 through the use of a security plug-in called db2auth. The plug-in uses a DB2 database for storing authentication information instead of an external authentication repository, such as an operating system or Kerberos. The plug-in allows for a smoother migration from other database software such as MySQL, which also stores authentication information within the database. This article also describes how the support in TE for the db2auth plug-in was implemented. [2009 Nov 13: Updated to show Linux support. --Ed.]
Articles 13 Nov 2009  
 
Validating XML in PHP
PHP developers commonly require the services of an Extensible Markup Language (XML) parser in their code. Along these lines, they frequently find it necessary to validate XML input. Fortunately, you can easily accomplish this in PHP. This article shows you how to validate XML documents within PHP and determine the cause of validation failures.
Articles 10 Nov 2009  
 
A performance benchmark method for comparing open source Java application servers
Various businesses are increasingly using open source Java application servers. There are lots of them available to choose from, but how do you make the right decision? In this article, learn about a performance benchmark method for Java application servers, especially Java EE 5 compliant servers, that will help you choose the right solution.
Articles 10 Nov 2009  
 
Successful open source communities
Communities are the backbone of open source software development, and a successful community is the de-facto metric for a successful project. Learn how to build a successful open source community around a viable project.
Articles 10 Nov 2009  
 
Use Sun SPOTs as your build canary
Find out how to turn a new, open source wireless device -- Sun's Small Programmable Object Technology (SPOT) -- into a highly visible indicator of the health of a Continuous Integration build. Craig Caulfield introduces you to Sun SPOTs and the SPOT SDK, then shows how to use SPOTs as an early-warning system for CruiseControl builds.
Articles 03 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 3: Using pureXML Web services to publish microblog entries to an HTML page
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter. In Part 1 of the series, you learned about Web Services and how they are enabled using DB2 pureXML as you created the microblog database and tested it. Part 2 tapped into Adobe Flex and ActionScript to create the user interface of your application. In this article, the final part of the series, you will learn how to use your pureXML Web Services to publish your microblog entries to an HTML page.
Articles 03 Nov 2009  
 
Building XQuery-powered applications with PHP and Zorba
Zorba is an open-source, robust, and standards-compliant XQuery processor. The Zorba extension in PHP provides an API to Zorba functions from within PHP, and thereby allows developers to add sophisticated XQuery processing to their PHP/XML applications. Examine the Zorba PHP API in detail, and how to use it for a variety of purposes.
Articles 03 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 2: Building the application user interface with Flex
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter. In Part 1 of the series, you learned about Web Services and how they are enabled using DB2 pureXML as you created the microblog database and tested it. In this article, Part 2 of the series, you will tap into Adobe Flex and ActionScript to create the user interface of the application.
Articles 03 Nov 2009  
 
Leveraging pureXML in a Flex microblogging application, Part 1: Enabling Web services with DB2 pureXML
The pureXML capabilities of IBM DB2 allow you to store XML natively in a database without modification, while Adobe Flex applications can read XML directly and populate Flex user interfaces. In this three-part article series, you will create a microblogging application that takes advantage of pureXML, Web services, and Adobe Flex; and even allows you to publish your microblogging updates on Twitter.
Articles 03 Nov 2009  
 
Java Web services: Introducing Metro
The Metro Web service stack provides a comprehensive solution for accessing and implementing Web services. It's based on the reference implementations of the JAXB 2.x and JAX-WS 2.x Java standards, with added components to support WS-* SOAP extension technologies and actual Web service deployment. This article continues Dennis Sosnoski's Java Web services column series with a look at the basic principles of Metro client and server development.
Articles 03 Nov 2009  
 
Patching in Eclipse Galileo
Eclipse Galileo includes new features for applying patches, including the ability to copy a patch to the clipboard and paste it directly into the Project Explorer. This article introduces this and provides an overview of the method for creating and applying patches, and includes an overview of the patch format used by Eclipse.
Articles 03 Nov 2009  
 
Introduction to the eSWT mobile extension, Part 2: Use advanced controls for your mobile applications
As mobile platforms become increasingly sophisticated, the demand for mobile computing will increase. In this "Introduction to the eSWT mobile extension" series, learn about the embedded Standard Widget Toolkit (eSWT). You can use eSWT to develop native-looking Java applications for a variety of mobile phones. In this article, learn how to use more of the mobile controls: MobileShell, SortedList, HyperLink, TextExtension, and TaskTip.
Articles 03 Nov 2009  
 
Using Spring and Hibernate with WebSphere Application Server
If you're considering using Spring or Hibernate with IBM WebSphere Application Server, this article explains how to configure these frameworks for various scenarios with WebSphere Application Server. This article is not an exhaustive review of either framework, but a critical reference to help you successfully implement such scenarios. (Updated for Spring Framework 2.5 and WebSphere Application Server V7.)
Articles 01 Nov 2009  
 
Create and implement an XPCOM component for the Firefox browser
Learn how to create, develop, and test a Cross-Platform Component Object Model (XPCOM) component that can be used by the Firefox browser as an extension of an application. Sample code provided with the example used in the article gives you a quick start for developing your component for Firefox.
Articles 27 Oct 2009  
 
Implement access control with Agavi
Agavi is an open-source, flexible, and scalable framework for application development. One of its key features is a full-featured API for user authentication and role-based access control. Examine this API in detail, and see how to add sophisticated application-level privilege management and manipulation to a Web application.
Articles 27 Oct 2009  
 
Joda-Time
No enterprise application can escape time. Applications need to know what time it is and what time it's going to be, and sometimes they must calculate the path between the two. Using the JDK to do this job can be painful and tedious. Enter Joda-Time, an easy-to-use open source date/time library for the Java platform. As you'll see in this article, Joda-Time eases the pain and tedium of manipulating dates and time.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 3: Add authentication and administrative functions with Agavi
Continue to build the Web Automobile Sales Platform by adding the ability to add, delete, and update the automobile records in Part 3 of a five-part series. You will also see how to separate user functions from administrative functions with authentication.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 4: Create an Agavi search engine with multiple output types including XML, RSS, or SOAP
Implement a simple search engine and add support for multiple output types such as XML, RSS, or SOAP for your sample Agavi program in Part 4. This five-part series is for the PHP developer interested in Agavi, a open-source, flexible, and scalable framework.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 5: Add paging, file uploads, and custom input validators to your Agavi application
This is the final article in a five-part series written for the PHP developer interested in learning about an open-source, flexible, and scalable framework called Agavi. You'll learn to support file uploads, store user data in sessions, integrate third-party libraries and create custom input validators for your Agavi application.
Articles 27 Oct 2009  
 
Introduction to MVC programming with Agavi, Part 2: Add forms and database support with Agavi and Doctrine
Work with the scalable, open-source Agavi framework to create an input form, use Doctrine to auto-generate the data models for the project, and integrate these models into the Agavi project in Part 2 of this five-part series.
Articles 27 Oct 2009  
 
Introduction to MVC Programming with Agavi, Part 1: Open a whole new world with Agavi
This is the first of a five-part series of articles written for the PHP developer interested in learning about an open-source, flexible, and scalable framework called Agavi. In this first article, you walk through the installation of the framework and the other required components, get an overview of Agavi and its functions, and create your first Web application.
Articles 27 Oct 2009  
 
Examine PHP V5.3.0 features under the microscope
As the popular PHP language continues to evolve, many new features enhance its object-oriented aspects. In this article, PHP V5.3 examples illustrate late static binding, namespace support, class method overloading, and variable parsing and heredoc support.
Articles 27 Oct 2009  
 
Eclipse and Amazon Web Service (AWS)
Learn how to use the Amazon Web Services toolkit for Eclipse. This demo shows you how to create a simple Java Web application, hello world, and deploy it to the cloud. Eclipse installed and setup. You will also need to have an Amazon account.
Demos 22 Oct 2009  
 
Configuring Kerberos authentication in WebSphere Application Server Community Edition
Kerberos authentication is not currently supported in WebSphere Application Server Community Edition. In this article, we highlight how you can leverage the IBM Java Platform provided Kerberos implementation to perform Kerberos authentication in WebSphere Application Server Community Edition.
Articles 21 Oct 2009  
 
The busy Java developer's guide to Scala: Updating Twitter, with Scitter
The Scitter client library is almost ready to be released into the wild, but it needs a few finishing touches. In this installment of The busy Java developer's guide to Scala, Ted Neward shows you how to incorporate update, show, and delete functionality into the Scala-based library for accessing Twitter.
Articles 20 Oct 2009  
 
Web application security: Testing for vulnerabilities
The increasing reliance on data-driven Web sites has caused an incline in the number of attacks launched against them. As a developer, understanding how a site can be attacked is paramount to making it secure. Discover some of the more common attacks, and learn about the tools you can use to spot them.
Articles 20 Oct 2009  
 
Using the SBLIM CIM Client efficiently
We all know that templates can save time. In this article, learn how to produce a code skeleton based on predefined templates using the SBLIM Common Information Model (CIM) Client library. With CIM, most client-side applications serve as the CIM clients. They use standard CIM XML-over-HTTP protocol for communication with the CIM server. It's inconvenient to encode and decode CIM-XML statements directly. Fortunately, the SBLIM CIM Client gives you standard APIs that can facilitate CIM client development. This article also provides tips on how to add code to your skeleton produced from the templates.
Articles 20 Oct 2009  
 
Virtual appliances and the Open Virtualization Format
Not only has virtualization advanced the state of the art in maximizing server efficiency, it has also opened the door to new technologies that were not possible before. One of these technologies is the virtual appliance, which fundamentally changes the way software is delivered, configured, and managed. But the power behind virtual appliances lies in the ability to freely share them among different hypervisors. Learn the ideas and benefits behind virtual appliances, and discover a standard solution for virtual appliance interoperability called the Open Virtualization Format.
Articles 20 Oct 2009  
 
The Simple Cloud API
The Simple Cloud API provides a common API to a variety of cloud services. A collaborative effort by Zend, GoGrid, IBM, Microsoft, Nirvanix and Rackspace, the API allows you to write portable code that can interoperate with multiple cloud vendors. Best of all, the API allows you to use services specific to a particular vendor as necessary.
Articles 20 Oct 2009  
 
High-performance Web development with Google Web Toolkit and Eclipse Galileo
By now, you have probably heard of Google Web Toolkit (GWT). You know that it lets you write your Web applications in the Java programming language that is compiled into JavaScript to run in Web browsers. This lets you be more productive by taking advantage of Java's static typing and great tools like Eclipse. You have may seen some of the useful and stylish widgets built on top of GWT. What you may not know is that GWT lets you create high-performance Web applications. In this article, we look at how you can use the Google Plug-in with Eclipse Galileo to tap into the performance features of GWT, such as compiler optimizations, deferred binding, and Ajax optimizations. Developer performance is still an important part of GWT, so along the way, we will also show you how tweak the Google Plug-in for Eclipse to increase your productivity.
Articles 20 Oct 2009  
 
WebSphere migrations: Migrate from JBoss v4.x to IBM WebSphere Application Server Community Edition v2.x
Leverage the superior support and architecture of WebSphere Application Server and Apache Geronimo by migrating applications running on JBoss Application Server.
Articles 14 Oct 2009  
 
Using Apache Pivot to build an iTunes search client
Apache Pivot is an open source platform for building rich internet applications (RIAs) in a Java environment. It combines the enhanced productivity and usability features of a modern RIA toolkit with the robustness of the industry-standard Java platform. Apache Pivot applications take advantage of WTKX, an XML-based language for user interface design, which makes the application's output easy to visualize. In this tutorial, you will follow the implementation of a simple but practical Pivot application that allows a user to execute searches against the contents of the iTunes Store.
Tutorial 13 Oct 2009  
 
Cloud computing with PHP, Part 2: Using Amazon EC2 with the Zend Framework
The Zend Framework contains several classes that make using cloud-based storage services easy. Part 1 of this "Cloud computing with PHP" series looks at using Zend classes with Amazon's S3 cloud storage service. This article covers the Zend classes that make it easy to work with virtual machines in Amazon's Elastic Compute Cloud (EC2).
Articles 13 Oct 2009  
 
Design and develop SCA components using the Spring Framework, Part 1: The trifecta: Spring, SCA, and Apache Tuscany
In this "Design and develop SCA components using the Spring Framework" series, learn how Service Component Architecture (SCA) and the Spring Framework effectively combine to build distributed service applications. This first article outlines the benefits of combining SCA and Spring. Learn how to design and develop your SCA components using the Spring Framework, how to expose Spring beans as an SCA service, and how to access SCA services and properties within your Spring applications. The example in this article use the Apache Tuscany SCA Java technology runtime.
Articles 06 Oct 2009  
 
Spread the word: Enterprise blogging, MetaWeblog, and XML-RPC
Today's blogs are used for much more than the traditional personal journal: They have matured to become an ideal Web publishing platform. Within the enterprise, blogs are often a central conduit for corporate, development, and marketing communications, which makes selecting open blogging software that conforms to standard XML APIs essential. Discover one such too -- MetaWeblog, a widely used blogging API -- and learn how to use its API to write your own blogging tools.
Articles 06 Oct 2009  
 
memcached and Grails, Part 2: Integrating memcached into Grails
James Goodwill completes his two-part introduction to integrating memcached and Grails with a sample Grails application and a Java-based memcached client. Learn how to integrate Spymemcached into your Grails-built, contact-management application, then try caching individual request results with memcached. You'll also use the memcached client commands introduced in Part 1 to test the effectiveness of your new cache.
Articles 06 Oct 2009  
 
Saving money with open source, Part 3: The OpenChange solution offers great promise
In today's economic climate, everyone is looking for ways to reduce expenses. In the IT sector, one way to cut costs is by turning to open source alternatives instead of using expensive licensed products. This last part of our series explores OpenChange, which is designed to be used as an Exchange groupware server. E-mail is probably the backbone of your business; When the e-mail servers go down, everything can quickly grind to a halt. In this article, learn about the OpenChange e-mail server and whether it is ready for prime time.
Articles 29 Sep 2009  
 
Monitor home energy with AMEE
Electricity is invisible. To understand how people use it, you need to make it visible. This tutorial will show you how easy it is to build a Web-based energy monitoring system yourself, using a Current Cost real-time energy monitor and AMEE, a neutral Web-based API for energy data, combined with some XML, Ruby, Rails, and Ajax.
Tutorial 29 Sep 2009  
 
Calculate your computer's carbon footprint using AMEE
As the use of IT continues to increase, Information and Communication Technology (ICT) systems will make up a large proportion of CO2 emissions. ICT providers are trying to find ways to reduce these emissions through efficiency, cloud computing, or other approaches, but the monitoring of such systems is also an essential requirement. The Avoiding Mass Extinctions Engine (AMEE) platform provides a standard framework for tracking carbon emissions and implements a variety of calculation methodologies. Investigate some approaches to calculating ICT emissions that are possible using the AMEE platform, and check out Ruby scripts that enable the automatic monitoring of such systems.
Articles 29 Sep 2009  
 
Top Open source zone articles of the past decade
Check out which Open source zone articles developerWorks readers found most interesting in the past 10 years. And get to know your Open source zone editor a little bit, too.
Articles 23 Sep 2009  
 
Cloud computing with PHP, Part 1: Using Amazon S3 with the Zend Framework
The Zend Framework contains several classes that make using cloud-based storage services easy. This article illustrates how to use those classes with Amazon's S3 cloud storage service.
Articles 22 Sep 2009  
 
Requirements for rule engines
Business software systems typically handle complex repetitive tasks, such as processing insurance claims or routing packages for delivery. These systems are encoded with the specific business logic to accomplish these tasks, but must be flexible to change. To simplify development and permit rapid deployment of changes, rule engines have been created to execute the business rules independently of the procedural code, allowing for changes to rules without modification of underlying code. Discover the tools and techniques for requirement capture, modeling, and testing of business rules.
Articles 22 Sep 2009  
 
Your developerWorks open source editor is now on Twitter
Your once Twitter-resistant developerWorks open source editor is now on Twitter. And we can both benefit from that. Find out how.
Articles 22 Sep 2009  
 
Integrate your PHP application with Google Contacts
The Google Contacts Data API provides a powerful, client-neutral API to read and modify a user's private Gmail contact information. Learn to retrieve, add, delete, and modify contacts through a custom PHP application with this API in an application context.
Articles 22 Sep 2009  
 
Introducing Quercus, a Java-based PHP framework
Quercus is a new approach to authoring Web services and applications using a mixture of Java and PHP. With the Quercus framework, Java and PHP are integrated with each other, thus allowing you to conveniently incorporate versatile Java libraries like Spring and Hibernate into applications. This article provides a brief introduction of the framework along with some code samples. Explore the features and advantages of the framework using a simple HelloWorld sample. And finally, understand the framework architecture and look at a real world example in more detail.
Articles 22 Sep 2009  
 
The Clojure programming language
Lisp is a programming language known for its expressiveness and power, but it was often thought of as not being well suited for general use. That has all changed with Clojure, a Lisp dialect that runs on the Java platform. Now you can harness the power of Lisp anywhere that you have a Java Virtual Machine handy. In this article, you will see how to get started with Clojure, and learn some of its syntax, as you take advantage of the Clojure plug-in for Eclipse to help you along the way.
Articles 22 Sep 2009  
 
Exploring Drupal V6, Part 3: Building a Drupal module
You've learned the basics of Drupal V6 and even added modules to a Drupal site. In this final installment in the "Exploring Drupal V6" series, learn how to write and deploy a custom module to create a novel content type.
Articles 15 Sep 2009  
 
Introduction to the eSWT mobile extension, Part 1: Use simple widgets to quickly build mobile applications
As mobile platforms become increasingly sophisticated, the demand for mobile computing will increase. In this series, learn about the embedded Standard Widget Toolkit (eSWT). You can use eSWT to develop native-looking Java applications for a variety of mobile phones. This article explores how to use eSWT mobile controls. Code examples walk you through using five of the classes in the eSWT mobile extension.
Articles 15 Sep 2009  
 
Finding the way through the semantic Web with HBase
The Hadoop Database (HBase) is well suited for creating a semantic Web and for extracting existing or computed knowledge. Learn how to represent RDF/XML assertions in an HBase database for scientific articles, and discover how HBase and Bigtable are promoting a new approach to storing and processing data.
Articles 15 Sep 2009  
 
Java Web services: JAXB and JAX-WS in Axis2
Apache Axis2 supports a range of data-binding technologies, including the official Java standard, JAXB 2.x. Axis2 also supports the Java standard for Web service configuration, JAX-WS 2.x, as an alternative to its own custom configuration technique. Dennis Sosnoski continues his Java Web services column series by demonstrating how you can use each of these Java standards with Axis2 and discussing some of the limitations of Axis2's current support for them.
Articles 15 Sep 2009  
 
Mastering Grails: Creating a custom plug-in
In this Mastering Grails installment, Scott Davis shows you how to create your own Grails plug-in. Once you see how effortless it is to create a plug-in, you'll understand why more than 250 Grails plug-ins are available now, with new ones being added all the time.
Articles 15 Sep 2009  
 
memcached and Grails, Part 1: Installing and using memcached
In this first half of a two-part article focusing on memcached and Grails, author James Goodwill introduces you to the open source caching solution memcached. Topics covered in this article include installation, configuration, memcached client commands, and evaluating the effectiveness of your cache. Unlike articles about using memcached with a language-specific client, this one focuses on direct interaction with the memcached server. The goal is to give you the tools you need to monitor your instance of memcached as well as to prepare you for the second half of the article, in which you will integrate memcached into a Grails application.
Articles 15 Sep 2009  
 
Exploring Drupal V6, Part 2: Extending Drupal with modules
Once upon a time -- say, 10 years ago -- operating a Web site was something of a novelty. Today, a Web site is not only de rigueur, it's an essential component of any endeavor. Learn how to use Drupal's modules to build, customize, and secure your site.
Articles 08 Sep 2009  
 
Introducing Apache Mahout
Once the exclusive domain of academics and corporations with large research budgets, intelligent applications that learn from data and user input are becoming more common. The need for machine-learning techniques like clustering, collaborative filtering, and categorization has never been greater, be it for finding commonalities among large groups of people or automatically tagging large volumes of Web content. The Apache Mahout project aims to make building intelligent applications easier and faster. Mahout co-founder Grant Ingersoll introduces the basic concepts of machine learning and then demonstrates how to use Mahout to cluster documents, make recommendations, and organize content.
Articles 08 Sep 2009  
 
Using the Technorati API
Technorati is a blog cataloging service that enables users to search virtually the entire blogosphere for articles of interest. Like most entries in the Web 2.0 domain, Technorati provides an API to automate much of its functionality. Also like most entries in the Web 2.0 domain, that API is provided as a REST service. In this article, work with examples and learn to get the most out of the Technorati API.
Articles 08 Sep 2009  
 
Easy navigation in Eclipse Galileo
Eclipse Galileo introduces several features that allow you to quickly navigate your Java projects. When combined with existing features, you can get around quickly even in the largest projects.
Articles 08 Sep 2009  
 
Conversing through the Internet with cURL and libcurl
cURL is a command-line tool that speaks a number of protocols for file transfer, including HTTP, FTP, Secure Copy (SCP), Telnet, and others. But in addition to conversing with endpoints over the Internet from the command line, you can also write simple to complex programs using libcurl to automate application-layer protocol tasks. This article introduces the cURL command-line tool, then shows you how to build an HTTP client in C and Python using libcurl.
Articles 08 Sep 2009  
 
Top 10 tips for writing successful Software as a Service
Discover 10 essential tips for creating Software as a Service (SaaS) applications that come in on time and under budget, yielding a positive and preferable return on investment.
Articles 01 Sep 2009  
 
Saving money with open source, Part 2: Tap into the power of OpenOffice
In today's economic climate, everyone is looking for ways to reduce expenses. In the IT sector, one way to cut costs is by turning to open source alternatives instead of using expensive licensed products. In this article, learn about the OpenOffice office productivity software. Explore how it has matured, its limitations, and the implications for making the move to this productivity suite.
Articles 01 Sep 2009  
 
Plotting scientific data with Eclipse BIRT
BIRT was made for business reports, but that doesn't mean you can't use it for creating plots of scientific data. Learn how to use BIRT for scientific purposes by creating two plots: one of the magnitude of a variable star and one of the number of sunspots per year.
Articles 01 Sep 2009  
 
Saving money with open source, Part 1: Use the Ubuntu operating system
In today's economic climate, everyone is looking for a way to reduce their expenses. In the IT sector, one way to reduce expenses is by turning to open source alternatives instead of using expensive licensed products. In this series, learn about three open source alternatives: Ubuntu for the operating system, OpenOffice for the office application suite, and OpenChange for the Exchange groupware server. This first article explores the Ubuntu Linux operating system, and how it can help you save money by providing an excellent alternative on the desktop.
Articles 25 Aug 2009  
 
Implementing composite keys with JPA and Hibernate
Nowadays, with the widespread use and deployment of Object-Relational Mapping (ORM) tools, you don't generally have to think too hard about such arcane issues as composite keys. Normally, the choice of key design can be a simple integer, and this can be left with confidence to the tooling. Occasionally, you come across a situation where a composite key is required, and you need a strategy for this. This tip shows you how to implement composite keys with JPA and Hibernate.
Articles 25 Aug 2009  
 
Google App Engine for Java: Part 3: Persistence and relationships
Data persistence is a cornerstone of scalable application delivery in enterprise environments. In this final article of his series introducing Google App Engine for Java, Rick Hightower takes on the challenges of App Engine's current Java-based persistence framework. Learn the nuts and bolts of why Java persistence in the current preview release isn't quite ready for prime time, while also getting a working demonstration of what you can do to persist data in App Engine for Java applications. Note that you will need to have the contact-management application from Part 2 up and running as you learn how to use the JDO API to persist, query, update, and delete Contact objects.
Articles 25 Aug 2009  
 
Use the best open source client-side framework for cloud computing
Discover the pros and cons of using Adobe Flex and OpenLaszlo -- two leading client-side RIA development languages that are particularly useful for building Software as a Service applications for the cloud.
Articles 18 Aug 2009  
 
Using Apache Lucene to search text
In this article, learn about Apache Lucene, the high-performance, full-featured text search-engine library. Explore the Lucene architecture and its core APIs. Learn to use Lucene for cross-platform full-text searching, indexing, displaying results, and extending a search.
Articles 18 Aug 2009  
 
Faster Java coding in Eclipse Galileo
Learn how to use the new toString() code-generation ability in Eclipse Galileo along with hashCode(), equals(), and setter/getter generation to cut down on the amount of work that goes into building the foundation of a Java class.
Articles 18 Aug 2009  
 
Thoughts from OSCON 2009: Open government, concurrency
The O'Reilly Open Source Convention (OSCON) is nothing if not a place to collect one's deeper thoughts around software development. The 2009 convention offered more than its share of inspiration, but David Mertz whittled the schedule down and focused on two very different but important areas: open government and concurrency.
Articles 12 Aug 2009  
 
Exploring Drupal V6, Part 1: Introduction
Need a Web site? Don't have lots of money for development? Say no more. Drupal is an open source solution that runs everywhere. It has impressive features and its latest incarnation, Drupal V6, is a joy to use. Here's an introduction.
Articles 11 Aug 2009  
 
Google App Engine for Java: Part 1: Rev it up!
Remember when Google App Engine was just for Pythonistas? Those were some dark days. Google Inc. opened up its cloud-computing platform to Java developers in April 2009. In this three-part article series, Java technology author and trainer Rick Hightower gets you started with this reliable, robust, and fun platform for Java-based development. In this article, you'll get an overview of why Google App Engine for Java could be the deployment platform for your next highly scalable killer app, then start using the Google Plugin for Eclipse to build two example apps: one based on Google Web Toolkit (GWT) and one based on the Java Servlet API. You'll learn for yourself what a difference Google App Engine for Java makes, both in building out an application from scratch and in deploying it to the tune of up to five million views. (And that's just the free version.)
Articles 11 Aug 2009  
 
Tip: An even simpler API: tight XHTML and meaningful attributes
Occasionally, a Web developer is required to serve data to two or more distinct audiences -- one with a complete package of information and others with selected extracts of the total package. Learn how a Web page designed for a general audience reading the page as HTML can also provide data to another audience reading the same page as XML.
Articles 11 Aug 2009  
 
The Blue programming language
Languages are the means by which we express our desires to computers systems, and, as far as I'm concerned, there's no such thing as too many. One unique language, called Blue, is an open source object-oriented language that is multipurpose and intuitive to use. This tip provides the foundation for Blue and shows you how to build simple networking applications.
Articles 11 Aug 2009  
 
Google App Engine for Java: Part 2: Building the killer app
The whole point of a cloud platform like Google App Engine for Java is in being able to imagine, build, and deploy professional-quality killer apps that scale -- without breaking the bank or driving yourself insane. In this second part of his three-part introduction to Google App Engine for Java, Rick Hightower takes you beyond the ready-made examples of Part 1 with a step-by-step guide to writing and deploying a simple contact-management application using Google App Engine for Java.
Articles 11 Aug 2009  
 
Java Web services: Granular use of WS-Security
WS-Security for SOAP Web services doesn't have to be an all-or-nothing proposition. By configuring WS-Security at the operation or message level, you can apply an appropriate degree of protection to every exchange, reducing or eliminating the WS-Security overhead for operations that don't need full protection. Dennis Sosnoski continues his Java Web services series with a look at granular WS-Security in Web Services Description Language (WSDL) using Apache Axis2 and Rampart.
Articles 04 Aug 2009  
 
Git for Subversion users, Part 1: Getting started
Distributed version control systems (DVCSs) offer a number of advantages over centralized VCSs, and for Subversion users looking to explore this model, Git is a great place to start. Using Subversion as a baseline, this first of two articles shows how to install Git, set up a remote repository, and begin using basic Git commands.
Articles 04 Aug 2009  
 
Using the Twitter Search API
Twitter is undoubtedly one of the most recent and successful examples of social networking to appear on the World Wide Web. Twitter also has its own search engine, which enables users to search for "tweets" by keyword or category, with an API to facilitate programmatic searches, act as a REST service, and return searches in Atom format. Discover the basics of using the Twitter Search API.
Articles 04 Aug 2009  
 
Creating an Atom feed in PHP
Atom is an Extensible Markup Language (XML) specification that identifies information contained in a Web site. Using Atom, Web developers produce feeds that enable other Web developers (or consumers who use feed readers) to quickly locate and view information of interest on a remote site. Think of it as a Web site's index, available to anyone who wants it. Using PHP, a popular language of choice for most host providers, a Web developer can easily produce an Atom feed that can then be made available to the various feed readers and other Web developers. The ultimate result is a state-of-the-art information solution that enables the Web content to reach a much wider audience.
Articles 28 Jul 2009  
 
Build Wikipedia query forms with semantic technology
By providing open access to increasing amounts of Linked Data, public SPARQL endpoints boost the growth of the Semantic Web by providing great data for you to use in your applications. As with many other data-driven Web sites out there, you can create a Web page by sending a query to these endpoints and then wrapping the results in HTML tags; the big difference for SPARQL endpoints is the public availability of this new data for your applications. With simple CGI scripting, get data from two different SPARQL endpoints to build applications that answer your user's questions about actors shared between two directors and which musicians have released which albums.
Articles 21 Jul 2009  
 
Mastering Grails: Understanding plug-ins
In this Mastering Grails installment, Scott Davis introduces you to the world of Grails plug-ins. Adding whole areas of new functionality to your applications couldn't be easier. You'll learn how plug-ins do their magic, and you'll use a plug-in to implement powerful search capabilities in the Blogito application.
Articles 21 Jul 2009  
 
Build virtual appliances using the OVF Toolkit
The Open Virtualization Format (OVF) is an open standard for packaging and distributing virtual appliances (or software) that is to be run in virtual machines. The standard describes an "open, secure, portable, efficient and extensible format for the packaging and distribution of software to be run in virtual machines"; the standard is designed so that it is not tied to any particular hypervisor or processor architecture. In this article, the authors describe the OVF standard and the OVF Toolkit developed by IBM.
Articles 16 Jul 2009  
 
Flex 4 features for creating Software as a Service
With regard to enterprise-level development, the Adobe Flex SDK has undergone such significant improvements that it is hard to fathom that it's still the same product. Explore new features and functionality for creating Software as a Service (SaaS) RIAs using the open source Flex 4 beta SDK.
Articles 14 Jul 2009  
 
Create an ooRexx build environment on Linux KVM
Construct an on-demand software build service using ooRexx that uses the Linux Kernel Virtual Machine (KVM) for better performance. KVM acts as the host for the guest operating systems that build the target software for the user. The Apache Web server controls the builds and stores the results for later retrieval by the user. Learn how to set up the build server and create guests, customize build requests, and organize and access build results.
Articles 14 Jul 2009  
 
Using Flex SDK with Mate and PHP
Mate is a lightweight event-driven framework that enables you to build user interfaces (UIs) and services in a Model-View-Controller (MVC) pattern. Learn how to use Eclipse PHP development tools (PDT) and the Flex software development kit (SDK) together to build an application using the Mate framework. This article expands on the existing Mate documentation, as it focuses on using Eclipse PDT as the tool.
Articles 14 Jul 2009  
 
Download Eclipse Galileo
Are you a Java EE developer? Download Eclipse open source software bundles for free from developerWorks, including the Callisto, Ganymede, and Galileo Simultaneous Release projects, and get started developing with Eclipse frameworks today.
13 Jul 2009  
 
Globalize your Eclipse RCP application
The Eclipse Rich Client Platform (RCP) is gaining wide acceptance in software development. For multinational enterprises, delivering software that supports multiple languages is increasingly important to worldwide customers. In this article, learn how to globalize the user interface (UI) elements in an RCP application, including the window, menu, toolbar, dialog, welcome page, splash screen, and standard Eclipse UI elements. A sample Hello World application walks you through the process.
Articles 07 Jul 2009  
 
Java Web services: The high cost of (WS-)Security
WS-Security offers powerful features for securing Web service applications, and for many applications these features are essential. But these features come at a high cost in terms of performance and message overhead. Dennis Sosnoski continues his Java Web services column series with a look at how using WS-Security or WS-SecureConversation affects Axis2 performance, and he discusses when the simpler (and better performing) alternative of HTTPS-secured connections is a more appropriate choice.
Articles 07 Jul 2009  
 
Producing documentation and reusing information in XML, Part 3: Creating multi-target XML documents
XML is an optimal format for writing documentation that you can use with many different documentation software packages and production environments. In this third article in the series, discover how to create single-source documents that can produce output in a variety of different output formats.
Articles 07 Jul 2009  
 
Producing documentation and reusing information in XML, Part 1: Document publishing using XML
XML provides a way to identify data items and subcomponents within any structured data set, but has its roots in documentation development and production. Robust, open standards for XML document markup and a rich set of freely available tools for XML document parsing and format conversion make it easy to install and configure a complete documentation development and formatting environment on any UNIX or Linux system.
Articles 07 Jul 2009  
 
Dynamically generate OpenOffice documents on the client side with XPCOM
With the Cross Platform Component Object Model (XPCOM) framework from Mozilla, you can dynamically export existing XML content into an OpenOffice document. The process also works for any other type of content supported by the transformation mechanism, such as XSLT. In this article, learn about a portable and cost-effective alternative to server-side solutions.
Articles 07 Jul 2009  
 
Scala on your phone
The Android operating system provides a powerful, open platform for mobile development. It leverages the power of the Java programming language and the Eclipse tools platform. Now you can add the Scala programming language to that mix. In this article, you will see how you can use Scala as the primary development language on Android, allowing you to write mobile applications using a more expressive but also more type-safe programming language.
Articles 30 Jun 2009  
 
High-performance concurrent communication development in UNIX using the ACE library framework
The ACE open source toolkit helps developers create robust, portable multithreading applications. Take a peek into some of the ways you can create applications that use ACE threads.
Articles 30 Jun 2009  
 
PHP object orientation: Separating concerns
Separation of concerns is a concept in object-oriented (OO) software design that allows you to build more-modular applications. Modular applications are easier to maintain and add new features to. PHP's OO language features allow you to apply design concepts to build more robust, maintainable applications.
Articles 30 Jun 2009  
 
The new OpenNTF Alliance
This article describes the governance and IP model of the new OpenNTF Alliance. It also explains how consumers can find code on OpenNTF and how producers can contribute code. Last but not least, the article outlines some ideas for OpenNTF improvements and extensions.
Articles 29 Jun 2009  
 
An Eclipse Galileo flyby
The Eclipse Galileo release of 33 major projects showcases the diversity and innovation going on inside the Eclipse ecosystem. Get an overview of several Galileo projects, along with resources to find out more information.
Articles 26 Jun 2009  
 
Create better namespaces in PHP
PHP V5.3 introduces the ability to provide namespaces to your PHP classes, constants, and functions. Using namespaces allows you to avoid naming collisions and provide context for your PHP code. These tips provide a few guidelines for building your namespaces so that you get the most out of them.
Articles 23 Jun 2009  
 
Weaving a better Web page
A Cascading Style Sheets (CSS) framework expedites and simplifies the design and development of Web pages. Moreover, a CSS framework produces more standardized results in all browsers. Here's a look at two CSS frameworks, each with a unique philosophy.
Articles 23 Jun 2009  
 
Working with XML on Android
Android is a modern, open source operating system and SDK for mobile devices. With it you can create powerful mobile applications. This becomes even more attractive when your applications can access Web services, which means you need to speak the language of the Web: XML. In this article, you will see different options for working with XML on Android and how to use them to build your own Android applications.
Articles 23 Jun 2009  
 
Cultured Perl: Perl and the Amazon cloud, Part 5
This five-part series walks you through building a simple photo-sharing Web site using Perl and Apache to access Amazon's Simple Storage Service (S3) and SimpleDB. In this final installment, examine the full mod_perl site's templates, including one for indexing, three for uploading (general, S3 forms, and URL additions), one for image and comment browsing, and one to browse comments recursively for an image (or threading down).
Articles 23 Jun 2009  
 
Practically Groovy: Metaprogramming with closures, ExpandoMetaClass, and categories
Enter into the world of metaprogramming, Groovy-style. The ability to add new methods to classes dynamically at run time -- even Java classes, and even final Java classes -- is incredibly powerful. Whether used for production code, unit tests, or anything in between, Groovy's metaprogramming capabilities should pique the curiosity of even the most jaded Java developer.
Articles 23 Jun 2009  
 
Tapping into Android's sensors
Android, a rich platform for application development, has an attractive set of user interface elements and data-management capabilities. Android also offers a healthy array of interfacing options. In this article, learn how to interact with Android's varied sensor options to monitor your environment. Sample code shows you how to record audio on an Android phone. Want to build your own baby monitor? Unlock your phone or a door with your own voice activation? Learn how to leverage the hardware capabilities of an Android-equipped device.
Articles 16 Jun 2009  
 
Java Web services: Axis2 WS-Security signing and encryption
Get an introduction to the principles of public key cryptography, then see how WS-Security applies them for signing and encrypting SOAP messages using public-private key pairs in combination with secret keys. Dennis Sosnoski continues his Java Web services series with a discussion of WS-Security and WS-SecurityPolicy signing and encryption features, along with example code using Axis2 and Rampart.
Articles 16 Jun 2009  
 
Introducing KDE 4 plasmoids
KDE 4 includes many exciting new technologies, including Plasma, a feature that forms the desktop shell of KDE 4. See how to write simple Plasma applets (known as "plasmoids") to greatly improve the desktop experience and how to turn a plasmoid into a simple memory monitor.
Articles 14 Jun 2009  
 
Cultured Perl: Perl and the Amazon cloud, Part 4
This five-part series walks you through building a simple photo-sharing Web site using Perl and Apache to access Amazon's Simple Storage Service (S3) and SimpleDB. In this installment, examine the full mod_perl site's code base, including how to configure the top level, what to do with the handlers, and how to set up external dependencies.
Articles 14 Jun 2009  
 
Cultured Perl: Perl and the Amazon cloud, Part 3
This five-part series walks you through building a simple photo-sharing Web site using Perl and Apache to access Amazon's Simple Storage Service (S3) and SimpleDB. In this installment, follow your site's interaction with SimpleDB by learning how the URL creates a SimpleDB record for the uploaded file. Also learn how to create, edit, and delete comments as SimpleDB records on a photo for a particular user.
Articles 14 Jun 2009  
 
Networking with Android
Android, a rich platform for application development, offers an attractive set of user interface elements and data management capabilities. It also has a healthy array of networking options for developing applications that connect to the physical world. What would you want to connect to? Perhaps you want to tell the world everything you're doing using Twitter. Or maybe you want to be notified of your turn at the local laundromat or deli counter. If you have an interest in connecting Android to the world about you, read on.
Articles 09 Jun 2009  
 
Mastering Grails: File uploads and Atom syndication
In this Mastering Grails installment, Scott Davis shows you how to upload files to your Grails application and set up an Atom syndication feed. With these last pieces in place, Blogito becomes a full-fledged blog server.
Articles 09 Jun 2009  
 
Cook up Web sites fast with CakePHP, Part 5: Adding cache
CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
Articles 02 Jun 2009  
 
Cook up Web sites fast with CakePHP, Part 4: Use CakePHP's Session and Request Handler components
CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
Tutorial 02 Jun 2009  
 
Cook up Web sites fast with CakePHP, Part 2: Bake bigger and better with CakePHP
CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
Tutorial 02 Jun 2009  
 
Cook up Web sites fast with CakePHP, Part 1: Getting started
CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
Tutorial 02 Jun 2009  
 
The busy Java developer's guide to Scala: Enhancing the Scitter library
Scala is fun to talk about in the abstract, but using it in a practical way makes the difference between seeing it as a "toy" and using it on the job. In this follow-up article to his introduction to Scitter, a Scala client library for accessing Twitter, Scala enthusiast Ted Neward offers a more interesting and useful set of features for the client library.
Articles 02 Jun 2009  
 
Cook up Web sites fast with CakePHP, Part 3: Use Sanitize for your protection
CakePHP is a stable production-ready, rapid-development aid for building Web sites in PHP. This "Cook up Web sites fast with CakePHP" series shows you how to build an online product catalog using CakePHP.
Articles 02 Jun 2009  
 
Doing more with the Django admin
The built-in administration console provided by Django is one of its biggest selling points. What if you need to customize more than just the look and feel and a couple of model fields? Find out how to extend the existing admin application without ever modifying the source.
Articles 26 May 2009  
 
Install the GNU ARM toolchain under Linux
Many tools are available for programming various versions of ARM cores, but one particularly popular set is the GNU ARM toolchain. Learn more about embedded development using the ARM core, as well as how to install the GNU tools and begin using them.
Articles 20 May 2009  
 
Use command-line tools in PHP
Learn how to better integrate scripts with command-line tools. Emphasis is placed on using shell_exec(), exec(), passthru(), and system(); safely passing information to the command line; and safely retrieving information from it.
Articles 19 May 2009  
 
Practically Groovy: Building, parsing, and slurping XML
Learn how easy it is to slice and dice XML using Groovy. In this installment of Practically Groovy, author Scott Davis shows that whether you're creating XML with MarkupBuilder and StreamingMarkupBuilder, or parsing XML with XmlParser and XmlSlurper, Groovy offers a set of compelling tools for dealing with this ubiquitous data format.
Articles 19 May 2009  
 
Better Django models
After graduating from the five-minute wiki to real-life applications, Django programmers can easily create confusing, hard-to-maintain, or inefficient model classes. Learn how to avoid common querying mistakes, use model managers to encapsulate complex queries, and take advantage of the powerful new aggregation features available in Django V1.1.
Articles 19 May 2009  
 
Introduction to Android development
Android is a complete operating environment based on the Linux V2.6 kernel. Initially, the deployment target for Android was the mobile-phone arena, including smart phones and lower-cost flip-phone devices. However, Android's full range of computing services and rich functional support have the potential to extend beyond the mobile-phone market. Android can be useful for other platforms and applications. In this article, get an introduction to the Android platform and learn how to code a basic Android application.
Articles 12 May 2009  
 
3-D modeling with SketchUp and Eclipse, Part 2: Coding with the SketchUp scripting language
Scripts allow you to add automation, animation, and geometric computation to your SketchUp designs. With the right code, SketchUp can become a rendering tool like Maya or a mechanical design tool like AutoCAD. This article, the second in a two-part "3-D modeling with SketchUp and Eclipse" series, describes a number of the basic classes used in SketchUp scripts and provides examples of their usage. With these classes, you can construct any 3-D figure composed of line segments and faces. Then you can configure the appearance of each face with colors and images.
Articles 12 May 2009  
 
An early look at what's coming in PHP V6
In this article, learn about the new PHP V6 features in detail. Learn how it is easier to use, more secure, and more suitable for internationalization. New features include improved support for Unicode, clean-up of several functions, improved extensions, engine additions, changes to OO functions, and PHP additions.
Articles 05 May 2009  
 
The busy Java developer's guide to Scala: Scala + Twitter = Scitter
Scala is fun to talk about in the abstract, but for most of the readers of this column, using it in a practical way makes the difference between seeing it as a "toy" and using it on the job. In this installment, Ted Neward uses Scala to build the basic framework for a client library for accessing Twitter, a popular micro-blogging system.
Articles 05 May 2009  
 
Java postmortem diagnostics, Part 1: Introduction to JSR 326 and Apache Kato
The artifacts produced when your Java application fails can help you analyse the root causes of the failure. A standard API to facilitate postmortem analysis is being developed by the Java Community process, and the Apache Kato project is under way to produce a reference implementation and tools for this API. This article, the first in a two-part series, introduces the Post mortem JVM Diagnostics API (JSR 326) and summarises the ways Kato will help you make good use of it. Part 2 will explore postmortem-diagnosis scenarios in greater depth.
Articles 05 May 2009  
 
Realities of open source cloud computing, Part 3: Managing the cloud
You've picked the perfect cloud computing platform for your needs, and you have a well-designed application to run on it. The hard part is done, right? Not so fast. You still need to consider all the things you'd typically worry about if the application was for your own servers: deployment, testing, and monitoring. This might be intimidating, since your application will run on somebody else's machines (which you might not have access to, or know much about). In this final part of the "Realities of open source cloud computing" series, learn about several open source tools and technologies to help you administer your application in a cloud.
Articles 05 May 2009  
 
Importing new canonical tModels: A utility for updating your WebSphere Application Server UDDI registry
Keep your Universal Description Discovery and Integration (UDDI) registry current with this simple utility for importing new canonical tModels (technical models). The utility ensures that newly defined canonical tModels are saved to your IBM WebSphere Application Server UDDI registry database with defined keys for both V2 and V3.
Articles 29 Apr 2009  
 
The RGB/Green.org Sustainability Challenge
The Sustainability Challenge is an invitation to develop a sustainable Web site for your local community. Learn how to build an organic community-driven site using Drupal, an increasingly popular open source content-management system (CMS).
Articles 28 Apr 2009  
 
Use Ruby on Rails to create an LDAP directory service in Tivoli Directory Server V6.0
In this article, learn how to use the Net::LDAP library to create an LDAP directory service in the Tivoli Directory Server V6.0 directory server. Walk through examples to add, modify, search, and delete a directory entry with the Net::LDAP Ruby library. Create a Ruby on Rails application using Tivoli Directory Server V6.0 as a back-end database.
Articles 28 Apr 2009  
 
Get to know the QueryPath PHP library
HTML, HTTP, and XML are the undisputed triumvirate that form the backbone of Web technology. For the PHP developer, working with these can be frustrating. The new QueryPath library, a PHP cousin of the jQuery JavaScript library, offers an efficient API for working with XML, HTML, and HTTP. From Web pages to Web services, SVG to SPARQL, RDF to Atom, QueryPath provides a robust yet simple API for contemporary Web development in PHP. In this article, learn how to build QueryPath objects, and how to traverse and manipulate XML and HTML. Walk through an example that uses QueryPath to access a Web service (Twitter).
Articles 28 Apr 2009  
 
Developing widgets with Dojo 1.x
Learn the basics of developing HTML widgets using the Dojo JavaScript toolkit. This article gives you an introduction, and provides several examples to help you in the process--starting with sample widgets and moving up to more complex widgets, while highlighting and solving the common issues you could encounter in the development phase.
Articles 28 Apr 2009  
 
Easier testing with EasyMock
Join Elliotte Rusty Harold for a look at some hard unit tests made easy through mock objects -- more specifically, the EasyMock framework. This open source library saves you time and helps make your mock-object code concise and legible.
Articles 28 Apr 2009  
 
Mastering Grails: Authentication and authorization
Grails provides all the basic building blocks you need to put together a secure Web application, ranging from a simple login infrastructure to role-based authorization, and in this installment of Mastering Grails, Scott Davis gives you a hands-on lesson in securing your Grails application. You'll also learn about some plug-ins that can help you extend your applications' security capabilities in new directions.
Articles 28 Apr 2009  
 
Mobile workforce operational support using Eclipse RCP
The modern workforce is increasingly mobile, with many jobs performed in the field, far from standard workplace tools, such as desk-bound computers and wired networks. Even for more mobile devices, connectivity is limited to wireless accessible areas. Learn about the development of a Mobile Workforce Framework based on the open source Eclipse Rich Client Platform (RCP) for supporting teams who must work in remote areas with limited or no network access. This article focuses on the value of a common open source platform to myriad remote teams, the reduction in paper and travel to perform synchronization, and improved paper-free access to critical information when "off the net." The Mobile Workforce Framework project, also known as Maestro, illustrates how many architectural drivers like synchronization, plug-in functionality, and offline support are met by the using the Eclipse RCP.
Articles 21 Apr 2009  
 
Migrate to a virtual Linux environment with Clonezilla
$@!LessThan!@$!--In this article, l--$@!GreaterThan!@$Learn how to use the open source Clonezilla Live cloning software to convert your physical server to a virtual one. Specifically, see how to perform a physical-to-virtual system migration using an image-based method.
Articles 21 Apr 2009  
 
Build a RESTful service on CICS with PHP
CICS Transaction Server (TS) is a powerful transaction manager designed for rapid, high-volume processing. SupportPac CA1S uses technology from IBM WebSphere sMash to enhance CICS TS with PHP scripting capabilities and Representational state transfer (REST)-related features. This tutorial shows how you can use PHP to quickly and easily work with CICS programs and expose them on the Web. If you are a PHP developer, find out how you can use your skills to interact with enterprise assets in CICS; if you are a CICS developer, see how PHP provides a simple and agile way to manipulate your existing resources.
Tutorial 21 Apr 2009  
 
Understanding wiki software
When people think of wikis, Wikipedia most often comes to mind. Yet, businesses have found that using wiki software to build Web sites, manage online user manuals, and encourage collaboration among employees takes the software far outside the box. See how MediaWiki has been the choice of many successful collaborations and information-sharing implementations.
Articles 21 Apr 2009  
 
Common Public License (CPL) -- V1.0
As of 25 Feb 2009, IBM has assigned the Agreement Steward role for the CPL to the Eclipse Foundation. Eclipse has designated the Eclipse Public License (EPL) as the follow-on version of the CPL.
16 Apr 2009  
 
Common Public License (CPL) Frequently asked questions
This FAQ provides answers to commonly asked questions related to the CPL, which has been superseded by the Eclipse Public License (EPL). It is provided for informational purposes only. It is not part of, nor does it modify, amend, or supplement the terms of the CPL. The CPL is a legal agreement that governs the rights granted to material licensed under it, so please read it carefully. If there is any conflict between this FAQ and the CPL, the terms of the CPL shall govern. This FAQ should not be regarded as legal advice. If you need legal advice, you must contact your own lawyer.
Articles 16 Apr 2009  
 
Realities of open source cloud computing, Part 2: Developing for the cloud
You've probably heard the phrase "Write once, run anywhere." But if you want to write for an application that runs in a cloud, you really have to know what you're doing. In Part 2 of this "Realities of open source cloud computing" series, learn how to write an application using PHP to run on the Aptana cloud computing platform. Explore some of the critical design differences between a cloud application and a traditional N-tier application. The concepts are illustrated with a seemingly simple application, using familiar open source technologies, that taps into the strengths of cloud computing.
Articles 14 Apr 2009  
 
3-D modeling with SketchUp and Eclipse, Part 1: Creating the bridge between SketchUp and Eclipse
One of Google's most recent and popular tools, SketchUp, takes the pain out of 3-D modeling. Not only does SketchUp make it easy to create designs manually but it also allows you to automate the design process with Ruby scripts. Because managing and editing these scripts is so important, it helps to have a full-featured development environment like Eclipse. Learn how to configure SketchUp and Eclipse so you can edit scripts in Eclipse and automatically execute them in SketchUp.
Articles 14 Apr 2009  
 
Cultured Perl: Perl and the Amazon cloud, Part 2
This five-part series walks you through building a simple photo-sharing Web site using Perl and Apache to access Amazon's Simple Storage Service (S3) and SimpleDB. In this installment, learn how to upload a file into S3 from a Web page through an HTML form to minimize the load on the server, while maintaining a tight security policy.
Articles 08 Apr 2009  
 
Deploying Django applications to a production server
Django is a Python-based open source Web application framework that focuses on making the process of creating database-driven Web sites and Web applications easier. Getting started with developing Django applications is simple, as a development Web server is included with the framework. However, this server is not suitable for use in a production environment, so further steps are required to deploy your Django application to the Web. In this article, you will learn about the Django framework and how to install it on your local machine. Discover how a Django application is made and about the automatic administration interface created for your application. You will then find out how to deploy your Django application to the Web on a server running Apache and mod_python. Finally, learn how Django applications can and should be scaled as your application's requirements grow.
Articles 07 Apr 2009  
 
XML: The bridge between GWT and PHP
Google Web Toolkit (GWT) applications, apart from connecting to servlets in time-honored Java fashion, can also use PHP Web services to send and receive data in XML. You'll explore methods to generate XML documents and process them, both in the Java language and in PHP.
Articles 07 Apr 2009  
 
Realities of open source cloud computing, Part 1: Not all clouds are equal
Your CTO wants to know your cloud computing strategy -- and wants to know it tomorrow. There are a lot of choices, with many differences and similarities. This article explores some of the options for an organization that wants to leverage the power and promise of cloud computing, with a focus on open source technologies. Learn about several of the providers, such as Amazon, Microsoft, Google, IBM, Aptana, Heroku, Mosso, Ning, and Salesforce. Review the relative strengths and weaknesses of each platform, and what types of open source and proprietary technologies are supported on each platform. Learn how to pick the platform that fits your needs.
Articles 07 Apr 2009  
 
Is there value in cloud computing?
Cloud computing is at an early stage of development, with a diverse group of providers delivering an array of services from full-blown cloud-based applications to storage services to spam filtering. Learn what cloud computing is and how it could affect the future of architecture.
Articles 31 Mar 2009  
 
Charming Python: Distributing computing with RPyC
RPyC is a seamless library for integrating $@!LessThan!@$!--000 and interacting--$@!GreaterThan!@$ Python processes on many machines/processes. This article looks at the advantages or drawbacks RPyC has over other distributed Python frameworks such as XML-RPC and Pyro. A few simple examples of using RPyC are included to give you a feel for the library.
Articles 31 Mar 2009  
 
Cultured Perl: Perl and the Amazon cloud, Part 1
This five-part series walks you through building a simple photo-sharing Web site using Perl and Apache to access Amazon's Simple Storage Service (S3) and SimpleDB. In this installment, get a feel for the benefits and drawbacks of S3 and SimpleDB by taking a tour of their architectures and starting to design your photo-sharing site.
Articles 31 Mar 2009  
 
Exploring CouchDB
Relational databases define a strict structure and provide a rigid way to maintain data for a software application. Apache's open source CouchDB offers a new method of storing data, in what is referred to as a schema-free document-oriented database model. Instead of the highly structured data storage of a relational model, CouchDB stores data in a semi-structured fashion, using a JavaScript-based view model for generating structured aggregation and report results from these semi-structured documents. CouchDB has been developed from the ground up with Web applications as the primary focus and has its sights on becoming the de-facto database for Web application development.
Articles 31 Mar 2009  
 
Make dashboards with XQuery
Many digital dashboards that cropped up in the 1980s were horrible (if not unsubtle) analogs to a car's dashboard. Very few presented business data in a compelling manner. Today, Web-based dashboards try to achieve the same thing. Discover what makes a good dashboard, and learn to identify and leverage key performance indicators (KPIs) for more effective digital dashboards. Finally, build a Web dashboard using the eXist XML database and XQuery.
Articles 31 Mar 2009  
 
OSGi and Spring: Part 2: Build and deploy OSGi as Spring bundles using Felix
Build and package Java classes as OSGi bundles using the Spring DM framework in a Felix container. This article, Part 2 of this series, shows you how to create bundles using the Spring framework and then deploy them in a Felix runtime environment. You will see how the core OSGi framework dependency is removed through a simple Spring-based configuration.
Articles 30 Mar 2009  
 
Ganglia and Nagios, Part 2: Monitor enterprise clusters with Nagios
This is the second article in a two-part series that looks at a hands-on approach to monitoring a data center using the open source tools Ganglia and Nagios. In Part 2, learn how to install and configure Nagios, the popular open source computer system and network monitoring application software that watches hosts and services, alerting users when things go wrong. The article also shows you how to unite Nagios with Ganglia (from Part 1) and add two other features to Nagios for standard clusters, grids, and clouds to help with monitoring network switches and the resource manager.
Articles 25 Mar 2009  
 
Service Component Architecture (SCA) lets you invoke components from different technologies
Service Component Architecture (SCA) is a new technology that abstracts underlying computer services so a system is more flexible while incorporating subsystems implemented in different technologies. SCA moves many details of access technology, implementation, and protocols into the middleware layer, away from the business logic. This abstraction comes at a price for some developers. It can be difficult to understand and debug business applications. Learn how a component is invoked when the invocations are taking place over various protocol bindings and implementation types. The example uses the open source Apache Tuscany SCA runtime to explain the underlying complexity.
Articles 24 Mar 2009  
 
Título da Série: Você gostará deste artigo
O resumo de seu artigo entra aqui. Coloque os principais pontos e frases chave no início do resumo, pois pode ser truncado em resultados de procura. Faça um resumo interessante, mas sucinto. Tenha como meta três a cinco frases que expressam porque o leitor se interessaria pelo conteúdo (motivo) e o que ele ou ela pode obter com a leitura do conteúdo (benefícios).
Articles 20 Mar 2009  
 
Harness the power of XML to Open Financial Exchange files
The ongoing task of bookkeeping is made somewhat easier when financial institutions allow customers to download files for import into their chosen accounting package. These files can pose a problem for financial programmers, however, because they are frequently only available in Open Financial Exchange (OFX) format, which is not XML compatible. Discover how to use PHP with string substitution to make OFX files XML compliant. Thus, you harness the power of XML parsing and deconstruction to OFX files and make financial programming more precise.
Articles 17 Mar 2009  
 
Above the clouds with Android
The open source Android operating system has taken the world by storm, allowing sophisticated cloud computing applications to run wherever you are. Designed to be highly efficient on battery-powered devices like the T-Mobile G1 smart phone, at heart, Android is Linux, and there are several layers to the Android programming model that permit the creation of secure applications tailor-made for cloud computing. Soar to new heights with Android and experience mobile computing as you've never experienced it before.
Articles 17 Mar 2009  
 
Create BlackBerry applications with open source tools, Part 3: Building a social-networking application
The most intriguing and powerful phenomenon in the digital age is the impact of social-networking applications on the consumer and business markets. Marketing professionals are changing how they interact with prospective clients, peer groups can easily form, and, as demonstrated in the fall of 2008, social networking can be part of a successful political campaign. Combined with the popularity and power of the BlackBerry platform, you have the makings of a dynamic combination. Part 3 of this "Create BlackBerry applications with open source tools" series explores how the BlackBerry is a great device for writing and deploying social-networking applications.
Tutorial 17 Mar 2009  
 
Develop a WordPress plug-in with Eclipse PDT
WordPress is a Web publishing platform written in PHP, using MySQL for storage. It provides extensibility by building plug-ins that add filters and actions. The Eclipse PHP Development Tools (PDT) V2.0 project allows you to use Eclipse to build PHP applications. Learn how to extend WordPress by using PDT to build plug-ins.
Articles 10 Mar 2009  
 
Use XQuery for the presentation layer
Many Web applications use the Model-View-Controller (MVC) pattern to separate the three concerns. Using XQuery for presentation enables view-side developers to create robust presentation effects without tying the view to any particular underlying application server or programming language. This article explains in detail the advantages of using XQuery over other view technologies, how XQuery is implemented in the presentation layer, and a realistic example of such an implementation.
Articles 10 Mar 2009  
 
Rich Internet Applications with Grails, Part 2: Grails and the Google Web Toolkit
In this second part of a two-part series, add to the Grails-powered Web services you created in Part 1. You will create a new search page, but this time using the Google Web Toolkit (GWT) to create the application. You will also use some richer UI widgets from the Ext GWT library.
Articles 10 Mar 2009  
 
Ganglia and Nagios, Part 1: Monitor enterprise clusters with Ganglia
This is the first article in a two-part series that looks at a hands-on approach to monitoring a data center using the open source tools Ganglia and Nagios. In Part 1, see how to install and configure Ganglia, the scalable, distributed monitoring system for high-performance clusters based on a hierarchical design. Also learn how to add more monitoring capability by writing Ganglia plug-ins and by enabling external-source spoofing.
Articles 04 Mar 2009  
 
JiBX 1.2, Part 1: Java code to XML schema
XML schema definitions are the basis for many types of data exchanges, including most forms of Web services. But XML Schema is a complex standard, and most tools for creating and modifying schema definitions are not as powerful or easy to use as those for working with Java code. The new features of JiBX 1.2 let you start from Java code and easily generate quality schema definitions to match your data structures. You can then use the schemas directly, whether you use JiBX data binding or not.
Tutorial 03 Mar 2009  
 
JiBX 1.2, Part 1: Java code to XML schema
XML schema definitions are the basis for many types of data exchanges, including most forms of Web services. But XML Schema is a complex standard, and most tools for creating and modifying schema definitions are not as powerful or easy to use as those for working with Java code. The new features of JiBX 1.2 let you start from Java code and easily generate quality schema definitions to match your data structures. You can then use the schemas directly, whether you use JiBX data binding or not.
Tutorial 03 Mar 2009  
 
Use jQuery and PHP to build an Ajax-driven Web page
Learn to use jQuery, the lightweight JavaScript framework, to add Asynchronous JavaScript + XML (Ajax) functionality to your PHP pages.
Articles 03 Mar 2009  
 
Use PHP to convert Twitter to RSS
This article explains the underpinnings of Twitter and shows PHP developers how to use libraries to manipulate feeds into Rich Site Summary (RSS).
Articles 03 Mar 2009  
 
JiBX 1.2, Part 2: XML schema to Java code
Code generation from XML schema definitions is widely used for all types of XML data exchange, including Web services. Most data-binding tools rigidly structure generated code based on the schema, even aspects of the schema that may be irrelevant to your application. JiBX 1.2 generates cleaner code by doing a better job of interpreting the schema and eliminating unnecessary class clutter. It also provides extensive customizations for the generated code, including customizations for easily eliminating unnecessary components of the schema.
Tutorial 03 Mar 2009  
 
Using E4X on the server-side with Jaxer
The ECMAScript for XML (E4X) standard gives JavaScript developers a powerful API to work with XML. As it is not supported in Internet Explorer, you might not get to use it often. That is not an issue if you use JavaScript on the server with Jaxer. In this article, you see how JavaScript and E4X make it easy to work with XML on the server. Combine this key ingredient with Jaxer to create Ajax applications using nothing but JavaScript.
Articles 03 Mar 2009  
 
Use PHP to build a Twitter-like system on your site
Learn how to use PHP to add a Twitter-like interface to your applications. Specifically, we show you how to allow users to add posts, disseminate those posts to other users who want to receive them, and allow users to choose to follow the posts of other users.
Articles 24 Feb 2009  
 
What's new in PHP V5.3, Part 5: Upgrading from PHP V5.2
This "What's new in PHP V5.3" series covers new and exciting features in PHP V5.3, which is scheduled to release soon. Part 1 looks at the changes made to the object-oriented programming and object handling in PHP V5.3, Part 2 looks at lambda functions and closures. In Part 3, we look at namespaces, which is one of the most anticipated and the most debated feature in this release of PHP. In Part 4, we take a close look at Phar, which is an archive format that can be used within PHP. In this final part of the series, learn about things to consider when upgrading from PHP V5.2. There are changes that break backward-compatibility and features that are deprecated in PHP V5.3 for removal in future versions. Some enhancements to existing features within PHP are also covered.
Articles 24 Feb 2009  
 
Rich Internet Applications with Grails, Part 1: Build a Web application using Grails and Flex
Rich Internet Applications (RIAs) promise the dynamism and functionality of desktop applications through the browser. One of the key characteristics is moving your presentation layer to the client and backing it with a robust RESTful service layer on the server. This idea is being popularized with buzzwords like SOUI (Service Oriented User Interface) and SOFEA (Service Oriented Front End Architecture). In this article, the first of a two-part series, you will see how simple it is to create a Web service back end using Groovy's Grails Web application framework, and you will hook it up to an RIA developed with Adobe's Flex framework.
Articles 24 Feb 2009  
 
Manage blogs on AIX
AIX provides an ideal environment for blogs and for the Web Content Management System (CMS) tools running those blogs because of its Web and text-processing power. You get the best of both worlds by combining open source CMS and AIX for a complete and ready-to-use content management tool with extensive support from the open source community, along with a secure and reliable server with high availability, scalability, and enterprise-level support from IBM. This article introduces some of the best CMS solutions for AIX available from the open source community, and helps readers understand the important differences among them. The article also provides a guideline for system architects and developers to help them choose the CMS that best fits their needs.
Articles 24 Feb 2009  
 
Building an Arduino-based laser game, Part 3: Transmit, and that's a hit
Arduino is an inexpensive, easy-to-use electronics platform. The entire platform, both the hardware and the software, is completely open source, and the language is loosely based on C/C++. Arduino was built for makers, tinkerers, and artists who want to take the plunge into creating interactive physical objects. This three-part series starts with basic Arduino hardware and uses it to create an interactive laser game called "'Duino tag," where players can play tag using devices built nearly from scratch. In this final part of the "Building an Arduino-based laser game" series, you'll build the transmitter and complete the 'Duino Tag gun.
Tutorials 24 Feb 2009  
 
Building an AIM-enabled application in Eclipse
Today's applications take advantage of an interface that many people are already using: instant messaging (IM). Applications offer integration with IM because it offers easy access through an interface that people are familiar with and many people already have up and running. IM applications are also available on many mobile platforms, giving your users the ability to interface with your application from mobile devices.
Articles 24 Feb 2009  
 
The Eclipse development platform: Introduction, download and installation
Learn what Eclipse and the Eclipse foundation is, how and where to download the Eclipse platform, and how to setup and install Eclipse with Apache Tomcat and the Java Development Kit.
Demos 23 Feb 2009  
 
Create BlackBerry applications with open source tools, Part 2: Building an RSS reader
In the same way that open source has revolutionized the software development marketplace, the proliferation of alternative news sources has shaken up the traditional news-source monopolies. Today, you can get free news from various Internet sources and from the Internet outlets of the mainstream media. Trekking from one Web site to another to read news stories is possible, but tedious. And what about updates to news stories of interest? Wouldn't it be better if the news of interest is aggregated for your convenience? You can do it with an RSS reader for BlackBerry. Here in Part 2 of this "Create BlackBerry applications with open source tools" series, explore the RSS data-distribution format by creating a BlackBerry RSS reader suitable for taking news wherever you and your BlackBerry go.
Tutorial 17 Feb 2009  
 
Practically Groovy: Groovy: A DSL for Java programmers
Groovy expert Scott Davis reboots the Practically Groovy series, dormant since 2006. This initial installment catches you up on Groovy's recent history and the current state of the Groovy union. Then you'll learn how easy it is to get started with Groovy, circa 2009.
Articles 17 Feb 2009  
 
Perform uniform mounting with generic NFS
To efficiently achieve uniform mounting in the presence of multiple, simultaneous NFS version exports, you need a generic NFS mount utility. Learn how a generic NFS mount utility can help reduce handling multiple NFS versions and simplify the management of those versions. The article describes the concept of the generic NFS mount, outlines the advantages and applications of the system, and gives some overall design details.
Articles 11 Feb 2009  
 
Cloud computing with Amazon Web Services, Part 5: Dataset processing in the cloud with SimpleDB
Learn basic Amazon SimpleDB (SDB) concepts and explore some of the functions provided by boto, an open source Python library for interacting with SDB. In this "Cloud computing with Amazon Web Services" series, learn about cloud computing using Amazon Web Services. Explore how the services provide a compelling alternative for architecting and building scalable, reliable applications. In this article, learn some of the basic concepts and check out some of the functions provided by boto.
Articles 10 Feb 2009  
 
Building an Arduino-based laser game, Part 2: Firing the gun
Arduino is an inexpensive, easy-to-use electronics platform. The entire platform, both the hardware and the software, is completely open source, and the language is loosely based on C/C++. Arduino was built for makers, tinkerers, and artists who want to take the plunge into creating interactive physical objects. This three-part series starts with basic Arduino hardware and uses it to create an interactive laser game called "'Duino tag," where players can play tag using devices built nearly from scratch. Here in Part 2 of this "Building an Arduino-based laser game" series, you'll build and test the receiver part of the 'Duino Tag gun.
Tutorials 10 Feb 2009  
 
Build an Eclipse development environment for Perl, Python, and PHP
Eclipse presents a wealth of capabilities for building tools for compiled languages like C and the Java programming language, but provides little support for scripting languages like Perl, Python, and PHP. For these and similar languages, the Eclipse Dynamic Languages Toolkit (DLTK) comes to the rescue. Walk through the process of building a DLTK-based IDE and discover sample code for each step.
Tutorials 03 Feb 2009  
 
Deploying an Eclipse-based application with Java Web Start
Learn how to build a small, bare-bones application built on the Eclipse Framework and deploy it through Java Web Start (JWS) -- a technology you can use to deploy Java applications easily over standard Internet sites, enabling easy upgrades and distribution.
Tutorials 03 Feb 2009  
 
Architectural manifesto: An introduction to the possibilities (and risks) of cloud computing
Cloud computing has been a hot topic in the media and in the IT industry. There are critics who say that it's nothing new. In this final edition of Architectural Manifesto, learn about the possibilities and risks of cloud computing.
Articles 02 Feb 2009  
 
Python 3 primer, Part 2: Advanced topics
Python 3 is the latest version of Guido van Rossum's powerful general-purpose programming language. It breaks backwards compatibility with the 2.x line but has cleaned up some syntax issues. This second article builds on the previous article. In Part 2 of this two-part series, discover more new Python features and details on more advanced topics such as changes in abstract base classes, metaclasses, and decorators.
Articles 30 Jan 2009  
 
What's new in PHP V5.3, Part 4: Creating and using Phar archives
PHP V5.3 is scheduled to release soon. This "What's new in PHP V5.3" series covers new and exciting features in this release. Part 1 looks at the changes made to the object-oriented programming and object handling in PHP V5.3, Part 2 looks at lambda functions and closures. And in Part 3, we look at namespaces, which is one of the most anticipated and the most debated feature in this release of PHP. Here in Part 4, we take a close look at Phar, which is an archive format that can be used within PHP. It can be used to not only archive files but also to deliver and run an entire PHP application from a single file. It can be used with PHP as an extension from the PECL repository, but will be an official extension of PHP in the upcoming version.
Articles 27 Jan 2009  
 
Embed Lua for scriptable apps
The Lua programming language is a small scripting language specifically designed to be embedded in other programs. Lua's C API allows exceptionally clean and simple code both to call Lua from C, and to call C from Lua. This allows developers who want a convenient runtime scripting language to easily implement the basic API elements needed by the scripting language, then use Lua code from their applications. This article introduces the Lua language as a possible tool for simplifying common development tasks, and discusses some of the reasons to embed a scripting language in the first place.
Articles 27 Jan 2009  
 
What's new in PHP V5.3, Part 3: Namespaces
PHP V5.3 will be released by the end of 2008. This series of articles covers new and exciting features found in this release. Part 1 of the series looked at the changes made to the object oriented programming and object handling in PHP 5.3. Part 2 looked at lambda functions and closures. Here in Part 3, we look at namespaces, which is one of the most anticipated and the most debated feature in this release of PHP. The concept of namespaces provides a way to help avoid problems with multiple functions, classes, and constants of the same name being defined multiple times.
Articles 20 Jan 2009  
 
Mastering Grails: Give your Grails applications a facelift
In this installment of Mastering Grails, Scott Davis demonstrates how to make drastic changes to the look and feel of a Grails application using Cascading Style Sheets (CSS), templates, tag libraries (TagLibs), and more.
Articles 20 Jan 2009  
 
Supplement Creative Commons with open standards
$@!LessThan!@$!--Content owners use Digital Rights Management (DRM) technology to control access to their content.--$@!GreaterThan!@$ Deploying Digital Rights Management (DRM) technology restricts access to content to users who have not been specifically authorized by the content owner. However, these protections sometimes prevent users from using the content in ways they would expect to be entitled, such as playing music on their computers and their portable MP3 players. Through DRM standards that encourage some Creative Commons (CC) ideals, consumers can choose usage rights. Regular developerWorks author Judith Myerson gives a brief proprietary DRM recap, shows what the problems are, suggests some solutions to increase flexibility, and gives an example of a cross-browser menu of usage rights criteria, constraints, and requirements that consumers can choose.
Articles 13 Jan 2009  
 
Mastering Eclipse V3.4, Part 3: JDT text editor tips and tricks
This "Mastering Eclipse" series of articles teaches complete newcomers to Eclipse the ins and outs of the Eclipse IDE. By the end of the series, you'll be on par with advanced users. In this article, take a tour of Eclipse's Java editor and learn about some of its advanced features.
Articles 13 Jan 2009  
 
Social-networking open source visualization aids
Social-networking data analysis can help you understand content, connections, and opportunities for your personal and business associations. This article presents tools and code to extract key components of your social network using the Twitter API to chart, geolocate, and visualize your social-networking data.
Articles 06 Jan 2009  
 
Groovier Spring, Part 2: Change application behavior at run time
The Spring Framework provides a solid foundation for Web and enterprise applications. Spring's support for dynamic languages like Groovy adds capabilities that can make your application architecture more flexible and dynamic. In the second and final installment of the Groovier Spring series, you'll learn how to change the behavior of Spring applications at run time using dynamically refreshable beans.
Articles 06 Jan 2009  
 
Groovier Spring, Part 1: Integration basics
The Spring Framework provides a solid foundation for Web and enterprise applications. Spring's support for dynamic languages like Groovy adds capabilities that can make your application architecture more flexible and dynamic. In Part 1 of this two-part series, you'll learn the basics of integrating Groovy into Spring applications.
Articles 06 Jan 2009  
 
Creating custom JavaServer Faces components in IBM Rational Application Developer Version 7.5
This article explains how you can use IBM Rational Application Developer V7.5 to create custom JavaServer Faces (JSF) components.
Articles 06 Jan 2009  
 
Create your own Eclipse plug-in template
Default plug-in templates in Eclipse are useful as long as they meet users' needs. When a specified requirement is beyond the scope of a default template, it is necessary to customize a template. This article offers insight into how to customize a plug-in project template in Eclipse, elaborates on multisection implementation and control within templates, introduces UI component customization methods to improve usability, illustrates a way to add input validation function on the UI side, and explains how to organize the directory structure of plug-in project automatically.
Articles 22 Dec 2008  
 
Building an Arduino-based laser game, Part 1: Arduino basics
Arduino is an inexpensive, easy-to-use electronics platform. The entire platform, both the hardware and the software, is completely open source, and the language is loosely based on C/C++. Arduino was built for makers, tinkerers, and artists who want to take the plunge into creating interactive physical objects. This three-part series starts with basic Arduino hardware and uses it to create an interactive laser game called "'Duino tag," where players can play tag using devices built nearly from scratch. Here in Part 1 of this "Building an Arduino-based laser game", we craft basic experiments that prepare us for and are a part of 'Duino tag.
Tutorials 22 Dec 2008  
 
Python 3 primer, Part 1: What's new
Python 3 is the latest version of Guido van Rossum's powerful general-purpose programming language. It breaks backwards compatibility with the 2.x line but has cleaned up some syntax issues. This article is the first in a series that talks about the changes that affect the language and backwards compatibility, and it provides examples of new features.
Articles 19 Dec 2008  
 
Hardening the Linux server
Servers -- whether used for testing or production -- are primary targets for attackers. By taking the proper steps, you can turn a vulnerable box into a hardened server and help thwart outside attackers. Learn how to secure SSH sessions, configure firewall rules, and set up intrusion detection to alert you to any possible attacks on your GNU/Linux server. Once you've gained a solid foundation in the basics of securing your server, you can build on this knowledge to further harden your systems.
Tutorials 17 Dec 2008  
 
Stop writing so much code!
Write less code by leveraging a battle-hardened collection of open source utilities from the Apache Commons project's Lang library. Reusing other people's reliable code helps you get your software to market more quickly, with fewer defects.
Tutorials 16 Dec 2008  
 
Develop a GPS-aware application for the Nokia N810, Part 1: Development environment
Learn how to configure a development environment targeted at the Nokia N810 Internet Tablet, including setting up Eclipse on a target development machine for the Python language.
Articles 16 Dec 2008  
 
Develop eSWT-based applications for the Nokia S60 smartphone
The Java Platform, Micro Edition (Java ME) is a ubiquitous application platform for embedded devices, and many modern mobile phones are capable of running these types of applications. The embedded Standard Widget Toolkit, or eSWT, is an Eclipse technology that can be used to develop native-looking Java applications for a variety of mobile phones. eSWT is developed as part of the embedded Rich Client Platform (eRCP) project, which as a whole is only supported on devices running Microsoft Windows Mobile and Windows CE operating system. However, standalone eSWT libraries are available on all devices running a recent version of Nokia's S60 platform, currently one of the leading smartphone platforms in the world. This tutorial demonstrates how to develop eSWT-based applications with the help of the newly released Eclipse Mobile Tools for Java (MTJ) and Nokia's S60 Platform SDK.
Tutorials 16 Dec 2008  
 
How to ungrab Firefox hotkeys from Flash players
Flash players and other embedded applications in Firefox require their own hooks for keyboard and mouse input. For years, Flash has grabbed Firefox keypresses, which stops people from using the keyboard for navigation, creating new tabs, or even exiting the Flash focus. Learn how to create a Perl program that communicates with a Firefox extension and cnee to restore your keyboard functionality.
Articles 16 Dec 2008  
 
Mastering Grails: Grails in the enterprise
In this installment of Mastering Grails, series author Scott Davis puts to rest any qualms about Grails' readiness for the enterprise. You'll see how to use Grails with enterprise-caliber libraries including the Java Management Extensions (JMX), Spring, and log4j.
Articles 16 Dec 2008  
 
Debug Java applications remotely with Eclipse
You don't need to debug Java applications on just your local desktop. Learn how to spread around your debugging using different connection types that make up remote debugging. This article outlines the features and examples that show how to set up remote application debugging.
Articles 09 Dec 2008  
 
Distributed computing with Linux and Hadoop
Every day people rely on search engines to find specific content in the many terabytes of data that exist on the Internet, but have you ever wondered how this search is actually performed? One approach is Apache's Hadoop, which is a software framework that enables distributed manipulation of vast amounts of data. One application of Hadoop is parallel indexing of Internet Web pages. Hadoop is an Apache project with support from Yahoo!, Google, IBM, and others. This article introduces the Hadoop framework and shows you why it's one of the most important Linux-based distributed computing frameworks.
Articles 09 Dec 2008  
 
What's new in PHP V5.3, Part 2: Closures and lambda functions
Follow along in this "What's new in PHP V5.3" series of articles that covers the new and exciting features found in PHP 5.3, a version that will be released by the end of this year. Part 1 of the series looked at the changes made to the object oriented programming and object handling in PHP 5.3. In Part 2, we look at closures and lambda functions. They are designed to make programming much easier by allowing you to easily define throwaway functions that can be used in many different contexts.
Articles 09 Dec 2008  
 
Cloud computing with Amazon Web Services, Part 4: Reliable messaging with SQS
Learn basic Amazon SimpleDB (SDB) concepts and explore some of the functions provided by boto, an open source Python library for interacting with SDB. In this "Cloud computing with Amazon Web Services" series, learn about cloud computing using Amazon Web Services. Explore how the services provide a compelling alternative for architecting and building scalable, reliable applications. In this article, learn about the reliable and scalable messaging service provided by Amazon Simple Queue Service (SQS).
Articles 02 Dec 2008  
 
Five good programming habits in PHP
Just like any language, developers can write code in PHP that ranges in quality from truly awful to very good. Learn good programming habits that can help you bridge the productivity gap.
Articles 02 Dec 2008  
 
30 game scripts you can write in PHP, Part 3: Creating 10 advanced scripts
PHP is an easy to use, easy to learn, widely accessible programming language. It's well suited for developing simple scripts that you can use to help you in all kinds of games. Whether you play simple pen and paper games by yourself, complex tabletop role-playing games with a group of people, or online games of any kind, this series will have something for you. This article will build on Parts 1 and 2 of this series, exploring 10 cool scripts that can be used in various types of games -- from an inventory-management system and note-taking scripts to word-game scripts to image manipulation and scripts for games like keno.
Articles 02 Dec 2008  
 
Build faster Web applications with caching
Web developers who use Java technologies can quickly improve their applications' performance by using a cache utility. Java Caching System (JCS), a powerful distributed caching system for Java applications, is a highly configurable tool with a simple API. This article gives you an overview of JCS and shows how you can use it to speed up your Web applications.
Articles 02 Dec 2008  
 
30 game scripts you can write in PHP, Part 2: Developing 10 intermediate scripts
PHP is an easy to use, easy to learn, widely accessible programming language. It's well suited for developing simple scripts that you can use to help you in all kinds of games. Whether you play simple pen and paper games by yourself, complex tabletop role-playing games with a group of people, or online games of any kind, this series will have something for you. This article will build on Part 1 of this series, exploring 10 intermediate scripts that can be used in various types of games. These scripts are intended for three types of games: role playing games, games of chance and word games.
Articles 25 Nov 2008  
 
Samba on AIX
Samba is an open source, free software suite that provides seamless file and print services between Windows clients and UNIX-like platforms. It can be run on a UNIX-like platform like AIX, BSD UNIX, Linux, IBM 390 and OpenVMS. Samba uses the TCP/IP protocol that is installed in the host server. When configured, this server software allows the host machine to share files and printers and make them accessible from Windows clients.
Articles 25 Nov 2008  
 
Automation for the people: Wielding wizard-based installers
Installing software is often a painful chore for most users. The installation package you generate -- the "last mile" of software development -- can make the difference between user adoption and another product thrown into the virtual waste bin. In this installment of Automation for the people, automation expert Paul Duvall demonstrates how the freely available, open source IzPack tool for writing wizard-based installers can make installing your software a snap for users.
Articles 25 Nov 2008  
 
Expand your user-authentication options with mouse dynamics
Learn how to apply the open source tools cnee and Perl in mouse-click dynamics to measure the more-subtle characteristics of human-computer interaction. Use the number and hold time of mouse click events to help authenticate users.
Articles 25 Nov 2008  
 
Building Semantic Web CRUD operations using PHP
Create, Read, Update, and Delete (CRUD) operations are the most basic database operations, but they are also the most crucial. CRUD operations are typically done using the Structured Query Language (SQL) on relational database systems. As the Web is becoming more and more data-oriented, there is a need to shift from SQL-based CRUD operations to Semantic Web-based CRUD operations. Learn how to use PHP to perform CRUD operations over the Semantic Web.
Articles 25 Nov 2008  
 
30 game scripts you can write in PHP, Part 1: Creating 10 fundamental scripts
PHP is an easy-to-use, easy-to-learn, widely accessible programming language. It's well suited for developing simple scripts you can use to help you in all kinds of games. Whether you play simple pen-and-paper games by yourself, complex tabletop role-playing games with a group of people, or online games of any kind, this series will have something for you. Each article in this series will cover 10 scripts in 300 words or fewer (3d10 stands for "roll three 10-sided dice") that are simple enough for even a beginning developer, but useful enough for a seasoned game player. The goal is to give you something you can modify to suit your needs, so you can impress your friends and players by busting out your laptop at your next gaming session.
Articles 18 Nov 2008  
 
Implement a Facebook photo album using the Flex SDK
Adobe has released the free, open source Flex SDK framework to enable developers to create Rich Internet Applications (RIAs). The Flex framework provides you with a method of creating cross-browser, cross-platform Web applications that is quick and simple. Flex applications run in the Flash player, which is installed on the majority of Internet-connected computers, but Flex provides you with an object-oriented user interface framework similar to Java's Swing. In this tutorial, develop a Facebook application in Adobe Flex that displays a slideshow of a user's Facebook photo albums. The Facebook application will contain a Profile box listing all of the user's photo albums, each a link to a Flex slideshow of that album. The Flex application will use the Facebook REST API to fetch the photos of the selected Facebook album and dynamically generate the slideshow.
Tutorials 18 Nov 2008  
 
Mastering Grails: Asynchronous Grails with JSON and Ajax
JavaScript Object Notation (JSON) and Asynchronous JavaScript + XML (Ajax) are staples of Web 2.0 development. In this installment of the Mastering Grails series, author Scott Davis demonstrates the native JSON and Ajax capabilities baked into the Web framework.
Articles 18 Nov 2008  
 
Create a framework to support XSLT transformation pipelines
Explore the creation of a framework, called Butterfly, that runs in PHP 5 and facilitates the applications of chains of XSLT stylesheets to XML source documents. This provides transparent caching of the transformed results. Inspired by the Java(TM)-based Apache Cocoon project, so named because it houses and manages the transformation of data from one form to another (turning caterpillars into butterflies), this much lighter-weight framework is named Butterfly. With the Butterfly framework, you can set up an XML configuration file to define chains of stylesheet transformations, and then instantiate Butterfly objects that can each produce the result of an XSLT transformation chain. This article will also look at the nature of framework design in general as it sketches out this framework in particular.
Articles 18 Nov 2008  
 
Explore Eclipse's plug-in signature mechanism
Security is an important issue when installing a bundle of new features to software. This article explores the signature technologies used by the Eclipse platform to determine the trustworthiness of plug-ins. Eclipse places each plug-in in one of five categories: unsigned or signed, trusted or untrusted, or expired. Learn how to create signed plug-ins in Eclipse and IBM Lotus Expeditor, an Eclipse-based product.
Articles 18 Nov 2008  
 
Download Eclipse Ganymede
Are you a Java EE developer? Download Eclipse open source software bundles for free from developerWorks, including Callisto and Ganymede Simultaneous Release projects, and get started developing with Eclipse frameworks today.
17 Nov 2008  
 
Create stand-alone Web services applications with Eclipse and Java SE 6, Part 1: The Web service server application
Use the Eclipse Integrated Development Environment (IDE) and Java Platform, Standard Edition (Java SE) 6 to create a stand-alone Web services application that can be run from the console. In this tutorial, the first in a series, start by getting familiar with the Eclipse IDE. Configure the environment; create projects, packages, and classes; then run the application from the command line.
Tutorials 13 Nov 2008  
 
What's new in PHP V5.3, Part 1: Changes to the object interface
PHP V5.3 is set to be released by the end of 2008, and many of the new features in this release have been in the planning stages for a few years. Originally touted as "PHP V6 without native Unicode support," PHP V5.3 has been developed into a feature-rich upgrade to the PHP V5 line. It's designed to be a release to prepare developers for PHP V6 when it comes by adding many new features, cleaning up existing features by tweaking the functionality, fixing platform-specific issues, and deprecating old features that won't be in future versions of PHP. In this "What's new in PHP V5.3" series, we'll look at these new V5.3 features, and see how they are used and how they can be used in your Web application.
Articles 11 Nov 2008  
 
Mastering Eclipse V3.4, Part 2: The JDT
This "Mastering Eclipse" series of articles teaches complete newcomers to Eclipse the ins and outs of the Eclipse IDE. By the end of the series, you'll be on par with advanced users. In this article, learn about working with various parts of the Eclipse JDT.
Articles 11 Nov 2008  
 
Linux project publications: Security
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community on the topic of Linux security.
Articles 08 Nov 2008  
 
Reduce your PC's power consumption through smart activity monitors
Learn how to reduce power consumption in your Linux computers by monitoring application-usage patterns and user activity.
Articles 04 Nov 2008  
 
Create Web services with Ruby on Rails and Action Web Service
The Action Web Service module implements Web services functionality in Ruby on Rails. Action Web Service creates server-side support for SOAP and XML-RPC Web service protocols. You can declare and publish APIs using Action Web Service.
Articles 04 Nov 2008  
 
What's new with Apache Solr
Leverage Apache Solr's many new enhancements to add best-in-breed capabilities to your application.
Articles 04 Nov 2008  
 
OSGi and Spring, Part 1: Build and deploy OSGi bundles using Apache Felix
Develop, build, and package Java class components as Open Services Gateway initiative (OSGi) bundles and deploy them in the Apache Felix runtime environment. Then use Felix shell commands to start and stop the bundles and dynamically update them.
Articles 30 Oct 2008  
 
High-performance XML parsing in Python with lxml
lxml is a fast yet flexible library for XML processing in Python. It comes bundled with support for XML Path Language (XPath) and Extensible Stylesheet Language Transformation (XSLT), and it implements the familiar ElementTree API. In this article, you focus both on the ease of use provided by lxml and on its high-performance profile when processing very large XML data.
Articles 28 Oct 2008  
 
Building a geospatial information system, Part 1: Understanding the basics
Businesses and educational and governmental institutions are increasingly using geospatial information systems (GIS) to solve real-world problems. GIS offers many new ways to visualize information, collaborate, and do business. In this article, learn the basics of GIS. Explore open source and proprietary software considerations, a basic GIS architecture, and how GIS is used to solve problems in various industries.
Articles 28 Oct 2008  
 
Mastering Eclipse V3.4, Part 1: The Eclipse IDE workbench
This "Mastering Eclipse" series of articles teaches complete newcomers to Eclipse the ins and outs of the Eclipse IDE. By the end of the series, you'll be on par with advanced users. Here in Part 1, you will learn the parts of the Eclipse IDE and how to customize them.
Articles 28 Oct 2008  
 
Build seven good object-oriented habits in PHP
With PHP's object-oriented (OO) language features, if you aren't already creating your applications with OO principles in mind, these seven habits will help you get started in the transition between procedural programming and OO programming.
Articles 28 Oct 2008  
 
Lazy Linux: 11 secrets for lazy cluster admins
"Cluster" means different things to different people. In the context of this article, cluster is best defined as "scale-out" -- scale-out clusters generally have a lot of the same type of components like Web farms, render farms, and high performance computing (HPC) systems. Administrators will tell you that with scale-out clusters any change, no matter how small, must be repeated up to hundreds of thousands of times; the laziest of admins have mastered techniques of scale-out management so that regardless of the number of nodes, the effort is the same. In this article, the authors peer into the minds of the laziest Linux admins on Earth and divulge their secrets.
Articles 22 Oct 2008  
 
Shut down idle computers on your network automatically
Learn how to use Argus and client/server Perl code to monitor your network connections and shut down machines no longer in use.
Articles 21 Oct 2008  
 
Apple iPhone-related articles and tutorials at developerWorks
Learn more about developing Web applications for the iPhone.
21 Oct 2008  
 
Build server-side mashups with Geronimo and REST
Discover the techniques and technologies you can use to build a mashup application using Apache Geronimo, a REST-based protocol, and data from multiple sources. The mashup combines data from Google Maps and Twitter tweets to pinpoint Twitter users as they update their Twitter status.
Articles 21 Oct 2008  
 
Customize a Google Maps result page with Google Mapplets
A Google Mapplet is an application that runs inside a Google Maps results page and lets you add your own custom information and behavior to the page and the map. In this tutorial, you will write a Google Mapplet that uses the Yahoo Weather RSS feed to display the local weather in Google Maps. To demonstrate different techniques while using the Google Mapplets API, you'll implement two solutions. The first is on the client side and uses RSS and JavaScript. The second is on the server side and uses XSLT, PHP, KML, and JavaScript.
Tutorials 21 Oct 2008  
 
PHP and .Net Web development for U2 using Web DE / RedBack objects
IBM U2 Web DE, U2 Web Development Environment (previously called RedBack), is a Web framework for accessing UniVerse and UniData databases. In this article, examine the history and essential framework of Web DE, and learn how PHP and .NET can reference Web DE RedBack Objects (RBOs) to access U2 data stores in a similar way that ASP and Java technology can use them.
Articles 16 Oct 2008  
 
Equinox p2 cures Eclipse plug-in headaches
This article explores the new features of Equinox p2, which debuted in Eclipse V3.4. It looks at the pitfalls of the update manager user interface (UI) that was available in earlier versions of Eclipse and shows how the Equinox p2 framework is an improvement. Specifically, it shows how to use the new features in the Equinox p2 framework to install Eclipse and its plug-ins.
Articles 14 Oct 2008  
 
Cloud computing with Amazon Web Services, Part 3: Servers on demand with EC2
Learn basic Amazon SimpleDB (SDB) concepts and explore some of the functions provided by boto, an open source Python library for interacting with SDB. In this "Cloud computing with Amazon Web Services" series, learn about cloud computing using Amazon Web Services. Explore how the services provide a compelling alternative for architecting and building scalable, reliable applications. This article introduces you to the virtual servers provided by Amazon Elastic Compute Cloud (EC2). Learn how EC2 can help you configure your applications' computing requirements on the fly and adjust capacity based on demand.
Articles 14 Oct 2008  
 
Create a Yahoo! SearchMonkey application
SearchMonkey is one of the first attempts from a major search engine to make use of Semantic Web technologies to enhance search results. In this tutorial, you will implement a Yahoo! SearchMonkey application that enhances blogger.com search listings to include other information about the blog and blog owner. You will first implement a basic application using the default data available from Yahoo!. Then you will create a custom data service to provide your own structured data to SearchMonkey before you develop a more advanced application that takes advantage of this new custom data service.
Tutorials 14 Oct 2008  
 
Programmability, Part 1: Exploring different approaches to programming for Cell/B.E. platforms
The programming flexibility available for the Cell Broadband Engine(TM) is a hot topic in the multicore community. This article discusses leveraging your existing skills to program for Cell/B.E.(TM), offers three programming approaches for Cell/B.E. systems, and introduces the various tools, software, and hardware available for the platform.
Articles 14 Oct 2008  
 
Write a Firefox extension to rotate images in online mapping applications
Learn how to use JavaScript and the Imager Perl module to interface with a Firefox extension for rotating image tiles in Google Maps.
Articles 14 Oct 2008  
 
Separate content from presentation with XSLT, SimpleXML, and PHP 5
Over the years, developers have devised many strategies and frameworks to facilitate the separation of business logic and presentation logic. In this tutorial, you will explore two solutions to separating data and business logic from presentation logic: one using XSLT through the XSL module in PHP 5 and the other using the SimpleXML module in PHP 5. To do this, you'll use a Web page for a personal resume stored as an XML file as an example.
Tutorials 07 Oct 2008  
 
Real Web 2.0: Mastering the Creative Commons
The Creative Commons (CC) initiative develops popular licenses for content, including Web content. Some people think using these licenses means giving up all your rights to content, but this is just one of many misconceptions. Learn how to choose and use CC licenses for your Web sites and applications and how to process these licenses in code.
Articles 07 Oct 2008  
 
Getting started with Eclipse code templates
This tutorial covers the basic use of Eclipse code templates. It takes a broad approach to expose the key concepts and skills that apply to templates regardless of the particular plug-in they're associated with. You will learn about the benefits of templates, how to create and edit them, and how to use them within the Eclipse IDE to increase your productivity.
Tutorials 07 Oct 2008  
 
Automation for the people: Parallel development for mere mortals
Although many development teams use version-control systems to manage code changes, they can struggle when developers code off the same code base, in parallel. In this Automation for the people installment, automation expert Paul Duvall shows how to effectively tag, branch, and merge source code using the open source, freely available Subversion version-control system.
Articles 07 Oct 2008  
 
Cross-platform development with JRuby and Swing
In addition to building Web and console applications with Ruby, you can write complex GUI desktop applications that run unmodified on multiple platforms. Thanks to JRuby, a robust alternative to the traditional C implementation of Ruby, Ruby GUI toolkits can use UI tools available to the Java platform. This article introduces Monkeybars, a library that uses JRuby and Swing for building applications, and takes you through an example application.
Articles 07 Oct 2008  
 
Develop a dynamic location-based mashup
Mashups are a new, highly interactive Web development methodology. Essentially a mix of related content put together from disparate sources, mashups provide rich dynamic content for a superb user experience. Getting Asynchronous JavaScript + XML (Ajax) and mashup chops into your development toolbox will benefit you with high demand in the evolving Web 2.0 workspace.
Tutorials 07 Oct 2008  
 
Create a continuous keystroke-dynamics monitor with Perl and xev
Learn how to use Perl, xev, and custom algorithms to monitor who is currently at the keyboard based on characteristic typing patterns.
Articles 07 Oct 2008  
 
Colabore e desenvolva em tempo real utilizando Rational Team Concert
O IBM Rational Team Concert é um ambiente de entrega de software colaborativo que confere poderes a equipes de projetos para simplificar, automatizar e controlar a entrega de software. Neste tutorial, você vai importar um aplicativo de amostra do Google Web Toolkit (GWT) no Rational Team Concert utilizando Subversion, que permite que você aproveite as vantagens dos vários recursos do Rational Team Concert. No processo, falaremos sobre colaboração, gerenciamento de origem, desenvolvimento ágil e aspectos de gerenciamento de tarefas do Rational Team Concert.
Tutorial 06 Oct 2008  
 
Deploy an SCA application using the Tuscany domain manager
Service Component Architecture (SCA) lets you develop and assemble Service-Oriented Architecture (SOA) solutions that are comprised of independent components, regardless of their implementation and environment. SCA is a major SOA initiative and is becoming an OASIS standard. Apache Tuscany provides an easy-to-use open source infrastructure for the development and operation of SCA applications. This article shows you how to administer an SCA domain using a Tuscany Web-based domain manager UI and code, and how to use the domain administrative UI to deploy an SOA solution comprised of SCA components.
Articles 02 Oct 2008  
 
Seven habits for writing secure PHP applications
Security in a PHP application includes remote and local security concerns. Discover the habits PHP developers should get into to implement Web applications that have both characteristics.
Articles 30 Sep 2008  
 
Design and implement POJO Web services using Spring and Apache CXF, Part 2: Create a RESTful Web service
Create a RESTful Web service, which is defined as a Spring bean, using Apache CXF, an open source Web service framework. This article explores the features and benefits of using the Representational State Transfer (REST) architecture and illustrates the use of the REST API in CXF to easily develop a RESTful service.
Articles 25 Sep 2008  
 
Offline Ajax with Apache Derby
People love Ajax applications so much that they are willing to use them instead of their desktop equivalents. The only problem occurs when they fail to have network access. This is when an offline feature is necessary. Apache Derby is a great option for enabling offline access to Ajax-powered applications. Learn how to use Apache Derby as a local data store that can be used to take your Ajax application offline.
Articles 23 Sep 2008  
 
Enhance image overlay maps in Google Earth with altitude attributes
Use Perl and the Imager module to enhance mapping applications by extracting and applying height information based on color to reveal a third dimension of data, showing more information in the same space.
Articles 23 Sep 2008  
 
Develop PHP applications with Picasa Web Albums
Search, retrieve, add, modify, and delete photos in a Google Picasa web album with Picasa Web Albums REST-based Data API, the SimpleXML extension in PHP, and Zend's GData Library. In this article, find practical examples using ATOM feeds from the API along with PHP programs to process your photos and photo metadata.
Articles 16 Sep 2008  
 
Using Eclipse Ganymede to develop for the desktop, Web and mobile devices, Part 3: Developing for the Embedded Rich Client Platform, the Ganymede way
Eclipse Ganymede is the simultaneous release of 24 major Eclipse IDE projects. This three-part "Using Eclipse Ganymede to develop for the desktop, Web and mobile devices" tutorial series covers the following new Ganymede features: RCP, RAP, and eRCP, which allow you to develop software for the desktop, Web, and mobile platforms, respectively, with one common code base -- Subversion for version control; and p2 for update and installation. In this tutorial, we further enhance the personal organizer developed in Parts 1 and 2, and modify it to be deployed on a mobile device by using the Embedded Rich Client Project (eRCP).
Tutorials 16 Sep 2008  
 
Mastering Grails: RESTful Grails
We live in the era of mashups. Creating Web pages that give users the information they want is a good start, but offering a source of raw data that other Web developers can easily mix in with their own applications is better. In this installment of Mastering Grails, Scott Davis introduces various ways to get Grails to produce XML instead of the usual HTML.
Articles 16 Sep 2008  
 
API Tools in Eclipse: An introduction
Crafting Application Public Interface (API) and especially managing API among different releases is difficult. Learn how to take advantage of Eclipse's PDE API Tools to make this process easier and seamlessly integrated into your daily development. Note that this article is specific to Eclipse V3.4: Ganymede.
Articles 16 Sep 2008  
 
Running Caucho’s Quercus PHP Java interpreter on WebSphere Application Server for z/OS with DB2 UDB for z/OS
PHP is one of the most common Web scripting languages. This article shows the quickest way to use PHP with WebSphere for z/OS, in just a few simple steps. You can even run it on the IBM System z Application Assist Processor (zAAP) with no additional software costs, and connect it to DB2 UDB for z/OS.
Articles 10 Sep 2008  
 
Enhancing multi-screen user interfaces using Ghosd and Synergy
Unlike traditional single-screen setups, multi-screen display systems require special consideration for user interfaces (UIs). This article presents tools and code designed to address the acquisition and change of input focus across multiple displays.
Articles 09 Sep 2008  
 
Overlay data on maps using XSLT, KML, and the Google Maps API, Part 2: Transform and use the data
In this two-part article series, you'll develop an application for a real estate brokerage to display all available apartment listings as clickable Placemarks on Google Maps. In Part 1, you created the first half of the application that collects the apartment listing information from the user, uses the Google Geocoder Web service to turn the street address into its geographical coordinates (longitude and latitude), and stores the coordinates in the database along with the address information. In Part 2, you will use this data to produce a KML overlay document and display it in Google Maps and Google Earth. First, you'll use stored procedures to produce XML from MySQL. Then with XSLT and a technique called Muenchian grouping, you'll transform the XML data into a KML document containing the overlay information -- one Placemark for each apartment building. The pop-up balloon for each Placemark displays the available apartment listings in that building. Finally, you'll use the Google Maps API to display the KML overlay in a Google Map embedded within your own Web site.
Articles 09 Sep 2008  
 
Using Eclipse Ganymede to develop for the desktop, Web and mobile devices, Part 2: Developing for the Rich Client Platform, the Ganymede way
The Ganymede release of the Eclipse IDE includes 24 separate projects, covering a wide range of technologies. Many of these projects are mature, and this release provides incremental improvements to those. But Ganymede also includes a number of new projects that introduce new technologies to the Eclipse platform. In this three-part "Using Eclipse Ganymede to develop for the desktop, Web and mobile devices" tutorial series, we will cover the following new Ganymede features: RCP, RAP, and eRCP, which allow you to develop software for the desktop, Web, and mobile platforms, respectively, with one common code base; Subversion for version control; and p2 for update and installation. Here in Part 2, we will take the personal organizer developed in Part 1, and modify it to use the new Rich Ajax Platform (RAP) to package and distribute the application on the Web.
Tutorials 09 Sep 2008  
 
Setting up your own on-demand video site with PHP, Part 3: Integrating YouTube
Setting up your own on-demand video site doesn't have to be complicated. Upload some videos and put them up for people to watch -- easy enough. But if you're going to be doing a lot of videos, you'll need a way to keep them organized. This three-part series takes you through everything you need to know to create video optimized for the Web, as well as creating a PHP application that will help keep your videos organized and accessible. Part 1 lays the groundwork by assembling and installing the necessary components and gathering and converting the video. Part 2 builds the basic application. Here in Part 3, you add create a slick user interface and integrate the example with YouTube.
Tutorials 02 Sep 2008  
 
Using Eclipse Ganymede to develop for the desktop, Web and mobile devices, Part 1: Developing for the Rich Client Platform, the Ganymede way
The Ganymede release of Eclipse includes 24 separate projects, covering a wide range of technologies. Many of these projects are mature, and this release provides incremental improvements to those. But Ganymede also includes a number of new projects that introduce new technologies to the Eclipse platform. In this three-part "Using Eclipse Ganymede to develop for the desktop, Web and mobile devices" tutorial series, we will cover the following new Ganymede features: RCP, RAP, and eRCP, which allow you to develop software for the desktop, Web, and mobile platforms, respectively, with one common code base; Subversion for version control; and p2 for update and installation. Here in Part 1, we will use the mature Rich Client Platform (RCP) to develop an application for the desktop using Subversion for source control, and we will package and distribute the application using p2.
Tutorials 02 Sep 2008  
 
Build Ajax-based Web sites with PHP
Learn the process of writing Asynchronous JavaScript + XML (Ajax) applications using native JavaScript code and PHP. This article introduces a few different frameworks and application program interfaces (APIs) that reduce the amount of code you need to write to achieve a complete Ajax-based Web application.
Articles 02 Sep 2008  
 
Rapid prototyping with Apache Derby and JRuby on Rails
Ruby on Rails has raised the bar in terms of rapid development of data-driven Web sites. The JRuby project is making Ruby faster and more scalable than ever. One of the great advantages to running Rails on the Java Virtual Machine is that you can leverage other Java libraries, like the Apache Derby embedded database. The combination of Derby, JRuby, and Rails allows for rapid prototyping of dynamic Web applications. Learn how to use these technologies together to help you prototype your next great idea.
Articles 26 Aug 2008  
 
Getting started with CodeIgniter
Creating a CodeIgniter application is easier than you might think. Take a guided tour through your first project: a simple Web page with a contact form.
Articles 26 Aug 2008  
 
Create time-availability maps with Perl and Google Earth
Time-availability maps provide a listing of who is most likely to be available for a certain hour in a certain location. Find out how to use Google Earth and a log of your communications to map and identify the time and place when availabilities match.
Articles 26 Aug 2008  
 
The Java XPath API
Elliotte Rusty Harold demonstrates Java 5's new XPath API.
Articles 25 Aug 2008  
 
Create BlackBerry applications with open source tools, Part 1: Laying the groundwork
There is perhaps no bigger market-transformational technology than the cell phone. And within that classification of devices, perhaps none more recognizable than the BlackBerry from Research In Motion (RIM). Most people think it is just for business e-mail, but there is untapped potential in that addictive device. Despite being a popular platform, third-party applications are still needed for the BlackBerry platform. There is no better way to bring those applications to fruition than to enable the help from the open source community. Follow along as this tutorial lays the groundwork for an open source data-collection application, upon which an accessible and easy-to-use data-collection service is built.
Tutorial 19 Aug 2008  
 
Cloud computing with Amazon Web Services, Part 2: Storage in the cloud with Amazon Simple Storage Service (S3)
Learn basic Amazon SimpleDB (SDB) concepts and explore some of the functions provided by boto, an open source Python library for interacting with SDB. In this "Cloud computing with Amazon Web Services" series, learn about cloud computing using Amazon Web Services. Explore how the services provide a compelling alternative for architecting and building scalable, reliable applications. This article delves into the highly scalable and responsive services provided by Amazon Simple Storage Service (S3). Learn about tools for interacting with S3, and use code samples to experiment with a simple shell.
Articles 19 Aug 2008  
 
Developing software on an open source stack
Web developers are enjoying a renaissance. After spending much of the previous decade toiling on server-centric code, programmers are now putting code front-and-center, turning the Web browser into its own computing platform. Much of the renaissance must be attributed to ingenuity. The newest generation of tools and application frameworks automate and simplify the drudgery of building, deploying, and maintaining a Web site. There are also more tools than ever, and all the most innovative tools are open source. This tutorial provides an expansive survey of the free software available to developers to create and deploy Web applications.
Tutorials 19 Aug 2008  
 
Creating mashups on the Google App Engine using Eclipse, Part 3: Using RESTful Web services
Social networks are making it easier to take data and mash it up to create innovative Web applications. You still, however, must deal with all the usual issues with creating a scalable Web application. Now the Google App Engine (GAE) makes that easier for you. With it, you can forget all about managing pools of application servers, and, instead, you can concentrate on creating a great mashup. In this article, the last of a three-part "Creating mashups on the Google App Engine using Eclipse" series, we will take the application built in the first two parts and further enhance it. We will add the ability to view other users of the app and subscribe to their aggregate feeds. We will then complete the mashup circle by exposing the app as a Web service that can be used by other mashups.
Articles 19 Aug 2008  
 
Creating mashups on the Google App Engine using Eclipse, Part 2: Building the Ajax mashup
Social networks are making it easier to take data and mash it up to create innovative Web applications. You still, however, must deal with all the usual issues with creating a scalable Web application. Now the Google App Engine (GAE) makes that easier for you. With it, you can forget all about managing pools of application servers, and, instead, you can concentrate on creating a great mashup. In this article, the second of a three-part "Creating mashups on the Google App Engine using Eclipse" series, we will take the application we built in Part 1 and enhance it. We will improve its performance by using more data-modeling features of GAE. We will then take that performance even further by using GAE's Memcache services.
Articles 12 Aug 2008  
 
Mastering Grails: The Grails event model
Everything in Grails, from build scripts to individual artifacts such as domain classes and controllers, throw events at key points during an application's life cycle. In this Mastering Grails installment, you'll learn how to set up listeners to catch these events and react to them with custom behavior.
Articles 12 Aug 2008  
 
Easy Ruby development, the Eclipse way
Almost three years ago, developerWorks published "Using the Ruby Development Tools plug-in for Eclipse," which introduced some of the features found in the Ruby Development Tools (RDT) plug-in for Eclipse. Current at the time was V0.5. We revisit that tool in this article. Today, RDT is called Aptana RadRails and is available as a plug-in for Aptana Studio or Eclipse. This article introduces some of the plug-in's new features.
Articles 12 Aug 2008  
 
Beef up the Find command in Firefox
The Find command in Firefox locates the user-specified text in the body of a Web page. The command is an easy-to-use tool that works well enough for most users most of the time. Sometimes, however, a more powerful Find-like tool would make locating text easier. This article shows how to build a tool that isolates relevant text in Web pages faster by detecting the presence and absence of nearby words.
Articles 12 Aug 2008  
 
Building a greener IT department
"Green," "eco-friendly," and "carbon footprint" are buzzwords that are frequently used to describe a company's level of environmental responsibility. But how to be more green in the IT world is a more complex matter. In this article, get some ideas that can help any IT department lessen its impact on the environment.
Articles 05 Aug 2008  
 
Create a productivity package with the Zend Framework V1.5 and Google Apps, Part 3: Getting started with Zend Framework V1.5
In this three-part "Create a productivity package with the Zend Framework V1.5 and Google Apps" tutorial series, you will build an example Web site using Zend Framework V1.5 to connect to several Google productivity applications. So far,, we've built a basic Web site using the new features of the Zend Framework V1.5, such as enhancements to the Zend_View and Zend_Form components. We then looked at Zend_Gdata and to link our Web site to Google Base data. Here in the final part of the series, we see how to link to Google Calendar, Google Docs, spreadsheets, Picasa, and YouTube. We use these tools to provide a dashboard for our Web site. This dashboard allows users to display upcoming events and documents, as well as giving them the ability to add events and documents to the Google account.
Tutorials 05 Aug 2008  
 
Automation for the people: Hands-free database migration
Databases are often out of sync with the applications they support, and getting the database and data into a known state is a significant challenge to manage. In this installment of Automation for the people, automation expert Paul Duvall demonstrates how the open source LiquiBase database-migration tool can reduce the pain of managing the constant of change with databases and applications.
Articles 05 Aug 2008  
 
Creating mashups on the Google App Engine using Eclipse, Part 1: Creating the application
Tapping into social software can be a great way to add value to your application. Social networks are making it easier to take data and mash it up to create innovative new Web applications. However, you must still deal with all the usual issues of creating a scalable Web application. Now the Google App Engine (GAE) makes that easier, as well. With the GAE, you can forget all about managing pools of application servers. You do not have to worry about storing huge amounts of static content and dynamic data. Instead, you can concentrate on creating a great mashup. In this article, the first of a three-part "Creating mashups on the Google App Engine using Eclipse" series, we see how to get started developing GAE applications, and we will take a look at how to use Eclipse to make GAE development even easier.
Articles 05 Aug 2008  
 
What's new in WebSphere Application Server Community Edition V2.1
Explore the new features in WebSphere Application Server Community Edition V2.1, including the ability to execute Geronimo commands using GShell, create multiple server assemblies from you own set of servers, and fully control the server through Expert mode and a new Monitoring portlet. This release improves on what is already the most powerful open source application server available.
Articles 29 Jul 2008  
 
Cloud computing with Amazon Web Services, Part 1: Introduction
Learn basic Amazon SimpleDB (SDB) concepts and explore some of the functions provided by boto, an open source Python library for interacting with SDB. In this "Cloud computing with Amazon Web Services" series, learn about cloud computing using Amazon Web Services. Explore how the services provide a compelling alternative for architecting and building scalable, reliable applications. This first article explains the features of the building blocks of this virtual infrastructure. Learn how you can use Amazon Web Services to build Web-scale systems.
Articles 29 Jul 2008  
 
Create a productivity package with the Zend Framework V1.5 and Google Apps, Part 2: Getting started with Zend Framework V1.5
In this three-part "Create a productivity package with the Zend Framework V1.5 and Google Apps" tutorial series, you will build an example Web site using Zend Framework V1.5 to connect to several Google productivity applications. In Part 1, we put together the basic Web site using the Zend Framework, and we learned how to optimize the Web site for future maintenance. Here in Part 2, we look at using the Zend_Form and Zend_Gdata components of the Zend Framework to handle user authentication and registration, Ajax with the jQuery JavaScript library, and integration with Google Base.
Tutorials 29 Jul 2008  
 
Design and implement POJO Web services using Spring and Apache CXF, Part 1: Introduction to Web services creation using CXF and Spring
Create a plain old Java object (POJO)-style Web service easily using Apache CXF, an open source Web service framework. This article, Part 1 of a series, shows you how to expose POJOs as Web services using Spring and CXF. It also illustrates CXF integration with the Spring Framework.
Articles 24 Jul 2008  
 
Using the Ruby Development Tools plug-in for Eclipse
This article introduces using the Ruby Development Tools (RDT) plug-in for Eclipse, which allows Eclipse to become a first-rate Ruby development environment. Ruby developers who want to learn how to use the rich infrastructure of the Eclipse community to support their language will benefit, as will Java developers who are interested in using Ruby.
Articles 24 Jul 2008  
 
Use XStream to serialize Java objects into XML
XML serialization has a myriad of uses, including object persistence and data transport. However, some XML-serialization technologies can be complex to implement. XStream is a lightweight and easy-to-use open source Java library for serializing Java objects to XML and back again. Learn how to set up XStream, and discover how to use it to serialize and deserialize objects as well as to read configuration properties from an XML configuration file.
Articles 23 Jul 2008  
 
Give Apache Geronimo a Lift
Lift is a new Web application framework. It is a highly scalable framework built on the Scala programming language. It is the perfect partner for a highly scalable application server, such as Apache Geronimo, especially since Scala compiles to byte code just like the Java language and leverages the Java platform. In this article, you will learn how to create a Web application using Lift and deploy it to Geronimo.
Articles 22 Jul 2008  
 
Use Ext, Aptana, and AIR to build desktop applications
While Rich Internet Applications and Web 2.0 have been all the rage, the latest wave of emerging technologies are focusing on not only giving Web applications a desktop-like feel but actually bringing them to the desktop. The Adobe Integrated Runtime (AIR) has led the way, allowing Web application developers to leverage their existing knowledge of HTML, CSS, JavaScript, Flash, and Flex to build powerful desktop applications. In this tutorial, you will use the open source Aptana Studio IDE, the Adobe AIR plug-in for Aptana, and the open-source JavaScript framework Ext.
Tutorials 22 Jul 2008  
 
Build a RESTful Web service
Representational state transfer (REST) is a style of designing loosely coupled applications that rely on named resources rather than messages. The hardest part of building a RESTful application is deciding on the resources you want to expose. Once you've done that, using the open source Restlet framework makes building RESTful Web services a snap. This tutorial guides you step-by-step through the fundamental concepts of REST and building applications with Restlets.
Tutorials 22 Jul 2008  
 
Developing iPhone applications using Ruby on Rails and Eclipse, Part 3: Developing advanced views for iPhone
The iPhone and iPod touch made Mobile Safari the most popular mobile browser in the United States. Although Mobile Safari is more than adequate at rendering normal Web pages, many Web developers created versions of applications aimed at the iPhone. Here in Part 3 of this "Developing iPhone applications using Ruby on Rails and Eclipse" series, we learn what you should do when the user reaches the end of the list structure and your application actually needs to display some content
Articles 15 Jul 2008  
 
Integrate encryption into Google Calendar with Firefox extensions
Today's Web applications provide many benefits for online storage, access, and collaboration. Although some applications offer encryption of user data, most do not. This article provides tools and code needed to add basic encryption support for user data in one of the most popular online calendar applications. Building on the incredible flexibility of Firefox extensions and the Gnu Privacy Guard, this article shows you how to store only encrypted event descriptions in Google's Calendar application, while displaying a plain text version to anyone with the appropriate decryption keys.
Articles 15 Jul 2008  
 
Debug iPhone Web applications with Eclipse
Learn how to debug Asynchronous JavaScript + XML (Ajax) Web applications using Eclipse, Aptana's iPhone Development plug-in, Aptana's Firefox JavaScript debugger, and Firebug.
Tutorials 15 Jul 2008  
 
Mastering Grails: Grails and legacy databases
In this Mastering Grails installment, Scott Davis explores the various ways that Grails can use database tables that don't conform to the Grails naming standard. If you have Java classes that already map to your legacy databases, Grails allows you to use them unchanged. You'll see examples that use Hibernate HBM files and Enterprise JavaBeans 3 annotations with legacy Java classes.
Articles 15 Jul 2008  
 
Integrate your PHP application with Google Calendar
Google Calendar allows Web application developers to access user-generated content and event information through its REST-based Developer API. PHP's SimpleXML extension and Zend's GData Library are ideal for processing the XML feeds generated by this API and using them to build customized PHP applications. This article introduces the Google Calendar Data API, demonstrates how you can use it to browse user-generated calendars; add and update calendar events; and perform keyword searches.
Articles 08 Jul 2008  
 
Automation for the people: Continual refactoring
Refactoring is a well-accepted practice for improving existing code. Yet, how do you find the code that should be refactored, in a consistent and repeatable manner? In this installment of Automation for the people, you'll learn how to use static analysis tools to identify code smells to refactor, with examples showing how to improve odiferous code.
Articles 08 Jul 2008  
 
Apache Geronimo on Grails
Do you want to build your Web sites faster and cheaper, but still leverage industrial-strength technology? You can do just that using Grails and Apache Geronimo. Grails leverages the power of the dynamic language Groovy to accelerate your development. However, it runs on the Java Virtual Machine and leverages proven Java technologies. This makes it easy to take your Grails application to the next level by deploying it to Apache Geronimo, the premiere open source Java EE V5-certified application server. In this article, you will see how easy Grails can make Web development and how easy Geronimo can make Grails deployment. You will also see how a Grails application can leverage the resources and services provided by Geronimo.
Articles 08 Jul 2008  
 
Developing iPhone applications using Ruby on Rails and Eclipse, Part 2: Displaying iPhone content to the client
The iPhone and iPod touch made Mobile Safari the most popular mobile browser in the United States. Although Mobile Safari is more than adequate at rendering normal Web pages, many Web developers created versions of applications aimed at the iPhone. Here in Part 2 of this "Developing iPhone applications using Ruby on Rails and Eclipse" series, we learn the common use of drill-down lists as a navigation method
Articles 08 Jul 2008  
 
Architecting intrusion-detection solutions
Intrusion-detection systems (IDSs) have become an increasingly important part of the security strategy of many organizations. An IDS plays a key role in the concept of defense-in-depth, being only one of several deployed countermeasures designed to deter, slow down, and detect an attack before it occurs or before more serious actions occur. Discover the different types of IDSs and what types of attacks each can detect (or not detect), and see issues to consider when planning an IDS deployment.
Articles 01 Jul 2008  
 
Advanced charting in BIRT
Since 2004, the Eclipse-based Business Intelligence and Reporting Technology (BIRT) community has grown and gained massive success. This success is growing as more users are starting to integrate with BIRT technology to present business data. A key reason for this success is that users are discovering the rich BIRT reporting components. The BIRT charting capabilities is one of the rich components that allow the end user to uncover trends in data to answer business questions. BIRT provides extensive interactive charting and other advanced features to allow report developers to create professional-looking reports.
Tutorials 01 Jul 2008  
 
Getting graphic with PHP
Imagine creating Web-page graphics dynamically using just code -- no need for a complex graphics program. Creating and manipulating images is yours for the doing with the power of PHP. Put your coding skills to work generating images for the Web.
Tutorials 01 Jul 2008  
 
Build Web services with PHP in Eclipse
Learn how to build Web services in PHP using the PHP Development Tools (PDT) plug-in in Eclipse in three easy steps. First, become familiar with the PDT project, and learn how to create and deploy useful PHP projects. Second, learn the philosophy behind contract-first development. Finally, get an informative overview of the basic parts that make up a Web Services Description Language (WSDL) file.
Tutorials 01 Jul 2008  
 
Interfacing with the CDT debugger, Part 2: Accessing gdb with the Eclipse CDT and MI
The graphical debugging environment provided by the Eclipse C/C++ Development Tooling (CDT) is about as good as it gets, displaying breakpoints, watchpoints, variables, registers, disassembly, signals, and memory contents. You can add new capabilities to this environment or access these views to display output from a custom debugger. But first, you need to understand the C/C++ Debugger Interface (CDI) and how it communicates with Eclipse. Part 1 describes the CDI at a high level, and this article presents a practical example: How the CDT uses the CDI and the Machine Interface (MI) to interface the GNU Debugger.
Articles 24 Jun 2008  
 
Create a productivity package with the Zend Framework V1.5 and Google Apps, Part 1: Getting started with Zend Framework V1.5
Google Apps provides amazing productivity tools. From sharable calendars, collaborative documents and spreadsheets to even a database, they have reinvented what one can do in the Web browser. Zend Framework V1.5 provides an API to connect to these services to extend what these tools offer. In this three-part "Create a productivity package with the Zend Framework V1.5 and Google Apps" tutorial series, we will build an application with Zend Framework V1.5 that uses Google Apps. Here in Part 1, we explore the various features of the Zend Framework, outlining the many new features in V1.5 that we will take advantage of to build an example Web site.
Tutorials 24 Jun 2008  
 
Eclipse Ganymede at a glance
The Eclipse Ganymede release of 24 projects showcases the diversity and innovation going on inside the Eclipse ecosystem. Get an overview of several Ganymede projects, along with resources to find out more information.
Articles 20 Jun 2008  
 
Debugging PHP using Eclipse and PDT
The PHP Development Tools (PDT) plug-in, when installed with Eclipse Europa, gives you that ability to quickly write and debug PHP scripts and pages. PDT supports two debugging tools: XDebug and the Zend Debugger. Learn how to configure PDT for debugging PHP scripts and discover which perspectives you use when taking closer looks at your scripts.
Tutorials 17 Jun 2008  
 
Eclipse: Empowering the universal platform
Watch an installation of Eclipse 3.3, Java JDK 5.0, IBM Cloudscape V10.1, and Apache Tomcat V5.5. This demo is part of a seven part series from a developerWorks Live! briefing. The demo series shows you how to use open source technologies (with focus on Eclipse) to create a powerful development environment.
Demos 11 Jun 2008  
 
Visualizing time-dependent data with distortion portals
Create an SDL-enabled application that allows you to create distortion portals in sequential image frames to explore the relationship of data sets through time.
Articles 10 Jun 2008  
 
Automation for the people: Pushbutton documentation
Project documentation is often one of the necessary evils in delivering a software product. But imagine being able to generate your documentation at the click of a button. In this installment of Automation for the people, automation expert Paul Duvall explains how you can use open source tools to automate the generation of Unified Modeling Language (UML) diagrams, build figures, entity-relationship diagrams (ERDs), and even user documentation.
Articles 10 Jun 2008  
 
Interfacing with the CDT debugger, Part 1: Understand the C/C++ debugger interface
The Eclipse C/C++ Development Tooling (CDT) is one of the most well-known open source environments for C/C++ development, and its full-featured debugger plays a large role in its popularity. What isn't as well known is that the CDT framework can be extended to support custom debuggers. With the right plug-in, a custom debugger can access the full spectrum of the CDT's graphical debugging environment: code-stepping, watchpoints, breakpoints, register contents, memory contents, and variable views. Learn how to construct this plug-in, with a focus on the C/C++ Debugging Interface (CDI).
Articles 10 Jun 2008  
 
Reuse Java code in your Ruby on Rails applications
The Ruby Java Bridge (RJB) lets you load Java classes directly to, and call them from, Ruby on Rails applications. This tutorial shows how you can put this toolkit to work by reusing your legacy Java Web application code in a modern Web development platform.
Tutorials 05 Jun 2008  
 
Add multitouch gesture support to a TouchPad-equipped laptop
Enable swipe and pinch gestures for Linux applications by analyzing synclient program output for a Synaptics TouchPad.
Articles 03 Jun 2008  
 
Embed the NASA World Wind Java SDK in Eclipse
The open source World Wind Java (WWJ) SDK by NASA creates new possibilities for the open Geographic Information Systems (GIS) community. World Wind, a 3D interactive world viewer written in the Java language and OpenGL, lets users zoom from outer space into any place on Earth. This article explains how GIS developers who want to enhance their Eclipse-based applications can embed the WWJ SDK as an Eclipse plug-in.
Articles 03 Jun 2008  
 
Developing iPhone applications using Ruby on Rails and Eclipse, Part 1: Serving content for iPhones
The iPhone and iPod touch made Mobile Safari the most popular mobile browser in the United States. Although Mobile Safari is more than adequate at rendering normal Web pages, many Web developers created versions of applications aimed at the iPhone. This "Developing iPhone applications using Ruby on Rails and Eclipse" series shows how to use Ruby On Rails on the server side to identify and serve custom content to Mobile Safari.
Articles 03 Jun 2008  
 
Meet the JavaScript Development Toolkit
The JavaScript Development Toolkit (JSDT) is an open source plug-in that brings robust JavaScript programming tools to the Eclipse platform. JSDT streamlines development, simplifies code, and increases productivity for pure JavaScript source files and JavaScript embedded in HTML.
Articles 27 May 2008  
 
Build software with Gant
Gant is a highly versatile build framework that leverages both Groovy and Apache Ant to let you implement programmatic logic while using all of Ant's capabilities. In this tutorial, Andy Glover guides you step-by-step through Gant's fundamental concepts. You'll learn how to define behavior in your build through Gant's flexible domain-specific language, how to reuse Ant features, and how to define functions that make your builds more efficient and even proactive.
Tutorials 27 May 2008  
 
Open an Eclipse Rich Client Platform application from a URL
Imagine being able to navigate to the rich function of a Rich Client Platform (RCP) application just as easily as you can navigate to a Web page today. Follow along to enable the opening of specific business objects in your Eclipse RCP application simply by clicking a URL.
Articles 27 May 2008  
 
Setting up your own on-demand video site with PHP, Part 2: Basic structure
Setting up your own on-demand video site doesn't have to be complicated. Upload some videos and put them up for people to watch. Easy enough. But if you're going to be doing a lot of videos, you'll need a way to keep them organized. This three-part "Setting up your own on-demand video site with PHP" tutorial series will take you through what you need to know to create video optimized for the Web, as well as creating a PHP application that will keep your videos organized and readily accessible. Part 1 lays the groundwork by assembling and installing the necessary components, and gathering and converting the video. Part 2 builds the basic application using CakePHP.
Tutorials 20 May 2008  
 
Implement Semantic Web standards in your Web site
With Yahoo's recent announcement that they will implement support of Semantic Web standards in their search engine, the benefits that the Semantic Web has for your site have never been clearer. In addition to the existing benefits such as your structured content giving you a free, open-ended API, you now get the opportunity for increased search rankings, and more importantly, increased relevance because the search engine can better understand what the content of your site is about. In this tutorial you will learn to implement a simple social networking site using PHP and MySQL, which will implement Semantic Web standards such as hCard and Friend of a Friend (FOAF) as part of a semantic Uniform Resource Identifier (URI) scheme.
Tutorials 20 May 2008  
 
Process and integrate Google Notebook data with PHP
Google Notebook is a free service that allows users to save and share notes and Web clippings in an online journal. A REST-based API allows developers to build customized PHP applications around this service using SimpleXML. In this article, you learn how to use the API, with examples of reading notebooks and notebook contents using PHP.
Articles 20 May 2008  
 
Picking the right Eclipse distribution for you
Which Eclipse distribution is right for you? Commercial distributions (distros) based on Eclipse Europa offer different features and conveniences. Many commercial ones also offer free or community editions to download and use. This article compares the CodeGear JBuilder 2008 Turbo trial version, nexB EasyEclipse, IBM's Europa bundles, and Innoopract's Yoxo On Demand distros -- all of which allow you to download a prepackaged, customized version of Eclipse Europa, and many of which already contain the plug-ins and tools you need to start working right away.
Articles 20 May 2008  
 
Understanding Eclipse's new bundle-management mechanism
Learn how to fill the gap between the IBM Rational Functional Tester and the console of Eclipse-based products by supporting the OSGi commands install, ss, start, stop, headers, active, update, and uninstall. The solution offers an effective approach for automation test-case support when the manifest of an Eclipse-AutoStart header has been upgraded to Eclipse-LazyStart. This article presents test scenarios to verify that the bundle-management mechanisms work well.
Articles 13 May 2008  
 
Develop Ajax applications like the pros, Part 1: Using the Prototype JavaScript library and script.aculo.us
If you're developing Web applications these days, then you're doing Ajax development. Ajax is no longer something unusual that you add to your applications in special cases. It has become an integral part of Web development. To some, enhancing applications with Ajax used to be a tricky proposition. Cross-browser limitations to deal with, writing a lot of complicated JavaScript, and learning about magic numeric codes within that JavaScript were just a few of the challenges facing Ajax developers. Thankfully, several open source JavaScript libraries are available now to make things much easier. In this first article in a three-part series, you will create an Ajax application for managing songs using the Prototype JavaScript library and script.aculo.us.
Articles 13 May 2008  
 
Build Web services with PHP in Eclipse
Learn how to build Web services in PHP using the PHP Development Tools plug-in in Eclipse Europa. Become familiar with the PDT project, and learn how to create and deploy useful PHP projects, learn about the philosophy behind contract-first development, and understand the basic parts that make up a Web Services Description Language (WSDL) file.
Tutorials 13 May 2008  
 
The future of PHP
PHP's next edition, V6, includes new features and syntax improvements that will make it easier to use from an object-oriented standpoint. Other important features, such as Unicode support in many of the core functions, mean that PHP V6 is positioned for better international support and robustness.
Articles 06 May 2008  
 
Automation for the people: Manage dependencies with Ivy
Managing source-code dependencies among projects and tools is often a burden, but it doesn't need to be. In this installment of Automation for the people, automation expert Paul Duvall describes how you can use the Apache Ant project's Ivy dependency manager to handle the myriad dependencies that every nontrivial Java project must manage.
Articles 06 May 2008  
 
Integrate external tools and builders in Eclipse
With launch configurations in Eclipse Europa, you can run external programs from within the development environment and save settings for how you call an external program. Learn how to build and use these launch configurations, including the types of automatic parameters available.
Tutorials 06 May 2008  
 
Mock Web services with Apache Synapse to develop and test Web services
Apache Synapse is a simple, lightweight, high-performance enterprise service bus (ESB) released under the Apache License, Version 2.0 from the Apache Software Foundation. Using Apache Synapse, you can filter, transform, route, manipulate, and monitor SOAP, binary, XML, and plain text messages that pass through your large-scale enterprise systems by HTTP, HTTPS, Java Message Service (JMS), Simple Mail Transfer Protocol (SMTP), Post Office Protocol Version 3 (POP3), FTP, file systems, and many other transport mediums. But for an individual developer, what's the use of an ESB product in your day-to-day life? The simplicity of the configuration, out-of-the-box feature set, extensible architecture, and the minimal footprint makes it a versatile and powerful tool that you can use for a variety of tasks. This article examines how you can use Apache Synapse to create mock Web services.
Tutorials 01 May 2008  
 
Migrating to ext4
Ext4 is the latest in a long line of Linux file systems, and it's likely to be as important and popular as its predecessors. As a Linux system administrator, you should be aware of the advantages, disadvantages, and basic steps for migrating to ext4. This article explains when to adopt ext4, how to adapt traditional file system maintenance tool usage to ext4, and how to get the most out of the file system.
Articles 30 Apr 2008  
 
Make JUnit testing Java applications easier with Grester
So, you've written a bunch of unit tests. As a developer, you run your tests multiple times per day, especially in a continuous integration environment. But how badly would they break if the sources had to change? When Jester and Maven combine to make Grester, you can quickly find out.
Articles 29 Apr 2008  
 
Introducing the JyDT plug-in for Eclipse
The JyDT plug-in enables Eclipse to work as a Jython/CPython IDE. This tutorial provides a brief description of the JyDT project and how to configure it. Learn to use the PyDev perspective and explorer, compile and run code, use the debugger, do unit testing, refactor, manage Python projects, and use the editor and IDE.
Tutorials 29 Apr 2008  
 
Jenabean: Easily bind JavaBeans to RDF
The Resource Description Framework (RDF) is the World Wide Web Consortium (W3C) proposed standard for linking and expressing data on the Web. Java developers who develop applications for the Semantic Web will need to convert RDF properties to or from Java types. Jenabean uses the Jena Semantic Web framework's flexible RDF/OWL API to persist JavaBeans, making the task of writing these applications easier and more familiar to Java developers.
Articles 29 Apr 2008  
 
Migrate .NET applications from Visual Studio to Eclipse
Learn how to develop open source C# applications using the Emonic Eclipse plug-in and how to use Eclipse on existing Microsoft .NET Framework V2.0 projects.
Articles 22 Apr 2008  
 
10 time-saving techniques in Eclipse Europa
Eclipse Europa offers many convenient features for navigating and editing Java files. Discover what they are and how to use them, and when you're finished, you may be saying, "I didn't know that!"
Tutorials 22 Apr 2008  
 
Use the YouTube API with PHP
The YouTube video sharing site allows Web application developers to access public content through its REST-based developer API. The SimpleXML extension in PHP is ideal for processing the XML feeds generated by this API and using them to build customized PHP applications. This article introduces the YouTube Data API, demonstrates how you can use it to browse user-generated video content; access video metadata, comments and responses; and perform keyword searches.
Articles 18 Apr 2008  
 
Install Apache Geronimo v1.x on Linux
See how easy it is to install Apache Geronimo in a Linux environment. This demo shows how to install Apache Geronimo v1.x, an open source application server available from the Apache Software Foundation, in a Linux x86 environment for use by multiple developers.
Demos 16 Apr 2008  
 
LPI exam 301 prep, Topic 306: Capacity planning
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this last in a series of six tutorials, Sean walks you through monitoring your system resources, troubleshooting resource problems, and analyzing system capacity.
Tutorials 15 Apr 2008  
 
Mastering Grails: Many-to-many relationships with a dollop of Ajax
Many-to-many (m:m) relationships can be tricky to deal with in a Web application. In this installment of Mastering Grails, Scott Davis shows you how to implement m:m relationships in Grails successfully. See how they're handled by the Grails Object Relational Mapping (GORM) API and the back-end database. Also find out how a bit of Ajax (Asynchronous JavaScript + XML) can streamline the user interface.
Articles 15 Apr 2008  
 
Identify speakers with sndpeek
Use sndpeek and custom algorithms to match voices to a pre-recorded library. Create applications to let you know who is speaking in teleconferences, podcasts, and live media events. Build basic assistance programs to help the hearing-impaired identify speakers in a bandwidth-limited context.
Articles 15 Apr 2008  
 
What's new in Zend Framework V1.5
The popular open source Zend Framework just got some slick enhancements. Learn what's new in V1.5 and how upgrades, including Zend_Form, Zend_Layout and Zend_View, enhanced support for GData Web services, and improved Ajax support can help PHP developers easily roll out cutting-edge Web applications.
Articles 15 Apr 2008  
 
Tapestry and Wicket compared
JSF and Struts are the traditional component frameworks developers turn to for Web development. You have an alternative, however: Tapestry and Wicket are component-oriented Web frameworks designed to create Web applications. A simple example application implementing a to-do list workflow is developed here, using Tapestry and Wicket technologies.
Articles 08 Apr 2008  
 
Metamodeling with EMF: Generating concrete, reusable Java snippets
Learn how to extend the Eclipse Modeling Framework (EMF) Ecore metamodel by adding elements and attributes to model reusable Java snippets. Also see, step by step, how to use dynamic templates with JET to generate the implementation code for the extended model elements.
Articles 08 Apr 2008  
 
Linux development on the PlayStation 3, Part 3: Slimming down X11 with tiny tools
The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In the third and final article of this series on PS3 Linux, Peter Seebach talks about ways to get X11 slimmed down to fit on a smaller memory budget.
Articles 08 Apr 2008  
 
LPI exam 301 prep, Topic 305: Integration and migration
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this fifth in a series of six tutorials, Sean walks you through integrating LDAP with your system's logins and applications. He also details the procedure to integrate your server into a foreign Microsoft Active Directory.
Tutorials 08 Apr 2008  
 
Plug-in development 101, Part 2: Introducing rich-client applications
Plug-in development in Eclipse is somewhat of an art form. If you're new to the concept of plug-ins, especially in the context of OSGi and Eclipse, it can be a burden learning the myriad tools Eclipse has to help you write plug-ins. This article will help you learn some basic plug-in development skills, with some best practices sprinkled in for good measure.
Articles 01 Apr 2008  
 
Setting up your own on-demand video site with PHP, Part 1: Groundwork
Setting up your own on-demand video site doesn't have to be complicated. Upload some videos and put them up for people to watch. Easy enough. But if you're going to be doing a lot of videos, you'll need a way to keep them organized. This three-part "Setting up your own on-demand video site with PHP" tutorial series will take you through what you need to know to create video optimized for the Web, as well as creating a PHP application that will keep your videos organized and readily accessible. Part 1 lays the groundwork by assembling and installing the necessary components and gathering and converting the video.
Tutorials 01 Apr 2008  
 
Linux development on the PlayStation 3, Part 2: Working with memory
The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In this article, the second in a series, Peter Seebach takes a look at where all the memory goes and how to reclaim it.
Articles 31 Mar 2008  
 
Five more PHP design patterns
PHP V5's object-oriented features give you the ability to implement design patterns to improve your code's design. When you improve your code's design in this way, it becomes more readable, more maintainable, and more robust to absorb changes.
Articles 25 Mar 2008  
 
LPI exam 301 prep, Topic 304: Usage
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this fourth in a series of six tutorials, Sean walks you through searching your LDAP tree and using the command-line tools. You'll also learn how to set up Microsoft Outlook to query your LDAP tree.
Tutorials 25 Mar 2008  
 
Develop and execute WS-BPEL V2.0 business processes using the Eclipse BPEL plug-in
BPEL V2.0 is a powerful language intended to help in development of huge, complex applications consisting of a lot of other components and Web services. BPEL allows you to describe long-running workflows using graphical editors to present workflows on human-friendly diagrams. This article describes how to combine the Eclipse BPEL plug-in for development of processes and Apache ODE for their execution.
Articles 25 Mar 2008  
 
Eclipse at eBay, Part 2: eBay's plug-ins in action
Eclipse has become the premier integrated development environment (IDE) for Java developers everywhere. Eclipse is definitely not a one-size-fits-all system, though. Its plug-in architecture allows you to add the features you need. This is even more important in large organizations like eBay. Such organizations have very specific needs. Eclipse makes it easy to not only tailor a solution to those needs but also to scale that solution across a large organization. Here in Part 2 of a two-part "Eclipse at eBay" series, we will look at some of the organizational needs of eBay and how it has used Eclipse to fill those needs. We will concentrate on how eBay has used Eclipse, but the beauty is that you can employ similar tactics for your organization.
Articles 18 Mar 2008  
 
Implement business logic with the Drools rules engine
Using a rules engine can lower an application's maintenance and extensibility costs by reducing the complexity of components that implement complex business logic. This updated article shows you how to use the open source Drools rules engine to make a Java application more adaptive to changes. The Drools project has introduced a new native rule expression language and an Eclipse plug-in, making Drools easier to use than ever before.
Articles 18 Mar 2008  
 
Linux development on the PlayStation 3, Part 1: More than a toy
The Sony PlayStation 3 (PS3) runs Linux, but getting it to run well requires some tweaking. In this article, first in a series, Peter Seebach introduces the features and benefits of PS3 Linux, and explains some of the issues that might benefit from a bit of tweaking.
Articles 18 Mar 2008  
 
Build a mobile RSS reader
What good is a mobile computing environment if you can't keep track of your favorite news feeds on the go? Sure, you can use Android's browser to read your favorite Web sites, but it's unlikely the sites are optimized for a screen two inches high. And besides, then you'll miss the opportunity to integrate RSS or other XML data with other mobile applications to make your own mash-ups. This tutorial shows you how to use the Android Developer Tools to read, parse, and display XML data.
Tutorials 18 Mar 2008  
 
Identify and verify users based on how they type
Modify the GNOME Display Manager (GDM) to support user verification through keystroke-dynamics processing. Create and store a one-way encrypted hash of your keystroke patterns when entering your user name. Add code to GDM to read current keystroke patterns and permit a user to log in when the characteristics are a match.
Articles 18 Mar 2008  
 
ThinkPad aerobics: Rotate and shake your laptop to control applications
Use synthetic X Window System events and embedded accelerometers to control applications by the movement of a laptop computer. Translate gestures, such as shaking, into mode-switching commands with detection algorithms to interact with applications in new ways. Develop tools to help build the next generation of interfaces that use accelerometers, such as applications for laptops and iPhones.
Articles 11 Mar 2008  
 
Dynamic programming and sequence alignment
Molecular biology is increasingly dependent on computer science algorithms as research tools. This article introduces you to bioinformatics -- the use of computers to solve biological problems. Learn the basics of dynamic programming, an advanced algorithmic technique you may find useful in many of your programming projects.
Articles 11 Mar 2008  
 
Mastering Grails: Changing the view with Groovy Server Pages
Groovy Server Pages (GSP) puts the "Web" in the Grails Web framework. In the third installment of his Mastering Grails series, Scott Davis shows you the ins and outs of working with GSP. See how easy it is to use Grails TagLibs, mix together partial fragments of GSPs, and customize the default templates for the automatically generated (scaffolded) views.
Articles 11 Mar 2008  
 
Eclipse at eBay, Part 1: Tailoring Eclipse to the eBay architecture
Eclipse's first claim to fame was as an integrated development environment (IDE) for Java. Eclipse's plug-in architecture is a big reason for its success. There are many popular plug-ins available, and it is very easy to create your own. These two traits make Eclipse a perfect fit for systems with specialized architectures, such as eBay. In this article, the first of a two-part series covering eBay's use of Eclipse, we look at eBay's architecture and how eBay has tailored Eclipse to suit its architecture. While the article focuses on eBay, you can use the lessons here to tailor Eclipse to your system's architecture.
Articles 11 Mar 2008  
 
Scaling PHP applications with Varnish
Stretch the capacity of your Web server farm with PHP and a reverse proxy, such as Varnish.
Articles 04 Mar 2008  
 
LPI exam 301 prep, Topic 303: Configuration
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this third in a series of six tutorials, Sean walks you through configuring a Lightweight Directory Access Protocol (LDAP) server, including access control, security, and performance. By the end of this tutorial, you'll know about LDAP server configuration.
Tutorials 04 Mar 2008  
 
WSAS and Eclipse simplify creating Web services
We find Web services everywhere today. There's a good chance you will need to create Web services for whatever new applications or features you are developing. And it was not too long ago that this could be a painful proposition. WSO2 realized this and created an Eclipse plug-in to help make working with Web services easier. This article explores the WSO2 Web Services Application Server (WSAS) Eclipse plug-in and how it can help you develop Web services.
Articles 04 Mar 2008  
 
Develop Android applications with Eclipse
Android is Google's oft-discussed mobile, wireless, computer, and communications platform. You can take advantage of the powerful Eclipse environment to build Android applications using the Android Eclipse plug-in. This tutorial introduces Android application development with the Eclipse plug-in, otherwise known as Android Development Tools. The tutorial provides an introduction to Android development with a quick introduction to the platform, a tour of Android Development Tools, and includes the construction of two example applications.
Tutorials 26 Feb 2008  
 
Desktop development for the OLPC laptop
The XO laptop (of the One-Laptop-Per-Child initiative) is an inexpensive laptop project intended to help educate children around the world. The laptop includes many innovations, such as a novel, inexpensive, and durable hardware design and the use of GNU/Linux as the underlying operating system. The XO also includes an application environment written in Python with a human interface called Sugar, accessible to everyone (including kids). This article is excerpted from the developerWorks tutorial "Application development for the OLPC laptop," which takes a look at the Sugar APIs and shows how to develop and debug a graphical activity in Sugar using Python.
Articles 26 Feb 2008  
 
Create your own information space with Ajax and del.icio.us
del.icio.us is a social bookmarking Web site that allows users to create and share browser-independent bookmarks, accessible directly over the Internet, in ways your browser won't allow. The traditional hierarchical organization of browser bookmarks is overhauled, allowing users to instead associate each and every bookmark with any number of descriptive tags. Imagine a single page where you and your friends can surf the Web and have your del.icio.us tags, links, and functions handy, or a single page where you can save the site you're browsing directly into your del.icio.us account, along with comments and chosen tags. This tutorial shows you how to use Ajax to build just such a page using a PHP script as the server-side proxy.
Tutorials 26 Feb 2008  
 
PHP frameworks, Part 5: Integrating external tasks
A short few years ago, a common criticism about PHP was that it did not support MVC-style architectures. Today, developers can chose from many PHP frameworks. This "PHP frameworks" series takes a look at three widely used PHP frameworks -- Zend, symfony, and CakePHP -- examining their similarities and differences while building and extending a sample application in each of the three. In this article, you will integrate external tasks, creating a simple task that can be called using the scheduler cron.
Articles 19 Feb 2008  
 
Configuring and adding menu items in Eclipse V3.3
In earlier versions of Eclipse, adding commands to a menu, pop-up menu,or toolbar was tricky. No more! Eclipse V3.3 introduces a mechanism that's easier than ever. Find out how to use org.eclipse.ui.menus.
Articles 19 Feb 2008  
 
Automate data entry with Web services and Ajax
Let's cut through the chatter and find out how a Web service and Asynchronous JavaScript + XML (Ajax) can improve an application, in this case a Ruby on Rails (RoR) application. This article shows you how to spruce up a common Web activity -- entering a street address -- with Ajax and a call to a Web service. Learn a few tricks to combining these fundamental Web 2.0 components.
Articles 14 Feb 2008  
 
PHP frameworks, Part 4: Ajax support
A common criticism of early versions on PHP was that they did not support Model-View-Controller (MVC)-style architectures. Today, developers can chose from many PHP frameworks. This "PHP frameworks" series takes a look at three widely used PHP frameworks -- Zend, symfony, and CakePHP -- examining their similarities and differences while building and extending a sample application in each of the three frameworks. Part 1 lays out the scope for the series and gets the prerequisites out of the way. In Part 2, you build the sample application in each of the three frameworks. In Part 3, you extend the application and look at exceptions to the rule. Here, take a look at how Asynchronous JavaScript + XML (Ajax) is supported in each of the frameworks.
Articles 12 Feb 2008  
 
Mastering Grails: GORM: Funny name, serious technology
Any good Web framework needs a solid persistence strategy. In this second installment of his Mastering Grails series, Scott Davis introduces the Grails Object Relational Mapping (GORM) API. See how easy it is to create relationships between tables, enforce data validation rules, and change relational databases in your Grails applications.
Articles 12 Feb 2008  
 
Plug-in development 101, Part 1: The fundamentals
Plug-in development in Eclipse is somewhat of an art form. If you're new to the concept of plug-ins, especially in the context of OSGi and Eclipse, it can be quite burdensome learning the myriad tools Eclipse has to help you write plug-ins. The purpose of this article is to help you learn some basic plug-in development skills with some best practices sprinkled in for good measure.
Articles 12 Feb 2008  
 
Take your ThinkPad out for a walk to create wireless site surveys
Use the accelerometer embedded in a ThinkPad to record your movements while monitoring your network connectivity. Use custom algorithms to extract footstep features from the recorded data, then automatically plot signal strengths on a floor-plan map to determine the best areas of coverage.
Articles 12 Feb 2008  
 
Top 10 Open source tutorials and articles -- October 2009
Check out which Open source tutorials and articles developerWorks readers found most interesting last month.
08 Feb 2008  
 
Jump-start your PHP applications with the Eclipse PHP Class Generator plug-in
PHP classes can sometimes still be a black box, a big unknown to many new and some old-school PHP developers. But it doesn't have to be that way. Classes help modularize code and remove extraneous copies of code scattered throughout the code base by placing the code into functions within classes. This helps make maintaining your code much easier. That's what the PHP Class Generator plug-in for Eclipse helps PHP developers do: generate PHP classes to help manage database tables, so you don't have to, which helps speed up the learning curve.
Articles 05 Feb 2008  
 
Receive events from XMLBeans
XMLBeans is a great XML-to-Java data-binding technology, but it lacks the ability to register observers for model changes. However, you can customize generated plain old Java objects (POJOs) to include the necessary interfaces and the notification of changes. Create a Sudoku Rich Client Platform (RCP) game application in Eclipse, and learn how to use eventing to validate the user's input.
Articles 29 Jan 2008  
 
Execute business processes with Eclipse
Everyone -- from consultants and analysts to architects and engineers -- has ideas. But implementing a new idea can be challenging, requiring knowledge of an unfamiliar development language or hiring costly developers. What if there was a way to create an executable business process using a graphical editor that can ultimately be executed on an appropriate engine? Well, there is. Using the Eclipse STP BPMN Modeler, you can graphically create a business model represented in XML that can be converted to an executable using Eclipse ATL that will ultimately deploy on Apache ODE.
Tutorials 29 Jan 2008  
 
Develop iPhone Web applications with Eclipse
Learn to create iPhone Web sites using Eclipse, Aptana's iPhone Development plug-in, and the iUi framework. See the development of a Javadoc viewer for the iPhone, uncover tips for user interface design, and hear about the future of iPhone application development.
Articles 29 Jan 2008  
 
Tip: Manipulate del.icio.us bookmarks with PHP
The del.icio.us service lets users collect and share bookmarks online. Manipulate these bookmarks with PEAR's Services_Delicious package that interfaces with the REST API of del.icio.us and build customized PHP applications.
Articles 22 Jan 2008  
 
Build a customizable RSS feed aggregator in PHP
RSS (Rich Site Summary, RDF Site Summary, or Really Simple Syndication) has been around since the mid-1990s. Over the years, several variants of the RSS format have popped up and several claims have been made about its ownership. Despite these differences, RSS never ceased to serve its usefulness in distributing Web content from one Web site to many others. The popularity of RSS gave way to the growth of a new class of Web software called the feed reader, also known as the feed aggregator. Although there are several commercially available feed aggregators, it's easy to develop your own feed aggregator, which you can integrate with your Web applications. You'll appreciate this article's fully functional PHP code snippets, demonstrating the use of PHP-based server-side functions to develop a customizable RSS feed aggregator. In addition, you'll reap instant benefits from using the fully functional RSS feed aggregator code, which you can download from this article.
Articles 22 Jan 2008  
 
Enterprise search with PHP and Apache Solr
Discover how to combine an enterprise-worthy search engine -- Apache Software Foundation's Solr -- with your PHP application.
Articles 15 Jan 2008  
 
Explore Ubuntu Mobile and Embedded
Ubuntu is a great server and desktop distribution for the GNU/Linux operating system, but did you know that it's also ideal for handheld and mobile embedded devices? Ubuntu's latest release, Gutsy Gibbon, now includes support for the embedded and mobile spaces with the Ubuntu Mobile and Embedded (UME) project. Get to know the UME project, and find out how to get started.
Tutorials 15 Jan 2008  
 
Getting started with the Orangevolt Eclipse XSLT plug-in
The Orangevolt XSLT plug-in, a successor of the Swing-based ROXES XmlWrite, provides Eclipse with an enhanced XSLT editing environment. The plug-in builds on the existing Eclipse Web Tools Platform (WTP) and introduces new features for XSL and XML. Learn what XSLT can do for you and how easy it is to employ XSLT with the Orangevolt XSLT plug-in.
Articles 15 Jan 2008  
 
Mastering Grails: Build your first Grails application
Java programmers needn't abandon their favorite language and existing development infrastructure to adopt a modern Web development framework. In the first installment of his new monthly series Mastering Grails, Java expert Scott Davis introduces Grails and demonstrates how to build your first Grails application.
Articles 15 Jan 2008  
 
Java API reference documentation
This article further discusses the JavaTOC doclet, how to use it, and how to extend it. The approaches described are the Javadoc standard solution and the Eclipse Plug-in Help System generated using the tool. I will run the JavaTOC doclet in Eclipse through the Custom doclet wizard, and second through Ant build system. The JavaTOC tool generates the TOC XML navigation for Java API reference documentation.
Articles 15 Jan 2008  
 
Pull parsing XML in PHP
Discover the XMLReader library, which is bundled with PHP 5 and enables PHP pages to process XML documents in an efficient streaming mode.
Articles 11 Jan 2008  
 
Mastering regular expressions in PHP, Part 2: How to process text in PHP
Here in Part 2 of this "Mastering regular expressions in PHP" series, learn how to solve a variety of difficult text processing problems with a few advanced regular expression operators.
Articles 08 Jan 2008  
 
Convert Atom documents to JSON
Converting an Atom document to JSON might, at first, appear to be a fairly straightforward task. Atom is, after all, just a bit of XML and XML-to-JSON conversion tools are widely available. However, the Atom format is more than just a set of XML elements and attributes. A number of subtle details can make proper handling of Atom difficult. This article describes those issues and demonstrates a mechanism implemented by the Apache Abdera project to convert Atom documents into JSON and produces a result that is readable, usable, and complete.
Articles 08 Jan 2008  
 
Cell/B.E. container virtualization, Part 2: Implementation issues
This three-part series illustrates a hardware-resource-focused form of software virtualization known as container virtualization (or operating system virtualization), demonstrated through the open source project OpenVZ. The series provides a comprehensive overview of all the components and techniques needed to virtualize the Cell/B.E. processor with software methods. This second article of the series details the implementation of dedicated virtualization and partitioning that was described in Part 1 of the series.
Articles 08 Jan 2008  
 
Tip: Easy command line processing with the DITA Open Toolkit
The DITA Open Toolkit can transform your DITA files into a wide variety of output types. When you first install it, it's easy to get the impression that you need to know Ant well to use it, but you can pack most of its available options into a single Java(TM) command line.
Articles 08 Jan 2008  
 
Building the DB2 Health Monitor Sample Application for PHP, Part 2: DB2 pureXML or DOM? You decide
DB2 9 pureXML technology allows businesses to improve data integrity and avoid legacy data lock-in. It enables application developers to utilize the best storage medium for the task and eliminate the middle-tier application logic previously required to take advantage of Web services. It enables DBAs to centralize logic at the database server and to help to optimize performance. More importantly, pureXML technology helps to reduce the complexity of application development back to what it always has been by utilizing the database for what it does best: to describe, retrieve, and store data. This article uses the DB2 Health Monitor Sample Application as an example to show you how this is possible.
Articles 03 Jan 2008  
 
Mastering regular expressions in PHP, Part 1: Perl may be regex king, but PHP can slice and dice input quickly, too
Pattern matching is such a common chore for software that a special shorthand -- regular expressions -- has evolved to make light work of the task. Learn how to use this shorthand in your code.
Articles 01 Jan 2008  
 
Java API reference documentation
This article, Part 2 of a series, describes different approaches for generating easy-to-use and searchable Java application programming interfaces (API) reference documentation.
Articles 26 Dec 2007  
 
Build an Ajax-enabled search page using the Rico JavaScript library, ColdFusion MX 7, and Windows Indexing Service
A Web site or intranet has such a high volume of information available that you need special tools to index the content and provide access to it in a fast and convenient way. Learn how to do just that and provide a state-of-the-art search facility with the help of an Ajax library coupled with mature technologies like ColdFusion and Windows Indexing Service.
Articles 18 Dec 2007  
 
Application development for the OLPC laptop
The XO laptop (of the One-Laptop-Per-Child initiative) is an inexpensive laptop project intended to help educate children around the world. The XO laptop includes many innovations, such as a novel, inexpensive, and durable hardware design and the use of GNU/Linux as the underlying operating system. The XO also includes an application environment written in Python with a human interface called Sugar, accessible to everyone (including kids). Explore the Sugar APIs and learn how to develop and debug a graphical activity in Sugar using Python.
Tutorials 18 Dec 2007  
 
Building JavaScript applications with JSEclipse
Using JSEclipse, JavaScript programmers now have their own Eclipse plug-in that provides many important features to aid in the development of JavaScript applications. JSEclipse gives JavaScript developers the same ease of use that Eclipse has been providing in the Java language and others for years. Learn to use this tool, while creating a colony of evolving "creatures" on your page.
Tutorials 18 Dec 2007  
 
Web development with Eclipse Europa, Part 3: Ruby Development Toolkit and RadRails
It's a good time to be a Web developer. You've never had more choices in terms of technologies. There are so many great open source Web servers, databases, programming languages, and development frameworks. No matter what combination of technologies you prefer to work with, there is a single integrated development environment (IDE) that can increase your productivity: Eclipse. In Part 1 of this three-part series on how to use Eclipse for Web development in Java, PHP, and Ruby, you saw how the latest release of Eclipse -- Europa -- can be used to rapidly develop Java Web applications. In Part 2, you saw how easy it is to develop PHP applications using a different set of Eclipse plug-ins, collectively known as the PHP Development Toolkit (PDT). Here in Part 3, we introduce the RDT and RadRails Eclipse plug-ins and show you how to get these plug-ins and start using them. You will learn how to use RadRails to do many common Ruby on Rails development tasks.
Tutorials 18 Dec 2007  
 
Rich Ajax Platform, Part 2: Developing applications
The Rich Client Platform (RCP) is a powerful platform technology to build enterprise applications. With the help of Rich Ajax Platform (RAP), it gets more interesting because you can reuse your existing code base and development skills for a Web application, as you saw in Part 1 of this "Rich Client Platform" series. Additionally, RAP has some noteworthy features, making Web development even more attractive. The article goes beyond the Hello World example, and explains some key concepts and how to use advanced features provided by RAP.
Articles 11 Dec 2007  
 
Web development with Eclipse Europa, Part 2: The Java EE for Eclipse
No matter what combination of technologies you prefer to work with as a Web developer, Eclipse is a single integrated development environment (IDE) that can increase your productivity. In Part 1 of this three-part series, you saw how the latest release of Eclipse -- Europa -- can be used to rapidly develop Java Web applications. In this tutorial, Part 2, we'll see how easy it is to develop PHP applications using a different set of Eclipse plug-ins, collectively known as the PHP Development Toolkit (PDT.)
Tutorials 11 Dec 2007  
 
Cell/B.E. container virtualization, Part 1: Concepts, architectures, and tools
This three-part series illustrates a hardware-resource-focused form of software virtualization known as container virtualization (or operating system virtualization), demonstrated through the open source project OpenVZ. The series provides a comprehensive overview of all the components and techniques needed to virtualize the Cell/B.E. processor with software methods. This first article of the series discusses the basic concepts involved, illustrates the salient points of the OpenVZ and Cell/B.E. architectures and how they work together, and describes some of the OpenVZ tools.
Articles 11 Dec 2007  
 
Tip: Parsing RDDL documents with PHP
The Resource Directory Description Language (RDDL) lets document authors provide more information about resources used within an XHTML document. Parse these RDDL descriptors with an API in the XML_RDDL package from PEAR, and extract resource information for use in any PHP application.
Articles 10 Dec 2007  
 
Futureproofing With SCA
See how SCA can help you build systems that are easy to fit with existing infrastructure and extend in the future.
Articles 06 Dec 2007  
 
Kick-start your Java apps, Part 2
The combination of Eclipse, DB2 Express-C 9.5, and WebSphere Application Server Community Edition 2.0 -- all free to download, use, and deploy -- is an excellent from-prototype-to-production suite for all of your Java and Java enterprise development needs. What might not be obvious is the relative ease with which you can use these proven tools to create, test, and deploy cutting-edge, lightweight applications as well. This tutorial guides you through the development of a small human-resources application, first using conventional JavaServer Pages (JSP) based technology, and then migrating it to a highly interactive solution using Ajax.
Tutorials 05 Dec 2007  
 
Kick-start your Java apps
To create, test, and deploy a Web-based application or Web service rapidly, you need a proven relational database, a standards-compliant Web application server, and a flexible IDE. Ideally, all these software packages are production-tested, simple to obtain, easy to use, and well integrated with one another. This tutorial shows you how to use IBM-backed open source and free software to kick-start your Java Web-based application development. You'll learn exactly where to download such components, install them, and get them working for you today.
Tutorials 05 Dec 2007  
 
PHP frameworks, Part 3: User authentication
A common criticism of early versions on PHP was that they did not support Model-View-Controller (MVC)-style architectures. Today, developers can chose from many PHP frameworks. This "PHP frameworks" series takes a look at three widely used PHP frameworks -- Zend, symfony, and CakePHP -- examining their similarities and differences while building and extending a sample application in each of the three frameworks. Part 1 lays out the scope for the series and gets the prerequisites out of the way. In Part 2, you build the sample application in each of the three frameworks. Here in Part 3, you will extend the application and look at exceptions to the rule.
Articles 04 Dec 2007  
 
LPI exam 301 prep, Topic 302: Installation and development
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this second in a series of six tutorials, Sean walks you through installing and configuring a Lightweight Directory Access Protocol (LDAP) server, and writing some Perl scripts to access the data. By the end of this tutorial, you'll know about LDAP server installation, configuration, and programming.
Tutorials 04 Dec 2007  
 
Expand your text entry options with keystroke dynamics
Measure the total time of entry and verify the time between keystrokes to help authenticate a user regardless of the data being entered. Require nonprintable characters, such as backspace and break, in the password to enable new levels of password obfuscation. Learn how to apply the open source tools xev and Perl in keystroke dynamics to measure the more-subtle characteristics of human-computer interaction.
Articles 04 Dec 2007  
 
Display Google Calendar events on your PHP Web site with XPath
Google Calendar and other online calendaring applications provide simple centralized systems where online communities can maintain event calendars and community members can get information about upcoming events. But many organizations prefer to display event calendars on their community portals, forums, or blogs. They often copy event calendar information from online calendaring applications onto their Web sites, reducing the effectiveness of centrally managing events online. Google Calendar provides an integration application program interface (API) that provides a good solution to this problem. Find out how to use XPath to extract and display Google Calendar data on your PHP Web site.
Articles 27 Nov 2007  
 
Using the Eclipse SOA Tools Platform plug-in and Apache Tuscany
The Eclipse SOA Tools Platform (STP) plug-in and Apache Tuscany simplifies services development through the use of the popular Eclipse development environment. Apache Tuscany has also been integrated with the STP to provide a Service Component Architecture (SCA) Java run time for the services you create, allowing you to annotate your service using the SCA standard and Apache Tuscany annotations. In this tutorial, you will see STP and Apache Tuscany in action, through the creation of a Remote Method Invocation (RMI) service.
Tutorials 27 Nov 2007  
 
Build metamodels with dynamic EMF
Learn how the Dynamic Eclipse Modeling Framework (EMF) allows you to build dynamic Ecore-based models on demand without the need to generate Java implementation classes. This article introduces the APIs, and shows how to serialize and load dynamic Ecore models and their instances.
Articles 20 Nov 2007  
 
Web development with Eclipse Europa, Part 1: The Java EE for Eclipse
It's a good time to be a Web developer. You've never had more choices in terms of technologies. There are so many great open source Web servers, databases, programming languages, and development frameworks. No matter what combination of technologies you prefer to work with, there is an integrated development environment (IDE) that can increase your productivity: Eclipse. In this tutorial, Part 1 of a three-part "Web development with Eclipse Europa" series on how to use Eclipse for Web development with Java technology, PHP, and Ruby, we'll see how the latest release of Eclipse -- Europa -- can be used to rapidly develop Java Web applications. We'll use Java Platform, Enterprise Edition 5 (Java EE) for Eclipse to build a Web application for tracking and calculating baseball statistics.
Tutorials 20 Nov 2007  
 
Anatomy of the Linux SCSI subsystem
The Small Computer Systems Interface (SCSI) is a collection of standards that define the interface and protocols for communicating with a large number of devices (predominantly storage related). Linux provides a SCSI subsystem to permit communication with these devices. Linux is a great example of a layered architecture that joins high-level drivers, such as disk or CD-ROM drivers, to a physical interface such as Fibre Channel or Serial Attached SCSI (SAS). This article introduces you to the Linux SCSI subsystem and discusses where this subsystem is going in the future.
Articles 14 Nov 2007  
 
Squash bugs in PHP applications with Zend Debugger
A special application called a debugger probes running code, allowing you to suspend execution arbitrarily, examine objects, explore the call stack, and even change the value of a variable on the fly. Learn how to use a debugger to squash bugs in your PHP code.
Articles 13 Nov 2007  
 
Software development for the OpenMoko Linux phone
The OpenMoko environment provides a completely free development environment for running application and system code on supported phone hardware, eliminating all dependency on proprietary code. This tutorial introduces the OpenEmbedded build environment used to create filesystem images for OpenMoko phones, such as the Neo 1973.
Tutorials 13 Nov 2007  
 
Emacs editing environment, Part 7: Let Emacs help you out
Part 7 of this series shows you why Emacs is the self-documenting editor, and the many ways in which you can take advantage of the help and assistance offered in this editor. In this tutorial, learn about describing keystrokes, commands, and functions. You'll also read, browse, and search through a complete Emacs reference manual.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 6: Use simulator consoles, use the ALF wizard, and set IDE preferences
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 5: Debug and complete dynamic or static performance
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 4: Configure the application launcher
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 3: Create the Cell/B.E. simulator environment
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 2: Create a PPU project
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Cell/B.E. SDK 3.0, Part 1: Create an SPU project
This introductory tutorial, designed for the IBM SDK for Multicore Acceleration, Version 3.0 (otherwise known as the Cell Broadband Engine SDK), explores the Cell/B.E. processor IDE and gives developers a click-for-click walk-through of building a simple project in this environment. This tutorial is broken into six quick-perform parts dealing with creating an SPU project, creating a PPU project, creating the Cell/B.E. simulator, configuring the application launcher, debugging and doing performance analysis, using simulator consoles, using the ALF wizard, and setting IDE preferences.
Tutorials 13 Nov 2007  
 
Create automated verbal conversation annotations for phone numbers, acronyms, and other spoken words
Use the open source Sphinx-4 speech-recognition package to capture letters and numbers from spoken conversations in near real time to create notes. Employ a custom Sphinx-4 dictionary file to extract likely matches to spoken letters and numbers. Process the text for higher order values, such as phone numbers and acronyms, and create a meeting annotator through search-engine lookups and local databases.
Articles 13 Nov 2007  
 
Process XML configuration files with PHP
XML provides a convenient, easy-to-use expression language for an application's configuration files. To extract this information into a PHP script can sometimes pose a challenge. That's where the XJConf for PHP package comes in: It provides an API to read XML-encoded information and directly use it to configure PHP data structures like scalars, arrays and PHP objects. This article introduces the package and demonstrates some useful real-world applications of its usage, including configuring complex class trees and building a Web-based configuration interface.
Articles 06 Nov 2007  
 
Code ColdFusion applications fast with the Eclipse CFEclipse plug-in
ColdFusion, like other Web development languages, enjoys an enthusiastic following. Since Eclipse is a popular open source development framework, it was only a matter of time before a ColdFusion plug-in would emerge. Find out how to install and use the plug-in to develop, test, and deploy a sample ColdFusion application.
Articles 06 Nov 2007  
 
Building a Rich Client Platform application with Eclipse
Learn how to build a Rich Client Platform (RCP) application using Eclipse. This demo shows you how to use pre-built RCP application templates to easily build the framework for your applications. Then, it shows you how to turn these pre-built templates into an excited and unique application using the RCP application editor.
Demos 05 Nov 2007  
 
Automated GUI testing with Eclipse
If you are interested in automated graphical user interface (GUI) testing, this demo is for you. This demonstration covers automated graphical user interface testing with a technology preview plugin provided by the Eclipse TPTP. It shows you how to create a test project, create three test cases, create a test suite, and analyze the test suite.
Demos 05 Nov 2007  
 
Sign and verify XML documents using Apache WSS4J and WebSphere DataPower SOA Appliances
With the increasing adoption of Web services and Service-Oriented Architectures (SOAs), ensuring the authenticity, integrity, and nonrepudiability of XML messages has become an essential component of secure and robust messaging infrastructures. Using a sample scenario, this article walks you through how to use Apache WSS4J and IBM WebSphere DataPower SOA Appliances together to enable the signing and verification of XML documents.
Articles 01 Nov 2007  
 
Apache Lucene quick-start guide
Apache Lucene is a robust open source search solution for myriad applications, including your own favorite Web sites or your company's intranet. Apache Lucene will go out and grab and index pages you specify, allowing you to search them at will. It also comprises several add-on applications, or subprojects, including the Apache Solr Enterprise search server. In this tutorial, you'll learn how to use Apache Solr and integrate it with a Web application.
Tutorials 30 Oct 2007  
 
LPI exam 301 prep, Topic 301: Concepts, architecture, and design
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam. In this first in a series of six tutorials, Sean introduces you to Lightweight Directory Access Protocol (LDAP) concepts, architecture, and design. By the end of this tutorial, you will know about LDAP concepts and architecture, directory design, and schemas.
Tutorial 23 Oct 2007  
 
LPI exam 301 prep, Topic 301: Concepts, architecture, and design
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam 301. In this first in a series of six tutorials, Sean introduces you to Lightweight Directory Access Protocol (LDAP) concepts, architecture, and design. By the end of this tutorial, you will know about LDAP concepts and architecture, directory design, and schemas.
Tutorials 23 Oct 2007  
 
LPI exam 301 prep, Topic 301: Concepts, architecture, and design
In this tutorial, Sean Walberg helps you prepare to take the Linux Professional Institute Senior Level Linux Professional (LPIC-3) exam 301. In this first in a series of six tutorials, Sean introduces you to Lightweight Directory Access Protocol (LDAP) concepts, architecture, and design. By the end of this tutorial, you will know about LDAP concepts and architecture, directory design, and schemas.
Tutorials 23 Oct 2007  
 
Make Ajax development easier with AjaxTags
Developers and users have much higher expectations for the usability and responsiveness of Web-based applications in the Web 2.0 era. Unless you've been living under a rock for the past two years, you've likely heard of Asynchronous JavaScript + XML (the Ajax technique). Ajax allows you to build slick, responsive, and highly dynamic browser-based user interfaces without requiring browser page reloads. This article takes a look at AjaxTags, a Java/JavaScript Library that lets you easily integrate Ajax functionality into your JSP pages.
Articles 23 Oct 2007  
 
Rich Ajax Platform, Part 1: An introduction
Asynchronous JavaScript + XML (Ajax) and the concept of Web 2.0 has spread through the development community as a way add liveliness to Web-based applications. The Rich Ajax Platform (RAP) is a way to build Ajax-enabled Web applications by using the Eclipse development model. This article introduces RAP, tells you how to set up a RAP development environment, shows off some demos, and concludes with some simple-to-understand examples.
Articles 23 Oct 2007  
 
Ajax and XML: Ajax for media
With the advent of widely available broadband, media, movies, images, and sound drive the Web 2.0 revolution. Learn to combine media with technologies such as PHP and Asynchronous JavaScript + XML (Ajax) to create a compelling experience for your customers.
Articles 23 Oct 2007  
 
Linux assemblers: A comparison of GAS and NASM
This article explains some of the more important syntactic and semantic differences between two of the most popular assemblers for Linux, GNU Assembler (GAS) and Netwide Assembler (NASM), including differences in basic syntax, variables and memory access, macro handling, functions and external routines, stack handling, and techniques for easily repeating blocks of code.
Articles 17 Oct 2007  
 
Refine and debug PHP applications with syslog
An old technique for exploring a running program is to place code that "displays" the current value of variables at strategic points. But how is this done without interfering with the standard output of the program? With PHP's syslog() facility, examining these values is easy.
Articles 16 Oct 2007  
 
PHP frameworks, Part 2: Building the sample application
This PHP frameworks series takes a look at three widely used PHP frameworks -- Zend, symfony, and CakePHP -- examining their similarities and differences while building and extending a sample application in each of the three frameworks. Part 1 lays out the scope for the series and gets the prerequisites out of the way. Here in Part 2, you will build the sample application in each of the three frameworks.
Articles 16 Oct 2007  
 
Develop asynchronous Web services with Axis2
The implementation and invocation of asynchronous Web services is important to application development. UIs, which expose functionalities of Web services, have become increasingly interactive. As a result, asynchronous invocations and implementations have become more useful and effective, ultimately helping provide a better overall user experience. This article gives you an overview of different patterns for asynchronous scenarios in Web services and provides insight into how to implement them with Apache Axis2.
Articles 11 Oct 2007  
 
Develop Lisp applications using the Cusp Eclipse plug-in
Lisp is an excellent programming language that allows you to expand your knowledge of programming languages due to its largely typeless nature. It can also help those seasoned in the Java programming language, PHP, or C/C++ think in new ways when developing applications. In addition, you can do some pretty cool things with Lisp. Find out how to develop Lisp applications using the Cusp Eclipse plug-in.
Articles 09 Oct 2007  
 
PHP frameworks, Part 1: Getting started with three popular frameworks
A few short years ago, one of the more common criticisms about PHP was that it did not support MVC-style architectures. Times change. And these days, there are a number of choices available in the world of PHP frameworks. This series takes a look at three widely used PHP frameworks -- Zend, symfony, and CakePHP -- examining their similarities and differences while building and extending a sample application in each of the three frameworks.
Articles 09 Oct 2007  
 
Emacs editing environment, Part 6: Customize your Emacs world
This tutorial, the sixth in a series, walks you through some of the useful ways you can customize and configure the Emacs environment. Learn how to change everything about the Emacs environment to your liking, from the behavior of minor modes to the default key bindings. Along the way, figure out how to set variables, make all your customizations automatic with a startup file, save and recall any window and frame customizations that you make, and use the easy customizer that comes built into Emacs.
Tutorials 02 Oct 2007  
 
Tie IBM OmniFind Yahoo! Edition into Web applications
IBM OmniFind Yahoo! Edition is an entry-level enterprise search software solution that is ready for primetime on your company's intranet. Using OmniFind, you can index your intranet, offering employees a robust and easy search solution so they can find what they're looking for promptly. Learn how to use the OmniFind features, take advantage of its APIs, and integrate them into your own Web applications.
Tutorials 02 Oct 2007  
 
Use the Business Intelligence Reporting Tool with DB2 Data Warehouse Edition, Part 3: Create complex reports with BIRT
The Business Intelligence Reporting Tool (BIRT), an open source tool for report generation, is very useful to DB2 Data Warehouse Edition users because of its ability to generate reports based on relational data and provide interactivity between them. This series of tutorials demonstrates the best practices for installing BIRT, using it to create reports on relational data, and then deploying those reports in a Web server to view them. During the course of this tutorial, you will learn the best practices of using BIRT in Design Studio.
Tutorials 27 Sep 2007  
 
Unicode for the working PHP programmer
Hello World and nearly all the other examples found in popular PHP tutorials and references assume a restricted form of English for their "natural language" communications. But PHP is capable of more. With the right techniques, PHP effectively handles not just the occasional accented character found in English names and loanwords but the characters of the world's most common languages: German, Russian, Chinese, Japanese, and many more.
Articles 25 Sep 2007  
 
Metaclass programming in Python, Part 3
Too much cleverness in programming makes designs more complicated, code more fragile, learning curves steeper, and worst of all, it makes debugging harder. Michele and David feel, in part, responsible for some excesses of cleverness that followed the enthusiastic reception of their earlier articles on Python metaclasses. In this article, they attempt to make amends, by helping programmers eschew cleverness.
Articles 25 Sep 2007  
 
System emulation with QEMU
QEMU is an open source emulator for complete PC systems. In addition to emulating a processor, QEMU permits emulation of all necessary subsystems, such as networking and video hardware. It also permits emulation of advanced concepts, such as symmetric multiprocessing systems (up to 255 CPUs) and other processor architectures, such as ARM or PowerPC. This article explores QEMU and its architecture and shows how to emulate a guest operating system on a Linux host.
Articles 25 Sep 2007  
 
Revitalize your applications with Eclipse Forms
Eclipse Forms offers a way to enhance the user experience of your Eclipse applications. It offers a "Web-like" look for your applications without using the embedded browser. The goal of this article is to give a brief introduction to Eclipse Forms as a user interface (UI) toolkit and to provide an easy-to-follow example to get you started.
Articles 25 Sep 2007  
 
Explore model-driven development (MDD) and related approaches: Applying domain-specific modeling to Model-Driven Architecture
In this article, use the Eclipse Modeling Framework (EMF) and Graphical Modeling Framework (GMF) technologies to produce domain-specific modeling tooling aids for domain-specific languages. Learn the value of defining a domain-specific language, basic concepts, tips on creating a good metamodel, and different approaches to modeling.
Articles 18 Sep 2007  
 
Search structured LDAP data with a vector-space engine
Use Perl and a vector-space search engine to search and display records from your Lightweight Directory Access Protocol (LDAP) database. Use inflected letters and numbers to create a useful vector space from structured LDAP data. And compensate for typographical and spelling errors automatically while showing the most appropriate match for any query entered.
Articles 18 Sep 2007  
 
Developing embedded applications with eJFace
It is safe to assume the demand for applications on mobile devices will increase in coming years. Now is a good time to learn eJFace -- the open-standards, embedded JFace library -- a new technology to build embedded applications. Embedded JFace (eJFace) is a component of the embedded Rich Client Platform (eRCP), which provides an embedded environment for developers to compose user interfaces (UIs) for embedded applications. Here, we compare eJFace to JFace and show how to develop applications with eJFace.
Articles 11 Sep 2007  
 
Python for system administrators
Adopt Python to manage UNIX(R) systems while incorporating concepts of good program design. Python is an easy-to-learn, open source scripting language that lets system administrators do their job more quickly. It can also make tasks more fun.
Articles 07 Sep 2007  
 
Build an Eclipse plug-in to navigate content in an EMF model
Learn how to use EMF.Edit and Common Navigator Framework (CNF) to create a model navigation plug-in based on a tree viewer. Build an Eclipse plug-in that allows users to manipulate and navigate the content of an Eclipse Modeling Framework (EMF)-based model. This will involve step-by-step guidance of developing the plug-in, implementing the proper structures to extract the model content through the EMF edit framework, and displaying the content in a CNF-based view part.
Articles 04 Sep 2007  
 
Apache Geronimo project resources
Find complete listings of the articles, tutorials, project info, and news you need to stay up-to-date on developing with Apache Geronimo projects.
30 Aug 2007  
 
Charming Python: Python elegance and warts, Part 2
In this series of two articles, David discusses the non-obvious features and misfeatures that have been added to the last several Python versions, with the goal of helping part-time Python programmers uncover the gems while avoiding the pitfalls. This installment adds attributes and methods, descriptors, and properties to the discussion.
Articles 29 Aug 2007  
 
Make your 404 pages smarter with metaphone matching
Create your own 404 error-message handler to provide useful links and redirects for the contents of your site. Use metaphone matching and a simple weighted score file to make typographical, spelling, and bad-link redirect suggestions. Customize the suggestions based solely on your Web site's content and preferred redirection locations. Catch multiple errors in incoming URL requests and process them for corrections in directory, script, and HTML page names.
Articles 28 Aug 2007  
 
Speed up your Ajax applications while dodging Web services vulnerabilities
Deploying bandwidth-efficient Ajax applications does not guarantee that the service levels in a Service Level Agreement will stay high. No matter how well you change code in the Ajax format to make it more bandwidth efficient, there will be always risks and vulnerabilities you'll need to watch out for and mitigate. Regular developerWorks author Judith Myerson gives a brief Ajax recap, shows what Web services vulnerabilities are and why Service Level Agreements (SLA) are important, and suggests some solutions for speeding up Ajax applications.
Articles 28 Aug 2007  
 
Tip: Read News Industry Text Format (NITF) files with PHP
The News Industry Text Format is an XML-based format used by the news industry to encode and share the content of news articles. PEAR's XML_NITF package provides an extensible API to read and parse NITF-formatted files, making it easy to extract bibliographical information and article content for use in any PHP application.
Articles 28 Aug 2007  
 
Set up a Web server cluster in 5 easy steps
Construct a highly available Apache Web server cluster that spans multiple physical or virtual Linux servers in 5 easy steps with Linux Virtual Server and Heartbeat v2.
Articles 22 Aug 2007  
 
New to Open source
This guide places all the basics of open source in context to help you get started in the most wide-ranging, growing, and dynamic field of software development today. The open source zone is your source for how-to information, tools, and project updates to help you develop with open source technologies and use them with IBM's products. Topic areas include Eclipse, Apache, Derby/Cloudscape, Linux, scripting languages such as PHP, Perl, and Python, as well as broader discussions on licensing and open source development.
22 Aug 2007  
 
An introduction to Eclipse for Visual Studio users
Eclipse is a new world for Microsoft Visual Studio developers, and getting started with Eclipse can be confusing. New concepts, such as plug-in architecture, workspace-centric project structure, and automatic build can seem counterintuitive at first. Learn about these and other differences between the two environments, so that you can begin to feel at home with Eclipse.
Articles 21 Aug 2007  
 
Manage ODF and Microsoft Office 2007 documents with DB2 9 pureXML
Integrate your ODF and Microsoft Office 2007 documents into your enterprise and Internet applications more easily than ever before with DB2 9. Review older methods of data interchange with MS Office documents, and learn how MS Office 2007 offers better data interchange. This article discusses interchange with DB2 9 XQuery, Zend Core for IBM, PHP, and PDO technologies.
Articles 16 Aug 2007  
 
iPhone development with PHP and XML
The Apple iPhone is the hottest new device on the market. Discover how you can develop an application for it using your existing Web tools.
Articles 14 Aug 2007  
 
Mylyn 2.0, Part 2: Automated context management
Now in release 2.0, Mylyn (formerly called Mylar) enhances productivity by seamlessly integrating tasks into Eclipse and automatically managing the context of those tasks as you work. Mylyn Project Lead Mik Kersten has updated his two-part guide to using Mylyn. Part 1 introduces Mylyn's task management facilities and integration with repositories such as Bugzilla. This second half explains how Mylyn's context management facilities make multitasking easy and reduce information overload when you're working on large applications in Eclipse.
Articles 14 Aug 2007  
 
Mylyn 2.0, Part 1: Integrated task management
Now in release 2.0, Mylyn (formerly called Mylar) enhances productivity by seamlessly integrating tasks into Eclipse and automatically managing the context of those tasks as you work. Mylyn Project Lead Mik Kersten has updated his two-part guide to using Mylyn to cover the improvements driven by the massive amounts of user feedback since Mylyn 1.0. Part 1 introduces Mylyn's task management facilities and integration with repositories such as Bugzilla, Trac, and JIRA. You'll learn how context management eases multitasking and reduces information overload in Part 2.
Articles 14 Aug 2007  
 
Publish critical public warnings on the Web
The recently completed Atom Publishing Protocol provides a simple, HTTP-based mechanism for publishing and managing content on the Web. When used with the Common Alerting Protocol standard, Atom publishing can provide a powerful and flexible way to distribute critical, life-saving information. Learn how to create, publish, and consume hazard alerts using Atom.
Articles 14 Aug 2007  
 
Map places, people, and relationships inside a building with open source software
Google and MapQuest do a great job of creating maps of the outside world on the fly. But what about our workspaces? This article shows how to define and map places and people inside a building. Search, track, and plot individual cubicles, rooms, employees, or assets. Graph the location of individuals or groups of employees based on job function, or track unused office space visually.
Articles 14 Aug 2007  
 
Download Eclipse
Are you a Java EE developer? Download Eclipse open source software bundles for free from developerWorks, including Callisto and Europa simultaneous release projects, and get started developing with Eclipse frameworks today.
07 Aug 2007  
 
Download Eclipse Europa
Are you a Java EE developer? Download Eclipse open source software bundles for free from developerWorks, including Callisto and Europa simultaneous release projects, and get started developing with Eclipse frameworks today.
07 Aug 2007  
 
Emacs editing environment, Part 5: Shape your Emacs view
This tutorial, the fifth in a series, shows you how to manage and manipulate the shape your Emacs session -- examine how to partition the Emacs screen, create multiple X client windows for a single Emacs session, and display multiple buffers in each window, dividing the screen with horizontal and vertical divisions. You also learn about mouse window control and characteristics so that by the time you're through, you can make your Emacs session look and work the way you want it to.
Tutorials 07 Aug 2007  
 
Rich-client application performance, Part 2: Plugging memory leaks
Part 1 of this two-part article on Eclipse rich-client performance covers the basics of measuring an application's performance, applying instrumentation techniques, keeping the UI responsive, and using Jobs to avoid threading mistakes. This second part takes a look at memory usage and how to chase down memory leaks.
Articles 07 Aug 2007  
 
Tip: Create portable database representations with PEAR MDB2_Schema
To change an application's database back-end is a complex task, that often requires the developer to manually re-create database tables and records using data types and SQL functions compatible with the new RDBMS. The PEAR MDB2_Schema package can make this task easier, by generating a vendor-neutral representation of a database using XML and providing tools to import this representation into any supported RDBMS.
Articles 07 Aug 2007  
 
Squash bugs in PHP applications with Xdebug
The Xdebug extension for PHP helps you autopsy your application when an error or crash occurs. Learn how to use Xdebug to trace the call stack, analyze memory usage, and comb through the contents of arguments and variables.
Articles 07 Aug 2007  
 
Develop multitasking applications with PHP V5
Many PHP developers believe that because standard PHP lacks threading capabilities, it's impossible for a practical PHP application to multitask. For example, if an application needs information from a different Web site, it has to stall until that remote retrieval is done. Not true! Find out about in-process PHP multitasking using stream_select and stream_socket_client.
Articles 07 Aug 2007  
 
Build a custom search engine with PHP
While Google and its ilk are virtually omniscient, the Web's mighty search engines aren't well suited to every site. If your site content is highly specialized or distinctly categorized, use Sphinx and PHP to create a finely tuned local search system.
Articles 31 Jul 2007  
 
Rich-client application performance, Part 1: Tools, techniques, and tips for analyzing performance
Significant performance issues are likely to arise even in well-planned applications. In this two-part article, Chris Grindstaff offers techniques for analyzing and addressing performance problems. In this first installment, you'll learn how to measure the performance of Eclipse-based Rich Client Platform (RCP) applications, determine if slowdowns are caused by CPU or I/O bottlenecks, and keep the UI thread idle to maintain responsiveness. Part 2 addresses memory problems.
Articles 31 Jul 2007  
 
Java Web Services: Axis2 Data Binding
The Apache Axis2 Web services framework was designed from the start to support multiple XML data-binding approaches. The current release provides full support for XMLBeans and JiBX data binding, as well as the custom Axis Data Binding (ADB) approach developed specifically for Axis2. This article shows you how to use these different data bindings with Axis2 and explains why you might prefer one over the others for your application.
Articles 26 Jul 2007  
 
Java Web Services: Axis2 Data Binding
The Apache Axis2 Web services framework was designed from the start to support multiple XML data-binding approaches. The current release provides full support for XMLBeans and JiBX data binding, as well as the custom Axis Data Binding (ADB) approach developed specifically for Axis2. This article shows you how to use these different data bindings with Axis2 and explains why you might prefer one over the others for your application.
Articles 26 Jul 2007  
 
Maximize your Mac OS X Java development experience using Eclipse
Mac OS X is a powerful platform for Java development. While the Java development environment is fully integrated into Mac OS X, the Eclipse integrated development environment (IDE) brings a fully integrated Java development environment to Mac OS X that provides a consistent cross-platform experience. Discover how to use this environment to import existing Xcode projects into Eclipse, tweak key bindings, and integrate Eclipse with the Mac OS X-bundled Concurrent Versions System (CVS).
Articles 24 Jul 2007  
 
Ajax and XML: Ajax for ratings and comments
In the age of the people-powered Web, allowing your readers to rate and review content on your site is critical. Discover just how easy it is to add rating and commenting features to a site with Ajax.
Articles 24 Jul 2007  
 
End-to-end Ajax application development, Part 3: Integrate, test, and debug the application
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop quality software features to Web applications running on browser platforms. This article is the last of a three-part series where you can complete the development of an end-to-end Ajax application using technologies available from the open source community.
Articles 19 Jul 2007  
 
Get started with the Eclipse Platform
Find out about the Eclipse Platform, including its origin and architecture. Starting with a brief discussion about the open source nature of Eclipse and its support for multiple programming languages, we demonstrate the Java development environment with a simple programming example. We also survey some of the software development tools available as plug-in extensions.
Articles 17 Jul 2007  
 
Separate form and function in PHP applications with Smarty
The ease of mixing PHP and other Web-page markup leads to a morass of program logic, HTML, Cascading Style Sheets (CSS), and JavaScript, making maintenance a hair-pulling task. The Smarty template engine separates form from function.
Articles 17 Jul 2007  
 
PHP project resources
Project information for PHP developers, including latest articles and tutorials published, as well as other valuable PHP resources.
16 Jul 2007  
 
IBM Build to Manage Toolkits
Simplify life for developers and operations managers. The open source Build to Manage Toolkits make it easy for developers to add manageability to distributed Java applications.
10 Jul 2007  
 
Developing applications using the Eclipse C/C++ Development Toolkit
When most people think "Eclipse," they think "Java IDE." Eclipse is much more. With the proper plug-ins, one can use Eclipse to work with PHP, Ruby, and Groovy, C, and C++. In this article, you get started with the the Eclipse C/C++ Development Toolkit (CDT). We build a simple application in C++ using the CDT and the C++ Standard Template Library (STL) to streamline the process and take advantage of some of the powerful features of C++.
Articles 10 Jul 2007  
 
Lightweight Web servers
Recent years have enjoyed a florescence of interesting implementations of Web servers, including lighttpd, litespeed, and mongrel, among others. These Web servers boast different combinations of performance, ease of administration, portability, security, and related values. The following engineering study surveys the field of lightweight Web servers to help you find one likely to meet the technical requirements of your next project.
Articles 10 Jul 2007  
 
LPI exam 102 prep, Topic 111: Administrative tasks
In this tutorial, Ian Shields continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 102. In this sixth in a series of nine tutorials, Ian introduces you to administrative tasks. By the end of this tutorial, you will know how to manage users and groups, set user profiles and environments, use log files, schedule jobs, back up your data, and maintain the system time.
Tutorials 10 Jul 2007  
 
Ajax -- A guide for the perplexed, Part 1: Survey of Ajax tools and techniques
Ajax (Asynchronous JavaScript + XML) programming techniques are increasingly dominating the world of Web application development. New developers are stepping into the world of Ajax development every day, and they come from disparate development backgrounds. Part 1 of this multipart series gives you a cheat sheet of Ajax development resources from an expert team of Ajax developers at IBM. The authors draw from their own ramp-up experiences to help you with practical information that will put you on a fast track to effective Ajax development.
Articles 10 Jul 2007  
 
Developing applications using the Eclipse C/C++ Development Toolkit
When most people think "Eclipse," they think "Java IDE." Eclipse is much more. With the proper plug-ins, one can use Eclipse to work with PHP, Ruby, and Groovy, C, and C++. In this article, you get started with the Eclipse C/C++ Development Toolkit (CDT). We build a simple application in C++ using the CDT and the C++ Standard Template Library (STL) to streamline the process and take advantage of some of the powerful features of C++.
Articles 10 Jul 2007  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 13: PHP development within Eclipse
Follow along in this series of articles as the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council (IBC), using a suite of freely available software. In this article, explore how to use the Eclipse integrated development environment to create your Web site, with a focus on Eclipse's support for PHP and using Concurrent Versions System (CVS) for version control.
Articles 03 Jul 2007  
 
Keep your code clean with Eclipse V3.3
Clean, easy-to-read code allows developers who are unfamiliar with a program to understand it quickly and completely, which makes software maintenance more efficient than the alternative. Get an introduction to the new cleanup capabilities in Eclipse V3.3 that allow developers more options for cleanup than earlier versions.
Articles 03 Jul 2007  
 
A whirlwind tour of Eclipse Europa
With the simultaneous release of 21 projects this year, the Eclipse Europa release marks a significant improvement over last year's release train of 10 projects. Get a brief overview of each of the projects associated with the Europa release.
Articles 29 Jun 2007  
 
Build extensions for Eclipse one snippet at a time
Find out how to build a plug-in for Eclipse and Rational Application Developer V7. You can use this plug-in to define snippets that let you add code that follows enterprise standards. Similar to the Snippets view that comes with the Web Tools Project, this plug-in allows you to drag and drop pieces of code into the editor. We follow object-oriented best practices so the snippets can be loaded from any source, such as a database (like Apache Derby), filesystem, or Web service.
Articles 26 Jun 2007  
 
The Geronimo renegade: What's new in OpenEJB 3.0
The Java 2 Platform, Enterprise Edition (J2EE) specification made Java technology the premier technology for enterprise application development. It has evolved over the years to maintain that position, especially with the Java Platform, Enterprise Edition 5 (Java EE 5) specification. OpenEJB has been an integral part of Geronimo since its inception. Its 3.0 release is a key part of Geronimo's implementation of the Java EE 5 specification. In this installment, the renegade uncovers the driving forces behind Enterprise JavaBeans (EJB) 3 and how OpenEJB has stepped up to provide bold new features to Geronimo.
Articles 26 Jun 2007  
 
Speed development with Eclipse wizards
One of the greatest features of the Eclipse framework and integrated development environment (IDE) is its extensibility. In this article, you'll learn how to quickly build a wizard that automates the process of adding a new file. Because the contents of the file can be predefined, the wizard enables better development through consistency and automation.
Articles 21 Jun 2007  
 
Develop with Java and PHP technology on AIX Version 5.3, Part 1: Setting up the Java environment
Develop a Java(TM) application on AIX(R) and learn how to extend it by using a PHP interface to look at the underlying Java code. It is possible to develop applications that employ both Java and PHP technology on AIX. You can use Java code for the core logic (or redeploy an existing Java-based application), while gaining the benefits of PHP as a Web-based interface platform. This article, the first in a series, examines the basics of the Java programming language and PHP integration methods on AIX, provides a quick overview of a sample application that uses this structure, and then looks at the core elements required before you start developing the application itself by installing the Java programming language and Apache Tomcat.
Articles 20 Jun 2007  
 
Simplify Ajax development using Cypal Studio for GWT
Using the Google Web Toolkit (GWT), a Java programmer can write rich Asynchronous JavaScript + XML (Ajax) applications completely in the Java programming language. Cypal Studio for GWT, designed for the Eclipse IDE, provides support for managing GWT constructs. Learn how Cypal Studio for GWT helps create new GWT modules, supports the creation of remote procedure calls, and makes it easy to view and deploy your Web applications.
Articles 19 Jun 2007  
 
End-to-end Ajax application development, Part 2: Implement the Ajax client and server tiers
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop quality software features to Web applications running on browser platforms. This article is second of a three-part series where you can continue learning about developing an end-to-end Ajax application using technologies available from the open-source community.
Articles 19 Jun 2007  
 
Create an asynchronous message framework with Ajax and Apache Geronimo
Combine Apache Geronimo with an Asynchronous JavaScript + XML (Ajax) user interface (UI), an asynchronous messaging system, and loosely coupled business services to build a responsive, enterprise-grade Web application framework.
Articles 19 Jun 2007  
 
Embedding Hamlets
The open source Hamlets framework can help aid your Web development and properly separate content from presentation. The OSGi framework provides an excellent tool for development on embedded devices. Together, the two frameworks work as a team to provide browser-based interactivity to the humblest gadgets -- such as the lowly coffee maker. Read on to find out how it works.
Articles 19 Jun 2007  
 
Turn your existing systems into an SOA platform using Apache Synapse
If you're planning to transform your existing middleware into a Service-Oriented Architecture (SOA) platform, consider using Apache Synapse. This easy-to-use open source alternative to proprietary Enterprise Service Buses (ESBs) costs less and requires less effort. This article gives you a thorough introduction to Apache Synapse and provides a use case to demonstrate how you can integrate and reuse existing applications using an SOA approach.
Articles 14 Jun 2007  
 
Know your regular expressions
You can build and test regular expressions (regexps) on UNIX(R) systems in several ways. Discover the available tools and techniques that can help you learn how to construct regular expressions for various programs and languages.
Articles 14 Jun 2007  
 
Build DocBook XML in Eclipse
DocBook XML is a library of standard XML tags you can use to write stylesheets for generating almost any output. However, because DocBook has been around for quite some time, many stylesheets already exist for generating different types of documentation. Learn how to use DocBook XML and the Eclipse IDE together to create reusable technical documentation that you can easily distribute in most formats.
Articles 12 Jun 2007  
 
Seamless JSF, Part 3: Ajax for JSF
JSF's component-based methodology encourages abstraction, but most Ajax implementations interfere with it by exposing the underlying HTTP exchange. In this final article in the Seamless JSF series, Dan Allen shows you how to use the Seam Remoting API and Ajax4jsf components to communicate with managed beans on the server as if they were local to the browser. You'll learn how surprisingly easy it is to leverage Ajax as a natural improvement on JSF's event-driven architecture and how to do so without compromising the JSF component model.
Articles 12 Jun 2007  
 
Turbocharge Ruby on Rails with ActiveScaffold
Save time and headaches, and create a more easily maintainable set of pages, with the Ruby on Rails ActiveScaffold plugin. ActiveScaffold handles all your CRUD (create, read, update, delete) user interface needs, leaving you more time to focus on more challenging (and interesting!) problems.
Articles 08 Jun 2007  
 
Tuning LAMP systems, Part 3: Tuning your MySQL server
Applications using the LAMP (Linux, Apache, MySQL, PHP/Perl) architecture are constantly being developed and deployed. But often the server administrator has little control over the application itself because it's written by someone else. This series of three articles discusses many of the server configuration items that can make or break an application's performance. This third article, the last in the series, focuses on tuning the database layer for maximum efficiency.
Articles 07 Jun 2007  
 
Convert XML to JSON in PHP
With the growing popularity of Web 2.0, a new data interchange format called JavaScript Object Notation (JSON) is emerging as a useful way to represent data in the business logic running on browsers. Learn how PHP-based server programs can convert XML-formatted enterprise application data into JSON format before sending it to browser applications.
Articles 05 Jun 2007  
 
Search smarter with Apache Solr, Part 2: Solr for the enterprise
Lucene Java committer Grant Ingersoll rounds out his introduction to Solr with a survey of its features for the enterprise, including administration interfaces, advanced configuration options, and performance features such as caching, replication, and logging.
Articles 05 Jun 2007  
 
End-to-end Ajax application development, Part 1: Set up an Ajax environment with a scenario
Ajax (Asynchronous JavaScript + XML) is quickly emerging as a modern way of bringing desktop-quality software features to Web applications running on browsers. Open source software such as Linux-Apache-MySQL-PHP (LAMP) and open standards-based J2EE middleware, such as WebSphere Application Server Community Edition, provide excellent capabilities to develop and deploy Ajax Web applications. This article is the first of a three-part series about developing an end-to-end Ajax application using an open source middleware stack. If you're a novice Web developer who can read and understand the code written in XHTML, CSS, JavaScript, PHP, and SQL, then this article is for you. After you're done, you will have a good understanding of the basic concepts of Ajax and its potential in the context of a three-tier Web application scenario.
Articles 05 Jun 2007  
 
Develop your own weather maps and alerts
Traditional weather reports will give notice of vague forecasts and severe weather alerts in your general area. The code and tools presented in this article will allow you to create precise detection zones so you can receive a page, SMS, or e-mail a few minutes before a precipitation event is likely to occur at the monitored location. Use GD and Perl for image processing of the NOAA WSR-88D radar data to create your own precipitation alerts for precise areas. Choose your notification method and let users know when the rain will begin and when it will clear.
Articles 05 Jun 2007  
 
Aperi Storage Management Project introduction, Part 2
Learn how an administrator can use the topology viewer to explore the details in the disc arrays in the demo storage environment.
Demos 30 May 2007  
 
Java profiling with Eclipse test and performance tools platform
This demo shows you how to use the Eclipse test and performance tools platform to profile a Java application. Along the way, you will learn how to analyze a Java application using execution time analysis, basic memory analysis, code coverage statistics, and create an automatically generated UML2 sequence diagram showing class interactions.
Demos 30 May 2007  
 
Aperi Storage Management Project introduction, Part 1
Become familiar with the Aperi’s user interface and some of the main functions of the topology viewer. Learn how an administrator can use the topology viewer to explore the storage environment to monitor the health status of the various elements in it. This demo uses the topology viewer to zoom into and out of one of the storage fabrics to view the status of its switches and ports, as well as the elements that were attached to them.
Demos 30 May 2007  
 
Unit testing the Eclipse way
Does your legacy code demand a matching test suite of classes to run against its source code base? For such purposes, jMock qualifies as a great testing framework. However, not all cases may suit the occasion, especially when you must construct objects in a manner that jMock doesn't expect. To avoid the hassle of producing suites of custom mock objects to support the unit tests in an application, you can tailor RMock to work with jMock seamlessly to achieve a positive result.
Articles 29 May 2007  
 
Securing Java applications with Acegi, Part 2: Working with an LDAP directory server
With the basics out of the way, you're ready to discover the more advanced uses of Acegi Security System. In this article, Bilal Siddiqui shows you how to combine Acegi with an LDAP directory server for flexible, high performance Java application security. Learn how to write an access control policy and store it in ApacheDS, and then configure Acegi to interact with the directory server for authentication and authorization purposes.
Articles 29 May 2007  
 
Search smarter with Apache Solr, Part 1: Essential features and the Solr schema
Solr is an enterprise-ready, Lucene-based search server that supports faceted searching, hit highlighting, and multiple output formats. In this two-part article, Lucene Java committer Grant Ingersoll introduces Solr and shows you how to easily incorporate its impressive full-text search functionality into your Web applications.
Articles 29 May 2007  
 
Test GUI accessibility the Eclipse RAVEN way
The IBM Rule-based Accessibility Validation Environment (RAVEN) is an Eclipse plug-in that provides runtime checking of GUI components to ensure consistent use of Java accessibility features. This article reviews the RAVEN tool and provides examples of its use in validating a Java Swing application.
Articles 22 May 2007  
 
Apache Derby project resources
Find complete listings of the articles, tutorials, project info, and news you need to stay up to date on developing with Apache Derby projects.
22 May 2007  
 
The busy Java developer's guide to db4o: Database refactoring with db4o
Refactoring Java code is far simpler than refactoring a relational database, but fortunately that isn't so much the case with object databases. In this installment of The busy Java developer's guide to db4o, Ted Neward introduces you to yet another advantage of his favorite object database: db4o simplifies refactoring to the point where it's almost trivial.
Articles 22 May 2007  
 
Linux tip: Bash parameters and parameter expansions
Do you sometimes wonder how to use parameters with your scripts, and how to pass them to internal functions or other scripts? Do you need to do simple validity tests on parameters or options, or perform simple extraction and replacement operations on the parameter strings? This tip helps you with parameter use and the various parameter expansions available in the bash shell.
Articles 16 May 2007  
 
What's new in PHP V5.2, Part 5: Tracking file upload progress
PHP V5.2 added hooks for developers to take advantage of tracking file upload progress in real time. This article, Part 5 of a five-part "What's new in PHP V5.2" series, shows how to monitor file uploads and write code accordingly, with the creation of a PHP progress bar.
Articles 15 May 2007  
 
Eclipse project management with JFeature
Just about every project needs a project manager (even if that happens to be you, the developer). And since all the items that accompany projects can get out of hand and lost in all the hustle and bustle, project managers need good software to manage all the requirements and to-dos in their projects. Eclipse is an excellent platform for such software, and JFeature is an Eclipse plug-in that has the features project managers look for. This tutorial shows you how to use the JFeature plug-in for Eclipse to its fullest potential. You'll learn how to get up to speed using JFeature for your project management needs.
Tutorials 15 May 2007  
 
Explore relationships among Web pages visually
The Graphviz program from AT&T Research and others is a fantastic tool for automating the visualization of complicated link sets. This article shows how to combine the Graphviz tool set with Web-page thumbnail generators to create new ways of visualizing any Web page's link structures. You can use these techniques and descriptions to refine your display logic, and create directed and undirected Graphviz charts to enhance your understanding of organizational, software, and other complex linked data sets.
Articles 15 May 2007  
 
Brand your Eclipse RCP applications
This article provides step-by-step guidelines on how to package and manage a Rich Client Platform (RCP) application as a product with your own branding by using Eclipse's Production Configuration and PDE. Besides common concepts such as splash screen and an icon file's color and size, this article also introduces advanced branding aspects of production configuration: the RCP executable file and its configuration file, progress bar and message, RCP window image, About dialog and welcome page (i.e., introduction). With this article, you can grasp the main skills on encapsulating your RCP application as a distributable product, independent of Eclipse platform.
Articles 08 May 2007  
 
Simplify Eclipse classpaths using classpath containers
Eclipse classpath containers are an organized, user-friendly way to manage Java libraries in Eclipse. Since a group of libraries can be referenced as one abstract name, they can be removed and added as a single entry easily. The view of the libraries is also simplified in the Java Perspective as a single entry that can be expanded to view the entire set. Since the set of libraries is defined by an implementation of IClasspathContainer, it can be redefined dynamically. This tutorial shows how to implement a custom IClasspathContainer with accompanying extensions of classpathContainerInitializer and classpathContainerPage.
Tutorials 08 May 2007  
 
Developing Web applications with Tomcat and Eclipse
Using Eclipse as a Web development platform is even easier when you integrate it directly with Apache Tomcat. Learn how to set up Eclipse and Apache Tomcat V5.5 to develop the quintessential Hello World servlet.
Articles 08 May 2007  
 
Build a simple C++ service component, Part 2: Using Python, Ruby, and Web services with the service component architecture
You can use your existing code to create service components. Learn how to expose your scripts as SCA components and Web services using the Python, Ruby, and Web services support in Apache Tuscany SCA for C++. Create reusable, composable SCA components that are linked together within composites and exposed and invoked using whichever technologies are most suitable to the system being built.
Articles 03 May 2007  
 
The Open Group certification program: Get certified for the job you're doing
The IT Architecture Certification (ITAC) by The Open Group stands out among other certifications. Unlike the Microsoft, Cisco, or other brand-specific certifications, ITAC holders aren't preprogrammed with vendor solutions. In a world of Linux, Windows, and Apple operating systems working on a multitude of hardware platforms, IT engineers must be highly flexible. The Open Group's mission is to share information across platforms without risk to security or performance. Discover what the benefits of obtaining the ITAC are and what they can mean to you and your business.
Articles 01 May 2007  
 
Debugging with the Eclipse Platform
Find out how to use the built-in debugging features in the Eclipse Platform for debugging software projects. Debugging is something programmers can't avoid. There are many ways to go about it, but it essentially comes down to finding the code responsible for a bug. For example, one of the most common errors in Linux applications is known as a segmentation fault. This occurs when a program attempts to access memory not allocated to it and terminates with a segmentation violation. To fix this kind of error, you need to find the line of code that triggers the behavior. Once the line of code in question has been found, it is also useful to know the context in which the error occurs, and the associated values, variables, and methods. The use of a debugger makes finding this information quite simple.
Articles 01 May 2007  
 
What's new in PHP V5.2, Part 4: Using the new ZIP extension
ZIP? It's about time! PHP just added ZIP features to PHP V5.2. This article, Part 4 of a five-part "What's new in PHP V5.2" series, shows you how to make the most of this new feature by creating, editing, uploading and reading, and creating and downloading ZIP files. After reading this article, you will be well versed in the art of ZIP files using the latest ZIP PHP extension in PHP V5.2, so you can reduce bandwidth overhead or storage usage when handling large files with PHP.
Articles 01 May 2007  
 
PHP and RSS: Getting it together
RSS Syndication is virtually ubiquitous these days, so it's imperative that a PHP developer at least understand RSS and how it works. This article explains the basics of RSS, some of its many uses, how to use PHP to create an RSS feed from a database, and how to use the XML_RSS module to read an existing RSS feed and translate it into HTML.
Articles 01 May 2007  
 
Second Life client, Part 2: Digging into the documentation
The developer documentation in the Second Life client takes the form of a wiki. In Part 2 of our ongoing exploration of the Second Life software, take a look at that documentation, and use it to jump-start some modifications to the client.
Articles 30 Apr 2007  
 
Tuning LAMP systems, Part 2: Optimizing Apache and PHP
Applications using the LAMP (Linux, Apache, MySQL, PHP/Perl) architecture are constantly being developed and deployed. But often the server administrator has little control over the application itself because it's written by someone else. This series of three articles discusses many of the server configuration items that can make or break an application's performance. This second article focuses on steps you can take to optimize Apache and PHP.
Articles 30 Apr 2007  
 
Second Life client, Part 3: Adding simple translation to Second Life
In the last part of our exploration of the Second Life software, learn how to plug a simple command-line program into Second Life that provides a language translation function.
Articles 30 Apr 2007  
 
Download Eclipse Callisto
Are you a Java EE developer? Download Eclipse open source software bundles for free from developerWorks, including Callisto and Europa simultaneous release projects, and get started developing with Eclipse frameworks today.
27 Apr 2007  
 
Create custom data charting tools using Perl and GD
Create professional-looking charts for data visualization using Perl and GD. Move beyond standard pie charts to incorporate annotations, indicators, and layering for enhanced informational delivery.
Articles 24 Apr 2007  
 
Sugar, the XO laptop, and One Laptop per Child
One Laptop per Child (OLPC) is an organization whose mission is to develop a low-cost laptop (USD100) with accompanying software to spread computer literacy to children around the world. Because the device targets children, it must provide a novel user interface and applications that allow children to experiment with tools for expression and learning. The operating system for the OLPC is a port of the Linux kernel but with a unique interface called Sugar. In this article, learn about the Sugar human interface, see how to virtualize an OLPC laptop on a standard PC using QEMU, and take a tour of Sugar and the OLPC capabilities.
Articles 24 Apr 2007  
 
Make PHP apps fast, faster, fastest, Part 3: Cache your data in memory with the Memcache daemon
This "Make PHP apps fast, faster, fastest" series explores XCache and XDebug, and now the Memcache daemon. The Memcache daemon (memcached) is a high-performance distributed object cache. Installed between your application and your data store, memcached persists your objects in RAM. Each cache hit replaces a roundtrip to a database server, making your application run faster.
Articles 24 Apr 2007  
 
Discover the Linux Kernel Virtual Machine
Linux and flexibility go hand in hand, and the options for virtualization are no different. But recently, a change in the Linux virtualization landscape has appeared with the introduction of the Kernel virtual Machine, or KVM. KVM is the first virtualization solution to be part of the mainline Linux kernel (V2.6.20). KVM supports the virtualization of Linux guest operating systems -- even Windows with hardware that is virtualization-aware. Learn about the architecture of the Linux KVM as well as why its tight integration with the kernel may change the way you use Linux.
Articles 18 Apr 2007  
 
Developing with Apache Derby -- Hitting the Trifecta: Java database development with Apache Derby, Part 4
Learn about SQL cursors and how you can use them to perform dynamic data modification in an Apache Derby database. You can use SQL cursors both explicitly by using the ij tool or implicitly by calling the appropriate Java methods. By mastering this functionality, you can write Java applications that can selectively modify data for your business applications.
Articles 17 Apr 2007  
 
Eclipse IDE project resources
Project information for Eclipse IDE developers, including latest articles and tutorials published, as well as other valuable Eclipse resources.
17 Apr 2007  
 
Ruby on Rails and XML
You've very likely heard of Ruby on Rails. Maybe you've actually used it; perhaps it is your new programming mistress. Whatever the case, it looks like Rails is here to stay, and to everyone's benefit. Ruby plays very nicely with XML -- read further for the details.
Tutorials 17 Apr 2007  
 
An Eclipse Nebula widgets primer
The SWT toolkit offers a robust interface to the native widgets of the operating system it's running on. However, native widgets often aren't enough. The Eclipse Nebula project is working to bridge this gap with custom widgets for functionality, including calendaring and advanced tables. This tutorial demonstrates five Nebula widgets, including Grid, CDateTime, CompositeTable, PGroup, and PShelf.
Tutorials 17 Apr 2007  
 
Create geographical plots of your data using Perl, GD, and plot-latlong
Using world and custom U.S. maps, Perl, GD, and the Cooperative Association for Internet Data Analysis (CAIDA) plot-latlong tool, this article demonstrates how to create your own effective data visualizations in the spirit of Google maps and the U.S. national atlas.
Articles 10 Apr 2007  
 
Lights, camera, ActionScript 3.0!
ActionScript 3.0 is a powerful object-oriented programming language that signifies an important step in the evolution of the Flash Player Runtime. The motivation behind ActionScript 3.0 was to create a language ideally suited for rapidly building rich Internet applications, which have become an essential part of the Web experience.
Articles 10 Apr 2007  
 
Emacs editing environment, Part 2: Learn the essential modes and editing features of Emacs
One of the powerhouses of UNIX computing, the open source Emacs editor is a large, complex application that does everything from edit text to function as a complete development environment. This tutorial, the second in a series, introduces you to some of the essential concept of modes, shows you some of the powerful text manipulation functions available, and teaches you how to use the built-in search, replace, and spell check facilities of Emacs.
Tutorials 10 Apr 2007  
 
Develop and deploy Apache Pluto portal applications on Apache Geronimo
Even though preintegrated portal server support is missing from Apache Geronimo's feature set, you can still use Geronimo as a testing and deployment environment for portal applications. This article takes you step by step through deployment of the Apache Pluto driver and container in Geronimo to give you a 100% open source environment for your portal applications. Then learn how to develop, deploy, and test a sample portal application in Pluto and Geronimo.
Articles 10 Apr 2007  
 
Create an interactive production wiki using PHP, Part 5: The open blog
This "Create an interactive production wiki using PHP" tutorial series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for prime time, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users and will contain projects whose permissions are customizable to certain users. In Part 4 we added some task management. Now you will create an open blog, which will allow users a place to hold public discussions.
Tutorials 10 Apr 2007  
 
Training
Start here to find the tutorials and courses you need to stay up to date with open source projects and to keep your skills top notch.
05 Apr 2007  
 
Ajax RSS reader
Learn how to build an Asynchronous JavaScript and XML (Ajax) Really Simple Syndication (RSS) reader, as well as a Web component that you can place on any Web site to look at the articles in the RSS feeds.
Articles 03 Apr 2007  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 15: Lessons learned
In this series, the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council (IBC), using a suite of freely available software. You explore the complete life cycle of developing a collaborative Web site with Drupal driven by Apache, PHP, and MySQL. In this article, the team shares lessons learned from the experience and describes what's coming up next with Drupal 5.0.
Articles 03 Apr 2007  
 
Create an interactive production wiki using PHP, Part 4: Task management
This "Create an interactive production wiki using PHP" tutorial series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for prime time, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users and will contain projects whose permissions are customizable to certain users. In Part 3, we added some control over who can do what. Now it's time to add some task management.
Tutorials 03 Apr 2007  
 
Get started with Jigloo, a GUI builder for Eclipse
Jigloo is an Eclipse plug-in that enables you to build sophisticated graphical user interfaces (GUIs) rapidly that run on the Java platform. It can be used to build Swing-based applications and Standard Widget Toolkit (SWT)-based applications. It is an easy-to-use visual editor, so you can create the UI for your desktop application quickly. In this tutorial, we build a simple workflow application and use Jigloo to create its UI. Learn how easy it is to get started with Jigloo and to tap into its advanced features, such as visual inheritance. Finally, we test an application and package it for others to use.
Tutorials 03 Apr 2007  
 
Virtualization with coLinux
Virtualization with VMware, Xen, and Kernel-based Virtual Machine (KVM) are all the rage these days. But did you know that you can run Linux cooperatively with Microsoft Windows? This article explores Cooperative Linux (coLinux), starting with a quick introduction to virtualization and then looking at the approach taken by coLinux. You'll also see how to get coLinux up and running on Windows.
Articles 31 Mar 2007  
 
Tuning LAMP systems, Part 1: Understanding the LAMP architecture
Applications using the LAMP (Linux, Apache, MySQL, PHP/Perl) architecture are constantly being developed and deployed. But often the server administrator has little control over the application itself because it's written by someone else. This series of three articles discusses many of the server configuration items that can make or break an application's performance. This first article covers the LAMP architecture, some measurement techniques, and some basic Linux kernel, disk, and file system tweaks. Successive articles investigate tuning the Apache, MySQL, and PHP components.
Articles 31 Mar 2007  
 
Charming Python: Python elegance and warts, Part 1
Since the "golden age" of Python 1.5.2 -- for a long time a stable and solid version -- Python has greatly increased its number of syntactic features and built-in functions and types. Each of these additions has reasonable justification, in isolation, but taken as a whole, they make Python no longer a language that experienced programmers can pick up "in an afternoon." Moreover, some of the changes have pitfalls along with benefits.
Articles 28 Mar 2007  
 
What's new in PHP V5.2, Part 3: Using the new JSON extension
PHP continues to evolve and incorporate useful standards as they are created and adopted among Internet application developers. PHP just added a JavaScript Object Notation (JSON) extension to PHP V5.2, which was previously only available as add-on framework classes. This addition provides PHP developers with better support for Ajax applications using JSON. This article, Part 3 of a five-part "What's new in PHP V5.2" series, shows how to use this application effectively, and after completing this article, you will be proficient at using the built-in JSON extensions with PHP for your Ajax applications.
Articles 27 Mar 2007  
 
Second Life client, Part 1: Hacking Second Life
The open source release of the Second Life viewer program by developer Linden Lab offers a rare opportunity to peer into the comparative strengths of closed and open source development models. This article, the first in a series, gives an overview of some of the differences between these development styles, and talks about what's involved in setting up your own build environment.
Articles 27 Mar 2007  
 
The busy Java developer's guide to db4o: Queries, updates, and identity
Whereas the RDBMS uses SQL as its principal mechanism for finding and retrieving data, an OODBMS can use one of several different mechanisms. In this second installment of his series, Ted Neward introduces a few of the options, including Query by Example and custom mechanisms unique to the OODBMS. As he explains, some of the alternatives can be easier to use than SQL itself.
Articles 27 Mar 2007  
 
Mastering Ajax, Part 10: Using JSON for data transfer
Plain text and XML are both data formats that you can use for sending and receiving information in your asynchronous applications. This installment of "Mastering Ajax" looks at another useful data format, JavaScript Object Notation (JSON), and how it makes moving data and objects around in your applications easier.
Articles 27 Mar 2007  
 
Use the Eclipse SOA Tools Platform plug-in to build and deploy a Web service
Work on the Eclipse SOA Tools Platform (STP) plug-in is well under way, and we should expect lots of new features to aid Service-Oriented Architecture (SOA) deployment in the coming months. The Eclipse STP became the ninth top-level project for the Eclipse organization in 2005, and since then, development has come a long way. With the Eclipse STP plug-in, you can go from a Java interface, annotate it with Web service-related properties, create a Web Services Description Language (WSDL) for the Web service, generate and code Java stubs you can then compile into a WAR file, and deploy on your favorite Web server. This tutorial shows you how to accomplish all this using the Eclipse STP plug-in.
Tutorials 27 Mar 2007  
 
Create an Eclipse-based application using the Graphical Editing Framework
Learn the initial steps involved in creating an Eclipse-based application using the Graphical Editing Framework (GEF). Also, discover the options you have these days to bootstrap the process of creating graphical editors in Eclipse.
Articles 27 Mar 2007  
 
Automate Web service testing, Part 2: Test a Web service with XMLUnit
This tutorial series, developed for testers and developers who are interested in functional Web service testing, walks you through automating typical Web service testing using technologies, such as JUnit, Apache Commons HttpClient, and Apache XMLUnit. In this installment, Part 2, you'll learn how to create a simple Web service, how to use HttpClient to invoke a Web service, and how to compare the expected response and actual response using XMLUnit. The authors demonstrate these techniques on the IBM Rational Software Architect development platform.
Tutorials 26 Mar 2007  
 
Apache Derby resources from the Web services perspective, Part 3: Manage Apache Derby using Web Services Distributed Management
So far in this three-part tutorial series about the concept of WS-resources and the Web Services Resource Framework (WSRF), you've created a Person resource and learned how to use WS-Notifications with it. This final installment shows you how to look at WS-Resources from a different perspective -- that of a tangible item rather than a set of information. You'll create a Web service to control the Apache Derby database you've been using throughout this project as well as the client that treats Derby as a WS-Resource.
Tutorials 23 Mar 2007  
 
Transform Java classes into Web services using Axis2 and JiBX, Part 2: Turn your XML into a fully functional Web service
XML is powerful in that it can be used to define just about anything. What's more, it is the basis for an externally readable format for a majority of applications, most notably for the purposes of this series, Axis2 and JiBX. On top of that, as Web services become more and more ubiquitous, turning your legacy Java(TM) projects into full-fledged Web services is increasingly becoming a priority. Unlike in the past when the automatic generation of Web services was limited to a service and a single class, developers now have the option to generate a service or multiple services from the various Java classes in their existing projects. This article, the second part in a series of 2, uses Axis2 and JiBX to go from XML to a fully functional Web service from existing Java classes.
Articles 22 Mar 2007  
 
LDAP search engines, Part 2: Adding a scoring system
Learn how to add a scoring system to the search engine described in "LDAP search engines, Part 1." Develop your own metaphone-matching techniques for spelling corrections, query suggestions, and effective display of search results.
Articles 20 Mar 2007  
 
Create an interactive production wiki using PHP, Part 3: Users and permissions
This "Create an interactive production wiki using PHP" tutorial series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for prime time, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users. In Part 2, you got the basic wiki working. Now it's time to add some control over who can do what when accessing Criki.
Tutorials 20 Mar 2007  
 
The busy Java developer's guide to db4o: Introduction and overview
This first article in a multipart series introduces db4o and explains why it has become an important alternative to today's relational databases.
Articles 20 Mar 2007  
 
Transform Java classes into Web services using Axis2 and JiBX, Part 1: Use XML to define a Web service from your Java classes
XML is powerful in that it can be used to define just about anything. What's more, it is the basis for an externally readable format for a majority of applications, most notably for the purposes of this series, Axis2 and JiBX. On top of that, as Web services become more and more ubiquitous, turning your legacy Java(TM) projects into full-fledged Web services is increasingly becoming a priority. Unlike in the past, when the automatic generation of Web services was limited to a service and a single class, developers now have the option to generate a service or multiple services from the various Java classes in their existing projects. This article, Part 1 of a two-part series, uses XML to define a Web service from existing Java classes.
Articles 20 Mar 2007  
 
What's new in PHP V5.2, Part 2: Using the new input filtering extensions
In Part 2 of this "What's new in PHP V5.2," learn how to effectively use the new input filtering extensions provided by the new PHP V5.2. This is a much-needed feature that will allow you to validate inputs to forms and other input mediums without having to rely on third-party software. After reading this, you will be effective at filtering inputs to increase application security.
Articles 20 Mar 2007  
 
The Axis2 Deployment model, Part 1: Six ways the Axis2 deployment model is more user friendly
Tired of spending time deploying multiple services? Have to restart your server every time you make a change? Apache Axis2 might be the answer. Axis2 is gaining popularity by being a clean and extensible open source Web services platform. It has some major improvements over the Apache SOAP family, many of which Axis2 deployment has benefited from. Explore some of the most notable new features that make the Axis2 deployment model so much more convenient than Axis1.
Articles 15 Mar 2007  
 
Command-line PHP? Yes, you can!
Learn how to debug PHP code from the command line and examine the strengths of PHP as a shell scripting language unto itself.
Articles 13 Mar 2007  
 
Programming Hamlets
This tutorial illustrates various aspects of Hamlet programming as it provides a number of practical Hamlet examples. The examples are part of WebZEC (Web-based Zurich Event Console) -- a fast, browser-based console to quickly navigate in intrusion-detection alarms. With these samples, you can develop a good understanding how to use Hamlets for Web-based application development and how Hamlets work.
Tutorials 13 Mar 2007  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 14: The announcement module source code
Follow along in this series of articles as the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council (IBC), using a suite of freely available software. In this article, you get the announcement module, which is used as an example throughout this series. All the functions from this module are presented here and can be downloaded in a single file. In the final installment, Part 15, you get a brief review of the entire series.
Articles 13 Mar 2007  
 
XML for PHP developers, Part 3: Advanced techniques to read, manipulate, and write XML
This final article in a three-part series discusses more techniques for reading, manipulating, and writing XML in PHP5. In it, you will focus on the now familiar APIs DOM and SimpleXML in more sophisticated surroundings, and, for the first time in this three-part series, on the XSL extension.
Articles 13 Mar 2007  
 
Put Muse and Eclipse TPTP WSDM tools to work
Learn how to install Apache Muse, the stable release of the Web Services Distributed Management (WSDM) Tooling in Eclipse TPTP 4.3, and the latest development builds of WSDM Tooling in TPTP 4.4. With this tutorial, a stand-alone "prequel" to the tutorial on crafting a WSDM endpoint using the Eclipse TPTP Build to Manage tooling, you'll be a master of installation.
Tutorials 13 Mar 2007  
 
What's new in PHP V5.2, Part 1: Using the new memory manager
In Part 1 of this "What's new in PHP V5.2" series, learn how to use the new memory manager introduced in PHP V5.2 and become proficient at memory usage tracking and monitoring. This will enable you to more use memory in PHP V5.2 more efficiently.
Articles 13 Mar 2007  
 
The ultimate mashup -- Web services and the semantic Web, Part 4: Create an ontology
This series details the creation of a mashup application that gives control over the data displayed back to the user; to do that, you need to build in intelligence. Now that you know how to represent information in RDF, you can start to create an ontology using the XML-based Web Ontology Language (OWL), which will enable you to automatically choose between services and parts of services.
Tutorials 08 Mar 2007  
 
The ultimate mashup -- Web services and the semantic Web, Part 5: Change out Web services
This series details the creation of a mashup application that gives control over the data displayed back to the user. Now that you know how to create an ontology that defines the concepts represented by a service, you can enable users to choose which service they want to use.
Tutorials 08 Mar 2007  
 
XML for PHP developers, Part 1: The 15-minute PHP-with-XML starter
This first article of a three-part series introduces PHP5's XML implementation and helps those relatively new to using XML with PHP to read, parse, and manipulate, and write a short and uncomplicated XML file using the DOM and SimpleXML in a PHP environment.
Articles 07 Mar 2007  
 
Parallelize applications for faster Linux booting
One of the biggest complaints about Linux, particularly from developers, is the speed with which Linux boots. By default, Linux is a general-purpose operating system that can serve as a client desktop or server right out of the box. Because of this flexibility, Linux serves a wide base but is suboptimal for any particular configuration. This article shows you options to increase the speed with which Linux boots, including two options for parallelizing the initialization process. It also shows you how to visualize graphically the performance of the boot process.
Articles 07 Mar 2007  
 
Tip: Configure Apache to send the right MIME type for XHTML
This tip shows you how to configure Apache to tag Extensible Hypertext Markup Language (XHTML) documents with the media type application/xhtml+xml for browsers that support it, while still sending text/html to nonconformant browsers such as Microsoft Internet Explorer.
Articles 06 Mar 2007  
 
Create an interactive production wiki using PHP, Part 2: Developing the basic wiki code
This "Create an interactive production wiki using PHP" series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity, and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for primetime, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users.
Tutorials 06 Mar 2007  
 
How to deploy Plants By WebSphere as a distributed application
The Plants by WebSphere application is a sample included in the IBM WebSphere Application Server. Although it is meant to showcase the capabilities of WebSphere Application Server, it is useful in many testing and development scenarios. However, one limitation is that Plants by WebSphere can only execute on a single server, and this effectively makes the application useless is many situations. This tutorial provides a step-by-step guide that outlines how to transform the Plants by WebSphere application into a distributed application.
Tutorials 06 Mar 2007  
 
XML for PHP developers, Part 2: Advanced XML parsing techniques
This second article in a three-part series will discuss XML parsing techniques of PHP5, focusing on parsing large or complex XML documents. It will offer some background about parsing extensions and, specifically, what parsing methods are best suited to what types of XML documents and why.
Articles 06 Mar 2007  
 
Meet the specs: WS-RT 1.0 operations, Part 3
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification handles faults.
Articles 06 Mar 2007  
 
Make PHP apps fast, faster, fastest, Part 2: Profile your PHP application to find, diagnose, and hasten plodding code
If your PHP application is plodding, use a profiler to measure where time is being spent. You can target the statement, loop, function, class, or library that's most sluggish. If time isn't the issue, but rather memory usage, a good profiler can also reveal component footprints.
Articles 06 Mar 2007  
 
Tools and support that meet your needs
Using Eclipse as your development environment? IBM provides you a series of choices for becoming more accountable and productive.
01 Mar 2007  
 
Build a Fedora Live CD
Though Fedora Linux is a popular and mature Linux distribution, and many people have created Live CD distributions based on Fedora, the Fedora project itself didn't released its first official Live CD until December of 2006. Learn how to build your own custom and easy-to-use Live CDs using a rewrite of Pilgrim, the Fedora Live CD creation tool.
Articles 28 Feb 2007  
 
Get to know Eclipse User Assistance
This article introduces the Eclipse User Assistance project and discusses the many ways to deliver quality user assistance for your Eclipse-based applications.
Articles 27 Feb 2007  
 
Develop Web applications for local use
Writing local Web applications can be quick, easy, and efficient for solving specific Intranet problems. Understand why a Web browser is sometimes a better interface than a GUI application, and when a CGI script may be the simplest and most elegant solution.
Articles 27 Feb 2007  
 
Customizing Eclipse RCP applications
Most developers think that an Eclipse Rich Client Platform (RCP) application must look similar in nature to the Eclipse integrated development environment (IDE). This isn't the case, however. This tutorial will explain a number of simple techniques you can use with the Standard Widget Toolkit (SWT) and JFace to create applications that have much more personality than the Eclipse IDE.
Tutorials 27 Feb 2007  
 
Make PHP apps fast, faster, fastest, Part 1: Boost performance, throughput with opcode cache software
PHP is a scripting language most often used to create Web applications. It's easy to learn and produces visible results quickly. However, because PHP is interpreted, PHP code is parsed and translated to opcodes every time it executes. An opcode cache eliminates that rework, making PHP applications faster.
Articles 20 Feb 2007  
 
Linux tip: Bash test and comparison functions
Are you confused by the plethora of testing and comparison options in the Bash shell? This tip helps you demystify the various types of file, arithmetic, and string tests so you will always know when to use test, [ ], [[ ]], (( )), or if-then-else constructs.
Articles 20 Feb 2007  
 
Flip for Flapjax
Meet Flapjax -- a new programming language with an old syntax based on standard JavaScript. With Flapjax you can easily program data sharing, interfaces to external Web services, persistence, and end-user responsiveness in Web applications.
Tutorials 20 Feb 2007  
 
LTA for multievent software problem analysis
Explore a sample symptom catalog and related events that illustrate how the IBM Log and Trace Analyzer (LTA) can help you diagnose software problems when they span multiple systems. This article introduces the LTA and illuminates its problem determination features; discusses symptoms, symptom definitions, events, and the event-symptom relationship; and explains the complexities of multievent symptom management.
Articles 20 Feb 2007  
 
LDAP search engines, Part 1: Use Perl and a regular-expression generator to search for and display LDAP database records
Find out how to use Perl and a regular-expression generator to search and display records from your Lightweight Directory Access Protocol (LDAP) database using simple keyword-type searches. Search and process your LDAP data without knowing precisely which field the data is in or how it is formatted. Part 2 of this "LDAP search engines" series introduces scoring and metaphone suggestions to the code.
Articles 20 Feb 2007  
 
developerWorks chats: Linux on the desktop
Greg Kelleher discusses why Linux can and should be a contender for end-user computing.
15 Feb 2007  
 
Develop HTML widgets with Dojo
Learn the basics of developing HTML widgets using Dojo; including how to refer an image, how to add an event handler to an HTML page, and how to handle composite widgets. Also, discover some important differences between plain old JavaScript-style coding versus Dojo, and get tips for handling complex issues inherent in Web application development.
Tutorials 14 Feb 2007  
 
The right way to read files with PHP
Learn how to use the different file functions of PHP. Review basic file functions, such as fopen, fclose, and feof, learn reading functions, such as fgets, fgetss, and fscanf. And discover functions that process entire files in one or two lines of code.
Articles 13 Feb 2007  
 
Portland improves Linux desktop portability
Portland is a new open source project that promises to simplify the deployment and commercialization of Linux applications by helping them run on multiple desktop environments, including Gnome and KDE. Although still young, Portland is available today, and it looks to be improving rapidly. Get started using the XdgUtils toolset in Portland 1.0.
Articles 13 Feb 2007  
 
Create fancy on-screen displays with Ghosd and Perl
Use Perl, Ghosd, and some network programming to display on-screen overlays of text and graphics based on messages from your local system and remote computers. Define custom images, font sizes, and colors to convey information integrated with your desktop.
Articles 13 Feb 2007  
 
Use PHP on System i, Part 2: Net.Data and PHP
Compare PHP with the Net.Data server-side scripting language, which IBM develops with DB2(R). Understand the origins of the languages, their syntax differences, usage learning curves, database connections, and other differences. This article is the second part of a series based on working with PHP on System i(TM).
Articles 13 Feb 2007  
 
Why open source for the WSDM open standard?
Get an overview of the run time and tooling for Web Services Distributed Management (WSDM) available in the Apache Muse and Eclipse TPTP (Test and Performance Tools Platform) projects. This article is a companion to the tutorial on creating a WSDM interface and also describes the motivation of building this in open source. Learn how you can influence both the development of the run time and the tooling. In this article, I share with you my personal views on why open source is the best avenue to develop implementations of the WSDM open standard.
Articles 13 Feb 2007  
 
Create an interactive production wiki using PHP, Part 1: Introduction and scaffolding
This "Create an interactive production wiki using PHP" series creates a wiki from scratch using PHP, with value-added features useful for tracking production. Wikis are widely used as tools to help speed development, increase productivity, and educate others. Each part of the series develops integral parts of the wiki until it is complete and ready for primetime, with features including file uploading, a calendaring "milestone" system, and an open blog. The wiki will also contain projects whose permissions are customizable to certain users.
Tutorials 13 Feb 2007  
 
Use PHP on System i, Part 1: Introduction and examples
Learn how to install PHP and DB2(R) on System i(TM), and understand how to port a MySQL application to DB2 on i5/OS(R). Understand the history and architecture types of PHP, including the new architecture that uses i5/OS with an Apache HTTP server and the IBM DB2 database to bring PHP applications to System i(TM). Read examples of PHP Web applications. Learn how PHP applications are especially beneficial to small and medium businesses, because open source PHP applications are often inexpensive and easily accessible. [The product option for the CCA Cryptographic Service Provider has been changed from option 13 to option 35. The title has been changed to indicate the first article in a series. -Ed.]
Articles 08 Feb 2007  
 
Linux tip: Printing DVI files with CUPS
Have you ever tried to print DVI or other files in Linux and gotten an "unsupported format" message? This tip shows you how to combine existing tools to make a CUPS print filter for printing DVI files.
Articles 07 Feb 2007  
 
Add ARM performance monitoring easily with Eclipse
The Eclipse Test and Performance Tools Platform (TPTP) project released an open source and Application Response Measurement (ARM) V4.0-compliant implementation in June 2006, based on TPTP V4.2. This tutorial describes the TPTP project and explains how ARM has been implemented and integrated with TPTP. The trade-offs involved in getting to this point are discussed, along with the challenges in moving forward. Specific examples show how to get started using ARM for your application with TPTP.
Tutorials 06 Feb 2007  
 
Remote computing with a Linux application server farm
You've heard of Web 2.0, right? Well, here's "utility computing 2.0," a combination of network booting, SSL, VNC, and other familiar concepts and technologies -- all on Linux -- that can yield dramatic returns on investment. See how the University of California set up a server farm environment to provide secure remote desktop application services for students.
Articles 06 Feb 2007  
 
Building templates with the Eclipse Plug-in Development Environment
This article introduces the creation of templates in Eclipse so you can enhance the experience of your clients. We will develop a simple template as an example of the flexibility PDE's templating system provides.
Articles 06 Feb 2007  
 
Meet the specs: WS-RT 1.0 operations, Part 2
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification extends the Create operation.
Articles 06 Feb 2007  
 
Build Web apps with ThinWire and Java code, Part 3: Styling support
With ThinWire, an open-source development framework, you can build Web applications that look and feel like desktop applications. In this five-part series, you'll learn how to develop rich Web applications using ThinWire and Java programming. Here in Part 3, you learn to use ThinWire styling support at both a global level and an individual component level.
Tutorials 06 Feb 2007  
 
Quality busters: A utility program for every occasion
Utility programs are frequently overlooked when releasing an application for production use, which is unfortunate because they support all kinds of essential operations. This month Michael Russell gets you thinking about utility programs and why to include them in your development plan and budget.
Articles 31 Jan 2007  
 
Web 2.0 user interface technologies
Imagine that you are tasked to create a new application that will live in the Web 2.0 world. Some of your users are perfectly happy with HTML-based user interfaces while others expect every application they use to behave like Excel. Your business sponsor expects a productivity-enhancing user experience, but your CIO won't allow you to develop anything that a user needs to manually deploy. You know HTML won't cut it, but what else is out there? This article explores a series of Web 2.0 user interface technologies that enable you to build applications with better-than-browser user experiences. As a result, you can centrally deploy and manage them just like any other Java(TM) 2 Enterprise Edition (Java EE) application.
Articles 30 Jan 2007  
 
LPI exam 102 prep, Topic 109: Shells, scripting, programming, and compiling
In this tutorial, Ian Shields continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 102. In this fifth in a series of nine tutorials, Ian introduces you to the Bash shell, and scripts and programming in the Bash shell. By the end of this tutorial, you will know how to customize your shell environment, use shell programming structures to create functions and scripts, set and unset environment variables, and use the various login scripts.
Tutorials 30 Jan 2007  
 
Developing with Apache Derby -- Hitting the trifecta: Java database development with Apache Derby, Part 2
Get a thorough overview on how to issue a simple database query against an Apache Derby database and how to process the selected results. Doing so requires the introduction of three new JDBC classes: Statement, ResultSet, and ResultSetMetaData. Learn how to use these classes with a JDBC database connection to quickly and easily extract data from an Apache Derby database into your own Java application.
Articles 30 Jan 2007  
 
Two ways to build Apache Derby database applications in JRuby
JRuby is an implementation of the Ruby programming language that runs in the Java Virtual Machine (JVM). This tutorial demonstrates how to install and configure JRuby to connect to the Apache Derby database. As Ruby and Ruby on Rails become more popular, JRuby becomes an interesting technology to leverage the portability, security, and class libraries of the JVM while using Ruby features like simple syntax and closures. If you're writing a small application that needs a relational database, or you want to be able to ship a database with your product, then the Derby database is an excellent choice for a persistence mechanism. This tutorial shows you two methods of connecting to and building Derby database applications from JRuby.
Tutorials 30 Jan 2007  
 
A step-by-step guide to publishing your own PEAR channels
The PHP Extension and Application Repository (PEAR) is a collection of PHP packages built to ease the development required to build an application. V1.4 of the PEAR package manager introduced the concept of channels, which are a way to organize and deliver packages that can be installed with the package manager. This tutorial discusses channels, introduces and explains the channel.xml file, and demonstrates how to build a channel for distributing packages. Channels are ordinarily used to expose PEAR packages through the Internet, but enterprises can uses channels to make distribution of enterprise-specific PHP code easy.
Tutorials 30 Jan 2007  
 
Explore Eclipse's OSGi console
Get acquainted with the hidden gem known as the OSGi (Equinox) console and find out how it can be added to an Eclipse developer's toolbox. And learn how to extend the console to further add to the toolbox.
Articles 30 Jan 2007  
 
SSL secures VNC applications
SSL provides a novel mechanism for convenient, secure access of remote desktops with VNC and standard Web browsers.
Articles 24 Jan 2007  
 
Make incoming e-mail play custom tunes
"You've got mail" is so 20th century. Use Perl and Sound eXchange (SoX) to play sound files on your Linux or Windows computer based on the content of incoming e-mail messages. Your system can compose and blend certain sounds to give you a heads-up on the who, what, and why of your in-box content.
Articles 23 Jan 2007  
 
Build an Ajax application using Google Web Toolkit, Apache Derby, and Eclipse, Part 2: The reliable back end
In this second article in the series on using the Google Web Toolkit (GWT) to build Asynchronous JavaScript + XML (Ajax) applications, learn how to build the Apache Derby database for your Web application, and use it to drive the GWT. Part 1 of this series introduced you to GWT and demonstrated how you can use it to create a rich-client front end for a Web application. This time, you'll go behind the scenes and learn about setting up the back end with your database and the code used to convert the data to a format that GWT can use. By the end of this article, you'll be ready for the front end and back end to talk to each other.
Articles 23 Jan 2007  
 
Offload your multimedia content and bandwidth to Amazon using PHP
Save disk space and bandwidth, and increase the reliability of your site by using the Amazon Simple Storage Service (S3) remote storage service to host your media files. You'll also improve the reliability of your site as it serves the increasingly large multimedia files that are so popular in the Web 2.0 world.
Articles 23 Jan 2007  
 
Mastering Ajax, Part 9: Using the Google Ajax Search API
Making asynchronous requests isn't just about talking to your own server-side programs. You can also communicate with public APIs like those from Google or Amazon, and add more functionality to your Web applications than just what your own scripts and server-side programs provide. In this article, Brett McLaughlin teaches you how to make and receive requests and responses from public APIs like those supplied by Google.
Articles 23 Jan 2007  
 
Ajax and XML: Five cool Ajax widgets
With the Web 2.0 wave came a whole new emphasis on the user experience. Part of that experience is the development novel ways to interact with and present information to users. Often, these new interfaces are called widgets and use Asynchronous JavaScript + XML (Ajax) to communicate with the server. Discover five widgets that you can use to enhance the interactivity of your site.
Articles 16 Jan 2007  
 
Use Apache Derby to develop Eclipse plug-ins
Get a demonstration on how to use resource indexing with the Apache Derby database to develop Eclipse plug-ins. The Derby database embedded in Eclipse allows you to create an SQL database on the client side with no security issues or network problems, such as an unstable connection or high latency. An SQL database and the JDBC API provide an easy way to store information and quickly search previously stored data.
Articles 16 Jan 2007  
 
How to internationalize your PHP apps
Localizing an application can be planned, or it can happen as a rushed afterthought. Discover techniques and tools such as gettext, XML, XSLT, and design patterns that can help when retrofitting localization into a mature product or planning for localization up front.
Articles 16 Jan 2007  
 
Create data set navigation with the Rico LiveGrid widget
With the Rico LiveGrid widget, easily add Ajax-style navigation to your Web applications in this article by software engineer Nikhil Parekh.
Articles 16 Jan 2007  
 
Whistle while you work to run commands on your computer
Use Linux or Microsoft Windows, the open source sndpeek program, and a simple Perl script to read specific sequences of tonal events -- literally whistling, humming, or singing to your computer -- and run commands based on those tones. Give your computer a short low whistle to check your e-mail or unlock your your screensaver with the opening bars of Beethoven's Fifth Symphony. Whistle while you work for higher efficiency.
Articles 09 Jan 2007  
 
U2 PDO Driver, Part 2: Write PHP applications to access U2 data
Learn how to write PHP applications using a PHP Data Objects driver. Part 1 of this series described how to write the PHP Data Objects driver for U2 using InterCall APIs.
Articles 04 Jan 2007  
 
Virtual Linux
Virtualization means many things to many people. A big focus of virtualization currently is server virtualization, or the hosting of multiple independent operating systems on a single host computer. This article explores the ideas behind virtualization and then discusses some of the many ways to implement virtualization. We also look at some of the other virtualization technologies out there, such as operating system virtualization on Linux.
Articles 29 Dec 2006  
 
Introduction to Apache Maven 2
Modern software projects are no longer solely monolithic creations of single local project teams. With the increased availability of robust, enterprise-grade open source components, today's software projects require dynamic collaboration among project teams and often depend on a mix of globally created and maintained components. Now in its second generation, the Apache Maven build tool -- unlike legacy build tools created before the Internet-enabled era of global software development -- was designed from the ground up to take on these modern challenges. This tutorial gets you started with Maven 2.
Tutorials 19 Dec 2006  
 
Real-world Apache Derby: Who needs Ajax, anyway?
Asynchronous JavaScript + XML (Ajax) is a dynamite technique for greatly enhancing the user experience on the Web. But it pays to remember that it's only necessary because of the distance between the information source and the browser. Shorten that distance, and much of the need for Ajax goes away. This tutorial -- the second in this series on Apache Derby database use -- offers an alternate technique, one that allows reuse across several different environments.
Tutorials 19 Dec 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 12: Hosting and deploying
In this article investigate the issues surrounding deployment of a Drupal site using virtualization technologies. Discover why the team chose to use virtualization, what technologies were considered, and the setup of the final production environment.
Articles 19 Dec 2006  
 
Build Ajax into your Web apps with Rails
Ruby on Rails provides an excellent platform for building Web applications. Discover how to use the built-in Asynchronous JavaScript(TM) + XML (Ajax) features of the platform to give your application the Web 2.0 rich user interface experience.
Articles 19 Dec 2006  
 
Generate Flash movies on the fly with PHP
Rich Internet Applications is the new buzz-phrase for Web 2.0, and a key component of the substance behind Web 2.0 is Adobe Flash. Learn how to integrate Flash movies into your application and generate Flash movies dynamically using the Ming library.
Articles 19 Dec 2006  
 
Host multiple SSL sites on a single network card with IP aliasing
The interest in using SSL and name-based virtual hosts together is on the increase. Some people will tell you that such a thing is impossible, but you can implement virtual hosts in Apache through IP-based virtual hosts. In this article, John Liao and Jim Miles show you how.
Articles 19 Dec 2006  
 
Linux project publications: Kernel
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of kernels.
Articles 14 Dec 2006  
 
Migrate Visual Studio C and C++ projects to Eclipse CDT
With most C/C++ projects on Windows developed with Microsoft Visual Studio, it is essential to study the migration of these projects to Eclipse, the open source IDE. This article provides a brief step-by-step procedure for migrating Microsoft Visual Studio C/C++ (MSVC) projects to Eclipse. It compares and contrasts the benefits of MSVC and Eclipse CDT.
Articles 12 Dec 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Java database development with Apache Derby, Part 1
Climb aboard! This article begins your journey of writing Java applications that work with the Apache Derby database. Learn how to connect to an embedded Derby database by using a Derby embedded Java Database Connectivity (JDBC) driver. Plus find out about database metadata and how to properly handle SQL errors and warnings in your Java application that may be generated by Derby.
Articles 12 Dec 2006  
 
Getting to know the Atom Publishing Protocol, Part 3: Introducing the Apache Abdera project
Earlier articles in this series provided an overview of the Atom Publishing Protocol and described the various ways it is being utilized in real world applications. This article begins to demonstrate how you can start to implement Atom-enabled applications using a new open-source project, called Abdera, currently under incubation at the Apache Software Foundation.
Articles 12 Dec 2006  
 
Building a CDT-based editor, Part 5: Using the PDOM for code completion
This article, fifth in a five-part "Building a CDT-based editor" series, shows how the C/C++ Development Tooling (CDT) performs code completion. This is one of the CDT's most useful capabilities because it reduces the amount of code the user needs to type and remember. Also, it provides a complete example of how the CDT uses the Persisted Document Object Model (PDOM).
Articles 12 Dec 2006  
 
Build an Ajax application using Google Web Toolkit, Apache Derby, and Eclipse, Part 1: The fancy front end
Google Web Toolkit (GWT) is a major step forward in the creation of dynamic JavaScript applications that run in users' Web browsers. Using GWT, developers can design the user interface (UI) and event model using familiar Java techniques while GWT does the hard work of making the code friendly for all the major browsers. Learn the basics of GWT in this first article in a series, including how GWT lets you create an Asynchronous JavaScript + XML (Ajax) application and still write your code in the Java language. Discover how to create and run a small sample GWT application -- a hot new Web 2.0 business called Slicr, which sells pizza online.
Articles 05 Dec 2006  
 
Develop eRCP applications with Eclipse
This article shows how to use Eclipse to develop embedded Rich Client Platform (eRCP) applications. Detailed steps guide you through setup, development style, deployment, and debugging of an eRCP application programming cycle.
Articles 05 Dec 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 11: Using taxonomies in Drupal
Follow along in this series of articles as the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council (IBC), using a suite of freely available software. In this article, you learn to use the taxonomy system in Drupal to provide structure to your Web site. The structure can then be used to support navigation and organization of your content.
Articles 05 Dec 2006  
 
Batch processing in PHP
What do you do when you have a feature in your Web application that takes longer than a second or two to finish? You need some type of offline processing solution. Check out several methods for offline servicing of long-running jobs in your PHP application.
Articles 05 Dec 2006  
 
Data visualization tools for Linux
Applications for graphical visualization of data on Linux are varied, from simple 2-D plots to 3-D surfaces, scientific graphics programming, and graphical simulation. Luckily, there are many open source possibilities, including gnuplot, GNU Octave, Scilab, MayaVi, Maxima, OpenDX, and others. Each has its advantages and disadvantages and targets different applications. Explore a variety of open source graphical visualization tools to better decide which is best for your application. [This article has been updated to include coverage of OpenDX - Ed.]
Articles 30 Nov 2006  
 
Java Web services: Digging into Axis2: AXIOM
The Apache Axis2 Web services framework builds on the new AXIOM XML document model for efficient SOAP message processing. Unlike conventional document models, AXIOM builds the document representation in memory only as it's being accessed. Learn why this on-demand construction is a great approach for SOAP processing, and how XOP/MTOM attachments, data binding, and performance fit into the picture.
Articles 30 Nov 2006  
 
Improve LAMP security with Apache Proxy's directive (mod_proxy)
In this article, Nick Maynard outlines a method for you to improve the security of a LAMP setup by using Apache's mod_proxy module. This article is specific to Linux; however, you can also apply some of the principles to other operating systems.
Articles 29 Nov 2006  
 
Meet the specs: WS-RT 1.0 operations, Part One
Meet the WS-ResourceTransfer 1.0 initial draft specification, a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This article provides a closer look at how the WS-ResourceTransfer 1.0 specification extends the Get operation.
Articles 29 Nov 2006  
 
Discover the Ajax Toolkit Framework for Eclipse
The Ajax Toolkit Framework (ATF) is a core piece of the new Open Ajax initiative, which aims to increase accessibility to the powerful Web programming technique through the Eclipse Foundation. The ATF extends the Eclipse Web Tools Platform (WTP) by adding an Asynchronous JavaScript and XML (Ajax) development environment for a variety of open source Ajax tool kits, including Dojo, Zimbra, and Rico. This article includes a HelloWorld example in which you install and configure the ATF, then use Eclipse and Dojo to create a basic Web application.
Articles 29 Nov 2006  
 
Creating a declarative security model for RCP applications
Thick client-based business applications require rigid security regulations where different classes of users receive a predetermined set of access rights. This article explains how to build a flexible security model for Rich-Client Platform (RCP) applications by leveraging features provided by the Eclipse platform.
Articles 29 Nov 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 10: Features for an extranet Web site
Follow along in this series of articles as the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council (IBC), using a suite of freely available software. In this installment, learn how to define an extranet to meet client requirements and explore implementation techniques to create an extranet Web site.
Articles 21 Nov 2006  
 
Job scheduling with Quartz
Quartz is an open source project that offers an extensive set of job scheduling features. In this article, software engineer Michael Lipton and IT architect Soobaek Jang introduce the Quartz API, starting with a general overview of the framework and concluding with a series of code examples that illustrate its fundamental features. After reading this article and following the code examples, you should feel capable of incorporating the basic features of Quartz into any Java application.
Articles 21 Nov 2006  
 
vi intro -- the cheat sheet method
This tutorial shows how to use vi, a powerful visual editor. Using an accelerated "cheat sheet" method, this tutorial aims to make you a proficient vi user without requiring a huge time commitment. You'll quickly learn how to move around, edit text, use insert mode, copy and paste text, and use important vim extensions like visual mode and multi-window editing.
Tutorials 15 Nov 2006  
 
Using Apache Derby databases, Part 2: Manage IT services beyond mere deployment
Rolling out increasingly advanced software offerings and the demands of more technically savvy users exacerbate the problem of IT service provision. Simply deploying software, like Apache Derby databases, and hoping for resiliency is no longer sufficient. Management needs to be automated. In this article -- the second in a two-part series -- find out how IBM autonomic computing technology, particularly the IBM Autonomic Integrated Development Environment (AIDE) toolkit, may be an effective solution. Learn how you can use this technology with Apache Derby to create the basis of a converged provider environment.
Articles 14 Nov 2006  
 
The GNU Linear Programming Kit, Part 3: Advanced problems and elegant solutions
The GNU Linear Programming Kit (GLPK) is a powerful, proven tool for solving numeric problems with multiple constraints. This article, the third in a three-part series uses GLPK and the glpsol client utility with the GNU MathProg language to solve a perfume production problem and a basketball lineup problem.
Articles 14 Nov 2006  
 
Build a Web spider on Linux
Web spiders are software agents that traverse the Internet gathering, filtering, and potentially aggregating information for a user. Using common scripting languages and their collection of Web modules, you can easily develop Web spiders. This article shows you how to build spiders and scrapers for Linux to crawl a Web site and gather information, stock data, in this case.
Articles 14 Nov 2006  
 
Monitor your Linux computer with machine-generated music
Use Perl and FluidSynth to create a real-time musical composition of your system status. Learn how to integrate various system monitoring data into a harmony-producing, MIDI-controlled audio synthesis. Explore audible information methods and configurations to help you monitor and manage your computing environment.
Articles 14 Nov 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 7
With this article you've reached an important point in mastering fundamental database concepts as they relate to the Apache Derby database. This article reviews how to modify an SQL query to group related rows together to provide summary statistics database information. Then it introduces the concept of a view, which can be used to simplify database application development by creating a virtual table that represents the results of an SQL query. Finally, you'll learn about database indexes, which you can use to locate specific table rows. After you've mastered these advanced database concepts, you'll be well positioned to begin developing Java database applications with Apache Derby.
Articles 07 Nov 2006  
 
Shake some sense into your Linux ThinkPad
Place your computer on the leading edge of cathartic interfaces by modifying the kernel to reset your Linux laptop automatically when shaken during a kernel panic. Implement a shake-detection algorithm in the kernel and user space to perform automatic shutdowns and restarts when certain kinetic conditions are met.
Articles 07 Nov 2006  
 
Mastering Ajax, Part 8: Using XML in requests and responses
In the last article of the series,you saw how your Ajax apps can format requests to a server in XML. You also saw why, in most cases, that isn't a good idea. This article focuses on something that often is a good idea: returning XML responses to a client.
Articles 07 Nov 2006  
 
Using Apache Derby databases, Part 1: Managed objects in a converged provider environment
This two-part series addresses the importance of the automated management of Apache Derby databases using (as an example) IBM autonomic computing touchpoint technology and Web Services Distributed Management (WSDM). This article, Part 1, introduces the growing need for automated IT management, which is facilitated by the centralization and consolidation of applications, data centers, and front- and back-office functions. Discover how you can use Derby as a managed element, including working with the database's unified utilization and management requirements and how using FCAPS can help you design an IT management solution.
Articles 31 Oct 2006  
 
What's hot in Eclipse V3.2 Callisto
Eclipse Callisto (V3.2) offers new and improved features over Eclipse V3.1.x and many IDEs available today. Developers who have been using Eclipse V3.1.x will find it easier to get Eclipse up and running to do a variety of tasks, including Java development, Web services development, XML and XSD building, and connecting to and working with databases. This article introduces the new features and improved usability, along with links to many resources on Callisto projects.
Articles 31 Oct 2006  
 
Real Web 2.0: Bookmarks? Tagging? Delicious!
In this article, you'll learn how to work with del.icio.us, one of the classic Web 2.0 sites, using Web XML feeds and JSON, in Python and ECMAScript. When you think of Web 2.0 technology, you might think of the latest Ajax tricks, but that is just a small part of the picture. More fundamental concerns are open data, simple APIs, and features that encourage users to form social networks. These are also what make Web 2.0 a compelling problem for Web architects. This column will look more than skin deep at important real-world Web 2.0 sites and demonstrate how Web architects can incorporate the best from the Web into their own Web sites.
Articles 26 Oct 2006  
 
Develop an application with Apache Derby, Apache MyFaces, and Facelets
Learn how to develop a JavaServer Faces (JSF) application using Apache Derby, Apache MyFaces, and Facelets. The ready-to-download sample application in this article uses a Model-View-Controller (MVC) architecture to illustrate the power of the MyFaces components and the ease of developing with Apache Derby and the latest view technology, Facelets.
Articles 24 Oct 2006  
 
Charming Python: Hatch Python eggs with setuptools
David takes a look at the setuptools framework, a side project of the Python Enterprise Application Kit (PEAK). setuptools replaces the standard distutils library and adds versioned package and dependency management to Python. Perl users will be familiar with CPAN, and Ruby users with Gems; the tool ez_setup that bootstraps setuptools and the expanded easy_install that comes with it act in conjunction with "Cheeseshop" (the Python Package Index, also called "PyPI") to achieve the same thing. Moreover, setuptools lets you package your libraries in a single-file archive called an "egg," which is a lot like a Java JAR file, but for Python.
Articles 24 Oct 2006  
 
Debugging make
Make utilities such as GNU make, System V make, and Berkeley make, are fundamental tools for streamlining the application build process, but each one is just a little different from the others. Learn the structure of the makefile and how to avoid common mistakes in its creation, discover how to fix or work around portability issues, and pick up hints for solving other problems as they crop up.
Articles 24 Oct 2006  
 
Create a commercial-quality Eclipse IDE, Part 3: Fine-tune the UI
This tutorial -- the final installment in this "Create a commercial-quality Eclipse IDE" tutorial series about integrated development environment (IDE) design -- shows how to fine-tune the UI of your IDE. It shows how to use additional elements in Eclipse to enhance your editor as well as demonstrates the differences between commercial-quality and amateur IDEs.
Tutorials 24 Oct 2006  
 
Building a CDT-based editor, Part 4: Advanced CDT parsing and the Persisted Document Object Model
This article, the fourth in a five-part "Building a CDT-based editor" series, introduces the second and more sophisticated of the parsers used by Eclipse's C/C++ Development Tooling (CDT). This new process structures its information in a Persisted Document Object Model (PDOM) and enables indexing, code completion, and content assist. If you intend to improve or extend the CDT for your own custom tool, understanding the PDOM and the new parsing is essential.
Articles 24 Oct 2006  
 
Create a commercial-quality Eclipse IDE, Part 2: The user interface
This tutorial -- second in this "Create a commercial-quality Eclipse IDE" series -- shows how to create the UI of the IDE. It examines the editor user interface framework that Eclipse offers, as well as the SourceViewerConfiguration class and all the various classes related to it, used to implement and configure your IDE's UI.
Tutorials 17 Oct 2006  
 
Port your code around the world with m17n
To make Linux applications usable worldwide, with no inequity between Western dialects and the rest of the world's many languages, you must be able to deliver localized versions that input, store, retrieve, and render any language, no matter how complex. The multilingualization library, or m17n, provides a single internationalization solution for all languages on UNIX-like platforms.
Articles 17 Oct 2006  
 
Apache Derby resources from the Web services perspective, Part 2: Producing and consuming WS-Notifications with Derby
Continue on your mission to make your resources service-oriented architecture (SOA)-friendly. Part 1 of this three-part tutorial series showed you how to use WS-Resources to refer to Apache Derby data and structures from within the inherently stateless environment of Web services. Exposing a database entity through a Web service resource helps you easily provide state and database information through the standardized Web Services Resource Framework (WSRF). But how do you monitor the resource to check for changes? WS-Notification standard Web services. This installment, Part 2, walks you through producing and consuming Web services notifications with Apache Derby and teaches you about WS-Notification, which provides another standardized interface for the monitoring and examination of a Web service.
Tutorials 17 Oct 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 9: Understanding the database layer
Follow along in this series of articles as the the IBM Internet Technology Group designs, develops, and deploys an extranet Web site for a fictitious company, International Business Council, using a suite of freely available software. In this installment, explore the Drupal database abstraction layer and learn how to use it effectively while developing a Web site. Discover best practices for module developers and details about using the Drupal database functions. You also learn to implement the necessary code to support a new database -- IBM DB2 Express-C.
Articles 17 Oct 2006  
 
Understanding JFace data binding in Eclipse, Part 3: Exploiting advanced features
Almost all applications require synchronization of data between various objects and services. This tutorial, Part 3 of a series titled "Understanding JFace data binding in Eclipse," shows you how to use advanced features to accomplish this task while writing testable UIs.
Tutorials 17 Oct 2006  
 
Building a CDT-based editor, Part 3: Basic CDT parsing
This article, third in a five-part "Building a CDT-based editor" series, introduces the parsing process used by the Eclipse C/C++ Development Tooling (CDT). Parsing is one of the CDT's most crucial functions, but because of its complexity, parsing is also one of its least-understood aspects. Many have asked if they can simply extract it for their own project, but here, we'll go further, explaining how the classes function and how this functionality fits in with the CDT as a whole.
Articles 10 Oct 2006  
 
Seven great PHP IDEs compared
Discover what you should expect from an integrated development environment (IDE), and compare the cost and benefits of seven popular IDE choices.
Articles 10 Oct 2006  
 
Mastering Ajax, Part 7: Using XML in requests and responses
Brett McLaughlin demonstrates how you can use XML as the data format for sending asynchronous requests.
Articles 10 Oct 2006  
 
SimpleXML processing with PHP
Discover the SimpleXML extension, which is bundled with PHP version 5 and enables PHP pages to query, search, modify, and republish XML in a PHP-friendly syntax.
Articles 10 Oct 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 8: Styling content for theming using CSS
Learn methods for structuring the content of a new extranet Web site, including how to change the presentation and styling of the content delivered by Drupal.
Articles 06 Oct 2006  
 
Apache Derby resources from the Web services perspective, Part 1: Derby data as WS-Resources
As the world moves in the direction of service-oriented architecture (SOA), it becomes crucial that all of your resources are SOA friendly. That may mean they produce services, that they consume services, or that they are services. This three-part tutorial series looks at Apache Derby from the perspective of making it Web services-aware. Web services are stateless, but most applications are not. This tutorial, Part 1, shows you how to use WS-Resources to refer to Derby data and structures from within the inherently stateless environment of Web services.
Tutorials 03 Oct 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 7: Structuring content for theming using XHTML
Find out the team's approach for the development of a Web site, including key methods to structure the content delivered by Drupal.
Articles 03 Oct 2006  
 
Understanding JFace data binding in Eclipse, Part 2: The basics of binding
Almost all applications require synchronization of data between various objects and services. However, moving String instances and writing event notification code can be tedious. Desktop application development is especially full of such tasks. The new JFace data binding application programming interface (API) included in Eclipse V3.2 looks to make this data synchronization process far easier. This "Understanding JFace data binding in Eclipse" series introduces basic and advanced uses of the JFace data binding API.
Tutorials 03 Oct 2006  
 
Secure programming with the OpenSSL API, Part 3: Providing a secure service
Without secure server applications, the need for secure client applications is nonexistent. With OpenSSL, you can create secure server applications, and, although the documentation makes it look intimidating, it's really not difficult. Learn how to build a secure server app by building on the concepts covered in Part 1 of this series.
Articles 27 Sep 2006  
 
Understanding JFace data binding in Eclipse, Part 1: The pros and cons of data binding
Large amounts of the development time for Java graphical user interface (GUI) applications involve simply moving data out of domain objects into GUI components and back again. In recent years, several data binding frameworks have stepped to the forefront to automate this data synchronization process. This article explains what a data binding framework does, introduces several popular Java GUI data binding frameworks, and covers the pros and cons of using data binding.
Articles 26 Sep 2006  
 
Real-world Apache Derby, Part 1: Apache Derby and OpenOffice.org Calc
Apache Derby signals a sea change in both desktop and Web-based applications. For the first time, that elusive target for developers -- complete data portability -- is easily attainable. This tutorial, the first in a series, shows how you can use Derby as a data store to overcome row-length limitations in OpenOffice.org's Calc and use that program's interface for data analysis while leaving the storage to Derby.
Tutorials 26 Sep 2006  
 
Implement news syndication using RSS and Atom
The advent of RSS and Atom technologies brings a bright new era of news syndication. It takes time, however, for Web site administrators to publish the news manually every day and to manage e-mail subscribers. This article shows how to implement a general news publication architecture using RSS and Atom syndication formats to ease the process and minimize human error.
Articles 26 Sep 2006  
 
A PHP V5 migration guide
With the new language features of PHP V5, you can significantly improve your code's maintainability and stability. Learn how to migrate code developed in PHP V4 to V5 while taking advantage of these new features.
Articles 26 Sep 2006  
 
Build cross-platform GUIs using wxWidgets
The wxWidgets toolkit contains powerful, cross-platform tools for graphical user interface (GUI) development. In addition to its native C++, several languages offer wrappers for use with the toolkit. Learn how to use the wxWidgets toolkit to create elegant and highly useful GUIs in your programming language of choice.
Articles 21 Sep 2006  
 
Build cross-platform GUIs using wxWidgets
The wxWidgets toolkit contains powerful, cross-platform tools for graphical user interface (GUI) development. In addition to its native C++, several languages offer wrappers for use with the toolkit. Learn how to use the wxWidgets toolkit to create elegant and highly useful GUIs in your programming language of choice.
Articles 21 Sep 2006  
 
LPI exam 102 prep, Topic 108: Linux documentation
In this tutorial, the fourth of a series of nine tutorials on LPI exam 102 topics, Ian Shields introduces you to Linux documentation. By the end of this tutorial, you will know how to use and manage local documentation, find documentation on the Internet, and use automated logon messages to notify users of system events.
Tutorials 20 Sep 2006  
 
Building a CDT-based editor, Part 2: Presenting text in the CDT
This article, the second in a five-part "Building a CDT-based editor" series, introduces text presentation in the Eclipse C/C++ Development Tooling (CDT). Text presentation is an important advantage of the CDT. The clear, multicolored display makes it easy to read and navigate through code. Understanding how this works is crucial, whether you want to understand the CDT code or build a full-featured source editor of your own. Further, the mechanisms that make CDT text presentation possible are also needed for a more important capability: automatic parsing.
Articles 19 Sep 2006  
 
Practically Groovy: Reduce code noise with Groovy
Groovy's concise syntax frees developers from typical Java constructs that are required for code compilation but don't facilitate expressing what a program is really trying to accomplish. In this revival of the Practically Groovy series, Groovy developer and guest columnist J. Scott Hickey walks you through a series of comparisons between normal Java code and the same Groovy code to show you how this exciting language frees you to focus on the important aspects of coding.
Articles 19 Sep 2006  
 
Meet the specs: Intro to WS-ResourceTransfer 1.0
Meet the WS-ResourceTransfer 1.0 initial draft specification (WS-RT), a proposed open standard that extends certain operations by allowing fragments of XML code in a single resource to be addressed instead of having to affect the entire resource. This introduction provides an overview of the specification, examines its heritage, and starts climbing the learning curve by uncovering the definition of fragments and discovering the three expression dialects employed in WS-RT.
Articles 19 Sep 2006  
 
Make Ruby on Rails easy with RadRails and Eclipse
RadRails is the Eclipse-based IDE for Ruby on Rails. Learn about installing RadRails, the structure and use of the application window, and the primary steps in developing an application.
Articles 19 Sep 2006  
 
Building a CDT-based editor, Part 1: The C/C++ Development Tooling model
The Eclipse C/C++ Development Tooling (CDT) project remains one of the most popular Eclipse downloads available. But the integrated development environment's (IDE's) richness makes the code difficult to understand and customize, which is an important concern for organizations attempting to integrate the CDT into their applications. This five-part "Building a CDT-based editor" series explains how the CDT editor works, and Part 1 introduces the data structures on which the CDT operates.
Articles 12 Sep 2006  
 
NFSv4 delivers seamless network access
Network File System (NFS) has been part of the world of free operating systems and proprietary UNIX flavors since the mid-1980s. But not all administrators know how it works or why there have been new releases. A knowledge of NFS is important simply because the system is vital for seamless access across UNIX networks. Learn how the latest release of NFS, NFSv4, has addressed many criticisms, particularly with regard to security problems, that became apparent in versions 2 and 3.
Articles 12 Sep 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 6: Building a custom module in Drupal
Create a custom Drupal module for announcements on Web site, including implementation and code samples.
Articles 12 Sep 2006  
 
Learn Eclipse GMF in 15 minutes
This article introduces the Graphical Modeling Framework (GMF) project, shows how to develop a simple Eclipse Modeling Framework (EMF) model, and transform it into a full-blown graphical editor using GMF's tooling.
Articles 12 Sep 2006  
 
The GNU Linear Programming Kit, Part 2: Intermediate problems in linear programming
This article continues the series on using the GNU Linear Programming Kit and the glpsol client utility with the GNU MathProg language. In this installment, a diet problem shows you how to formulate a simple multi-variable and declare bidimensional parameters. A post office resource allocation problem then introduces MathProg expressions and integer-only decision variables.
Articles 07 Sep 2006  
 
Merge XML and Java with XMLBeans in commerce
Learn how and why Service-Oriented Architectures (SOAs), XML, and XMLBeans can play an important role in addressing real business problems, using the entertainment industry as a case study. This article isn't about code; rather, you'll learn how and why to use XMLBeans in any situation requiring XML.
Articles 05 Sep 2006  
 
Introducing The Open Group Architecture Framework (TOGAF), Part 3: Create an enterprise architecture with TOGAF
Discover how to use The Open Group Architecture Framework (TOGAF) and overcome potential obstacles you can encounter when building an enterprise architecture.
Articles 05 Sep 2006  
 
Errors: errno in UNIX programs
Learn more than you ever wanted to know about the UNIX standard error reporting mechanism, the errno global variable. You'll also learn about a couple of associated global variables (sys_nerr and sys_errlist) and the standard functions that help you report errors to the user.
Articles 05 Sep 2006  
 
Open source robotics toolkits
Building a robot involves skills from many disciplines, including embedded firmware and hardware design, sensor selection, controls systems design, and mechanical design. But simulation environments can provide a virtual arena for testing, measuring, and visualizing robotics algorithms without the high cost (and time) of development. This article introduces you to some of the open source robotics toolkits for Linux, demonstrates their capabilities, and helps you decide which is best for you.
Articles 05 Sep 2006  
 
Create a commercial-quality Eclipse IDE, Part 1: The core
This "Create a commercial-quality Eclipse IDE" series examines how to create professional, commercial-quality IDEs that plug into Eclipse. In this tutorial, learn how to create the core of the IDE.
Tutorials 05 Sep 2006  
 
Understanding the Zend Framework, Part 9: Adding interactivity with Ajax and JSON
Throughout this "Understanding the Zend Framework" series, we use the PHP Zend Framework to create the Chomp online feed reader, and now it's time to do one last tweak to improve usability. This article shows how to use Ajax to add information to a page without reloading the entire page, and how to use the Zend Framework to easily streamline those requests by translating data to and from the JavaScript Object Notation (JSON).
Articles 05 Sep 2006  
 
PHP configuration patterns
This article demonstrates several ways to create configurable PHP applications. It also discusses the ideal configuration points in an application, and finding the balance point between an application that is too configurable and one that is too closed.
Articles 29 Aug 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 5: Getting started with Drupal
In this article you are introduced to the Drupal programming model used in developing Web sites and gives you a description of different types of content. You also learn how to develop new features using modules, implementing hooks to enable those modules, and site URL design.
Articles 29 Aug 2006  
 
Get a head start with JDBC 4.0 using Apache Derby
At the time of this writing, the Java Database Connectivity (JDBC) 4.0 specification is expected to be released from beta testing. It offers developers several enhancements to speed development and create a more object-oriented paradigm with regard to accessing and manipulating data stores. This specification relies heavily on existing technologies, such as Generics, the Metadata Facility, and JDBC RowSet. This tutorial demonstrates some of the new functions of the JDBC 4.0 specification in conjunction with the Apache Derby database.
Tutorials 29 Aug 2006  
 
Understanding the Zend Framework, Part 8: Adding related information and services
In previous parts of this "Understanding the Zend Framework" series, we created the basic application, the Chomp online feed reader, using the open source PHP Zend Framework. This tutorial, the ninth and final part of the series, adds an extra dimension to our feed reader by linking the online resources of Amazon.com, Yahoo!, and Flickr with our current application to create a robust mashup.
Tutorials 29 Aug 2006  
 
Understanding the Zend Framework, Part 7: Searching
Continuing this "Understanding the Zend Framework" series, where you last learned how to use the Zend Framework to send e-mail from within our feed reader application, now you'll use the Zend Framework to search the titles and content of articles saved via the feed reader application and view the resulting ranked results.
Articles 22 Aug 2006  
 
LPI exam 102 prep, Topic 107: Printing
In this tutorial, the third of a series of nine tutorials on LPI exam 102 topics, Ian Shields introduces you to printing in Linux. By the end of this tutorial, you will know how to manage printers, print queues, and user print jobs on a Linux system.
Tutorials 22 Aug 2006  
 
Eclipse Test & Performance Tools Platform, Part 3: Test applications
In this installment of the "Eclipse Test & Performance Tools Platform" tutorial series, learn how to use Eclipse Test & Performance Tools Platform (TPTP) testing features to measure the response time of your Web application. Then, discover how to create and manage improved JUnit tests and create computer-directed manual testing.
Tutorials 22 Aug 2006  
 
Configureless J2EE development with Stripes, Apache Derby, and Eclipse
In the search for more portable and lightweight enterprise solutions, Java 2 Platform, Enterprise Edition (J2EE) developers can leverage both Stripes and Apache Derby for rapid, lightweight, J2EE development. Learn how to develop, package, and deploy a simple Stripes application that performs Create, Retrieve, Update, and Delete (CRUD) operations on a Derby database.
Tutorials 22 Aug 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 6
Along with creating a database schema and populating tables with data, being able to selectively modify data is one of the most important skills necessary for a database developer. This article teaches you how to selectively delete or update data in an existing table and how to modify the structure of an existing table. To perform data modifications on a more complex database schema, you'll learn about embedded subqueries, both scalar and table, with data update and data insert operations. You'll also find out how to delete and modify data in complex schemas using the Apache Derby database.
Articles 15 Aug 2006  
 
Meet the specs: SML models complex IT systems
Meet the Service Modeling Language specification, a proposed open standard that defines a modeling language complete with a set of constructs to help you model complex system hierarchies for components that manage such elements as configuration, monitoring, policy, health, capacity planning, and Service Level Agreements (SLA). One of the effects of SML is to increase the automation of management tasks, thereby reducing the need for a human to intervene in necessary adjustments. This article provides a quick look at the specification.
Articles 15 Aug 2006  
 
Understanding the Zend Framework, Part 6: Sending e-mail
Earlier installments in this "Understanding the Zend Framework" series use the PHP Zend Framework to create the basic Chomp online feed reader. Now it's time to add e-mail to the mix. This article explains how to use the Zend_Mail component to send text and HTML e-mail alerts to users when new content has been added to subscribed feeds.
Articles 15 Aug 2006  
 
Check your PHP code at every level with unit tests
Test-driven development and unit tests are the latest way to make sure your code is behaving as you expect through changes and refactoring. Find out how to unit test your PHP code at the module, database, and user interface (UI) level.
Articles 15 Aug 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 4: Building your development environment in Linux
Install and configure in this tutorial all the software necessary to develop a Drupal-based Web site using Linux, including Eclipse, PHP, and more. When you're done, you will have a blank development canvas that you can use for any development project.
Tutorials 11 Aug 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 3: Building your development environment in Windows
Install and configure in this tutorial all the software necessary to develop a Drupal-based Web site in Windows, including Eclipse, PHP, and more. When you're done, you will have a blank development canvas that you can use for any development project.
Tutorials 11 Aug 2006  
 
Easy database queries with JSTL SQL actions
Author Meenakshi G. Khanna shows you how to use the JSTL 1.1 SQL tag library to incorporate database operations into your JSPs.
Articles 10 Aug 2006  
 
Building cheat sheets in Eclipse V3.2
Cheat sheets, an important productivity tool for Eclipse users, have gotten even better with Eclipse V3.2. In this follow-up to his "Building cheat sheets in Eclipse" tutorial, IBM software engineer Philipp Tiedt outlines cheat sheets' new features and gives examples of how to use them.
Articles 08 Aug 2006  
 
The GNU Linear Programming Kit, Part 1: Introduction to linear optimization
The GNU Linear Programming Kit is a powerful, proven tool for solving numeric problems with multiple constraints. This article introduces GLPK, the glpsol client utility, and the GNU MathProg language to solve the problem of optimizing the operations for Giapetto's Woodcarving, Inc., a fictional toy manufacturer.
Articles 08 Aug 2006  
 
Seven simple reasons to use AppFuse
Getting started with open source tools for the Java platform such as Spring, Hibernate, or MySQL can be difficult. Throw in Ant or Maven, a little Ajax with DWR, and a Web framework -- say, JSF -- and you're up to your eyeballs just trying to configure your application. AppFuse removes the pain of integrating open source projects. It also makes testing a first-class citizen, allows you to generate your entire UI from database tables, and supports Web services with XFire. Furthermore, AppFuse's community is healthy and happy -- and one of the few places where users of different Web frameworks actually get along.
Articles 08 Aug 2006  
 
Beef up Web search applications with Lucene
Lucene is a full-text information retrieval (IR) library written in the Java(TM) programming language. Now it's an open source project in the popular Apache Jakarta Project family. Discover how to implement advanced searching capabilities, and learn how to create a robust Web search application using Lucene.
Articles 08 Aug 2006  
 
Create more -- better -- code in Eclipse with JET
The ability to create templates to codify best practices (that generate artifacts) is a powerful concept that can save you countless hours and reduce tedious coding. Get an introduction to the code generation framework, JET, which is an Eclipse technology project.
Articles 08 Aug 2006  
 
Five common PHP database problems
Discover five common database problems that occur in PHP applications -- including database schema design, database access, and the business logic code that uses the database -- as well as their solutions.
Articles 01 Aug 2006  
 
Understanding the Zend Framework, Part 5: Creating PDF files
In previous parts of this "Understanding the Zend Framework" series, we created the basic application, the Chomp online feed reader, using the open source PHP Zend Framework. In this tutorial, we use the Zend Framework's PDF capabilities to generate a PDF document based on entries the user has saved.
Tutorials 01 Aug 2006  
 
Transform Eclipse navigation files to DITA navigation files
A previous article described the basics for transforming Eclipse navigation files to Darwin Information Typing Architecture (DITA) format. In August 2005, the OASIS DITA Toolkit 1.1 implemented a new way to integrate DITA navigation files. The new capability is called mapref and provides an alternative to using the navref element to integrate navigation files, as described in the previous article. This article compares the mapref and navref methods of integrating navigation files. You'll find the download archive for this article includes an updated XSLT stylesheet that exploits the mapref capability and offers other enhancements to the stylesheet from the earlier article.
Articles 01 Aug 2006  
 
Better error handling using Flex and Bison
Although it is easy to generate programs using Flex and Bison, it is a bit harder to make those programs produce user-friendly syntax and semantic error messages. This article examines the error-handling features of Flex and Bison, shows how to use them, and details some pitfalls.
Articles 28 Jul 2006  
 
PHP encryption for the common man
In this increasingly virtual online world, you have to be careful to protect your data. Learn the basics of encoding and encrypting important bits of information, such as passwords, credit card numbers, and even entire messages. Get an overview of what it means to encrypt and decrypt information, as well as some practical examples involving passwords and other data, using PHP's built-in functionality.
Articles 25 Jul 2006  
 
Knock-based commands for your Linux laptop
For the first time, you can hit your computer and get a meaningful response! Using Linux and the Hard Drive Active Protection System (HDAPS) kernel drivers, you can access the embedded accelerometers on Lenovo (formerly IBM) ThinkPads, then process the accelerometer data to read specific sequences of "knocking" events -- literally rapping on the laptop case with your knuckles -- and run commands based on those knocks. Double tap to lock the screen, and knock in your secret code to unlock. Tap the display lid once to move your mp3 player to the next track. The possibilities are endless.
Articles 25 Jul 2006  
 
Understanding the Zend Framework, Part 4: When there is no feed, the Zend_HTTP_Client
This "Understanding the Zend Framework" series chronicles the building of an online feed reader, Chomp, while explaining the major aspects of using the recently introduced open source PHP Zend Framework. Part 3 explains how to use the Zend Framework to construct our online feed reader, Chomp, by creating an interface to subscribe to and read feeds, and to save feed entries into the database. Now you will learn how to use the Zend Framework to incorporate Web sites that do not support RSS feeds into the online feed-reader interface.
Articles 25 Jul 2006  
 
Five common PHP design patterns
Design patterns are just for Java architects -- at least that's what you may have been led to believe. In fact, design patterns are useful for everyone. If these tools aren't exclusive to architecture astronauts, what are they, and why are they useful in PHP applications? This article explains.
Articles 18 Jul 2006  
 
Understanding the Zend Framework, Part 3: The feeds
This "Understanding the Zend Framework" series chronicles the building of an online feed reader, Chomp, while explaining the major aspects of using the recently introduced open source PHP Zend Framework. In parts 1 and 2, we discuss the goals behind the Zend Framework and show you how to use it to create the beginnings of our online feed reader, creating a form and adding information to a database while getting to know the MVC pattern. In this tutorial, you will see how to use the Zend Framework to implement the online feed reader portion of the application.
Tutorials 18 Jul 2006  
 
Back to basics: Scripting Apache Derby's ij tool
Everybody's building Web applications these days. But what if you just want a little bit of data? Do you really need to go to the trouble of creating a whole application? Doesn't Derby provide a tool for that? Well, of course it does. Derby's main command line tool, ij, is designed for just that: manipulating and retrieving the data in the database from the command line. But ij is more than just a place to enter select statements. It provides a fairly comprehensive suite of tools and commands, such as the use and manipulation of cursors. This article explains the use of ij's advanced scripting capabilities. You may never go back to a Web application again.
Articles 18 Jul 2006  
 
Practical business graphing with SVG and XML
Learn to build business graphs using XML, PHP and the Scalable Vector Graphics (SVG) standard. The SVG standard gives your graphics infinite vector scalability, visual effects, and even scripted interactivity.
Articles 18 Jul 2006  
 
Get free stuff for Web design
Web developers can find many free resources, although some are freer than others. If you design a Web site or Web application, whether static or with all the dynamic Ajax goodness you can conjure up, you might find resources to lighten your load and spice up your content. From free icons to Web layouts and templates to on-line Web page tools, this article demonstrates that a Web architect can also get help these days at little or no cost.
Articles 13 Jul 2006  
 
Separate data and formatting with microformats
Microformats are a new way to embed structured data within standard XHTML code. Discover how to read and write the new microformats for the Web.
Articles 11 Jul 2006  
 
Configuring and troubleshooting Tomcat 3.2.4 on IBM System i5/OS
The Tomcat application server is a lightweight, easy-to-use, open source alternative to commercial products. Learn how it to use it with IBM System i5 computers.
Articles 11 Jul 2006  
 
Python Web frameworks, Part 2: Web development with TurboGears and Python
In this second article of a two-part series, we demonstrate TurboGears, another open source MVC-style Web application framework based on Python. Where the first article was an introduction to the Django framework, this one shows how to use TurboGears to create a Web-based shopping application and concludes with a comparison between Turbogears and Django.
Articles 11 Jul 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 2: Design for an effective user experience
Explore the IBM Internet Technology Group's design process for a closed community Web site, which can help you to create user experiences for applications, other interfaces, or Web sites.
Articles 11 Jul 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 5
The SQL SELECT statement lets you perform queries against an Apache Derby database to select data from multiple tables where certain conditions are valid. This article builds on previous articles in this series to develop even more powerful SELECT statements. Learn how to use the ORDER BY clause and DISTINCT keywords to modify the rows of data selected by a query; how to include basic mathematical operators in a query; and how to work with the primary built-in SQL functions to convert data from one data type to another, to compute aggregate quantities, to perform mathematical operations, to work with date and time data, and to work with character strings.
Articles 11 Jul 2006  
 
Using open source software to design, develop, and deploy a collaborative Web site, Part 1: Introduction and overview
In this series, follow along as the IBM Internet Technology Group team designs, develops, and deploys a closed community Web site using a suite of software that is freely available -- including Drupal, MySQL, PHP, Apache, and Eclipse technologies.
Articles 11 Jul 2006  
 
Understanding the Zend Framework, Part 2: Model-View-Controller and adding a database
In Part 1 of this "Understanding the Zend Framework" series, we discuss the goals behind the Zend Framework, including easy-to-use components and an architecture based on the Model-View-Controller (MVC) pattern. Now we start to actually put that to use. In this tutorial, you will see how to use the Zend Framework to create the beginnings of our online feed reader, Chomp, creating a form and adding information to a database while getting to know the MVC pattern.
Tutorials 11 Jul 2006  
 
How to use Subversion with Eclipse
From the beginning, Eclipse included tight integration with the Concurrent Versions System (CVS) in order to provide access to change-management capabilities. Now, many projects -- notably those run by the Apache Software Foundation -- are using a different change-management system: Subversion. Find out how to use Eclipse for projects that use a Subversion repository.
Articles 11 Jul 2006  
 
Create mosaic movies with Perl, ImageMagick, and MPlayer
Use Perl, ImageMagick, and MPlayer to create mosaic movies composed of frames from other movies. Zoom out from the center of a large text-overlay image made up of sequential frames of existing movies. Disassemble, composite, and encode your own mosaic-type movies for special promotional or home video events.
Articles 11 Jul 2006  
 
Manage source code using Git
Git is the open source revision control software that Linus Torvalds developed to help manage Linux kernel development. You can download it yourself and use it for your own kernel hacking -- or for software development projects of your own. This article shows you how to get started hacking Linux with the Git tools. [Update: Two code listings have been modified to reflect the replacement of the rsync protocol with the newer git protocol for fetching source code -- Ed.]
Articles 06 Jul 2006  
 
System Administration Toolkit: Migrating and moving UNIX filesystems
Learn how to transfer an entire file system on a live system, including how to create, copy, and re-enable the new file system. If you have a UNIX(R) disk or system failure or simply fill up your file system, then you need to create a new partition and file system and copy over the contents. You might even need to mount the new partition in place to preserve the location of vital files and components. To add further complications, you need to do this on a live system, where you'd need to preserve file permissions, ownership, and possibly named pipes and other components. Effectively transferring these components and retaining all of this information is a vital part of the migration process.
Articles 03 Jul 2006  
 
LPI exam 202 prep, Topic 214: Network troubleshooting
In this tutorial, the last of a series of seven tutorials covering intermediate network administration on Linux, David Mertz finishes preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 202. This tutorial revisits earlier tutorials in the series, focusing on how to use the basic tools you've already covered to fix networking problems. The tool review is divided into two categories: configuration tools and diagnostic tools.
Tutorials 28 Jun 2006  
 
Understanding the Zend Framework, Part 1: The basics
We programmers are a paradoxically lazy lot. By that, I mean that we will spend hours, even days, creating something that allows us to complete a task in 30 seconds instead of five minutes. So perhaps the creation of the Zend Framework isn't much of a surprise. You mean you haven't heard of the Zend Framework? Don't worry -- you will. This article gives you a high-level view of the Zend Framework, explaining its general concepts and preparing you for the rest of this "Understanding the Zend Framework" series, which goes into the details by chronicling the creation of a new online RSS/Atom feed reader. We won't do much coding in this article, but for the rest of the series, you should be familiar with PHP.
Articles 27 Jun 2006  
 
Integrated Development Environment: C/C++ development with the Eclipse Platform
Learn how to use the C/C++ Development Toolkit (CDT), the best integrated development environment C/C++ toolkit available for Eclipse. And get an overview of how to use the Eclipse Platform, an integrated development environment for C and C++ development projects.
Articles 27 Jun 2006  
 
Delve inside the Lucene indexing mechanism
Discover Lucene, a full-text information retrieval (IR) library written in the Java(TM) language. You can embed Lucene easily into your applications and implement indexing and searching functionality. Now it's an open source project in the popular Apache Jakarta Project family. Learn about Lucene's indexing mechanism, as well as its index file structure.
Articles 27 Jun 2006  
 
Apply Schematron constraints to XForms documents automatically
Learn how to use Schematron to apply constraints to a standards-compliant form above and beyond those provided by XML Schema. The freely available XML Forms Generator allows you to do this automatically as it generates an XForms document.
Articles 27 Jun 2006  
 
Create an Eclipse-based application using the Graphical Editing Framework
This article describes the initial steps involved in creating an Eclipse-based application using the Graphical Editing Framework (GEF). GEF has been used to build a variety of applications for Eclipse, including state diagrams, activity diagrams, class diagrams, GUI builders for AWT, Swing and SWT, and process flow editors. Eclipse and GEF are both open source technologies. They are also included in IBM's WebSphere Studio Workbench.
Articles 27 Jun 2006  
 
Ajax for Java developers: Exploring the Google Web Toolkit
The recently released Google Web Toolkit (GWT) is a comprehensive set of APIs and tools that lets you create dynamic Web applications almost entirely in Java code. Philip McCarthy returns to his popular Ajax for Java developers series to show you what GWT can do and help you decide whether it's right for you.
Articles 27 Jun 2006  
 
Developing your first Eclipse RCP application
The objective of the Eclipse Rich Client Platform (RCP) is to enable Eclipse to be used in a wide range of end-user applications that are not integrated development environments (IDEs). With the release of Eclipse V3.1, it is easy to create RCP applications. This tutorial will guide you step by step in building your very own RCP application.
Tutorials 27 Jun 2006  
 
Using Eclipse as a development environment with Jakarta Tomcat
Using Eclipse as a development environment for Java technology is great. Using an Eclipse Tomcat plug-in can help to better organize and integrate your Java and Web development projects. This article will guide you step by step through the installation of Eclipse, Jakarta Tomcat, and an Eclipse Tomcat launcher plug-in that will integrate them.
Articles 26 Jun 2006  
 
Develop applications using Python and DB2 Express-C
Python is an incredibly powerful, general purpose, high-level, object-oriented, dynamically-typed programming language that is easy to read and understand, and fun to write. To make it really exciting, all we need do is to be able to connect it to an equally powerful, and attractively priced version of the IBM DB2 core engine. DB2 Express-C is a no-charge data server for use in development and deployment, that allows us to do this. This article provides step-by-step instructions for obtaining, installing, and configuring all that you need in order to use Python to connect to, and start using a DB2 Express-C instance.
Articles 22 Jun 2006  
 
Recommended Eclipse reading list
Learn about Eclipse with this reading list compiled for developers by Eclipse developers and enthusiasts at IBM.
Articles 20 Jun 2006  
 
Exposing an Apache Derby stored procedure as a Web service
Because of its small footprint, we often think of Apache Derby in terms of an embedded database. But what about in distributed environments, such as Web services or service-oriented architectures (SOAs)? Walk through this tutorial to find out how to build a Derby stored procedure, expose it as a Web service, and access that service.
Tutorials 20 Jun 2006  
 
Turn your Eclipse task list into an RSS feed
Syndication is all the rage, whether it uses RSS or Atom. This tutorial shows how to create the FeedMaker plug-in, which takes the information in the Eclipse IDE's task list and turns it into a public feed. This way, team members can subscribe to a live feed that tells them what still needs to be done for a project.
Tutorials 20 Jun 2006  
 
Compiling Hamlets
Rene Pawlitzek continues to advance the Hamlets framework, which extends Java servlets and enforces the separation of content and presentation. In this article, he proposes a new refinement: a method of compiling Hamlet templates that can improve application performance.
Articles 20 Jun 2006  
 
Book review: Innovation Happens Elsewhere
from The Rational Edge: A favorable review of a guide to open source software, including the nuts and bolts of using open source software and building open source communities.
Articles 15 Jun 2006  
 
Testing object serialization
Even great developers sometimes forget to test object serialization, but that doesn't excuse you from making the same mistake. In this article, Elliotte Rusty Harold explains the importance of unit testing object serialization and leaves you with some tests to remember.
Articles 13 Jun 2006  
 
Weave parallel applications with the Eclipse Parallel Tools Platform
Parallel programming environments used to be unfriendly. However, with a growing parallel computing community, high-performance and parallel computing is getting more and more support, especially with multicore and multichip servers becoming more widespread. Thus, a good parallel platform is a necessity. The Eclipse Parallel Tools Platform (PTP) accomplishes this by incorporating parallel development tools into the Eclipse UI framework, complete with a parallel debugger.
Tutorials 13 Jun 2006  
 
Craft a Webmail interface for PHP applications
You know how to get users to interact with a PHP application using a Web form, but sometimes e-mail is just more convenient. Maybe your users are using small devices like cell phones or interacting in a way that's not real time, such as subscribing to an e-mail list. Find out how to read and send e-mail by building a PHP Webmail application.
Tutorials 13 Jun 2006  
 
Develop forms using the Visual XForms Designer
Embark on a whirlwind tour of the Visual XForms Designer, a new tool freely available on IBM alphaWorks. Discover how the designer helps with all the major phases of form development with the XForms standard.
Articles 13 Jun 2006  
 
LPI exam 202 prep, Topic 212: System security
In this tutorial, the sixth of seven tutorials covering intermediate network administration on Linux, David Mertz continues preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 202. By necessity, this tutorial touches briefly on a wide array of Linux-related topics from a security-conscious network server perspective, including general issues of routing, firewalls, and NAT translation and the relevant tools. It addresses setting security policies for FTP and SSH; reviews general access control with tcpd, hosts.allow, and friends; and presents some basic security monitoring tools and shows where to find security resources.
Tutorials 13 Jun 2006  
 
Craft a Webmail interface for PHP applications
You know how to get users to interact with a PHP application using a Web form, but sometimes e-mail is just more convenient. Maybe your users are using small devices like cell phones or interacting in a way that's not real time, such as subscribing to an e-mail list. Find out how to read and send e-mail by building a PHP Webmail application.
Tutorial 13 Jun 2006  
 
Developing PHP the Ajax way, Part 2: Back, Forward, Reload
A major challenge of Asynchronous JavaScript and XML (Ajax)-driven Web sites is the lack of a Back button. We will use JavaScript to create a history stack for the Ajax photo gallery built in Part 1 of this two-part "Developing PHP the Ajax way" series. This history stack will closely mirror the history utility found in Web browsers, and it will be used to provide Back, Forward, and Reload buttons for the application.
Articles 06 Jun 2006  
 
The Ajax transport method
Discover three Ajax data transport mechanisms (XMLHttp, script tags, and frames or iframes) and their relative strengths and weaknesses. This tutorial provides code for both the server side and the client side and explains it in detail to provide the techniques you need to put efficient Ajax controls anywhere you need them.
Tutorials 06 Jun 2006  
 
Discover Internet Protocol, version 6 (IPv6)
The next-generation protocol, Internet Protocol version 6 (IPv6), is the future of the Internet. Learn how IPv6 compares to Internet Protocol version 4 (IPv4), understand the version 6 address formats, discover the benefits of IPv6, and learn which IT products comply with this new standard.
Articles 06 Jun 2006  
 
Understanding how Eclipse plug-ins work with OSGi
The core of the Eclipse integrated development environment (IDE) and Eclipse Rich Client Platform (RCP) applications is driven by an implementation of the Open Services Gateway Initiative (OSGi) specification. This article illustrates Eclipse's relationship with OSGi by describing what a plug-in is in terms of the Eclipse platform and traces the evolution of plug-ins from Eclipse V2.1 through today's OSGi-based implementation. It also explains the OSGi manifest.mf file options, along with the additions provided through Eclipse.
Articles 06 Jun 2006  
 
Python Web frameworks, Part 1: Develop for the Web with Django and Python
In this first article of a two-part series, we show off Django, an open-source model-view-controller (MVC)-style Web application framework powered by the Python programming language. With Django, you can create high-quality, easy-to-maintain, database-driven Web applications in minutes.
Articles 06 Jun 2006  
 
Introducing Subversion
Elliotte Rusty Harold introduces Subversion, an open source, multiuser version control system that supports non-ASCII text and binary data. Follow along as Elliotte shows you how to configure Subversion support in Eclipse (via the Subclipse plug-in), check out a project, synchronize with your repository, and then run common operations such as merge, patch, diff, and delete.
Articles 06 Jun 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 4
The Apache Derby software provides a powerful, open source database that can be used as a persistent store for a wide range of database applications. One of the main reasons for this popularity is Apache Derby's query support, which lets you selectively extract columns from specific rows across one or more tables that satisfy some Boolean condition. Learn about Apache Derby's query capabilities and how to use the SELECT statement to perform complex queries.
Articles 06 Jun 2006  
 
Web services integration patterns for Java applications using open source frameworks, Part 2: Implementing receive patterns
Integrate the solicit-response and notification Web service client endpoint patterns with an application. Learn how the application acts as a Web service and is deployed on the Web server. And see how the external participant invokes the application as a Web service.
Articles 02 Jun 2006  
 
Developing PHP the Ajax way, Part 1: Getting started
Asynchronous JavaScript and XML (Ajax), is arguably the most popular new Web technology. In this two-part "Developing PHP the Ajax way" series, you will create a simple photo album as an online Web application, entirely in PHP and the Simple Ajax Toolkit (Sajax). You'll begin by writing a simple photo album using the standard method of PHP development and later apply Sajax to make it an active Web application.
Articles 30 May 2006  
 
What to plug into Eclipse
Throughout the Java developer community, Eclipse is best known for its industry-leading Java Development Tools (JDT). But Eclipse was built to encourage the use of plug-ins, and in that respect, it is wildly successful. Find out about some of the capabilities that have been built into Eclipse plug-ins, such as the ability to program in other languages like Ruby or to build interactive multimedia with environments such as OpenLaszlo.
Articles 30 May 2006  
 
Centralize user accounts with OpenLDAP
Building a centralized authentication system using Lightweight Directory Access Protocol (LDAP) promises to reduce administration costs, increase security, avoid data replication, and increase data consistency. As Linux has matured, better tools have emerged to ease the migration of user account information into an LDAP directory. Tools have also been developed to enable the configuration of encrypted communication between a client and the directory server and to provide fault tolerance through replication. This article shows you how to configure a server and client to use OpenLDAP on Red Hat Linux.
Articles 30 May 2006  
 
Get started with an open source CMS, Part 7: Enable WebDAV on an open source PHP content management system
In this tutorial, the last in a seven-part series, you'll use the PHP Web-based Authoring and Versioning (WebDAV) client you built in Part 5 to enable WebDAV on an open source content management system (CMS) application called PHP Web Content Management System (PHPWCMS). The result lets you edit content through WebDAV so you can use WebDAV-enabled applications to access versioned files.
Tutorials 30 May 2006  
 
LPI exam 202 prep, Topic 210: Network client management
In this tutorial, the fifth in a series of seven tutorials covering intermediate network administration on Linux, David Mertz continues preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 210. Here, David Mertz examine several protocols' centralized configuration of network settings on clients within a network. This tutorial also discusses PAM, which is a flexible, networked, user authentication system.
Tutorials 24 May 2006  
 
Build a Web service with PHP
In the past few years, new Web services have been popping up all over the Internet. And what better language to build your own Web service in than PHP? With PHP, you have the advantage of a great scripting language with the power to connect to databases, an easy development curve that allows for faster development, and high response times -- thanks to the underlying libraries compiled for performance.
Tutorials 23 May 2006  
 
Locking down your PHP applications
You know security is important, but the tendency is to put off adding security until the last minute. It's impossible to secure a Web application completely -- so why bother, right? Wrong. You can take some easy steps to make your PHP Web application orders of magnitude more secure.
Tutorials 23 May 2006  
 
Linux project publications: Systems management
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of systems management.
Articles 18 May 2006  
 
Linux project publications: Linux on POWER
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of Linux on POWER.
Articles 18 May 2006  
 
All Hail Shale: Anatomy of a Shale application
Brett McLaughlin continues his introduction to Shale with an in-depth look at the framework's application directory structure. Using the Shale starter application introduced in the first article in this series, Brett walks you through the core directories, from src/ to dist/. He shows you how Shale stores its libraries, where custom files go, and where you can insert specialized behaviors into your Shale applications. Along the way, he gives you some important tips about managing the Shale directories and gets you started with an example application (based on the Shale starter application) that serves as the basis of his discussion for the remainder of the series.
Articles 12 May 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 3
Learn how to create a self-documenting SQL command file, which you can execute as often as necessary, by placing SQL commands in a text file along with useful comments. After introducing the basic principles of a SQL script file, this article presents three ways to execute a script file. Then you'll review the fundamentals of inserting data into a table using the SQL INSERT statement, including seeing examples that insert ten new rows in different ways. Finally, the article presents a script that automates this INSERT operation and displays the newly inserted data for validation.
Articles 12 May 2006  
 
Developing rich Internet applications with Rails, OpenLaszlo, and Eclipse
Explore at a high level how to develop a rich Internet application using OpenLaszlo, Ruby on Rails, MySQL, and Eclipse to provide a common IDE to not only develop your application but also to automate many of the steps in developing a Rails or OpenLaszlo application. This will further speed up and streamline the already fast development cycle of Rails applications.
Tutorials 12 May 2006  
 
Streamline working with XML in PHP using Service Data Objects
Most PHP programmers will know that much of the function they use resides in PHP extensions, which usually either come packaged with their PHP distribution or can be downloaded from the PECL site. One such extension supports Service Data Objects (SDO) for PHP, which in February moved from a beta-level 0.9.0 release to a stable 1.0. Written by some of the original developers of the SDO extension, this article is aimed at the PHP programmer who wants to understand what SDO for PHP is, how it can be used, and how it can streamline working with XML.
Articles 12 May 2006  
 
SELinux from scratch
SELinux, the U.S. National Security Agency's implementation of mandatory access control, is the most prominent new security subsystem in Linux. SELinux comes installed by default in Fedora and Red Hat Enterprise Linux and is available in easy-to-install packages in other distributions. This article shows you how to convert a non-SELinux system by hand in order to expose details about how SELinux is integrated into a system.
Articles 11 May 2006  
 
Two tools bring Ajax to Eclipse's Ajax Toolkit Framework
IBM's contribution to the launch of the new Open Ajax Initiative aims to increase accessibility to the powerful Web programming technique through the Eclipse Foundation. To help prepare developers for the new tool set, this article introduces two existing runtime tools -- Dojo and Zimbra -- which will be supported in Eclipse's Ajax Toolkit Framework (ATF).
Articles 09 May 2006  
 
Devise Web 2.0 applications with PHP and DHTML, Part 2: Use JavaScript to create HTML elements on the fly
Part 1 of this "Devise Web 2.0 applications with PHP and DHTML" series discusses how to build PHP applications with user interface elements like tabs, spinners, and pop-ups using JavaScript, Cascading Style Sheets (CSS), and HTML. Part 2 extends the lesson to include graphing techniques that use JavaScript to create new HTML elements on the fly.
Articles 09 May 2006  
 
Install and use Eclipse for Linux on POWER
Eclipse is an open source community that provides a development platform and a collection of application frameworks for building software. Learn how to install and use Eclipse specifically for Linux running on IBM POWER processor-based systems. Learn, also, how to use Eclipse to compile and run applications through sample Java and C programs.
Articles 05 May 2006  
 
Linux project publications: Software development
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of software development.
Articles 04 May 2006  
 
Linux project publications: File systems and storage
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of filesystems and storage.
Articles 04 May 2006  
 
Linux project publications: Standards
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community in the area of standards.
Articles 04 May 2006  
 
Storing Java objects in Apache Directory Server, Part 1
This two-part article walks you through all the steps of storing Java objects in Apache Directory Server (ApacheDS). In this first half, author Bilal Siddiqui introduces you to ApacheDS and provides an overview of its core architecture. Because you primarily use ApacheDS as an LDAP server for storing Java objects, Bilal offers a quick overview of LDAP concepts and terminology. He also shows you how to use JXplorer to view LDAP schema components, such as attribute types and object classes, and how to enter a data object in ApacheDS. The article wraps up with an overview of Java object serialization and Remote Method Invocation as they apply to storing Java objects in ApacheDS, in preparation for the more hands-on approach in Part 2.
Articles 02 May 2006  
 
Get started with an open source CMS, Part 6: Build a Python WebDAV client for Jakarta Slide
Want to learn how to build Python applications? In this tutorial -- the sixth in the series -- you'll create a Python Web-based Distributed Authoring and Versioning (WebDAV) client for Jakarta Slide that, in turn, lets you build Python applications for content management. Upon completion, you'll be able to access the Slide or any other WebDAV server from your Python applications. From there, you can start thinking about what else you can use the Python davclientlib for, which can grow to meet your future needs.
Tutorials 02 May 2006  
 
Create an Eclipse game plug-in, Part 4: Packaging, testing, and putting final touches
Although most users think of Eclipse as an integrated development environment for building Java technology applications, it is really something much more basic. Eclipse is a framework for building plug-ins, allowing you to extend its functionality to solve nearly any problem -- just by leveraging a set of APIs and readily available libraries. In this four-part "Create an Eclipse game plug-in" tutorial series, you will solve a pressing problem most programmers encounter daily: how to break away to play a quick video game without switching applications and making it obvious. You'll develop a simple game that will read the bugs entered on the a view and blast them to bits. The game will run inside Eclipse as a plug-in, that will demonstrate how to write to the Eclipse API, while using the Standard Widget Toolkit, the Open Graphics Library, and the Lightweight Java Games Library. Part 4 demonstrates how to build and test the plug-in using an automated process, and finally, package it for distribution.
Tutorials 02 May 2006  
 
Storing Java objects in Apache Directory Server, Part 2
In this second half of his introduction to storing Java objects in Apache Directory Server (ApacheDS), Bilal Siddiqui presents nine example applications to demonstrate the concepts you learned in Part 1. In addition to walking you through all the steps to store, search, retrieve, and modify Java objects using ApacheDS, Bilal concludes the article with a reusable Java class that combines these functions using LDAP schema components in ApacheDS.
Articles 02 May 2006  
 
Devise Web 2.0 applications with PHP and DHTML, Part 1: Cook up your own with these recipes
The buzzword of 2006 is Web 2.0. What that means is hotly debated, but it appears to refer to cool dynamic Web applications. Those Web applications -- often developed in PHP -- use dynamic HTML (DHTML) to create pages that move and change without having to go back to the server for a refresh. Author Jack Herrington explains how to get started in this "Devise Web 2.0 applications with PHP and DHTML" series.
Articles 02 May 2006  
 
Embeddable scripting with Lua
Compiled programming languages and scripting languages each have unique advantages, but what if you could use both to create rich applications? Lua is an embeddable scripting language that is small, fast, and very powerful. Before you create yet another configuration file or resource format (and yet another parser to accompany it), try Lua.
Articles 28 Apr 2006  
 
Software security analysis with BogoSec
BogoSec is a source code metric tool that wraps multiple source code scanners, invokes them on its target code, and produces a final score that approximates the security quality of the code. This article discusses the BogoSec methodology and implementation, and illustrates the output of BogoSec when run on a number of test cases, including Apache Web server, OpenSSH, Sendmail, Perl, and others.
Articles 28 Apr 2006  
 
Eclipse Test & Performance Tools Platform, Part 2: Monitor applications
In this "Eclipse Test & Performance Tools Platform" tutorial series, learn how to use the capabilities of the Eclipse Test a& Performance Tools Platform (TPTP) to convert application log files into a structured format. Then, using TPTP and other specialized tools designed to process and analyze log files, you can quickly discern usage patterns, performance profiles, and errors.
Tutorials 25 Apr 2006  
 
LPI exam 202 prep, Topic 208: Web services
In this tutorial, the fourth in a series of seven tutorials covering intermediate network administration on Linux, David Mertz continues preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 208. Here, David Mertz discusses how to configure and run the Apache HTTP server and the Squid proxy server.
Tutorials 25 Apr 2006  
 
Use Apache Derby in your OpenLaszlo applications, Part 2: Storing and embedding data
Since OpenLaszlo's open source announcement, many developers have been using OpenLaszlo to create user-friendly rich Internet applications. Many of these applications require a database solution to have dynamic data fed to them. Because OpenLaszlo runs on Apache Tomcat by default, which supports JavaServer Pages (JSP) and servlets (Java), Apache Derby is an excellent database to use because it can be embedded in such applications and because Derby is written in pure Java code. In this tutorial, you'll build a management interface to the online shopping console created in Part 1. You'll also allow orders to be written to the database and enable management to edit, delete, and add new items to the database via the OpenLaszlo user interface (UI).
Tutorials 25 Apr 2006  
 
Extract database information using Eclipse and BIRT V2.0
The Eclipse Business Intelligence and Reporting Tools (BIRT) project comprises a set of open source plug-ins for Eclipse that you can use to create compelling reports for Web applications. Learn how to install BIRT V2.0, configure it for use with a database, employ its functionality to design dynamic reports and charts, and create templates for future reports.
Tutorials 25 Apr 2006  
 
Quality busters: Compare Web site appearance and functionality
Discover how to shift the priorities of your Web site from appearance to functionality and use Web standards to ensure cross-browser compatibility in this column by Michael Russell.
Articles 18 Apr 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 2
Learn about several basic database concepts, including schemas, tables, and column data types, and get a simple introduction to Structured Query Language (SQL). This article -- focusing on the database developer role -- presents the basic data types you can use to store data in an Apache Derby database, and then you'll use them to create a simple schema with two tables in Apache Derby for a fictitious store. To view the schema contents of a database, you'll use the Apache Derby tool, dblook, to dump the contents of the database. The article wraps up with a brief discussion on dropping tables.
Articles 18 Apr 2006  
 
Create an Eclipse game plug-in, Part 3: Gaming the system
Although most users think of Eclipse as an integrated development environment for building Java technology applications, it is really something much more basic. Eclipse is a framework for building plug-ins, allowing you to extend its functionality to solve nearly any problem -- just by leveraging a set of APIs and readily available libraries. In this four-part "Create an Eclipse game plug-in" tutorial series, you will solve a pressing problem most programmers encounter daily: how to break away to play a quick video game without switching applications and making it obvious. You'll develop a simple game that will read the bugs entered on the a view and blast them to bits. The game will run inside Eclipse as a plug-in, that will demonstrate how to write to the Eclipse API, while using the Standard Widget Toolkit, the Open Graphics Library, and the Lightweight Java Games Library. Part 3 games the system up with collision detection between the bugs and BBs, destroying the bugs.
Tutorials 18 Apr 2006  
 
Make Ant easy with Eclipse
Eclipse can make working with Apache Ant easier. Discover the Ant integration features in the Eclipse integrated development environment (IDE), and learn how to write, build, and debug code in Eclipse through the Ant editor.
Tutorials 18 Apr 2006  
 
Cultured Perl: Perl books, Part 2
Take a look at two divergent texts on system administration. Unix Power Tools, by Shelley Powers, Jerry Peek, Tim O'Reilly, and Mike Loukides, covers the basics in a sound, readable manner and is a must-have book for any sysadmin. Analytical Network and System Administration by Mark Burgess is an advanced take on systems administration for those with a solid grounding in theoretical computer science and mathematics.
Articles 13 Apr 2006  
 
IBM WebSphere Developer Technical Journal: Get started with WebSphere Application Server Community Edition
IBM WebSphere Application Server Community Edition is an open source Java 2 Platform, Enterprise Edition (J2EE) application server based on Apache Geronimo. This article will help you understand why you might want to use this new product, when it might be the best choice for your project, and then walks you through what you need to know to get up and running quickly with WebSphere Application Server Community Edition, from setting up your environment and choosing the right download package to deploying applications. Updated for V1.0.1.1.
Articles 11 Apr 2006  
 
Spice up PHP applications with OpenLaszlo, Part 3: Adding a database
This "Spice up PHP applications with OpenLaszlo" tutorial series shows how to use OpenLaszlo to create a more interactive interface for your PHP applications and how to use PHP to create more dynamic OpenLaszlo applications. It requires a basic understanding of -- or willingness to learn -- XML, JavaScript, and PHP. Part 3, the final part of the series, takes things a step further, showing how to put an application into an ODBC database and create a library that generates OpenLaszlo code using PHP dynamically.
Tutorials 11 Apr 2006  
 
Leave Eclipse plug-in headaches behind with OSGi
Find out how to write extensions in code for other plug-ins while not creating a binary dependency on those other plug-ins with the Eclipse V3.2's dynamic-extensions API. Accomplish all of this and more with the Open Services Gateway Initiative (OSGi) services API and the dynamic APIs.
Articles 11 Apr 2006  
 
Spice up PHP applications with OpenLaszlo, Part 2: PHP REST and data binding
This "Spice up PHP applications with OpenLaszlo" tutorial series shows how to use OpenLaszlo to create a more interactive interface for your PHP applications and how to use PHP to create more dynamic OpenLaszlo applications. It requires a basic understanding of -- or willingness to learn -- XML, JavaScript, and PHP. In Part 2 of this four-part series, we explore an important distributed application architecture called Representational State Transfer (REST), which will be used to extend the knock-knock protocol described in Part 1 to use XML, instead of HTML.
Tutorials 04 Apr 2006  
 
LPI exam 102 prep, Topic 106: Boot, initialization, shutdown, and runlevels
In this tutorial, Ian Shields continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 102. In this second in a series of nine tutorials, Ian introduces you to startup and shutdown on Linux. By the end of this tutorial, you will know guide a system through booting, set kernel parameters, and shut down or reboot a system.
Tutorials 04 Apr 2006  
 
Paint 3-D images with PHP
PHP, a language originally intended for Web development, has been used for years to manage dynamic Web sites and database applications. Extensions to the language available through the PHP Extension and Application Repository (PEAR) have allowed developers to take the language in new and interesting directions. PEAR's Image_3D package is an object-oriented interface for creating three-dimensional (3-D) graphics in a variety of formats, including PNG and SVG, two image formats with increasing support by modern Web browsers. Find out how to use the Image_3D package, learn the limitations of using dynamic 3-D images, and investigate solutions and practical applications of 3-D graphics.
Tutorials 04 Apr 2006  
 
Speed your code with the GNU profiler
Improving the performance of your applications is rarely a wasted effort, but it's not always clear which functions the program is spending most of its execution time on. Learn how to pinpoint performance bottlenecks using gprof for both user-space and system calls on Linux.
Articles 03 Apr 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Database development with Apache Derby, Part 1
Ready to start using Apache Derby? This multi-part series featured in the "Developing with Apache Derby: Hitting the Trifecta" column will get you up and running with the Derby database in no time. This first installment introduces the basic concepts of relational databases with an emphasis on how these topics relate to the Derby database. You'll learn about the ACID test, demonstrated with a simple example, and the ij tool, which you can use to interactively connect to and query an Apache Derby database. Then the rest of this series will help you become a master at working with Apache Derby.
Articles 28 Mar 2006  
 
Distributed multihead support with Linux and Xdmx
Learn about the tools available to develop your own multiscreen configuration and physical layout to enhance your computing experience. You can use Linux and Xdmx to create one contiguous desktop across multiple display devices attached to separate computers. Combine your available laptop and desktop computers running Linux to create one large display for enhanced productivity. Explore large-scale display-wall setups and the creation of multihead setups without purchasing graphics cards.
Articles 28 Mar 2006  
 
Create an Eclipse game plug-in, Part 2: Building and firing a BB gun
Although most users think of Eclipse as an integrated development environment for building Java technology applications, it is really something much more basic. Eclipse is a framework for building plug-ins, allowing you to extend its functionality to solve nearly any problem -- just by leveraging a set of APIs and readily available libraries. In this four-part "Create an Eclipse game plug-in" tutorial series, you will solve a pressing problem most programmers encounter daily: how to break away to play a quick video game without switching applications and making it obvious. You'll develop a simple game that will read the bugs entered on the a view and blast them to bits. The game will run inside Eclipse as a plug-in, that will demonstrate how to write to the Eclipse API, while using the Standard Widget Toolkit, the Open Graphics Library, and the Lightweight Java Games Library.
Tutorials 28 Mar 2006  
 
Introducing The Open Group Architecture Framework (TOGAF), Part 2: Explore an industry standard for defining an enterprise architecture
The Open Group Architecture Framework (TOGAF) provides architects a methodology for gaining control over enterprise architecture and IT. Learn about this important industry standard.
Articles 28 Mar 2006  
 
LPI exam 102 prep, Topic 105: Kernel
In this tutorial, Ian Shields begins preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 102. In this first in a series of nine tutorials, Ian introduces you to the kernel on Linux. By the end of this tutorial, you will know how to build, install, and query a Linux kernel and its kernel modules.
Tutorials 21 Mar 2006  
 
LPI exam 102 prep, Topic 105: Kernel
In this tutorial, Ian Shields begins preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 102. In this first in a series of nine tutorials, Ian introduces you to the kernel on Linux. By the end of this tutorial, you will know how to build, install, and query a Linux kernel and its kernel modules.
Tutorials 21 Mar 2006  
 
Crossing borders: Continuations, Web development, and Java programming
The Crossing borders series looks at how non-Java languages solve major problems and what those solutions mean to Java developers today. This article explores continuations, the technique behind frameworks like Smalltalk's Seaside. Continuation servers make it much easier to build Web applications by offering a stateful programming model without giving up the scalability inherent in statelessness.
Articles 21 Mar 2006  
 
Use Apache Derby in your OpenLaszlo applications, Part 1: Supplying data using Derby
Since OpenLaszlo's open source announcement, many developers have been using OpenLaszlo to create user-friendly, rich Internet applications. Many of these applications require a database solution to have dynamic data fed to them. Because OpenLaszlo runs on Apache Tomcat by default, which in turn supports JavaServer Pages (JSP) and servlets (Java technology), Apache Derby is an excellent database to use. It can be embedded in such applications, and Derby is written in pure Java code. This tutorial uses an example of an online grocery store to illustrate the power of using OpenLaszlo with Apache Derby.
Tutorials 21 Mar 2006  
 
Use PHP to build a search engine optimization app: Creating reports and billing clients
PHP, a dynamic Web-based programming language, takes a variety of input formats and has a built-in SOAP client to obtain information from the Web. PHP, combined with applications using search engine optimization (SEO), is a powerful tool for obtaining information from major search engines, allowing this information to guide a webmaster's online marketing and SEO strategies. In this final part of a two-part "Use PHP to build a search engine optimization app" series, we add two search venues and the functionality to search all or just one of the search engines. You will also extend the Apache Derby database to provide support for billing clients.
Tutorials 21 Mar 2006  
 
Explore Eclipse's embedded Rich Client Platform
Get an introduction to the embedded Rich Client Platform (eRCP). Learn about the various components that make up eRCP and get some examples on how to use them in your applications.
Articles 21 Mar 2006  
 
Cultured Perl: Perl books, Part 1
Take a tour of two solid additions to any Perl library, the beginner-oriented Randal Schwartz's Perls of Wisdom by Randal Schwartz, and the more advanced Higher-Order Perl by Mark Jason Dominus.
Articles 15 Mar 2006  
 
Spice up PHP applications with OpenLaszlo, Part 1: Create interactive interfaces
This "Spice up PHP applications with OpenLaszlo" tutorial series shows you how to use OpenLaszlo to create a more interactive interface for your PHP applications and how to use PHP to create more dynamic OpenLaszlo applications. It requires a basic understanding of -- or willingness to learn -- XML, JavaScript, and PHP. Each is well worth knowing for its own merits, plus they plug and play together nicely, since they're all based on synergistic open standards.
Tutorials 14 Mar 2006  
 
Recommended PHP reading list
Learn about PHP (Hypertext Preprocessor) with this reading list compiled for programmers and administrators by IBM Web application developers.
Articles 14 Mar 2006  
 
Getting started with the Eclipse Communication Framework
The Eclipse Communication Framework (ECF) is a new Eclipse project devoted to providing an open source framework supporting the creation of communications-based applications on the Eclipse platform. Find out about the ECF, its basic capabilities, and its future direction.
Articles 14 Mar 2006  
 
Use PHP to build a search engine optimization app, Part 1: Getting started
PHP, a dynamic Web-based programming language, takes a variety of input formats and uses a built-in SOAP client to obtain information from the Web. PHP, combined with applications using search engine optimization (SEO), is a powerful tool for obtaining information from major search engines, allowing this information to guide a webmaster's online marketing and SEO strategies. Find out how to take advantage of these strategies by building the back end of an application to monitor and track your client's SEO efforts.
Tutorials 14 Mar 2006  
 
Build GUIs with the Eclipse Visual Editor project
Like many Eclipse.org projects, the goal of the Visual Editor project is to build a tool for building tools, in this case, tools for building graphical user interfaces (GUIs). The Visual Editor project has released a reference implementation. The Visual Editor release 0.5 is a GUI builder for AWT/Swing applications, a long-awaited Eclipse feature. Release 1.0 includes support for SWT. Get an overview of Visual Editor and the technology behind it, along with a short demonstration of Visual Editor V0.5's features for building AWT/Swing applications and a preview of the SWT support in Visual Editor V1.0.
Articles 14 Mar 2006  
 
Improve persistence with Apache Derby and iBATIS, Part 3: Transactions, caching, and dynamic SQL
This tutorial series has been demonstrating how you can improve persistence in your database-driven Java applications by combining Apache Derby's power as a small-footprint embeddable database with the iBATIS object-relational (OR) mapping framework. In Part 3, the final in the series, learn how iBATIS handles three advanced features of database-driven applications: transactions, caching, and dynamic SQL. Plus, find out how the Data Access Objects (DAO) framework can operate on its own without the Data Mapper framework.
Tutorials 07 Mar 2006  
 
Drag and drop Eclipse Workbench tabs
Learn a technique for programmatically customizing the drag-and-drop behavior of Editor and View tabs in Eclipse. The technique is demonstrated with an example that associates Editor parts with the transfer type "org.eclipse.ui.part.EditorInputTransfer", thus enabling the drag and drop of Editor tabs over targets that support this transfer type. A similar demonstration is also provided for View parts. Familiarity with basic SWT drag-and-drop techniques is assumed.
Articles 07 Mar 2006  
 
GTK+ fundamentals, Part 3: How to deploy GTK+
The previous two articles in this "GTK+ fundamentals" series explained what GTK+ is and what it's used for. This article, the final installment in the series, covers everything you need to get your product to the user -- that is, you learn how to deploy a GTK+ application.
Articles 07 Mar 2006  
 
Create an Eclipse game plug-in, Part 1: Getting started
Although most users think of Eclipse as an Integrated Development Environment (IDE) for building Java applications, it is really something much more basic. Eclipse is a framework for building plug-ins, allowing any developer to extend its functionality to solve nearly any problem, just by leveraging a set of APIs and readily available libraries. In this four-part "Create an Eclipse game plug-in" tutorial series, you will solve a pressing problem most programmers encounter daily: how to break away to play a quick video game without switching applications and making it obvious. You will also learn the Eclipse plug-in architecture and learn how to define your own plug-in, develop an interface using SWT, and create code that interacts with other Eclipse resources.
Tutorials 07 Mar 2006  
 
In pursuit of code quality: Resolve to get FIT
Find out how the Framework for Integrated Tests facilitates communication between the business clients who write requirements and the developers who implement them.
Articles 28 Feb 2006  
 
All Hail Shale: Shale isn't Struts
What Shale isn't is a shrink-wrapped, well-documented, well-tested product complete with an automated installer and a polished management interface. Now find out what it is, as Brett McLaughlin unveils this mighty -- and rightful -- heir to the legacy of Struts. In this first article of the series, Brett explains what Shale is, how it's different from the Struts framework, and how to install and set it up in your development environment.
Articles 28 Feb 2006  
 
Get started with an open source CMS, Part 5: Build a PHP WebDAV client for Jakarta Slide
In this tutorial, the fifth in the series, learn how to create a PHP Web-based Distributed Authoring and Versioning (WebDAV) Client for Jakarta Slide that you can use to build PHP applications for content management. With this knowledge, you can then go on to build other PHP applications on a system that can manage numerous users and documents.
Tutorials 24 Feb 2006  
 
Improve persistence with Apache Derby and iBATIS, Part 2: Data definition in Derby
In this second tutorial of a three-part series, learn more about how you can improve persistence in your database-driven Java applications by combining Apache Derby's power as a small-footprint embeddable database with the iBATIS object-relational (OR) mapping framework. In Part 2, you use iBATIS's Data Access Objects (DAO) and Data Mapper to access an application's underlying data structure effectively.
Tutorials 21 Feb 2006  
 
SWT, Swing or AWT: Which is right for you?
By providing a comparison of Eclipse's SWT with the Java Swing and Abstract Windows Toolkit (AWT) GUI tool kits, this article helps developers of new applications decide which to choose. Read descriptions of each tool kit's basic features, and the pros and cons of using each.
Articles 21 Feb 2006  
 
Explore the new features of Eclipse V3.1
This tutorial demonstrates many of the new features found in the most recent release of Eclipse V3.1. You will find this tutorial useful if you're considering upgrading to V3.1 from a previous release, or if you're considering switching to Eclipse from another integrated development environment. You may also find it useful if you want to revise your code to take advantage of the latest iteration of the Java programming language, Java 2 Standard Edition V1.5, which adds a number of powerful constructs and conveniences to Java technology.
Tutorials 21 Feb 2006  
 
An introduction to the Eclipse Web Tools Platform V1.0
The Eclipse Web Tools Platform (WTP) extends the Eclipse IDE to enable easy development of Java 2 Enterprise Edition (J2EE)-based applications. Learn how to install WTP, configure it for use with an application server, and use the tools it provides to create a J2EE application.
Tutorials 21 Feb 2006  
 
Domain names as mobile phone numbers
Learn how you can take the Domain Name System (DNS), which is used primarily on the Internet, and implement it in mobile phones. Find out what DNS is all about, how mobile phones actually work behind the scenes, and how a domain name can simplify how you contact a mobile user.
Articles 21 Feb 2006  
 
Architectural manifesto: How to choose a mobile platform
With so many great options, choosing the right technology for your mobile development projects can leave you spoiled for choice. This month's column lends a helping hand by teaching you to ask all the right questions before you get started.
Articles 21 Feb 2006  
 
Manage your Eclipse environment
The continuing growth of Eclipse means that there will always be an increase in the number of projects and plug-ins to manage. As a developer, this management process can be frustrating when staying up to date with the latest Eclipse builds. As a new user, the concept of projects, plug-ins, workspaces, and installations may seem daunting at first. This article aims to show some best practices for managing your Eclipse environment.
Articles 14 Feb 2006  
 
Create a blog from scratch with PHP and Subversion
PHP is a great Web programming language to use when creating dynamic Web sites, such as blogs. This tutorial explains how to build a blog from scratch, while storing data using flat files. The Web site will be backed up on a remote system using Subversion, protecting data in the event of a Web-site crash. Subversion is growing in popularity, and it is a great candidate to back up the Web site. With Subversion, it's also possible to roll back the Web site to earlier versions of the blog if your server crashes, or if you just didn't like last week's rambling.
Tutorial 14 Feb 2006  
 
Network services: Legacy design versus threaded design
So, you've got a great idea for a new network service that'll change the world, and you've just finished your first set of socket programming tutorials. Now you've just got to design the thing and finish off a test implementation, right? Traditionally, programs like this use the venerable UNIX(R) fork() system call to handle connections in a child process, but this is slow and inefficient, even on modern UNIXes. In this article, you'll get a look at using POSIX threads instead of child processes, and you'll also get an introduction to threaded programming -- a topic many UNIX programmers haven't encountered before.
Articles 14 Feb 2006  
 
Criar um Blog a partir do Início com PHP e Subversion
PHP é uma excelente linguagem de programação da Web para ser usada ao criar Web sites dinâmicos, como blogs. Este tutorial explica como construir um blog a partir do início, enquanto armazena dados usando arquivos simples. Será feito backup do Web site em um sistema remoto usando o Subversion, protegendo os dados em caso de travamento do Web site. A popularidade do Subversion está crescendo e ele é um grande candidato para fazer backup do Web site. Com o Subversion, também é possível retroceder o Web site para versões anteriores do blog se seu servidor travar ou se, simplesmente, você não tiver gostado da postagem divagante da semana passada.
Tutorial 14 Feb 2006  
 
Introduction: Eclipse Test and Performance Tools Platform
Learn how to use the Eclipse Test and Performance Tools Platform (TPTP) to profile a Java application, and discover how to quantify memory usage, identify memory leaks, and isolate performance bottlenecks.
Tutorials 14 Feb 2006  
 
Create a blog from scratch with PHP and Subversion
PHP is a great Web programming language to use when creating dynamic Web sites, such as blogs. This tutorial explains how to build a blog from scratch, while storing data using flat files. The Web site will be backed up on a remote system using Subversion, protecting data in the event of a Web-site crash. Subversion is growing in popularity, and it is a great candidate to back up the Web site. With Subversion, it's also possible to roll back the Web site to earlier versions of the blog if your server crashes, or if you just didn't like last week's rambling.
Tutorials 14 Feb 2006  
 
Developing with Apache Derby -- Hitting the Trifecta: Introduction to Apache Derby
At some point, almost every application developer confronts the need to save data. With the growth of Internet- or Web-enabled applications, this need has become even more acute. This installment of the regular column "Developing with Apache Derby -- Hitting the Trifecta" introduces Apache Derby -- an open source, standards-based, small-footprint Java database system -- compares it to other database systems, and discusses issues related to downloading and installing it. By the end of this article, you'll be ready to start developing database applications using Derby.
Articles 14 Feb 2006  
 
LPI exam 101 prep, Topic 110: The X Window System
In this tutorial (the last in a series of five tutorials), Ian Shields introduces you to the X Window System on Linux, and in doing so, continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 101. In this tutorial, you learn how to install and maintain the X Window System. This tutorial covers both major packages for X on Linux: XFree86 and X.Org.
Tutorials 14 Feb 2006  
 
Introducing The Open Group Architecture Framework (TOGAF), Part 1: Understand TOGAF and IT architecture in today's world
Discover how The Open Group Architecture Framework (TOGAF) open standard framework came to be and how it can make you a better IT architect.
Articles 14 Feb 2006  
 
Eclipse Test & Performance Tools Platform, Part 1: Test, profile, and monitor applications
Learn how to use the Eclipse Test & Performance Tools Platform (TPTP) to profile a Java application, and discover how to quantify memory usage, identify memory leaks, and isolate performance bottlenecks.
Tutorials 14 Feb 2006  
 
Java Web services: O futuro no Java Web services
O ano que vem trará mudanças expressivas para o cenário dos serviços da Web. Para os desenvolvedores de Java, estas mudanças incluirão tanto novas estruturas de serviços de Web quanto novas camadas de funcionalidades criadas com base nos serviços da Web. Nesta primeira parte de sua série "Java Web Services", Dennis Sosnoski fala sobre as próximas alterações e esboça uma direção para os leitores.
Articles 09 Feb 2006  
 
Java Web services: The year ahead in Java Web services
The coming year is bringing dramatic changes to the Web services landscape. For Java developers, these changes will include both new Web services frameworks and new layers of functionality built on top of Web services. In this first part of his "Java Web Services" series, Dennis Sosnoski looks at the coming changes and plots a course for readers.
Articles 09 Feb 2006  
 
Como Depurar Aplicações Perl com o Eclipse
A depuração de aplicações Perl pode ser um processo frustrante. Muitos programadores de Perl dependem das instruções de impressão e da chamada "depuração post mortem". Outros usam o depurador de Perl embarcado. Nenhuma das duas opções fornecem um ambiente de execução coerente para monitorar a execução de um script e nenhumas das duas suporta a depuração de um script Common Gateway Interface (CGI) durante a execução. Neste tutorial, vamos dar uma olhada na funcionalidade oferecida pelo plug-in Eclipse Perl Integration (EPIC) no Eclipse, que oferece um ambiente de depuração rico disponível e embarcado ao ambiente de desenvolvimento EPIC Perl.
Tutorial 07 Feb 2006  
 
Run PHP applications in Apache Geronimo
PHP has been a popular scripting language for some time. However, with the growing buzz over Java technology and Apache Geronimo, a J2EE-certified application server, many experienced developers shy away from using PHP with Geronimo, because only JavaServer Pages (JSP) is supported out of the box. The PHP Java Bridge solves this problem by providing full support for PHP on Geronimo and for sharing sessions across both PHP and JSP scripts.
Tutorials 07 Feb 2006  
 
How to debug Perl apps with Eclipse
Debugging Perl applications can be a frustrating process. Many Perl programmers rely on print statements and so-called "postmortem debugging." Others use the built-in Perl debugger. Neither provides a coherent execution environment for monitoring the execution of a script, and neither supports the debugging of a Common Gateway Interface (CGI) script during execution. In this tutorial, we will look at the debugging functionality offered by the Eclipse Perl Integration (EPIC) plug-in for Eclipse, which offers a rich debugging environment available and integrated with the EPIC Perl development environment.
Tutorials 07 Feb 2006  
 
Going dynamic with PHP
PHP V5's new object-oriented programming features have raised the level of functionality in this popular language significantly. Learn how to use the dynamic features of PHP V5 to create objects that bend to fit your needs.
Articles 07 Feb 2006  
 
Discover Python, Part 9: Putting it all together
Previous articles in this Discover Python series have discussed a number of topics that confront beginning Python programmers, including variables, container objects, and compound statements. This article builds on these concepts to construct a complete Python program. It introduces Python functions and modules and shows how to build a Python program, store it in a file, and run it from the command line.
Articles 31 Jan 2006  
 
Distribute software on a Linux LiveCD
Linux LiveCDs contain the operating system and applications all on a single CD and are a handy way to distribute software when compactness, portability, and/or security matter.
Articles 31 Jan 2006  
 
Back to school with education LiveCDs
Make open source education tools available on your Linux system without lengthy installation and configuration efforts. Discover three packages -- FreeDUC, Knoppix for Kids, and Vigyaan -- that make it easy to set up a learning environment.
Articles 31 Jan 2006  
 
Restore compromised systems with diagnostics LiveCDs
Want to assess your Linux system's integrity and recover lost data without lengthy installation and configuration efforts? Get to know two packages -- Helix and Plan-B -- that bring you that ability through the magic of LiveCD.
Articles 31 Jan 2006  
 
Rock your desktop with entertainment LiveCDs
Listen to music and watch DVDs on your Linux system without lengthy installation and configuration efforts. Learn about four packages -- MoviX2, GeeXBoX, WOMP!, and LLGP -- that put the fun back into your computer.
Articles 31 Jan 2006  
 
Using CruiseControl with Eclipse
This tutorial provides a high-level overview of how to use CruiseControl, Luntbuild, and Anthill with Eclipse. Use these applications for implementing continuous-integration builds that provide quick feedback whenever something changes with a project's source.
Tutorials 31 Jan 2006  
 
Persist arbitrary data to Apache Derby
You can quickly and easily persist simple data to Apache Derby by taking advantage of Java dynamic proxies. In this tutorial, write a persistence API that you can integrate into any database-powered Java application. You use the API to store an application's configuration information and to notify the application when configuration items change.
Tutorials 31 Jan 2006  
 
User annotations in Ajax
The ability to add notes and comments to your Web site can be a powerful and attractive feature for users. This tutorial demonstrates how to implement an Asynchronous JavaScript and XML (AJAX)-based user annotation system in the form of yellow sticky notes that sit on top of regular Web page content. The only additional, required configuration is a back-end Perl script that stores the annotations
Tutorials 31 Jan 2006  
 
Create mosaic images with Perl and ImageMagick
Use simple Perl scripts to automate the image manipulation, text creation, and compositing of arbitrary mosaic images. Learn how to use ImageMagick, GD, and The Gimp to create your own mosaic images suitable for static display and dynamic content. Explore the capabilities of ImageMagick and open source graphical editing tools.
Articles 24 Jan 2006  
 
Generate PDF files from Java applications dynamically
If your application needs to generate PDF documents dynamically, you need the iText library. The open source iText library makes PDF creation a snap. This article introduces iText and gives a step-by-step guide to using it to generate PDF documents from Java technology applications. We create a sample application to better understand iText.
Articles 24 Jan 2006  
 
Improve persistence with Apache Derby and iBATIS, Part 1: Initial configuration, semantics, and a simple test
The iBATIS database-mapping framework -- a popular Java framework for object-relational (OR) mapping -- is now an Apache open source project. This tutorial is the first in a three-part series demonstrating how to combine Apache Derby's power as a small-footprint embeddable database with iBATIS and use this combination to improve persistence in your database-driven Java applications. In Part 1, you learn about iBATIS's advantages as a persistence mechanism and focus on the iBATIS Data Mapper framework.
Tutorials 24 Jan 2006  
 
Create your own real-time visual effects
Use EffecTV and Simple DirectMedia Layer (SDL) to create your own real-time visual effects on live video. Learn how to integrate geometric primitives, bitmap image loading, and simple motion tracking to create your own games, leading-edge user interfaces, or immersive environments. Explore the EffecTV and SDL architectures, and learn how to harness the power of open source video processing on Linux.
Articles 17 Jan 2006  
 
How to turn your PHP application into a bot
A freely available module allows your PHP application to attach to an IRC server and respond to messages. To illustrate how to use the module, this article shows you how to create an IRC bot in PHP that can tell you the weather on demand for a ZIP code.
Articles 17 Jan 2006  
 
Build Perl applications with Eclipse
The EPIC project lets developers build, edit, and develop Perl-based applications using the Eclipse IDE. In this tutorial, we look at the EPIC plug-in, how it can be used to develop Perl applications, and how it can be integrated into existing development processes.
Tutorials 17 Jan 2006  
 
Implement MVC in custom SWT components
Eclipse SWT (Standard Widget Toolkit) offers an extensive set of APIs to implement your custom-made widgets. In this article, the author briefly outlines the MVC (Model-View-Controller) architecture, explains the current implementation of MVC in the form of structured viewers, and shows an implementation using a custom SWT widget.
Articles 11 Jan 2006  
 
GTK+ fundamentals, Part 2: How to use GTK+
This article, the second in a three-part series titled "GTK+ fundamentals," introduces you to programming with GTK+. It analyzes a sample GTK+ application written in C, then shows that same application written in Python and C#. Finally, it discusses some useful tools that can help you develop better applications faster with GTK+.
Articles 10 Jan 2006  
 
How to use regular expressions in PHP
Regular expressions can provide a powerful way to work with text. Using regular expressions, you can do complex validation of user input, parse user input and file contents, and reformat strings. PHP provides simple methods that let you use POSIX and PCRE regular expressions. This article discusses the differences between POSIX and PCRE, and how you can use regular expressions and PHP V5.
Tutorials 10 Jan 2006  
 
In tune with Tapestry, Part 2
The Tapestry framework allows Java and Web developers to develop servlet-based Web applications that are dynamic, lightweight, and responsive. Continue getting to know Tapestry this month, as Brett McLaughlin shows you how to plan the development of a Tapestry application and create useful, robust Tapestry components.
Articles 10 Jan 2006  
 
Get started with an open source CMS, Part 4: Create an Apache Derby JDBC store adapter
In this tutorial, Part 4 of a developerWorks series, find out how to create a custom store for Jakarta Slide that uses Apache Derby. Build a new database adapter to use Derby as the content and metadata store for Slide using Java Database Connectivity (JDBC), and learn how to handle problems, such as SQL syntax errors and INSERT trigger issues.
Tutorials 10 Jan 2006  
 
In tune with Tapestry, Part 1
In this first half of a two-part article, author and frequent developerWorks contributor Brett McLaughlin 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.
Articles 04 Jan 2006  
 
Deploy J2EE applications on Apache Geronimo
Learn how to deploy JavaServer Pages (JSPs), servlets, and different Enterprise JavaBeans (EJBs) on Apache Geronimo. This article includes the deployment steps required for Apache Geronimo, which are different from other Java 2 Platform, Enterprise Edition (J2EE) containers.
Articles 03 Jan 2006  
 
Discover Python, Part 8: Reading and writing data using Python's input and output functionality
In this article, you learn how to work with files. First, we review a simple way to output data in Python, using the print statement, then learn about the file object, which is used by Python programs to read and write data to a file. The different modes with which a file can be opened are demonstrated, and the article concludes by showing how to read and write a binary file.
Articles 03 Jan 2006  
 
Four cool libraries for Ruby
This tutorial presents four members of Ruby's standard library: RDoc, WEBrick, dRuby, and REXML. Learning to use the standard library more effectively will help improve your Ruby code and let you concentrate on the important parts of your code.
Tutorials 03 Jan 2006  
 
LPI exam 101 prep, Topic 104: Devices, Linux filesystems, and the Filesystem Hierarchy Standard
In this tutorial (the fourth in a series of five tutorials), Ian Shields introduces you to Linux devices, filesystems, and the Filesystem Hierarchy Standard, and in doing so, continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 101. This tutorial shows you how to create and format partitions with different Linux filesystems and how to manage and maintain those systems.
Tutorials 28 Dec 2005  
 
Perl programming with DB2 Universal Database
Learn how to write simple Perl programs that extract or manipulate data stored in DB2 UDB. You will go from the simple task of selecting a row from a database into a Perl program, to more advanced topics, including dealing with large objects and invoking stored procedures.
Articles 22 Dec 2005  
 
GTK+ fundamentals, Part 1: Why use GTK+?
This article, the first in a three-part series, introduces you to the world of GTK+. It explains what GTK+ is, why you should consider using it, and the benefits it provides. Together with the rest of the series, this installment provides enough introductory information that, if you decide to use GTK+ in your own projects, you'll know where to look for further materials.
Articles 20 Dec 2005  
 
Introduction to Apache Derby
Get the basic skills you need to use Apache Derby in Java 2 Platform, Enterprise Edition (J2EE) environments where Derby is embedded as a database, such as in Apache Geronimo. This tutorial demonstrates how to embed Derby within Geronimo and how to use Derby and Geronimo to deploy a Web-based e-commerce application. It also helps you become familiar with Derby's system tools, a set of utilities that make application development with Derby easy and straightforward.
Tutorials 20 Dec 2005  
 
Linux screensaver for Windows
Construct and package a Linux LiveCD so that it will install using the standard Microsoft Windows install process and will operate as a standard Windows screensaver. Answering the most common concern about open source software, this article shows that, yes, Linux will run under Windows.
Articles 20 Dec 2005  
 
A gentle introduction to SWT and JFace, Part 4: How to use ToolBars and SashForms
This installment of A gentle introduction to SWT and JFace expands on what you've learned about creating applications using Java technology, Eclipse, and the SWT and JFace libraries. This installment shows you how to use ToolBars, CoolBars, Trays, SashForms, Links, and other controls, as well as several dialog types.
Articles 20 Dec 2005  
 
Building cheat sheets in Eclipse
Cheat sheets help your customers get their hands dirty with your product and learn about its features interactively. This tutorial shows you how to develop interactive tutorials, called cheat sheets, for your Eclipse-based product or plug-in.
Tutorials 13 Dec 2005  
 
Build rich Internet applications
Many users are dissatisfied with the capabilities and performance of today's HTML-based Web applications. Users want desktop application functionality with the ease of installation and accessibility that Web applications offer. This tutorial demonstrates how to develop, package, and deploy a rich Internet application using the open source OpenLaszlo framework, Eclipse-based Laszlo IDE, and Web Tools to build business applications that delight users.
Tutorials 13 Dec 2005  
 
Discover Python, Part 7: Explore the Python type hierarchy
This article returns to the exploration of the Python type hierarchy and introduces the Python dictionary container type. Unlike the Python tuple, string, and list container types discussed in previous articles, the dictionary type is an unordered container that relies on a key-to-value mapping. As a result, items in a dictionary are accessed by a key value and not by their location within a sequence. The unique features of the dictionary type may seem unusual, but they provide a great deal of power when used properly.
Articles 06 Dec 2005  
 
Create a UIMA component Web service, Part 1: Create a UIMA application using Eclipse
Search word processing documents, emails, video, and other unstructured information for specific text or even for concepts using the Unstructured Information Management Architecture (UIMA). Part 1 of this tutorial explains how to install and use the UIMA Eclipse plug-ins to create a simple UIMA application.
Tutorials 06 Dec 2005  
 
Reading and writing the XML DOM with PHP
Myriad techniques are available for reading and writing XML in PHP. This article presents three methods for reading XML: using the DOM library, using the SAX parser, and using regular expressions. Writing XML using DOM and PHP text templating will also be covered.
Articles 06 Dec 2005  
 
Debugging techniques for PHP programmers
Explore various methods for debugging PHP applications, including turning on error reporting in Apache and PHP, and by placing strategic print statements to locate the source of more difficult bugs through a simple example PHP script. The PHPeclipse plug-in for Eclipse, a slick development environment with real-time syntax parsing abilities, will also be covered, as well as the DBG debugger extension for PHPeclipse.
Articles 29 Nov 2005  
 
Develop SQL databases with Eclipse, SQLExplorer, and Clay
Learn how to use Eclipse and the SQLExplorer plug-in to connect to any database that supports a JDBC driver. These tools allow you to view database schemas, view table data, add and edit table data, and write, edit, and execute SQL. You will also learn how to use Azzurri Clay to create Entity Relationship Diagrams (ERDs), reverse-engineer databases, add tables, edit tables, delete tables, edit relationships, add indexes, and change your underlying data model into different SQL dialects.
Tutorials 29 Nov 2005  
 
Secrets of lightweight development success, Part 9: Continuations-based frameworks
By letting you look at Web requests as a single application instead of multiple requests, continuations can make it easier to manage state, improve the way components fit together, and simplify vexing problems, such as the Back button and threading. This article explores the continuations server approach.
Articles 29 Nov 2005  
 
LPI exam 202 prep, Topic 206: Mail and news
In this tutorial, David Mertz continues preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 202. In this second of a series of seven tutorials on network administration on Linux, you learn how to use Linux as a mail server and as a news server. This tutorial covers mail transport, local mail filtering, and mailing list maintenance software. It also briefly discusses server software for the NNTP protocol.
Tutorials 22 Nov 2005  
 
Create a Web storefront using PHP, Derby and PayPal, Part 3: Setting up orders, shipping, and e-mail
This series chronicles the building of a Web storefront in PHP using PHP Data Objects to access a Derby database. The storefront includes a user manageable shopping cart that allows item purchases using PayPal, and includes the ability for merchants to notify customers via e-mail on successful orders automatically. This final part covers the addition of transactions, a shipping component, and an e-mail notification feature.
Tutorials 22 Nov 2005  
 
Create graphics the smart way with PHP
This article shows how to build an object-oriented graphics layer in PHP. Using object-oriented systems can make building complex graphics much easier than building the graphics using the primitives in the standard PHP library.
Articles 22 Nov 2005  
 
Problem solving with Computational Infrastructure for Operations Research (COIN) source code
Computational Infrastructure for Operations Research (COIN) is an open source project developers can use to build optimization solutions. IBM mathematical optimization researchers are opening the code they use in finding the optimal allocation of limited resources. The code has many applications in a variety of industries.
Articles 21 Nov 2005  
 
WebSphere migrations: Migrate applications from WebSphere Application Server Community Edition to other WebSphere Application Server products
Walk through the process of migrating a complex sample application from IBM WebSphere Application Server Community Edition to IBM WebSphere Application Server Base using Rational Application Developer. Involving JSPs, servlets, EJBs, messaging, and database access, this exercise will help you migrate your own applications, and address issues that can often cause problems during application migrations.
Articles 15 Nov 2005  
 
LPI exam 101 prep, Topic 103: GNU and UNIX commands
In this tutorial (the third in a series of five tutorials), Ian Shields introduces you to the Linux command line and several GNU and UNIX commands, and in doing so, continues preparing you to take the Linux Professional Institute Junior Level Administration (LPIC-1) Exam 101. This tutorial helps you learn to use commands on a Linux system.
Tutorials 15 Nov 2005  
 
Open source licensing, Part 2: Academic v. reciprocal
Open source licenses provide the legal foundation for propagation of open source code. This article, the second of two in the "Open source licensing" series, explores the two most popular forms of open source licenses -- the academic license and the reciprocal license -- and describes the obligations of licensees that accept the terms of each.
Articles 15 Nov 2005  
 
Create a Web storefront using PHP and PayPal, Part 2: Collecting payments
This series chronicles the building of a Web storefront in PHP using PHP Data Objects to access a Derby database. The storefront includes a user manageable shopping cart that allows item purchases using PayPal, and includes the ability for merchants to notify customers via e-mail on successful orders automatically. Part 2 covers creating shopping carts and making payments via PayPal.
Tutorials 15 Nov 2005  
 
Make your Eclipse applications richer with view linking
Views in a rich GUI enhance the user experience by displaying information in a variety of ways. By their very nature, UI views depend on other views and need to interact. Eclipse makes it easy to link the UI views and provides ways to adapt view linking to non-UI scenarios.
Articles 15 Nov 2005  
 
LPI exam 202 prep, Topic 205: Networking configuration
In this tutorial, David Mertz begins preparing you to take the Linux Professional Institute Intermediate Level Administration (LPIC-2) Exam 202. In this first of a series of seven tutorials on network administration on Linux, you learn to configure a basic TCP/IP network, from the hardware layer (usually Ethernet, modem, ISDN, or 802.11) through the routing of network addresses.
Tutorials 08 Nov 2005  
 
Develop apps with Web services and the eBay SDK, Part 3: Develop eBay applications with PHP5 and Web services
Create applications in PHP5 that interact with eBay through Web services. Almost half of eBay's transactions occur through its Web services platform. In this tutorial, you'll acquire a solid understanding of the mechanics of the eBay XML API and learn how to use the Services_Ebay PHP extension.
Tutorials 08 Nov 2005  
 
Create a Web storefront using PHP and PayPal, Part 1: Pouring the foundation database
This series chronicles the building of a Web storefront in PHP using PHP Data Objects to access a Derby database. The storefront includes a user manageable shopping cart that allows item purchases using PayPal, and includes the ability for merchants to notify customers via e-mail on successful orders automatically.
Tutorials 08 Nov 2005  
 
Secrets of lightweight development success, Part 8: Seaside
Continuations, or high-level programming abstractions, are often seen as academic toys, but a new breed of Web server can make the average developer much more productive. Continuation servers let you support the Back button in Web browsers and code with a more consistent programming style. Developers the world over recognize Seaside as the top existing continuation server, but Seaside does much more than continuations.
Articles 08 Nov 2005  
 
Build extra secure Web applications
Developers constantly fight the problems associated with action and data tampering in Web applications. This article provides a framework to secure these vulnerabilities. You can embed this framework, which offers a logical security design, in common presentation frameworks, such as Struts.
Articles 01 Nov 2005  
 
Create an Amazon storefront using PHP, Part 2
This is Part 2 of a two-part tutorial that constructs an Amazon storefront using PHP and the Amazon E-Commerce Service (ECS). This tutorial shows how to create a shopping cart, a "browse for similar items" feature, a specialty theme shop, and a collectibles shop.
Tutorials 01 Nov 2005  
 
Extending Spring JMX support
The Spring framework minimizes architectural dependencies and externalizes composition in your applications, but applications also need to be managed. Fortunately, Spring 1.2 includes sophisticated JMX integration support -- and JMX delivers a practical management infrastructure for your applications. In this article, Claude Duguay takes Spring JMX a step further, showing you how to add notification events to methods and attributes transparently. The resulting code lets you monitor state changes without cluttering up your Java objects.
Articles 01 Nov 2005  
 
Book review: Autonomic Computing
Join me as I troll through Richard Murch's book from IBM Press, "Autonomic Computing," and find tools and resources for the system designer, administrator, and developer.
Articles 25 Oct 2005  
 
Create a wiki system using Derby, Part 2: Java functions, procedures, and triggers
This two-part tutorial series demonstrates how to create a simple wiki system by embedding Apache Derby in a Web application server. Part 1 gave you an overview of the basic system and regular expressions. This tutorial shows you how to use Java functions, stored procedures, and triggers within the Derby database and outlines the advantages of using these features, including reducing the coupling between database and middle-tier code, minimizing the number of transactions opened, and increasing performance by reducing network traffic.
Tutorials 25 Oct 2005  
 
Create an Amazon storefront using PHP: Create an Amazon storefront using PHP, Part 1
>This is the first of a two-part tutorial that constructs an Amazon storefront using PHP and the Amazon E-Commerce Service (ECS). The storefront constructed will allow shoppers to view items displayed in lists or search for specific items in the store. Part 2 will cover the shopping cart, recommendation service, and constructing a collectibles shop.
Tutorials 25 Oct 2005  
 
Discover Python, Part 6: Programming in Python
This article explores the Python for loop. The for loop is used to iterate through the items in a Python collection, including the Python tuple, string, and list container types discussed in previous "Discover Python" articles. The for loop can also be used to access elements from a container type by using the range (or xrange) method. In addition, you can use the range method to execute a group of statements a specific number of times within a for loop.
Articles 25 Oct 2005  
 
Using Ajax with PHP and Sajax
For years, the goal of creating a truly responsive Web application was hampered by one simple fact of Web development: To change the information on part of a page, a user must reload the entire page. Not anymore. Thanks to asynchronous JavaScript and XML (Ajax), we can now request new content from the server and change just part of a page. This tutorial explains how to use Ajax with PHP and introduces the Simple Ajax Toolkit (Sajax), a tool written in PHP that lets you integrate server-side PHP with JavaScript that makes this work.
Tutorials 18 Oct 2005  
 
Java generics support in Eclipse V3.1
Java 5 offers generics support, a feature developers requested for years. It represents a significant upgrade to the Java language. With something as complex as generics also comes challenges, both for tool vendors and developers. This article highlights how Eclipse has responded and the changes wrought by generics to the Java programming language. It shows how to take full advantage of generics within Eclipse, including support in Quick Assist, Quick Fix, refactoring, and project preferences. It also shows some subtle and important aspects of a fully generic language.
Articles 18 Oct 2005  
 
The future of the Web is Semantic
Explore the basics of Semantic Web technologies as Naveen Balani shows you how organizations can leverage ontology-based development. The Semantic Web can aid effective knowledge management and cost-effective product life cycle automation for faster development and integration processes.
Articles 18 Oct 2005  
 
Create a wiki system using Derby, Part 1: The basic system and regular expressions
One form of communication gaining popularity today is the wiki, which enables users -- not just administrators -- to make changes to a Web site directly through the Web interface, automatically adding features, such as formatting and outgoing links. In this two-part series, you use the ability to embed Apache Derby in a Web application server to create a simple wiki system. This first tutorial gives you an overview of the basic system and regular expressions.
Tutorials 18 Oct 2005  
 
3D graphics for Java mobile devices, Part 1: M3G's immediate mode
This article, the first in a two-part series, describes the Mobile 3D Graphics API (JSR 184). The author introduces you to 3D programming for Java mobile devices and shows how you can work with lights, cameras, and materials.
Articles 11 Oct 2005  
 
Isolated unit testing of persistence with Derby
Get help developing your database-driven unit-testing skills. Without isolation and automation, database-driven unit tests can become a maintenance nightmare of sporadic failures and bad test data. The open source Apache Derby database is ideal for completely automating and isolating unit tests, because it offers fast, in-process performance and zero administration. This tutorial gives you step-by-step examples on using Derby to write effective and maintainable unit tests that improve the quality of your application.
Tutorials 11 Oct 2005  
 
Automate your team's build and unit-testing process
Extreme programming and agile methods recommend that the development process include continuous integration and unit testing. A pragmatic way to support these practices is to set up an automated system to build and test the latest version of your source code every time it changes. This article guides you through the practical issues involved in setting up your own Linux-based build server for Java projects.
Articles 11 Oct 2005  
 
Sockets programming in Ruby
This tutorial shows how to develop sockets-based networking applications using the Ruby language. You learn Ruby basics as well as the most important classes for sockets programming, and then look at a working chat application that illustrates these fundamentals. The tutorial finishes by exploring the higher-level classes that make it easy to build dynamic Web servers, mail servers and clients, and other application-layer protocols.
Tutorials 11 Oct 2005  
 
Create a content management system with PHP and Derby
Learn how to build a simple content management system (CMS) that can be used to create, maintain, and submit a sitemap to Google automatically. Page content is managed through a database using PHP and a Web browser. When the system's content changes, the system creates and submits a sitemap to Google, speeding up the process of getting your new and updated content indexed.
Tutorials 11 Oct 2005  
 
Open source licensing, Part 1: The intent
The phrase "open source license" refers to a large number of agreements that license the copyrights inherent in software widely, fairly, and with the fewest restrictions possible. This article -- the first of two -- describes the tenets of copyright and explains the intents of an open source license. Part 2 of this series explores individual licenses, such as the GNU Public License and the Apache License.
Articles 04 Oct 2005  
 
Sockets programming in Python
This tutorial shows how to develop sockets-based networking applications using Python. In this tutorial, you first learn a few Python basics and see why Python makes a good network programming language. Then you move on to the basic sockets features of Python, using a sample chat application as a guide, and look at several other, high-level, classes that provide asynchronous communications.
Tutorials 04 Oct 2005  
 
Build a dynamic Derby application
This tutorial shows you how to build a dynamic Java analysis application that connects to Apache Derby. Explore the dynamic way the database stores new application logic, changing the logic of the database without touching the core client program. And learn about Java archive (JAR) signing and how to provide security for the application that uses hot-swappable .jar files.
Tutorials 04 Oct 2005  
 
Read and write Excel data with PHP
Learn how to use the XML support in PHP to read the data from the XML exported from Microsoft Excel 2003. Also, learn to export data from your PHP application as Excel XML so your users can see their data in a real spreadsheet.
Articles 04 Oct 2005  
 
Linux project publications: RAS
The publications on this page represent contributions by members of the IBM Linux Technology Center to the development community on the topic of Reliability, Availability, and Serviceability (RAS).
Articles 30 Sep 2005  
 
A gentle introduction to SWT and JFace, Part 3: How to use TabFolder, Canvas, and StyledText
This installment of A gentle introduction to SWT and JFace expands on what you've learned about creating applications using Java technology, Eclipse, and the SWT and JFace libraries. Find out how to use tabular tree, canvas, styled text, slider, spinner, scale and other controls, as well as stack layouts.
Articles 27 Sep 2005  
 
Automating tasks with Rake
Find out about the Rake dependency management tool -- common uses of the tool, syntax of the executable configuration file, how to extend Rake using the Ruby programming language.
Tutorials 27 Sep 2005  
 
Build a Derby calendar, Part 3
In this final tutorial of the series, you'll finish the calendar and reminder application using Java language and the Apache Derby database. In Part 1 and Part 2 of this three-part series, you created a basic calendar and reminder application using a Derby database back end and a GUI and a Web-based front end. Now that the proof of concept is complete, you can add a more friendly interface and use transactions and locking to create a truly multiuser system.
Tutorials 27 Sep 2005  
 
Build a Derby calendar, Part 2: Embedding options
Continue learning how to build a calendar and reminder application using the Java language and the Apache Derby database. In Part 2 of this three-part series, you'll turn the classes -- which you created to access the database in Part 1 -- into three different applications using Derby's single-user embedded mode, its multiuser network mode, and a combination of the two from within a Web environment.
Tutorials 20 Sep 2005  
 
Discover Python, Part 5: Programming in Python
This article begins to demonstrate how to do things in Python by focusing on flow control, which is one of the simplest methods for writing programs. In this programming model, data is manipulated -- perhaps from a user interface, sensors, or a file; depending on the value of the data or resulting expressions, different actions are taken. Python provides several flow control mechanisms. This article discusses the if statement, and the while and for loops.
Articles 20 Sep 2005  
 
Secrets of lightweight development success, Part 7: Java alternatives
The Java programming language is powerful, but it has significant limitations for lightweight development. For certain problems, other programming languages such as Ruby may lead to better productivity. Find out what's important for productivity in an application's language.
Articles 20 Sep 2005  
 
Build quick, slick Web sites
With everyone from your eight-year-old neighbor to your eighty-year-old grandmother building Web sites, the Internet has become a slow-moving, bogged-down beast. But with just a few tricks using XHTML, you can build classy, beautiful sites that still load in the blink of an eye.
Articles 20 Sep 2005  
 
Mono brings .NET apps to Linux
Mono, the open source development platform based on .NET, lets you build powerful, flexible Linux applications and still take advantage of cross-platform capabilities using a variety of .NET-compatible languages. This article walks you through installing Mono on your system and developing your first sample Mono-compiled C# application that runs on both Linux and Windows.
Articles 19 Sep 2005  
 
Charming Python: Scaling a new PEAK
The Python Enterprise Application Kit (PEAK) is a Python framework for rapidly developing and reusing application components. While Python itself is already a very high-level language, PEAK provides even higher abstractions. One fairly recent capability added to PEAK is the capability to create generic functions and specifically to dispatch them on predicates, not simply on type. Sounds mysterious? Let's investigate.
Articles 15 Sep 2005  
 
Getting started with an open source CMS, Part 3: Build a custom store
This tutori