Theiling Online    Sitemap    Conlang Mailing List HQ   

Conlang Software Ideas and Survey

From:Caleb Hines <bachmusic1@...>
Date:Friday, May 19, 2006, 4:05
As a software engineer, an idea that I've had now for some years is a conlang
"Development Environment". So far I haven't really done any work in this
direction, but I keep coming back to the concept. I'd like to know if anyone
else is interested in such an idea, either as a user, or as a developer.

Currently, there are a number of ways to use software to aid in language creation.
There's LangMaker, but it's windows-only and obsolete. Then there's linguist's
tools (such as Shoebox, which I should mention I've never used) which AIUI are
geared towards professionals, not hobbyists. Then there are a number of
utilities like werd (one of my favorites) and IPAZounds, which are geared
towards specific tasks, but aren't really integrated. OTOH, there's always the
full-blown spreadsheet or word-processor approach, which provides a lot of
functionality, but, as with the linguist's tools, these aren't tailored towards
our hobby (also, the most popular one is a commercial product, and not
cross-platform). And don't forget the minimalist approach of just storing
everything in a txt file. But if you want to share it on the web, you need a
way to put it into html, although you could store everything in xml. As you can
see, the waters are rather murky. There are also numerous instance!
 s of people reinventing the wheel in slightly different forms (I cite the
recent thread on sound change tools such as schcompile and IPAzounds).

What I'd like to do is provide a consolidated (and open-source) approach to this.
Something that takes advantage of existing approaches, either by porting or
wrapping existing programs (with permission, of course). I also think that it
should be estensible, which is to say, it should be relatively easy to write
"plug-ins" that provide additional functionality.

I can envision implementing this in several ways, with pros and cons to each.
Some examples of what this might look like:
- A set of macros for M$ Office, which could maintain and transform a lexicon.
- A set of Python scripts with a Tkinter or wxPython GUI to bind them all together.
- A full-blown 3-tier application in C#.

While I'm offering to get this off the ground and help lead it (at least for now), I
don't want this to be _my_ project, because I don't do enough conlanging to
justify it for myself (but if I had it, I might do more). Rather, I'd like it
to be a group project. I know we have a large community on the list, including
a fair number of programmers. what prompted me to post this here was twofold.
Firstly, the LCC resparked my interest in conlanging, which brought me back to
this concept, and secondly, I recently purchased a book on Extreme Programming
(XP), and am eager to give it a try on a real life program. Unfortunately, it's
hard to apply to my current project at work, at least whole cloth, since we
already have a large team, a large existing code-base, and existing development
processes.

One of the big things in XP is close communication between "customers" and
"developers". The customers determine what needs to be done and the developers
figure out how. In this context, anyone on this list is a potential customer,
and with the right experience, a potential developer. This means that the
developers will be an "extended subset" of the customers. But non-developer
users should have at least as much say in the project as developers.

A tentative working name for the project:
ConLang Integrated Development Environment, or "CLIDE" for short.

Step 1 for CLIDE will be to determine the needs of the customers, and find a
willing and able development team. To this end, I wrote an initial survey which
I'm posting here. Please give as detailed answers (within reason) as you can,
but make them _your_ answers. Try not to overgeneralize to what other people
_might_ want... if other people want it, let them tell me. This is in keeping
with the XP philosophy of You-Arent-Gonna-Need-It. I'd like to hear from as
many people as possible for at least the first three questions. If you answer
no to both 2. and 3., you needn't bother continuing. It would probably be best
if you sent your survey responses directly to me (bachmusic1 AT netscape DOT
net) rather than cluttering up the listserve. For reference, I'll post my
answers to 14-18 below the survey. I'll wait about a week or two then compile
the results and post them. Thanks for your participation!

~Caleb

===============================================
CLIDE Initial Interest Survey

1. Do you currently use, or have you used, a software package to assist with
language construction and/or maintanance?
  - If yes:
    - What software program(s) have you used, and for what purpose(s)?
      (e.g Word, Excel, Open Office, LangMaker, IPAZounds, werd, InspirationPad...)
    - What feature(s) do you find are the most useful?
    - What feature(s) do you find are missing?
  - If no:
    - Why not?
    - What (if anything) would make you reconsider?

2. Would you consider using an integrated software program to assist with
language construction and/or maintanance?

3. Would you consider helping develop said program?


Questions 4-13 apply only if you answered yes to 2 (or 3) (Potential User).

4. What operating system(s) do you use?

5. How important is it for it to be easy to install?
 For example, would you use it if there were a few external dependencies that
you had to download first?

6. How important would a programmatic interface (API) be to you?

7. How important would a command-line interface be to you?

8. How important would a graphical interface be to you?

9. How important would a web-based interface be to you?

10. How important would a script-based interface be to you?

11. How important would database access be to you?

12. How important would extensibility be?

13. Which of the following features might you use? (This is only to get a broad
feel for what might be included -- more detailed determinations of features can
be conducted later)
   - Word generation
   - Sound change management
   - Lexicon management
   - Etymology managemet
   - Statistical analysis of texts
   - Interlinear creation (manual or automatic)
   - Creating a reference grammar
   - Grammatical parsing
   - Vocalization (computer-pronunciation of a conlang)
   - Phrase-structure tree parsing and/or visualizing
   - Other (please specify -- be creative!)


Questions 14-18 apply only if you answered yes to 3  (Potential Developer).

14. Which of the following systems have you (or could you) developed on?
   - Windows
   - Macintosh
   - *nix
   - Other (please specify)

15. Which of the following languages do you know?
   - C/C++
   - Visual Basic
   - Java
   - C#
   - JavaScript
   - Perl
   - Python
   - Ruby
   - HTML
   - XML
   - SQL
   - Other (please specify)

16. Which of the following areas do you have experience in?
   - Database Programming
   - Network Programming
   - GUI Design
   - Natural Language Processing
   - Architecture and Design
   - Software Testing and Test-Driven Development
   - Technical Documentation
   - Development Processes
   - Extreme Programming
   - Other (please specify)

17. How active do you think you could you be in this project?
    (answer does not imply commitment)

18. (Optional) Is developing software a deeply spiritual pursuit for you?
    Just kidding! :-)

