The LAMP stack consisting of Linux as the operating system, Apache as the Web server, MySQL or PostgreSQL as the database and PHP, Python or Perl as the scripting language is taking over the application development platform.

FOSSSL ’05 provides you with a unique and fantastic opportunity to hear all about the LAMP stack by none other than the creators and drivers of the LAMP stack. Happening in beautiful Sri Lanka, this is your chance to get up to speed on LAMP!

Free and open source software (FOSS) is essentially software created by a network of programmers from across the globe – who collaborate with each other informally. The “free” component indicates the zero restrictions and zero cost attached to using the software. FOSS software is becoming increasingly popular since it challenges traditional software design modes.

Increasing Popularity and the Resulting Frustration

FOSS’ growing popularity has been frustrating certain sections of the development community for the following reasons:

• Traditional software developers, sellers and distributors fear FOSS undercutting their profits.
• Abuse of FOSS rights could result in questionable claims of trademark or copyright protection, spawning litigation as a result.
• FOSS’ monetary value isn’t clear, which makes it difficult for governments to tax it.

Using and Managing FOSS

As FOSS acceptance is growing, enhancements are being made too. Software firms are using FOSS to manage portfolio, improve work environments and decrease the level of coding required to write successful applications.

It’s not just the smaller firms, large companies that were shying away from FOSS software due to the grey spots around license obligations and quality have started to adopt open source in the last few years. Currently, there almost isn’t any firm that does not employ open source software.

One of the drivers of this change is how software development has been evolving over the years. The way modern software gets developed is not how it used to be a few years ago. It’s now more a method of collecting, merging and testing various components. This methodology basically means bringing in open source environments from external sources that must be evaluated, combined, and examined.

Difference Between Free and Open Source Software

Both the terms “open source software” and “free software” fundamentally imply the same type of licenses. However, they reach that set through different routes. And, even though there isn’t any real difference between the licenses, the terms indicate different underlying values.

Free software focuses on what the software recipient can do with the program. It roughly means users can run, distribute, copy, change, study and enhance the software. ‘Open source’, on the other hand, focuses on the consequences these licenses enable.

Free software happened first. With time, it became quite clear that the software led to significant collaboration dynamics. ‘Open source’ and ‘free’ almost denote the same software category, but the views they stand for are based on different values fundamentally. Open source is basically development method; free software has a more socialistic connotation attached to it. The values are certainly different, but they aren’t mutually exclusive.

There is no term that’s universally accepted to denote the software or licenses that are neutral about each term’s values. In other words, there is no third term that denotes the same license sets and same software but does not side with any license or software or deems one to be more significant.

FOSS is the closest one could come to a neutral word that has succeeded to an extent in trying to fulfil the role that’s devoid of any bias. Maybe the fact that this term exists could have watered down and thereby lessened its ability to emerge as an expression that is broadly used.

Debian: Contributing to the Project

Abstract
This tutorial will cover various topics related to Debian’s development process. This tutorial is primarily aimed at people who are interested in becoming involved as contributors to Debian. It will provide information about the organization behind Debian, give technical information on various areas, such as Quality Assurance (QA) and package maintenance, and discuss areas where more volunteers are needed.

Introducing PHP5

Abstract
PHP has become amazingly popular due to its simple pragmatic approach to solving the web problem. Sometimes we forget some of the complexities that are inherent to any web application. In this tutorial Rasmus will go through a step-by-step approach to designing, implementing, securing and optimizing large-scale PHP applications.

Introducing MySQL 5.0

Abstract
MySQL is a different from other FOSS (Free and OpenSource) projects since it was started being both commercial and OpenSource from day one. The core part has been developed by a company with lots of help with the ecosystem around the server from a large user community.

The talk will walk through the new features in MySQL 5.0 like Stored Procedures, Views, Triggers, Precision Math, Information schema (Data Dictionary), Cursors and extended international character set (UNICODE) support

Riding Ruby-On-Rails

Abstract
Ruby on Rails is an amazingly effective model-view-controller framework. Unlike many other frameworks, Rails uses a simple defaulting technique applying the DRY principle (Don’t Repeat Yourself) to make real world application development extremely rapid. In this tutorial we will learn how to use Rails to create effective MVC-style Web applications.

Programming Google

Abstract
Many people see Google just as the leading search engine. However, going beyond search, Google offers many other services to users as Web applications. Many of these services are also available as APIs which allow application programmers to use them to create new and interesting applications. In this talk we will learn about some of these APIs and what you can do with them.

PostgreSQL Internals Through Pictures

Abstract
This talk is designed for advanced PostgreSQL users who want to know more about how the database internally processes a query. It is also ideal for people wanting to modify the PostgreSQL server source code. It covers PostgreSQL network communication, query parsing, optimizer processing, and internal storage characteristics. It does not require any programming knowledge.