なでしこ開発記録

25
ななななななななな なななななななななななな なななななななな なななな 「」

Upload: kujirahand-kujira

Post on 17-Nov-2014

3.735 views

Category:

Documents


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: なでしこ開発記録

なでしこ開発の実態

日本語プログラミング言語「なでしこ」開発体制の紹介

Page 2: なでしこ開発記録

なでしことは?

• 日本語プログラミング言語

• 母国語でプログラミング。みんなに優しい。

• 命令が豊富。 1000 以上の組み込み命令。

• Excel/Word/ データベースなど実務処理で便利な命令がたくさん。

Page 3: なでしこ開発記録

なでしこ何に使えるの?

• 母国語であることを利用して、プログラミングの学習に。

• 専門学校や短大などで、利用実績が増えている。

「こんにちは」と表示。3+5 × 2を言う。もし、A>5ならば  「Aは 5 以上」と表示。

「こんにちは」と表示。3+5 × 2を言う。もし、A>5ならば  「Aは 5 以上」と表示。

Page 4: なでしこ開発記録

なでしこ何に使えるの?

• なでしこは、日常のバッチ処理(提携業務)を記述するのに優れた言語

Page 5: なでしこ開発記録

どのくらいの人が使っているの?

• 毎月、 4000 件のダウンロードがあります。

(多い時は、 1 万件)• だいたい、月 1 回、定期的にバージョン

アップしているので、アクティブユーザーが 4000 ~ 5000 人くらい?!

Page 6: なでしこ開発記録

祝!公式バイブル発売 (2008 年 6月 )

• 2004 年の「公式ガイドブック (MYCOM) 」に続いて、 2008 年 6 月に「公式バイブル ( ソシム ) 」が発売された!

• 公式ガイドブックは、オークションで、 10 倍以上のプレミアがついていたので朗報!!

Page 7: なでしこ開発記録

なでしこ開発体制について

共同開発の様子など

Page 8: なでしこ開発記録

開発サイクル

アバウトに案件の提案アバウトに案件の提案

開発開発

テストテスト

ベータ版リリースベータ版リリースリリース

Trac に登録

自動テスト

バグが見つかれば差し戻す

これがメイン

Page 9: なでしこ開発記録

開発メンバーは?

• 主な開発者:クジラ飛行机(プログラマー)• サブ開発者:しらたま(大学生?)• 開発メーリングリストのメンバー–参加者は多いが、アクティブメンバーは 10 人?–テスト協力や意見交換など

• 気まぐれなアクティブユーザー–オープンソースなので、ちょくちょくソースを見

てアドバイスやバグ報告をくれるユーザーがいる

Page 10: なでしこ開発記録

役割分担

• 今はアバウト• できるところを、できる人が担当する

Page 11: なでしこ開発記録

共同開発に使っているツール

• バージョン管理は、 Subversion• 案件管理は、 Trac• まとめは、 Wiki (Pukiwiki/Konawiki)

Page 12: なでしこ開発記録

Trac 便利すぎる

• 仕事でも、 Trac を利用している→なでしこにも採用の流れ

• しかし、 Trac の タイムライン機能が便利。

• 開発の流れを時系列にチェックできる。• RSS で開発MLメンバーが確認して突っ込

Page 13: なでしこ開発記録

Trac のタイムライン

Page 14: なでしこ開発記録

コミュニケーション• メーリングリスト(開発用 + 一般用)– 公開されず記録に残るのは、メールが一番

• 質問用の掲示板– 意外とチェックが大変。工夫が必要かも

• バグ報告の掲示板– 現在休止中→ Trac に移行しつつあるが一般ユー

ザーにはハードルが高い• 直接メール• ( ラフに )Twitter• ( どうしても必要なとき ) メッセンジャー

Page 15: なでしこ開発記録

ユーザーからのフィードバック

• オープンソースの醍醐味• 掲示板 → バグ報告、意見、アドバイ

ス• ダウンロードアンケート• 直接メール

Page 16: なでしこ開発記録

テストの自動化

• 組み込み命令が 1000 以上あるのでテストがかなり重要

• 命令を追加したら、ユニットテストっぽいものを作成することが義務

• (1)リリース前に全ての自動テストを実行

• (2)ベータ版を開発MLメンバーで試す• (3)問題がなければリリース

Page 17: なでしこ開発記録

バグとの戦い

• 月1バージョンアップの悩み• バグの修正が不徹底→ユーザーの不信感• 自動テストに頼りすぎている• 自動テストできない部分でバグが出る• →とにかく、様々な要素を自動テストで実行できるようにする

Page 18: なでしこ開発記録

開発メンバーの勧誘

やりたいことに対して人力が足りなさすぎ

Page 19: なでしこ開発記録

開発メンバーを増やしたい

• なでしこ→ CodeGear Delphi で開発–デメリット→ Delphi 使いが少ない

• OSCなどへの出展、オフ会の開催• なでしこ開発に参加するメリットは?• 今後、アンケートを告示するなど、開発

参加者のモチベーションを維持するための仕組みが必要かも

• C言語で書きなおすプロジェクト発動中

Page 20: なでしこ開発記録

コア開発者2人

• ActiveBasic にならって、開発者ミーティングを開催しようと画策するも、失敗。

Page 21: なでしこ開発記録

モチベーションを高める

• オープンソースの開発ではモチベーションが重要

開発開発

公開公開

感謝、感想、要望満足感・達成感感謝、感想、要望満足感・達成感

Page 22: なでしこ開発記録

コミュニティの育成

• なでしこのユーザーコミュニティが形成されつつある

• オフ会、OSCへの出展、開発合宿の開催

• 今後、勉強会なども定期的に開きたい• はてなグループの活用

Page 23: なでしこ開発記録

マニュアルの完全Wiki 化達成

• なでしこのマニュアルは、ほとんど自動生成される。コマンド追加時に、基本的な使い方の記述を強要される仕組み

• マニュアルの自動生成+Web上の Wiki と統合されている (SQLite を利用 )

• 誰でもマニュアルを追記できる仕組み(ただし、スパム対策は大変)

Page 24: なでしこ開発記録

ビジネス化

• 「なでしこ」開発で飯が食えるようになること

• なでしこデラックス版の販売• なでしこ FileMaker プラグインの販売• 毎週のコラム執筆• 書籍の執筆• なでしこを使った開発案件の受注

ーーー• 実現度→ 30%達成

Page 25: なでしこ開発記録

今後のバージョンアップ予定 (未定 )

• (1) GUIを主体にした開発環境を作る– Mac OS X の Automater– Squake– Lego MindStorm

• (2) C 言語で作り直す– Windows/Linux/Mac OS X で動くようにする–開発者を増やす

• (3) ActionScript への移植– Flash/Flex/AIR で動くようにする(ウィジェッ

ト化)