もしあなたがFreeCADを好きで開発の手助けをしたいと思うのであれば、たとえあなたがプログラマーでなくともできることはたくさんあります。実際、ユーザー、パワーユーザー、開発者といった皆のためにやれることがあるのです。
ドキュメントでの作業
このドキュメントの作成、修正、拡張を手伝ってください。間違いの修正、不明瞭なページの拡張・修正、トピックがない場合の新しいページの作成などがあります。Wikiを編集するにはSourceForgeアカウントが必要です。このWikiへのログインにはそのアカウントとパスワードを使うことができます。アカウントができたらフォーラムまたはIRCチャンネルで書き込み許可を貰ってください(スパムを避けるためにこのWikiには書き込み保護がかけられています)。いくつかの分野では特に作業を歓迎しています:
- 全ての FreeCADコマンドをリストし解説しているコマンドリストページ。コマンドのほとんどにはわずかな情報しか記載されていない、あるいは全く情報がありません。Std_ViewScreenShot/jpは他のコマンドの説明を書く上でのよい例になるでしょう。
- チュートリアルセクションはまだまだ十分ではありません。FreeCADを使って何かクールなものを作ったら、ぜひどうやって作ったのかを書いてください。
あなたのFreeCADの知識の共有
FreeCADのユーザーコミュニティーはまだ小さなものですが、新しく使い始めたユーザーに使い方を教えるという非常に大事な仕事を行っている何人かのエキスパートのユーザーがすでにいます。もしあなたがFreeCADに慣れ始めたら、あなたの知識は他の人に取って非常に価値があるものになる可能性があります。あなたはその貴重な財産で次の様な貢献をできるかもしれません:
- FreeCADを使って作ったものをフォーラムのスレッドで見せてください。スクリーンショットを投稿することもできますし、さらにFreeCADファイルを添付して他の人が調べてどうやってそれを作ったのか理解できるようにすることだってできます。
- チュートリアルを書いて何か面白いことについて説明したり、教えたりしてください。チュートリアルはあなたのブログに書いてもいいですし、直接Wikiに書いてもいいですし、フォーラムに書いてもらっても構いません。
ドキュメントの翻訳
ドキュメントを翻訳してください。このWikiの翻訳は簡単で、翻訳を作成するために/languagecodeページを追加する必要があるだけです。例えばPart_Moduleページ(URLの末尾がindex.php?title=Part_Module)をフランス語に翻訳するにはURLの末尾に/fr追加するだけです。するとPart_Module/frページが作成されます。
FreeCADの翻訳
FreeCADをあなたの言語に翻訳してください。FreeCADのインターフェイスのテキストは全て簡単に他の言語に翻訳できるようになっています。必要なのはその言語を知っていて手助けしてくれる意志のある人だけなのです!今のところは英語、ドイツ語、フランス語の翻訳版があります。翻訳は全てcrowdinでオンラインに行われています。
他の人がFreeCADを知る手助けをする
- 興味を持ちそうな人たちにFreeCADについて話してあげてください。
- FreeCADの面白い使い方を見つけて、スクリーンショットを取るなどしてそれをドキュメント化してください。FreeCADはまだできたばかりなのでそれを使って何ができるかを多くの人たちはわかっていません。もしあなたが既にFreeCADのファンであればFreeCADでできる何かクールなことを知っているはずです。私たちがそれを他の人たちに教える手助けをしてください!
- フォーラムを見て新しいユーザーの基本的な疑問に答えてあげてください。
- チュートリアルを書いたり、動画をとったりしてあなたがFreeCADでやっていることを見せてください。
- ファイルや図面を提供してください。FreeCADを使って何ができるのかのいい例になるようなファイルがまだ十分ではありません。
バグ報告と興味のある機能の要望
バグや新機能の提案はFreeCAD Trackerで行われています。開発者の手間を省き(わかりにくいバグを調べて対処するのは非常に時間がかかります)、また自分の問題が思ったように扱われないといらいらしないように以下を読んでください:
- バグと機能要望は同じトラッカーで扱われます。あなたの問題には"バグ"(あるべき処理が行われない)か、"機能"(今は無いがあったらいいと思うもの)かどちらかのマークを付けましょう。
- 匿名で投稿を行うこともできますが、あなたのSourceForgeアカウントを使うようにお願いします(必要な場合は作ってください)。そうすれば誰かがあなたの投稿に追記を行った場合に通知を受け取ることができます。多くの場合、バグに対処している人はあなたからもっと詳しい情報を受け取る必要がでてきます。
- バグを報告する場合、最も重要なのは開発者がそれを再現できるようにするということです。そのバグを引き起こすのに必要となる正確な手順が記載されているかどうか確認してください。そうすれば他の人も同じことができ、その人のマシンでもバグが起きるかどうか確認できます。開発者がバグを確認できなければ、それを直すこともできません。
- 開発者が問題を特定する手助けとなる情報も記載してください。例えばあなたがFreeCADを実行しているオペレーティングシステム、FreeCADのバージョン(例えば0.11)、リビジョン番号(例えば4955)などです。二つの番号は Help -> about FreeCAD で表示されるダイアログで確認できます。
- 見つけたものがバグなのかどうか判断がつかない場合、最もいい方法はフォーラムに行ってそれについてまず尋ねることです。
- 機能要望を投稿する前にフォーラムの他のユーザーとその機能について議論しておいた方がいいでしょう。そうすれば最終的には提案がもっとしっかりしたものになり、開発者がそれを実装してみようと興味を持つ可能性も高くなります。
- FreeCADはボランティアによって彼らの余暇の時間を使って開発されていることを忘れないでください。皆、可能な限り最高のアプリケーションをつくり上げるためにベストを尽くしていますが、あなたのバグ報告の優先順位が低くなることもありますし、あなたが十分な情報を提供していない場合には対応されないこともあります。また機能要望も開発者が誰もその実装に興味を持たなかったり、非現実的な作業量が必要な場合には保留されたり、却下されることさえあります。
デザインアートワーク
FreeCAD用アイコンのデザインのガイドラインについてはアートワークページを見てください。
プログラム!
FreeCADのコードを書くのはそう大変ではありませんし、なんの許可もいりません。今、この瞬間からあなたが欲しい物を書き始めることができます。書き終わったらパッチを投稿するか、gitブランチへのマージのリクエストを出してください。ただし面倒事を抱えないようにまずは以下の条件を満たすようにした方がいいでしょう:
- FreeCADは独自にペースで進んでいて、開発者チームは非常に小規模なものです。私たちはFreeCADのために費やせる時間が十分にはありませんし、物事が急速に進むようには計画されていません。開発者の誰かが気がついて、彼にそれを行う時間があるときに作業は行われます。ですからやらなければならない作業のリストもありません。修正したい不具合や欠けている小さな機能といったような、あなたがやりたいことを見つけられるかどうかはあなた次第です。またトラッカーにはまだ担当が決まっていない項目がいくつかあります。
- FreeCADのコードを書き始める前にFreeCADがどのように動いているのかよく知っておく必要があります。これは一見、明らかな様に見えますがどういうふうに動くべきなのかを理解していなければ内部的に何を行うべきか、どうやって行うべきかを知っているとは言えないでしょう。
- 大部分の処理はPythonでもC++でもできます。内部の動作はどちらの言語でもほとんど同じです。C++でコードを書くつもりでもパワーユーザーハブページを読んでおくことをお勧めします。内部構造を知るいい機会になるでしょう。
- C++で作業を行う場合にはまず最初に問題なくFreeCADをコンパイルできるかどうかを確認してください。
- 他の開発者にあなたの存在を知らせてください。何よりもまずFreeCADはソーシャルなプロジェクトです。実装の前にはフォーラムで多くのことが話し合われます。あなたのアイデアについて議論し、実際に行う前に何を計画しているのか他の人に教えることはいつだって優れた方法なのです。IRCチャンネルもありますが、全ての開発者と会える場所はフォーラムだけです。