# [rkward-cvs] SF.net SVN: rkward:[3310] branches/jss_dec_10/FINAL_JSS_TEX

kapatp at users.sourceforge.net kapatp at users.sourceforge.net
Fri Dec 24 00:34:42 UTC 2010

Revision: 3310
http://rkward.svn.sourceforge.net/rkward/?rev=3310&view=rev
Author:   kapatp
Date:     2010-12-24 00:34:42 +0000 (Fri, 24 Dec 2010)

Log Message:
-----------
Proof read abstract, section 1, and section 2

Modified Paths:
--------------
branches/jss_dec_10/FINAL_JSS_TEX/RKWard_paper.tex
branches/jss_dec_10/FINAL_JSS_TEX/background.tex

Modified: branches/jss_dec_10/FINAL_JSS_TEX/RKWard_paper.tex
===================================================================
--- branches/jss_dec_10/FINAL_JSS_TEX/RKWard_paper.tex	2010-12-23 11:57:02 UTC (rev 3309)
+++ branches/jss_dec_10/FINAL_JSS_TEX/RKWard_paper.tex	2010-12-24 00:34:42 UTC (rev 3310)
@@ -8,7 +8,7 @@
\And ~	% HACK to avoid over-printing of names
\And Thomas Friedrichsmeier$^{\ddag,\S}$\\Ruhr-University Bochum
\And ~
-	\And Prasenjit Kapat\\Plus Affiliation
+	\And Prasenjit Kapat\\The Ohio State University
\And ~
\And Meik Michalke\\Plus Affiliation
}
@@ -21,14 +21,16 @@

%% an abstract and keywords
\Abstract{
-  \proglang{R} is a free, open-source implementation of the \proglang{S} statistical computing
+  \proglang{R} is a free open-source implementation of the \proglang{S} statistical computing
language and programming environment. The current status of \proglang{R} is a
-command line driven interface with no advanced standard Graphical User
+command line driven interface with no advanced cross-platform Graphical User
Interface (GUI) but it includes tools for building such. Over the past
years proprietary and non-proprietary GUI solutions, based on internal
or external tool kits, with different scopes and technological concepts
-have emerged. In this paper we discuss RKWard which aims to be both a
-comprehensive cross-platform GUI and Integrated Development Environment
+have emerged. For example, \proglang{Rgui.exe} and \proglang{Rgui.app} have
+become the de facto GUI on the Windows and MacOS X platforms, respectively, for most users.
+In this paper we discuss RKWard which aims to be both a
+comprehensive cross-platform GUI and an Integrated Development Environment
(IDE) for \proglang{R}. RKWard is based on the \proglang{KDE} software libraries. Statistical
procedures and plots are implemented using an extendable plugin
architecture based on \proglang{ECMAScript} (\proglang{JavaScript}), \proglang{R}, and \proglang{XML}. RKWard
@@ -41,7 +43,7 @@

%%Hi Thomas, this is my suggestion for the authorship, keep in mind you are the boss
\line(1,0){40}
-\item$^{\ddag}$Equal contribution, $^{\S}$Corresponding author
+\item$^{\ddag}$Equal contribution, $^{\S}$Corresponding authors
%%
}
\Keywords{GUI, IDE, \proglang{R}, plugin, cross-platform}

Modified: branches/jss_dec_10/FINAL_JSS_TEX/background.tex
===================================================================
--- branches/jss_dec_10/FINAL_JSS_TEX/background.tex	2010-12-23 11:57:02 UTC (rev 3309)
+++ branches/jss_dec_10/FINAL_JSS_TEX/background.tex	2010-12-24 00:34:42 UTC (rev 3310)
@@ -1,11 +1,12 @@
+% !TEX root = RKWard_paper.tex
\section{Background and motivation}
\label{background}
In mid 1993 Ihaka and Gentleman published initial efforts on the computing
-language and programming environment \proglang{R} on the s-news mailing list. Ambitions for
-this project aimed to develop an \proglang{S}-like language but without inheriting memory
+language and programming environment \proglang{R} on the \emph{s-news} mailing list. Ambitions for
+this project were to develop an \proglang{S}-like language but without inheriting memory
and performance issues. The source code of \proglang{R} was finally released in 1995 and
-development has since evolved under the umbrella of the \proglang{R} Development Core Team
-since mid 1997 \citep{RDCT2001, RDCT2010, Ihaka_Gentlemen_1993}.
+development has, since mid 1997, evolved under the umbrella of the \proglang{R}
+Development Core Team \citep{RDCT2001, RDCT2010, Ihaka_Gentlemen_1993}.
\proglang{R} does not include an advanced cross-platform GUI (graphical user interface) as known from other
statistical software packages. However, \proglang{R} includes tools for building GUIs
mainly based on \proglang{Tlc/Tk} \citep{Dalgaard2001, Dalgaard2002}. Since then a
@@ -15,52 +16,52 @@
implementation which was able to deliver the experience of statistical tests,
plots and data manipulation easily accessible for \proglang{R} novices as well as advanced
users. However, John Fox stated that \proglang{R} Commander's target was to provide
-functionality for basic-statistical courses though functionality increased over
+functionality for basic-statistical courses; though the features have increased over
time beyond this \citep{Fox2005, Fox2007}. In November 2002 Thomas Friedrichsmeier
started the RKWard open-source software project with the goal to create an
implementation of an \proglang{R} GUI based on \proglang{KDE} and \proglang{Qt} technologies.

