FlightFeather Social Networking Platform

FlightFeather's goal is "social networking for everyone". This means that anyone should have a chance to run a popular social networking site -- on minimal hardware, and without wasting bandwidth.

The LinuxWorld article "BoSStats, FlightFeather and the Relative Static Web" describes the design philosophy behind the project, and provides an overview of the technology.

FlightFeather is still relatively new, but you can already see the system in action on the BoSStats site, where you can discuss what makes a good boss, office politics, etc. User privacy -- a rapidly emerging issue in social networking -- is a major part of BoSStats and FlightFeather. There are no cookies, no gathering of email addresses, and strong support for anonymous participation.

Responsiveness and resource conservation were the major design goal of FlightFeather. The Web 2.0 features avoid the merely decorative -- and slow -- effects, but focus instead on core functionality. The JavaScript itself is portably compressed, to further reduce page load times.

The focus on conserving computing resources also leads to environmentally friendly programs. This is because computing resources are not mere abstractions -- they translate directly into the use of physical resources, such as electricity consumption of large server farms, environmental damage caused by the disposal of failed or obsolete machines, etc. Software designed with conservation in mind -- "green software" -- can have a real impact on reducing the pressure on the environment.

The project's name reflects the idea that, in order to soar, an application needs to be built like a bird -- from light, strong components that are elegant in their construction -- instead of overpowering everything through brute force.

FlightFeather's most important feature is that all write requests generate (or modify) HTML files. In consequence, a pure read (the most common operation) merely serves static pages. Thus a FlightFeather site is actually dynamic, while appearing static from the point of view of the webserver. The architect of FlightFeather presented this "Relative Static" technique at LinuxWorld San Francisco 2006.

FlightFeather's sister project -- Flightdeck-UI -- likewise uses this Relative Static technique.

FlightFeather does not use a separate SQL database. In-memory data structures and Berkeley DB augment the static HTML pages to maintain a consistent state. The overall approach may be termed LAP -- a variation on the highly effective LAMP platform. LAMP stands for Linux, Apache, MySQL and Perl/Python/PHP (although there can be further variations). FlightFeather drops the "M" from this formula, in favor of capturing as many system state changes as possible into complete, static HTML documents.

This site uses the NiftyCube layout system.