% Template For OSGeo Journal (Adapted From GRASS Newsletter Article Template)
% Language: Latex
%

% Head
\begin{article}

\title{Why Every Open Source Project Needs a Good Dictator}
\subtitle{How A Good Dictator Can Solve Problems With The Open Source Software Development Model}
\author{by Landon Blake}

\maketitle

\section{Introduction}

This article examines the need for a `good dictator' in open source software projects. 
It begins by describing the problems that can result in an open source project that lacks a good dictator, 
proceeds by explaining how a good dictator can help solve these problems, examines the qualities of a good dictator, 
and concludes with a description of the type of open source projects that would benefit the most from a good dictator.

\section{Problems Resulting From a Lack of Clear Leadership}

There are several problems that can plague an open source leadership that lacks clear leadership. These problems include:

\textbf{Stagnation in development} of the open source software that is developed by the project. 
Symptoms of this problem include infrequent releases and a lack of new features. Stagnation can result 
when there are no clear goals for the program or an overall push to take the program in a forward direction.

\textbf{A `muddied' code base} that suffers from source code contributions with an inconsistent coding style. 
This coding style could be the formatting and structure of the actual source code, or the way the 
architecture of the program is designed and implemented.

\textbf{Inconsistent branding} of the open source project. This includes the design of logos, designation of 
text fonts and color schemes. Inconsistencies in these elements show up in both the documentation and 
the graphical user interface of the software produced by the project.


\section{What is a Dictator?}

Before we can describe how a dictator can solve the problems listed previously, it is important that 
we define the term dictator for the purposes of this article. A dictator is a person or organization 
that provides strong leadership of an open source software project. This leadership often comes in the 
form of an individual programmer, team of programmers, or organization that has specific goals for the 
open source project and a willingness to make decisions that may displease certain segments of the community.

\section{The Best Type of Dictator}

What makes a good dictator for an open source software development project? A good dictator has the following characteristics.

A good dictator has a long-term commitment to the project. (For example: A company has a long term commitment to a 
software project because it distributes the software for a hardware platform that it produces. Another example: 
A non-profit organization that uses an open source program as a key part of its operations.)

A good dictator knows how to balance competing interests. This includes knowing what is worth 
fighting over, knowing how to best handle difficult people, and being able to tell contributors `no' when it becomes necessary.

A good dictator has a large investment in the open source software project, but maintains an ability to see beyond their own 
immediate needs.


\section{Solutions Provided By a Good Dictatorship}

How does an open source software project benefit from a good dictator? How does a good dictator fix some of the problems that 
arise when an open source software project lacks good leadership?

A good dictator can set programming, marketing, and documentation priorities for a project. A good dictator can 
outline a development road map and set a release schedule.

A good dictator can set and enforce coding styles. This makes the structure and formatting of the actual source code 
more consistent. It also makes decisions about the implementation of the program architecture more consistent.

A good dictator can set and enforce standards for branding of the product. This can result in a clear image of the 
program's `brand' and a more effective marketing effort for the open source project.

\address{Landon Blake\\
  Redefined Horizons\\
  \url{www.redefinedhorizons.com}\\
  \email{sunburned.surveyor AT redefinedhorizons.net}}

\end{article}