===============================================
My answers to the Developer questions:

14. Cmd-line stuff in C on Unix, Multiple languages on Windows, no knowledge of Macs.

15. Fluent in C/C++ and Python. Learning C# (and like it). Occasional VB, very
little Java, JavaScript, and PERL, no knowledge of Ruby. I know HTML and XML,
and am familiar with basic SQL statements.

16. Done a little DB and GUI stuff, less web stuff, and no natlang processing
(whatever that means). Design, documentation, testing, and processes are all
familliar from work. I'd like to do more TDD, but haven't used it extensively
yet. I've known about XP for less than 2 years, and only recently purchased a
book on it. I think I could follow the procedures, but I'm no expert.

17. Good question! I don't have alot of free time to dedicate, and I'll have less
once I start my Master's in the fall. When I'm interested I'll likely spend
more time on it, and I'm likely to be more intereseted if other people are
helping. Based on my experience with past projects, my interest is likely to
wax and wane in unpredictable cycles.

18. Not really, but it is a (sometimes) enjoyable hobby, and it often gives me a
different insight into reality, in some warpped way. Yes... I know I need help.

__________________________________________________________________
Switch to Netscape Internet Service.
As low as $9.95 a month -- Sign up today at http://isp.netscape.com/register

Netscape. Just the Net You Need.

New! Netscape Toolbar for Internet Explorer
Search from anywhere on the Web and block those annoying pop-ups.
Download now at http://channels.netscape.com/ns/search/install.jsp

Replies

Caleb <bachmusic1@...>
Chris Bates <chris.maths_student@...>
kaleissin <kaleissin@...>