参加は出来ないですが提案的な物だけ。チーム開発やるなら,とりあえずgitなりSubVersionなりのバージョン管理環境を作りましょう。ServicesやBitbucketなどを使うのが簡単だと思います。githubやVSTSのgitモードで管理を行うとなると,VS2010だと厳しく,VS2015使ってしまった方が楽ができる気もします。Bash使うので,VSから操作できないこと自体はあまり問題にならないのですが,プルリクなどの対応がVS2015であれば行われているため,IDE上である程度確認等ができるという利点があります。オフトピック5人を越える人数で開発かつコード非公開ということでなければ,自前の中央gitリポジトリはお薦めしません。RedMine等という構成になると思いますが,「連携できる」と「一つの物」ではやはり使い勝手が違いますので。参加予定は申し訳ないですが無いのですが。どの共同作業もですが、明確な線引きと目標がないと頓挫します。言語となると、興味の人はプログラミング言語にこだわりがある人が多いかと思いますので、言語仕様で揉める可能性が非常に高いです。ホームページなどを作って、そこの言語仕様やコンパイラ仕様などのドキュメント、ベータ版などの完成目標(時期・規模)、どういう知識が必要か、他の参加者がどこまで口を出して良いのかなどを記載した方良いでしょう。責務だと私は思います。ライセンス・著作権も問題になります。先に決めておきましょう。規模とバグがあまりにも多く、一人で開発を続けるのが厳しくなってきてしまいました。そもそも、その規模で作らなければいけないのかと言う基本的問題が出てきそうな話なので。ソースコードをざっと見ましたが、C言語でコメント無しですね。自前ですか?覚悟として聞きたいんですが、全コメント入れてくれとか、C++で書き換えたいとか、全部書きなおそうとか要望が来ても耐えられそうですか?【補足】ざっと見た感じ規模的には大した言語仕様に見えませんので、共同開発というよりこの破綻したプログラムを設計から見なおして全部書き直せる優秀な人お願いしますって事になりそうな感じです。私が参加したとしたら、このままからコードを直すより作りなおしを選びそうです。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。設計が破綻しているのではないでしょうか。今までどの程度の規模のプロジェクトを完成させたことがありますか?今までの完成させたプロジェクトと、今回のプロジェクトの規模とが、あまりにも差があるならば、優秀なプロジェクトマネージャーも必要になるでしょう。4年前プロフィールを見る限り15歳とあるので、仕様書/設計書なんて作成したことなんてないのかもしれませんが、それがない時点でダメですね。バグがあまりにも多いのは、仕様や設計が固まっていないからですよ(そもそも仕様書/設計書がない時点で他の人にバグとは言えないのですが)。例えるならゴールが霧で隠れているので永遠に走っている状態です。それに耐えられないから、代わりに走ってくれない?と言ってるようなもんです。あなたは他人からそう言われたらどう思いますか。結局どういう仕様で作るのかをまず固めないと、協力を募っても誰も来てくれないと思います・・・(別に仕様は変わってもいいのですが、今の時点で、どういう仕様になっているかが明確になっていないのがダメなのです)参考の質問。プログラマの方に質問です。返信ありがとうございます。募集したいと思います。結局どういう仕様で作るのかをまず固めないと、協力を募っても誰も来てくれないと思います・・・(別に仕様は変わってもいいのですが、今の時点で、どういう仕様になっているかが明確になっていないのがダメなのです)仕様書と設計書、ないとやっぱりダメだったんですね。書き上げて返信させていただきます。言語となると、興味の人はプログラミング言語にこだわりがある人が多いかと思いますので、言語仕様で揉める可能性が非常に高いです。ホームページなどを作って、そこの言語仕様やコンパイラ仕様などのドキュメント、ベータ版などの完成目標(時期・規模)、どういう知識が必要か、他の参加者がどこまで口を出して良いのかなどを記載した方良いでしょう。責務だと私は思います。ライセンス・著作権も問題になります。先に決めておきましょう。目標なども仕様書に書きますが、今決まっている目標は・オブジェクトファイルの生成(アセンブラ)・浮動小数点対応(コンパイラ)・分割コンパイル対応(コンパイラ)・配列対応(コンパイラ)・まともなエラー処理の実装(コンパイラ・アセンブラ)です。参加者が干渉できる範囲は・自分担当のプロジェクト全てです。ライセンスはLGPL(インタプリタ)とGPL(コンパイラ・アセンブラ)にする予定です。チーム開発やるなら,とりあえずgitなりSubVersionなりのバージョン管理環境を作りましょう。ServicesやBitbucketなどを使うのが簡単だと思います。githubで行こうと思います。今までどの程度の規模のプロジェクトを完成させたことがありますか?今までの完成させたプロジェクトと、今回のプロジェクトの規模とが、あまりにも差があるならば、優秀なプロジェクトマネージャーも必要になるでしょう。フラットシェーディングのフルソフトウェア3Dレンダラのプロジェクトは完成しています。2Dのゲーム用ライブラリなども今完成直前です。その他のプロジェクト(10~15個)はスパゲッティ化で放置状態になっています。4年前とりあえずgithubに各プロジェクトのリポジトリ作りましたhttps://github.com/taka-tuosここに出てる3つです。それと、仕様書というかリファレンスというかそれもかけたので添付しておきます。間違ってたら書き直します。4年前えーと、仕様書を軽く読みました。C++は受け付けないということでよろしいですか。VC++の場合C99準拠がアレなんですけどね。開発するプログラミング言語の文法が書いてないですが、非常に大事だと思います。そこを明らかにしないで、ただ手伝いがほしいのですか?そういうのは、奴隷募集としてたいへん嫌われる募集の仕方です。今のところ言語コンセプトが明確じゃないので、議論がそもそもできると思えません。一緒に言語を作りましょう!ってモチベーションの大事なところですよ。あとtakaさんの立ち位置が明確じゃないですね。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。さんが挙げているようなプロジェクト自体への話はしないでおきますが......。えーっと,今までバージョン管理はしてこなかったのでしょうか。内容からしてそれなりの大きさになることが想定される以上,ローカルでのバージョン管理は当然行われていると思っていたのですが。それすらされていないのであれば,自身の開発スタイル全体を見直した方がよいかと思います。Issueとしてあげておきましたが(https://github.com/taka-tuos/casm-GP3200-alpha/issues/1),Git管理下にDebugディレクトリが入っているとかありえないです。statusすれば理由がわかるかと。rmされてもリポジトリのサイズは大きいままなので,作り直した方がよいと思います。必要十分な.gitignore書くのは面倒だと思いますが......。えーっと,今までバージョン管理はしてこなかったのでしょうか。内容からしてそれなりの大きさになることが想定される以上,ローカルでのバージョン管理は当然行われていると思っていたのですが。それすらされていないのであれば,自身の開発スタイル全体を見直した方がよいかと思います。Issueとしてあげておきましたが(https://github.com/taka-tuos/casm-GP3200-alpha/issues/1),Git管理下にDebugディレクトリが入っているとかありえないです。rmされてもリポジトリのサイズは大きいままなので,作り直した方がよいと思います。大きいと周りに支障出そうなのでリポジトリ作り直しておきます。開発するプログラミング言語の文法が書いてないですが、非常に大事だと思います。そこを明らかにしないで、ただ手伝いがほしいのですか?そういうのは、奴隷募集としてたいへん嫌われる募集の仕方です。今のところ言語コンセプトが明確じゃないので、議論がそもそもできると思えません。一緒に言語を作りましょう!ってモチベーションの大事なところですよ。えーと、コンセプトは書いてなかったですが文法は.docxの方にかなり書いてあったかと思います。GP3200+ですね。募集したのは、周りにC言語できる人がいないからですね。インタプリタばかり進んでしまっていてコンパイラやアセンブラが追いつけてないんです。コンパイラとアセンブラがスパゲティプログラムすぎて。完成したら公開するのは決めていましたので、第三者視点の方に参加してもらってより使いやすく、見やすくできたらなと思いまして。あとtakaさんの立ち位置が明確じゃないですね。共同作業化した場合の開発設計のリーダーは出来ないと思いますので何をするんでしょうか?についてはインタプリタチームでメンバーとして開発したいと思っております。リーダーも言語仕様やVMに詳しい人がいればその方にお任せするつもりです。オフトピック実はHDDがSSDで128GBだったんで(ちょっと前まで空き5MB)長いソースのバージョン管理する容量の余裕がなかったんです(^^;今は1TBのサブHDDがあるのでラクラクですが。GP3200+>ですね。意味がわからないです。みてもC言語じゃないです。本当にC言語を実装したいなら大規模過ぎて、やめておいたほうが良いとしか言えません。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。意味がわからないです。みてもC言語じゃないです。本当にC言語を実装したいなら大規模過ぎて、やめておいたほうが良いとしか言えません。えーと、まあ「コンセプト」ということなので。コンセプト≠理想(現実)です。「C言語に慣れた人が仕様を見るだけで使える言語」と言ったほうが良かったですね。意味がわからないです。みてもC言語じゃないです。本当にC言語を実装したいなら大規模過ぎて、やめておいたほうが良いとしか言えません。えーと、まあ「コンセプト」ということなので。コンセプト≠理想(現実)です。「C言語に慣れた人が仕様を見るだけで使える言語」と言ったほうが良かったですね。それを明確に、現状と将来の仕様を掲げられないならOSSリーダーとして問題ありだと思います。ないコンセプトではなく、現状を表していない。将来性も示せていない。いう物を作るかを定義できていないコンセプトは混乱を招くだけで意味が無いと訂正させてもらいます。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。それを明確に、現状と将来の仕様を掲げられないならOSSリーダーとして問題ありだと思います。今後変わっていくのは自然なことだと思いますが、現実性のないコンセプトは書く意味が無いです。ご指摘ありがとうございます。誇張してしまったのは反省しています。今から仕様書の書き直しと募集要件の最終決定をするので決定したら再度返信させていただきます。タイトルも分かりやすく書いていただいていますし、問題ないと思います。管理人さんどうもです。いうわけで募集要項できました。仕様書修正も書き上がりました。(綺麗なソースです)「CC0」にライセンスを変更します。自分的にはメンバ-は「少ないほうがいい」です。(連絡が楽なので)僕は受験生なのでプロジェクトに顔を出さないことがあるかもしれません。参加したい方は添付仕様書内にある連絡先にメールしてください。自分が作ったバグが多くて破綻しかけているソースコードを修正してくれる人とリーダーを募集しておいて自分は受験生なので顔を出さないというのは・・。本当にこんな呼びかけで人が集まるのか不安です・・。4年前これだとパブリックドメインソフトウェア風にして著作権は行使しないので、みなさん好き勝手に使ってくださいね。しないと誰もよってこない気が。それでも厳しそうです。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。自分が作ったバグが多くて破綻しかけているソースコードを修正してくれる人とリーダーを募集しておいて自分は受験生なので顔を出さないというのは・・。これだとパブリックドメインソフトウェア風にして著作権は行使しないので、みなさん好き勝手に使ってくださいね。しないと誰もよってこない気が。それでも厳しそうです。ご意見ありがとうございます。参考にして募集要項編集しておきました。フラットシェーディングのフルソフトウェア3Dレンダラのプロジェクトは完成しています。2Dのゲーム用ライブラリなども今完成直前です。その他のプロジェクト(10~15個)はスパゲッティ化で放置状態になっています。↓これには答えていただけないのですね。何千行とか何人月とかの単位で答えられますか?「みんなでゲームを作ろう」という呼びかけも、滅多に成功しないようです。それと比較しても人が集まるかどうか。焦らずに身の丈に合ったものを作って経験を積むことをお勧めします。最初のうちは小規模でも汚くても良いので完成させることです。僕は今回が共同制作初めてなのでちょっとわからないですね・・・1万行超えるのはないと思いますが。今まで書いたソースは大体200~2000行ぐらいです。誤解されているようなので、書き加えます。パブリックドメインと呼ばれる法的に根拠の無い著作権の扱いはありません。パブリックドメインソフトウェア風にと書いたのは、それに近い別のライセンス形態を選んでね。ライセンスについて勉強されたほうが良いと思います。それとパブリックドメインソフトウェア風に公開する以上は、あれこれ注文を付けると意味がなくなります。完全にオープンにするか、パブリックドメインソフトウェア風をやめて自分が全てコントロールするか、どちらかを選んだほうが良いと思います。最後に、こういう自己都合だけの条件を付けるなら、共同作業はしないほうが良いんじゃないかと思います。ここに意見を言わないなら、なんの共同作業でしょう。みんなの意見をまとめてこそ共同作業じゃないでしょうか?※以下はtakaの「今まで守ってきたこだわり」です。これに異論がある場合は守ってもらわなくていいので直接意見を言うことだけはやめてください。taka(GPstation)・GPUをLuaなどテキスト系にするのはやめてほしいです。taka(casm-gp3200)・スパゲティなのは気にしないでください。メンテナンス性いいので。taka(gpc)・構文解析を簡単にするための記号等(@など)は「なるべく消さない」でほしいです。・yacc,lex等はできれば使わないで欲しいです。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。誤解されているようなので、書き加えます。パブリックドメインと呼ばれる法的に根拠の無い著作権の扱いはありません。パブリックドメインソフトウェア風にと書いたのは、それに近い別のライセンス形態を選んでね。ライセンスについて勉強されたほうが良いと思います。それとパブリックドメインソフトウェア風に公開する以上は、あれこれ注文を付けると意味がなくなります。完全にオープンにするか、パブリックドメインソフトウェア風をやめて自分が全てコントロールするか、どちらかを選んだほうが良いと思います。最後に、こういう自己都合だけの条件を付けるなら、共同作業はしないほうが良いんじゃないかと思います。ここに意見を言わないなら、なんの共同作業でしょう。みんなの意見をまとめてこそ共同作業じゃないでしょうか?※以下はtakaの「今まで守ってきたこだわり」です。これに異論がある場合は守ってもらわなくていいので直接意見を言うことだけはやめてください。taka(GPstation)・GPUをLuaなどテキスト系にするのはやめてほしいです。taka(casm-gp3200)・スパゲティなのは気にしないでください。メンテナンス性いいので。taka(gpc)・構文解析を簡単にするための記号等(@など)は「なるべく消さない」でほしいです。・yacc,lex等はできれば使わないで欲しいです。(コンパイラを作りたい人でyacc,lexを使いたくない人のため)ご指摘ありがとうございます。言うだけ言っておきたかったことだったんですがすこし自己中心的すぎました。その条件は削除しておきます。調べてみましたところ、ライセンスは「CC0」が良さそうな感じでしたのでそれにする予定です。質問の意図が伝わっていないようですね。重要な要因(少なくとも要因の一つ)はプロジェクトの規模だと私は思っています。行数で答えるならばプロジェクトの全ソースファイルの行数の合計です。募集中のプロジェクトが完成した場合の見込みが10000行程度ということでしょうか?それならば、「今までの最大の5倍に挑戦」ということなので少々野心的とは感じますが、1万行というのはさほどの規模ではないので、1人で取り組むなら無理だとは言いません。(プロジェクトの難易度の別の重要な要因は参加する人数です。募集中のプロジェクトの全行数の予想を、それぞれ大体でよいので考えてみてください。重要な要因(少なくとも要因の一つ)はプロジェクトの規模だと私は思っています。行数で答えるならばプロジェクトの全ソースファイルの行数の合計です。いう意味だったんですね。誤解してしまっていました。フラットシェーディングのフルソフトウェア3Dレンダラは、しっかり数えたら全ソースで1734行でした。1000~1800行あたりになるかと思われます。「1万行超えるのはない」っていうのは仕様変更も考えた場合ですね。「規模が大きいので手伝って欲しい」てこと書いてますがここでの「規模」は「行数としての規模」ではなくて「ここからさらに進めるにあたって必要な知識(理解)の規模」です。インタプリタやアセンブラが貧弱過ぎるのに気づいても、わからないなりに機能追加→「どの段階で出たのかわからないバグ」が出る→結局その機能を消すのような事態を招いて「開発が進まずモチベーションだけ下がっていく」状況になっていたので共同制作してくれる方を集めるに至りました。誤解を招くような表現だったので補足でした。4年前それは共同制作ではなく、教えてくれる人が必要だったのでは無いですか?共同制作はどちらかと言うと共に成長するとか、逆に教える立場になるのが一般的かと思います。自分のではなく、他の共同制作に参加するとか、他の人のオープンソースのコードを読んで学ぶ必要があったのではと思います。この仮想マシンやアセンブラやらコンパイラなら、設計の良し悪しとか、どうするば良いかとはこの掲示板などで質問する事もできます。一度にやると多すぎるので、個別のやったほうが良いでしょう。いう本を読めば良いかのアドバイスも出来ると思います(中高生には高すぎる本しか浮かびませんが)。一度白紙に戻して考えなおしてみたほうが良さそうな気がします。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。それは共同制作ではなく、教えてくれる人が必要だったのでは無いですか?共同制作はどちらかと言うと共に成長するとか、逆に教える立場になるのが一般的かと思います。自分のではなく、他の共同制作に参加するとか、他の人のオープンソースのコードを読んで学ぶ必要があったのではと思います。この仮想マシンやアセンブラやらコンパイラなら、設計の良し悪しとか、どうするば良いかとはこの掲示板などで質問する事もできます。一度にやると多すぎるので、個別のやったほうが良いでしょう。いう本を読めば良いかのアドバイスも出来ると思います(中高生には高すぎる本しか浮かびませんが)。一度白紙に戻して考えなおしてみたほうが良さそうな気がします。言われてみればそうですね。考えてからトピック立てるべきでした。返信くれた方々、ありがとうございました。詰まったところがあれば個別でトピック立てさせていただきます。4年前そのほうが良さそうです。・スパゲティなのは気にしないでください。メンテナンス性いいので。書いてましたが、バグが多かったり、拡張性に乏しかったり、他に人が読みづらかったり、設計が不十分だったりでメンテンナンス性が高いとは思えません。根本的なところは、そこをまず直すことじゃないでしょうか。方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。・スパゲティなのは気にしないでください。メンテナンス性いいので。書いてましたが、バグが多かったり、拡張性に乏しかったり、他に人が読みづらかったり、設計が不十分だったりでメンテンナンス性が高いとは思えません。根本的なところは、そこをまず直すことじゃないでしょうか。そもそも、リファクタリングしてますか?アドバイスありがとうございます。機能追加に長時間かかる)までやらないんです。薄い入門本(ビジュアルラーニングC言語入門)+独学だけでここまで来てしまったので書くコードは8割方スパゲティなんです。「整理したらバグ出るから」っていう理由でしないことが多々です。「リファクタリングしたことがほとんどない」んです。これまで人にソースを読まれることもありませんでしたし。自分のやり方を見直す必要ありですね。コード整理&設計見直しやってみます。ミクプラは自由にリンクできます。