The scope of RKWard is deliberately broad, targeting both \proglang{R} novices and experts.
-Regarding the first group, the aim is to allow any person with knowledge on
-statistical procedures to start using RKWard for their everyday work,
-immediately, without having to learn anything about the \proglang{R} programming language,
-first. At the same time RKWard tries to support users who want to learn and
+For the first group, the aim is to allow any person with knowledge on
+statistical procedures to start using RKWard for their everyday work
+without having to learn anything about the \proglang{R} programming language,
+at least, initially. At the same time RKWard tries to support users who want to learn and
exploit the full flexibility of the \proglang{R} language for automating or customizing
an analysis. At the other end of the learning curve, RKWard provides advanced IDE (integrated development environment)
-features to \proglang{R} experts to assist in the development of \proglang{R} scripts. Yet, the idea
-is that \proglang{R} experts, too will benefit from the availability task-oriented GUI
+features to \proglang{R} experts to assist in writing \proglang{R} scripts. Yet, the idea
+is that, \proglang{R} experts too will benefit from the availability of task-oriented GUI
dialogs from time to time, such as when exploring an unfamiliar type of analysis
or by allowing to implement routinely performed tasks as a GUI element. In
-addition, many features, such as the integrated data editor, or the plot preview
+addition, many features, such as the integrated data editor and the plot preview
feature will be useful to \proglang{R} novices and \proglang{R} experts alike in their everyday work
-(see section \ref{sec:results_output}).
+(see Section \ref{sec:results_output}).

%% TODO: TF: I have edited this section (and the following) a bit more. Please take a look.
RKWard provides a high level of transparency about the steps that are needed to
perform any supported task in \proglang{R}, in order to make it easy for the user to see
-complete code for all GUI actions\footnote{
-  This distinguishes RKWard from \proglang{R} GUIs like e.g. Red-R (\url{http://www.red-r.org/}), which
+complete codes for all GUI actions\footnote{
+  This distinguishes RKWard from \proglang{R} GUIs such as \proglang{Red-R} (\url{http://www.red-r.org/}), which
specifically aims to hide the complexities of the \proglang{R} programming language by using concept of visual data-flow
programming \citep{Sutherland1966}.
-}. In doing so RKWard accepts relatively verbose
-generated code, deliberately. In particular, RKWard limits itself to generate \proglang{R}
-code from GUI settings. It avoids wrapping complex sequences of data
+}. In doing so, RKWard generates\footnote{
+  RKWard limits itself to generate \proglang{R} code from GUI settings.
+} relatively verbose code, deliberately. It avoids wrapping complex sequences of data
manipulation or analysis into custom high-level \proglang{R} functions. The task of
providing high-level functions is logically independent of the development the
-GUI frontend, and should best be solved in dedicated \proglang{R} packages, where needed.
+GUI frontend, and should best be addressed in dedicated \proglang{R} packages, where needed.
This approach allows to make better use of the modular design of \proglang{R}, avoids
-locking in users to a specific GUI solution, and allows them more options for
-customizing generated code patterns.
+locking in users to a specific GUI application, and allows them more options for
+customizing the generated code patterns.

While RKWard tries to support users wishing to learn \proglang{R}, it is specifically not
designed as a teaching tool (such as \pkg{Rcmdr} or \pkg{TeachingDemos}), but as
a productive tool. Dialogs for statistical procedures in RKWard do not
-necessarily show a 1:1 correspondence to the underlying steps in \proglang{R}, but are
+necessarily show a one-to-one correspondence to the underlying steps in \proglang{R}, but are
rather oriented at statistical tasks. Furthermore, RKWard does not impose
artificial limitations on how users can work with the application. For example,
the user is not limited to using only one \code{data.frame} or one model at a
-time, in RKWard. RKWard is designed to allow users to create custom GUI dialogs
-easily (see sections \ref{sec:technical_plugins} and \ref{sec:example_plugin}).
+time. RKWard is designed to allow users to even create custom GUI dialogs
+easily (see Sections \ref{sec:technical_plugins} and \ref{sec:example_plugin}).

%% TODO: TF: I've removed the reference to Beta''-status. It's just an arbitrary estimate without a real definition, anyway.
%% Please take a look at the wording I have added, instead.
@@ -70,7 +71,7 @@
GFDL (GNU free documentation license) licensed. While the project remains in constant development, a growing
number of users employs RKWard in productive scenarios. The source code,
selected binaries and documentation is hosted at SourceForge
-(\url{http://sourceforge.net/}). Some key milestones of the development of RKWard are
+(\url{http://rkward.sourceforge.net/}). Some key milestones of the development of RKWard are
visualized in Figure~\ref{fig:timeline}.

\begin{figure}[htp]
@@ -81,8 +82,9 @@
\label{fig:timeline}
\end{figure}

-In this paper we will first give an overview over the main GUI elements and
-features of RKWard, followed by a short example of a simple RKWard session.
-Next some technical aspects of the implementation will be
-dicussed, comparing them briefly to competing GUI solutions, where appropriate. Additionally,
-we show an example for creating a simple plugin extension to RKWard.
+The rest of this paper is organized as follows: Section \ref{sec:user_interface} gives an
+overview of the main GUI elements and features of RKWard, followed by a short example
+of a simple RKWard session in Section \ref{sec:using_RKWard}.
+Next, Section \ref{sec:technical} discusses some technical aspects of the implementation, comparing them briefly to competing GUI solutions, where appropriate. Additionally,
+an example for creating a simple plugin extension to RKWard is shown in Section \ref{sec:example_plugin}.
+Finally, some closing comments in Section \ref{sec:conclusion_summary}.

This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.