Wikioticsは、外国語を学ぶためのウェブサイトです。
Wikioticsプロジェクトは、言語学習者のための資料について人々が協力できる自由にライセンスされたWikiを作成することを目標に、2008年に設立されました。その一環として、Ductusと呼ばれるWikiエンジンを構築しました。これは、Webブラウザーから編集可能な構造化コンテンツからインタラクティブなWikiページを構築するためのフレームワークを提供しました。 2011年、Wikioticsは、同様のビジョンを持つプロジェクトであり、その開発者がウィキオティックスに大幅に貢献したプロジェクトであるWikibabel Projectに力を合わせました。数年後、私たちはダクトを維持することに興味を失い、他の活動に夢中になりました。
2020年7月の時点で、ウィキオティクスは静的部位に移行されています。 Wikiでしたが、Wikiotics.orgは62人のログインユーザーとIPアドレスのみで識別される匿名のユーザーから寄付を受け取りました。このような貢献は合計4064があり、それぞれがこのリポジトリに対応するコミットがあります(プル要求#4)。このリポジトリは、コミュニティの作業の実用的なアーカイブとして機能するように設計されています。十分な関心を考えると、新しいコンテンツの開発も可能です。
このコンテンツは、適度にはなく、世界の誰でも編集可能なリポジトリから予想されるように、少し混乱しています。それに加えて、レッスンの作業ドラフトを見る唯一の本当の方法は、それをウィキに保存することでした。
最初の一歩は、コンテンツをクリーンアップすることです。役に立たないレッスンとページは削除する必要があります。 (それらを参照したい場合、それらはGITの歴史にとどまります。)まだ役に立たない進行中のレッスンは、 draft = true
でマークされ、したがってメインのWebサイトビルドから隠されます。同じコンテンツの複数のコピーが統合されている場合、クールなウリスが変わらないという原則に長い間従っていたため、エイリアスは古い場所に残っている必要があります。
Wikiに貢献し、GitHubにアカウントを持っている人なら誰でも、このリポジトリの.mailmap
ファイルに適切なエントリを追加するプルリクエストを送信することにより、貢献を請求できます。このエントリは、 [email protected]
人のgithubアカウント(または、username [email protected]
)に関連付けられた電子メールアドレスにマッピングする必要があります。
このように貢献を主張することは、ユーザーのプロファイルが、その人が貢献した任意のページのgithub履歴にリンクされていることを意味します(例の例)。残念ながら、現時点では、寄与グラフでは.mailmap
ファイルを考慮していないようです。これは、スタックオーバーフローに関するレポートと矛盾していますが、GitHubの談話事例に関するこの議論に関連している可能性があります。興味深いことに、fasthub-libreアプリには、貢献グラフが完全に正しく表示されます。
Wikioticsは現在、Hugoで構築された静的サイトです。次の手順により、ローカルで編集できます。
Hugoをインストールします。
Ubuntuでは、これは簡単です
$ sudo snap install hugo --channel=extended
現在、「拡張」バージョンは必要ありませんが、将来の機能を実験することができます。
このリポジトリをクローンします:
$ git clone https://github.com/wikiotics/wikiotics.org.git
Hugo Development Serverを起動し、Webブラウザを提供されたURLに向けます。
$ cd wikiotics.org
$ hugo server
[...]
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop
コンテンツはcontent/
ディレクトリにあります。コンテンツファイルを保存すると、Webブラウザは更新されたコンテンツで自動的に更新する必要があります。
各レッスンは、 +++
と言う行の間に含まれるTOMLフロントマターによって完全に表されます。レッスンを編集するとき、1つのヒントは、フロントマターで一時的にgrid = true
を設定することです。これにより、レッスンの要素がスプレッドシートとして表示されます。これは、レッスンのグローバルビューを取得するのに役立ちます。 draft = true
がグリッドとして表示されるレッスン(つまり、ドラフトが有効になっている場合)。
各レッスンは、教える言語で注釈を付けることができ、該当する場合は、これらの用語の標準的な定義に従って、レッスンの最前線にtarget-languages
やsource-languages
設定することで、学習者が知っている想定言語です。舞台裏では、これらの注釈はヒューゴ分類法の例です。
wikiネーミングスキーム(URL/ルート用)は、#12で議論されています。また、レッスンのためのTOMLデータ構造を文書化し(#9)、改善(#10)する予定です。
現時点で最優先事項は、サイトアーカイブのプレゼンテーションを改善することです。
新しいレッスンメディアを追加するには、現在、Wikiotics Mediaリポジトリとの変更を調整することが含まれます。検討中の2つの選択肢があります:GIT大ファイルストレージとIPF(#15の詳細)。
すべてのコンテンツ(つまり、 content/
ディレクトリ内のすべて、再帰的に)は、Creative Commons Attribution-Sharealike 3.0ライセンスの下でライセンスされています。レッスンメディアの一部(参照されていますが、このリポジトリに含まれていません)は、別の(ただし無料の)Creative Commonsライセンスの下で入手できます。他のすべて(たとえば、すべてのコード)は、GNU General Publicライセンスバージョン3または後のバージョンで入手できます。 {assets,static}/ductus/
の一部のライブラリは、より寛容なライセンスの下で利用できます。
かなり複雑なテクノロジースタックを持っていることに続いて、私たちは物事をシンプルに保ちたいと思っています。 (以前でさえ、私たちはなんとか現代のフロントエンド開発の過剰を避けることができました。)物事をシンプルに保つことは、バスファクターを最大化し、サイトの維持に費やす時間を最小限に抑えるのに役立ちます。可動部品はないか、少ないはずであり、理想的には維持するサーバーはありません。
私たちは、私たちの目標を達成するために、次のテクノロジーの上に構築します。