General Development Archive

Firefox Add-ons: Coding in a Tunnel

Firefox add-ons, or extensions, are small programs that run inside the browser in order to customize some behaviors. In theory, it is possible to develop and maintain a multilingual, multiversion and multiOS Firefox add-on. In practice, there are many obstacles to overcome in order to create and to maintain a working Firefox add-on in one language for one Firefox version and for one OS.

Eclipse Speed Wizards Can Help

This article demonstrates the art of using powerful Eclipse wizardtry that that automates the creation of classes, interfaces, projects, other resources. Eclipse wizards are a great way to define repeatable templates for file types when the built-in template functionality won't suffice. After working through the information, you will be able to implement your own speed wizards in Eclipse to create enhanced functionality very quickly.

GNU Emacs 22.1 Released

On June 2nd 2007, a new version of GNU Emacs has been released. Emacs version 22 includes GTK+ toolkit support, enhanced mouse support, a new keyboard macro system, improved Unicode support, drag-and-drop operation on X, as well as many new modes and packages including a graphical user interface to GDB, Python mode, the mathematical tool Calc, the remote file editing system Tramp, and more.

Interview: Carl Sassenrath, REBOL Technologies

To celebrate the 1000th article of the magazine Obligement, Carl Sassenrath returns through this long interview on its origins at Amiga Inc. in the 1980's (Manager of AmigaOS and Amiga CDTV system development, among others), the bankruptcy of Commodore, its passages at Apple Computer and Viscorp, Amiga NG, or on its new revolutionary language REBOL. A classic name in the Silicon Valley!

Introduction to UML

"When you're designing and developing new software systems, it is often hard to see how all the pieces are suppose to fit together. Unified Modeling Language is one tool that allow developers and architects to ease the process and create a big picture before committing to a particular technology."

Create Custom Data Charting Tools Using Perl, GD

This article describes techniques you can use to create new levels of usefulness in your dynamically generated charts with Perl and GD. Cook up some automatically generated graphs for your organizational meetings or live enterprise directory data. Annotate the charts with readable text that delivers more information than the standard pie chart. Using the power of GD and Perl, you can link various data and images together to create sophisticated charts that will help bring visual interest to your applications.

C++ Polymorphism; Vector Programming with GCC

There is an interesting but rarely mentioned technique in a C++ context: signature-based polymorphism, a more permissive variation of subtype polymorphism, usually called duck typing. Two objects having nothing in common can share an implicit interface and be commonly manipulated by such an interface with no inheritance involved. Part I and Part II. Also, making use of SIMD units such as MMX, SSE, or AltiVec is usually a tradeoff of portability for speed. Recent versions of GCC include an extension that allows you to write vector code without sacrificing portability. Take a look at how to use it.

Thoughts About the Best Introductory Language

"What makes programming languages are suitable or unsuitable as introductory languages? Which languages are better learnt first and at which order? And why what the masses think is the most suitable introductory programming language is not in fact that. This paper examines several approaches to which programming language is the best, and afterwards gives several useful relations for which languages should come first. Finally it gives a final verdict, defends it and then gives some other good food for thought."

High Availability with Open Source

In the article High Availability with Open Source, Josh Kuo looks at three of the popular Open Source projects to implement High Availability redundancy (failover): Heartbeat, keepalived, and CARP. The article talks about where each of these three excels and some implementation ideas. Josh also mentions the DRBD utility to sync two remote filesystems to aid in an advanced High Availability setup.

Create Eclipse-Based Applications Using GEF

"This article walks through the steps for using the Graphical Editing Framework. Rather than finishing each step in its entirety, we'll use a subset of your application's model and get that working first. For example, we might initially ignore connections or focus on just a subset of the types of graphical elements in your application. Next, learn what other technologies are available to add graphical editing to your applications. In the past, stand-alone GEF used to be the only option for graphical editing in Eclipse, but this has changed as Eclipse has evolved."