お疲れ様です。

miku.moe 管理人です。

OpenPNEの使い方についてヘルプページを設けたいなと思っていたので,mediawikiで作りました。

リンク:http://help.miku.moe/

以下,インストールメモ。

~> cd ~/home/help.miku.moe/
~/home/help.miku.moe> git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git
Cloning into 'core'...
remote: Counting objects: 32011, done
remote: Finding sources: 100% (1068/1068)
remote: Getting sizes: 100% (177/177)
remote: Compressing objects: 100% (1561451/1561451)
remote: Total 632079 (delta 491), reused 631966 (delta 477)
Receiving objects: 100% (632079/632079), 164.83 MiB | 10.56 MiB/s, done.
Resolving deltas: 100% (538309/538309), done.
Checking connectivity... done.
Checking out files: 100% (7019/7019), done.
~/home/help.miku.moe> cd core
~/home/help.miku.moe/core> git checkout -b REL1_27 origin/REL1_27
Branch REL1_27 set up to track remote branch REL1_27 from origin.
Switched to a new branch 'REL1_27'
~/home/help.miku.moe/core> cd ..
~/home/help.miku.moe> git clone https://gerrit.wikimedia.org/r/p/mediawiki/vendor.git
Cloning into 'vendor'...
remote: Counting objects: 1738, done
remote: Finding sources: 100% (12/12)
remote: Getting sizes: 100% (11/11)
remote: Compressing objects: 100% (201936/201936)
remote: Total 8839 (delta 0), reused 8832 (delta 0)
Receiving objects: 100% (8839/8839), 7.15 MiB | 1.82 MiB/s, done.
Resolving deltas: 100% (6177/6177), done.
Checking connectivity... done.
~/home/help.miku.moe> cd vendor/
~/home/help.miku.moe/vendor> git checkout -b REL1_27 origin/REL1_27
Branch REL1_27 set up to track remote branch REL1_27 from origin.
Switched to a new branch 'REL1_27'
~/home/help.miku.moe/vendor> cd ..
~/home/help.miku.moe> mkdir skins
~/home/help.miku.moe> cd skins
~/home/help.miku.moe/skins> git clone https://github.com/DaSchTour/Cavendish.git
Cloning into 'Cavendish'...
remote: Counting objects: 1044, done.
remote: Total 1044 (delta 0), reused 0 (delta 0), pack-reused 1044
Receiving objects: 100% (1044/1044), 2.60 MiB | 689.00 KiB/s, done.
Resolving deltas: 100% (525/525), done.
Checking connectivity... done.
~/home/help.miku.moe/skins> cd ..
~/home/help.miku.moe> mkdir current
~/home/help.miku.moe> cp -a core/* current/
~/home/help.miku.moe> cp -a vendor current/
~/home/help.miku.moe> cp -a skins/Cavendish current/skins/
~/home/help.miku.moe> cd skins/
~/home/help.miku.moe/skins> git clone https://github.com/wikimedia/mediawiki-skins-MonoBook.git
Cloning into 'mediawiki-skins-MonoBook'...
remote: Counting objects: 624, done.
remote: Total 624 (delta 0), reused 0 (delta 0), pack-reused 624
Receiving objects: 100% (624/624), 178.00 KiB | 166.00 KiB/s, done.
Resolving deltas: 100% (313/313), done.
Checking connectivity... done.
~/home/help.miku.moe/skins> cd ..
~/home/help.miku.moe> cp -a skins/mediawiki-skins-MonoBook current/skins/MonoBook

このあと,Cavendishのスキンがうまく動かなかったので,結局デフォルトスキンをMonoBookになるようにLocalSettings.phpの末尾を以下のように書き換えました。


## Default skin: you can change the default skin. Use the internal symbolic
## names, ie 'vector', 'monobook':
$wgDefaultSkin = "monobook";

# Enabled skins.
# The following skins were automatically enabled:
require_once "$IP/skins/Cavendish/Cavendish.php";


# End of automatically generated settings.
# Add more configuration options below.

wfLoadSkin( 'MonoBook' );

いくつかプラグインをインストールしたのでメモ書き。

ちなみに標準のプラグインを入れるときは,
OpenPNE3まとめwikiリリース情報:バンドルプラグイン から機能を読んで入れるプラグインを選ぶ。
OpenPNE3プラグインリリース情報から最新のリリース内容を確認。(検索ボックスでプラグイン名を検索するとよい。)
プラグインチャンネルサーバに登録されているか確認。(されていれば,コマンドでインストールできる。)
という手順を踏むとよさそうだ。

すべての情報が最新情報とは限らないので,たとえばopDiaryPluginなんかは,①,②だけ見ると1.4.1が最新版かと思うが,③には1.5.1があったりするので注意が必要。(OpenPNE3.8系のスマホ対応版はこれ多いね。)

●opHardeningPlugin

セキュリティ強化のプラグイン。

~/home/miku.moe/OpenPNE> ./symfony opPlugin:install opHardeningPlugin -r 1.0.1
~/home/miku.moe/OpenPNE> ./symfony openpne:migrate --target=opHardeningPlugin

●opAuthSocialPlugin

oneall.com のサービスを使って,twitterやfacebookのアカウントでログインできるようにするためのプラグイン。
別途,oneall.comのアカウント作成と,連携サイトのOAuthアプリの設定も実施。(こちらの設定はそんなに迷うことはない。)

~/home/miku.moe/plugin/opAuthSocialPlugin> git clone https://github.com/tejima/opAuthSocialPlugin.git
~/home/miku.moe/plugin/opAuthSocialPlugin> mv opAuthSocialPlugin opAuthSocialPlugin_0_5_0
~/home/miku.moe/plugin/opAuthSocialPlugin> cp -a opAuthSocialPlugin_0_5_0 ~/home/miku.moe/OpenPNE/plugins/opAuthSocialPlugin
 ~/home/miku.moe/OpenPNE> ./symfony cc

●opCommunityTopicPlugin

先にver 1.0.5.1を入れてみて,そのあとで1.1.2.1の存在に気づいたので,一旦1.0.5.1をuninstallしてから1.1.2.1をinstallしたら,次のSQL文でエラー発生。

SQLSTATE[HY000]: General error: 1005 Can't create table '[db_name].#[sql_connection]' (errno: 121). Failing Query: "ALTER TABLE community_event_image ADD CONSTRAINT community_event_image_post_id_community_event_id FOREIGN KEY (post_id) REFERENCES community_event(id) ON DELETE CASCADE". Failing Query: ALTER TABLE community_event_image ADD CONSTRAINT community_event_image_post_id_community_event_id FOREIGN KEY (post_id) REFERENCES community_event(id) ON DELETE CASCADE

ALTER TABLE [テーブル名] [変更命令] … テーブル変更命令
ADD [列定義] … テーブルに列を追加
CONSTRAINT [名前] [列制約] … 列制約に名前を付ける
FOREIGN KEY ([子カラム名]) REFERENCES 親テーブル名 … 外部キー制約
ON DELETE CASCADE … 親テーブルに対してDELETE命令またはMERGE命令により行削除が行われた際,子テーブルの対応する行も削除するよう指定するオプション

内容的には,community_event_imageテーブルに外部キー制約を設けるSQL文なのだが,error 1005 Can’t create table ( errno: 121 ) というエラーが出ている。
これについてググってみると,

①参照カラムと被参照カラムのデータ型及び長さが同じであること
②作成しようとする外部制約名がデータベース中で一意であること(つまり,他のテーブルで同じ外部制約名を使用していないこと。)

を確認してみると良いということなので調べてみた。

mysql> SHOW CREATE TABLE community_event_image;
| Table                 | Create Table
| community_event_image | CREATE TABLE `community_event_image` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `post_id` int(11) NOT NULL,
  `file_id` int(11) DEFAULT NULL,
  `number` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id_number_idx` (`id`,`number`),
  KEY `post_id_idx` (`post_id`),
  KEY `file_id_idx` (`file_id`),
  CONSTRAINT `community_event_image_file_id_file_id` FOREIGN KEY (`file_id`) REFERENCES `file` (`id`) ON DELETE CASCADE,
  CONSTRAINT `community_event_image_post_id_community_event_id` FOREIGN KEY (`post_id`) REFERENCES `community_event` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

どうやら,すでに列制約が定義されているにもかかわらず,同じものを再定義しようとしてエラーになっている模様。

どうしてこうなったのか。
opCommunityTopicPluginのuninstallでうまくいってないところがあるのかな?
てか,もしかしてPluginってuninstallしたらまずいのか!?

試しに,opCommunityTopicPlugin 1.1.2.1をuninstallしてみたら,テーブルそのまま残ってるみたいですね。これを消してやるというか,opCommunityTopicPluginのインストールを始める前の状態に戻してやればいけるかも?

mysqldumpで取っておいたデータに復元しよう。

~/home/miku.moe/OpenPNE> mysql -u [usr_name] [db_name] -p -N -e 'show tables' | while read table; do mysql -u [usr_name] -p -e "drop table $table" [db_name]; done
~/home/miku.moe/OpenPNE> mysql -u [usr_name] [db_name] -p  < filename.dump

そして,再度 install と migrate … うまくいった!
よかった。

●opAlbumPlugin

アルバムが投稿できるようになります。
イベント参加時の写真共有に使えるので必要ですね。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
 ./symfony opPlugin:install opAlbumPlugin -r 1.0.0.1
 ./symfony openpne:migrate --target=opAlbumPlugin
 

●opDiaryPlugin

日記機能ができます。
これもあったらおもしろい日記を書いてくれる人がいそうなので必要ですね。
冒頭にも記載した通り,ver 1.5.1(スマホ対応版)を入れます。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
 ./symfony opPlugin:install opDiaryPlugin -r 1.5.1
 ./symfony openpne:migrate --target=opDiaryPlugin
 

opAshiatoPlugin

あしあと機能ができます。
せっかくなので入れておきます。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.1.1 opAshiatoPlugin
./symfony openpne:migrate --target=opAshiatoPlugin

●opTimelinePlugin

タイムライン機能を強化するプラグイン。
いいね機能(opLikePlugin)に対応した 1.2.6 が最新バージョンらしい。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.2.6 opTimelinePlugin
./symfony openpne:migrate --target=opTimelinePlugin

●opLikePlugin

いいね機能です。
リプ書くのは面倒だけど反応返したい時に重宝しますから必要ですよね。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.2.4 opLikePlugin
./symfony openpne:migrate --target=opLikePlugin

●opBlogPlugin

外部ブログ機能を付けるプラグイン。
日記機能の代わりに自分のブログを公開したい場合に使えるので必要かなと。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.0.3 opBlogPlugin
./symfony openpne:migrate --target=opBlogPlugin

opAuthMobileUIDPlugin

携帯電話向けの「かんたんログイン」を提供するプラグイン。
スマホになってあまり必要性は感じないけども,試しに入れてみた。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.3.3 opAuthMobileUIDPlugin
./symfony openpne:migrate --target=opAuthMobileUIDPlugin

●opFavoritePlugin

お気に入り機能。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.0.1 opFavoritePlugin
./symfony openpne:migrate --target=opFavoritePlugin

●opRankingPlugin

コミュニティの人数ランキングとか表示できる機能。

mysqldump -u [usr_name] [db_name] -p > ../db_bak/mysql_[db_name].`date "+%Y%m%d_%H%M%S"`.dump
./symfony opPlugin:install -r 1.0.1 opRankingPlugin
./symfony openpne:migrate --target=opRankingPlugin

●メモ

あと,備忘録として,部分SSL化の設定は,なぜかログイン後に無限にhomepageにリダイレクトされるようでうまく機能せず。
勉強不足でうまく解決できなかったので,全体をhttpsにすることにして,部分SSLの設定はfalseにしました。

携帯電話IPアドレス帯域リストの更新

最新データへの更新メモ

 ~> cd ~/home/miku.moe/mobile_ip
 ~/home/miku.moe/mobile_ip> wget --no-check-certificate https://github.com/openpne/mobile_ip_list/raw/20160609/3.8/mobile_ip_address.yml
 ~/home/miku.moe/mobile_ip> cp ./mobile_ip_address.yml ~/home/miku.moe/OpenPNE/lib/config/config/mobile_ip_address.yml
 ~/home/miku.moe/mobile_ip> mv ./mobile_ip_address.yml ~/home/miku.moe/mobile_ip/old/mobile_ip_address.2016-06-09.yml
 

●プラグインの適用状況まとめ

プラグイン名 バージョン
opDiaryPlugin 1.5.1
opAshiatoPlugin 1.1.1
opCommunityTopicPlugin 1.1.2.1
opHardeningPlugin 1.0.1
opFavoritePlugin 1.0.1
opAlbumPlugin 1.0.0.1
opTimelinePlugin 1.2.6
opMessagePlugin 1.0.0
opRankingPlugin 1.0.1
opBlogPlugin 1.0.3
opLikePlugin 1.2.4
opAuthMailAddressPlugin 1.3.5
opAuthMobileUIDPlugin 1.3.3
opAuthSocialPlugin
opSkinBasicPlugin

 

OpenPNE 3.8.21に更新したので備忘録。

まず,既存の OpenPNE のディレクトリは「~/home/miku.moe/OpenPNE」です。

●OpenPNE 3.8.21のダウンロード

作業用ディレクトリを作成して,git cloneでダウンロードします。

~> mkdir ~/home/miku.moe/openpne_3_8_21
~> git clone git://github.com/openpne/OpenPNE3.git
~> cd ~/home/miku.moe/openpne_3_8_21/OpenPNE3
~/home/miku.moe/openpne_3_8_21/OpenPNE3> git checkout OpenPNE-3.8.21

●設定ファイルの移行

作業用ディレクトリ内の設定ファイルと,既存の設定ファイルを diff で比較して,必要に応じて patch を当てます。
database.yml と .htaccess はそのまま引き継ぎです。

~/home/miku.moe/openpne_3_8_21/OpenPNE3> cp config/ProjectConfiguration.class.php.sample config/ProjectConfiguration.class.php
~/home/miku.moe/openpne_3_8_21/OpenPNE3> cp config/OpenPNE.yml.sample config/OpenPNE.yml
~/home/miku.moe/openpne_3_8_21/OpenPNE3> cd ~/home/miku.moe/openpne_3_8_21
~/home/miku.moe/openpne_3_8_21> diff -up ~/home/miku.moe/OpenPNE/config/ProjectConfiguration.class.php ./OpenPNE3/config/ProjectConfiguration.class.php > ./config_ProjectConfiguration.class.php.diff
~/home/miku.moe/openpne_3_8_21> diff -up ~/home/miku.moe/OpenPNE/config/OpenPNE.yml ./OpenPNE3/config/OpenPNE.yml > ./config_OpenPNE.yml.diff
~/home/miku.moe/openpne_3_8_21> emacs ./config_ProjectConfiguration.class.php.diff
※差分確認。config_ProjectConfiguration.class.phpは差分なしだったのでpatch不要だった。
~/home/miku.moe/openpne_3_8_21> emacs ./config_OpenPNE.yml.diff
※差分確認。設定項目自体は変わってないみたいなので,そのままpatch。
~/home/miku.moe/openpne_3_8_21> patch ./OpenPNE3/config/OpenPNE.yml < ./config_OpenPNE.yml.diff
~/home/miku.moe/openpne_3_8_21> cp ~/home/miku.moe/OpenPNE/config/databases.yml ./OpenPNE3/config/databases.yml
~/home/miku.moe/openpne_3_8_21> cp ~/home/miku.moe/OpenPNE/web/.htaccess ./OpenPNE3/web/.htaccess

※今回,まだプラグイン関係は触ってなかったので移行していないです。
移行する場合は,OpenPNE/plugin フォルダのうち新しいものをすべてコピーすれば良いらしい。(cpコマンドに次のオプションを付けてコピーすれば良い。-a で再帰+属性保持,-u で新しいもののみ。やったことはないのでやるときは慎重に。)

●更新作業

まず,メンテナンスページに切り替え。
それから SQLdump。
symfonyコマンドでモデル再構築と更新。
うまくできたら,メンテナンスページを削除して元の場所に戻す。(あと,参考用に最新状態をTARにまとめておく)

~/home/miku.moe/openpne_3_8_21> mv ~/home/miku.moe/OpenPNE ~/home/miku.moe/openpne_3_8_20/OpenPNE; mkdir -p ~/home/miku.moe/OpenPNE/web; cp ~/home/miku.moe/ment/index.htm ~/home/miku.moe/OpenPNE/web/index.htm; cp ~/home/miku.moe/ment/.htaccess ~/home/miku.moe/OpenPNE/web/.htaccess; cp -R ~/home/miku.moe/ment/pmtool ~/home/miku.moe/OpenPNE/web/
~/home/miku.moe/openpne_3_8_21> mysqldump -u (username) (DBname) -p > database_before_migrate_20160923.dump
~/home/miku.moe/openpne_3_8_21> cd ~/home/miku.moe/openpne_3_8_21/OpenPNE3
~/home/miku.moe/openpne_3_8_21/OpenPNE3> ./symfony doctrine:build-model
~/home/miku.moe/openpne_3_8_21/OpenPNE3> ./symfony cc
~/home/miku.moe/openpne_3_8_21/OpenPNE3> ./symfony openpne:migrate
~/home/miku.moe/openpne_3_8_21/OpenPNE3> ./symfony plugin:publish-assets
~/home/miku.moe/openpne_3_8_21/OpenPNE3> cd ~/home/miku.moe
~/home/miku.moe> cd ~/home/miku.moe
~/home/miku.moe> rm -r ~/home/miku.moe/OpenPNE; mv ./openpne_3_8_21/OpenPNE3 ./OpenPNE; cp -R ~/home/miku.moe/ment/pmtool ~/home/miku.moe/OpenPNE/web/
~/home/miku.moe> tar zcf ~/home/miku.moe/openpne_3_8_21/OpenPNE3.tar.gz ./OpenPNE

 

 

miku.moe ドメイン取得時は SHA-1 アルゴリズムにより署名されたSSL証明書が主流だったのですが,コンピューターの進歩に伴いSHA-1アルゴリズムでは暗号強度が不足する事態となり,最近はSHA-2アルゴリズムにより署名されたSSL証明書でないと,各ブラウザで接続の安全性を確認できませんと警告が表示されるようになってきました。

さらに,2017年以降は SHA-1 のSSL証明書は各所で受け付けられなくなっていくということで,miku.moeにおいてもSSL証明書をSHA-2アルゴリズムにより署名されたものに更新しました。

ブラウザから https://miku.moe/ へアクセスすると,緑色の鍵付きマークで接続の安全性が確認できるかと思います。

なお,miku.moe で使用しているSSL証明書は「GoGetSSL」というサイトで取得した Comodo Positive SSL という系統の証明書です。

5年契約で18.25USD(約2000円)という,お安いサービスになっていますが,Comodo自体はSSLの世界シェア№1であって,スマホからもガラケーからもちゃんと認識できる確率が高い証明書ということで,選んでいます。

まぁ安いサービスなんで自分で英語のページから証明書の発行や契約をしないといけないし,中間証明書の設定も必要だし,レンタルサーバー側で提携しているグローバルサインのサービスと違って手厚いサポートは期待できませんが,そこらへんが自分でできる人にはこの価格差は大きいのです。

(グローバルサインだと得られる恩恵が全く変わらないのに年額18000円もしますからね。)

SSL接続の敷居は高めですが,慣れればランニングコストは徹底的に抑えられるものなのです。

(SSL設定用に独自IP買っても年額1000円しませんからね。あ,ちなみにmiku.moeの独自IPは末尾が39なのですよ。)

多人数が接続するサービスを展開するなら,年額1000円足らずでできるので,ログイン画面はSSL接続にしておきたいですよね。

さて,SSL証明書の更新も済んだことだし,これからシルバーウィークを活用して環境を整えていこう。

miku.moe 開発のために、symfonyフレームワークについて勉強中であります。

今日までに、Practical symfonyの1~5日目を読み終わりました。

PHPをほとんど記述しなくてもデータの入力・編集ページを作成したり、URL好きにいじったりできるみたいです。

デバックの仕方も随所に書かれているのでステキな感じです。

ただ、記憶力がないおいらとしては、最終的には逆引きリファレンス的なものがほしいところです。

全部のプラクティスを終えたら、備忘録がてら作るかもしれません。

あと、開発フレームワークの技術習得について参考になりそうなページをまとめはじめました。

また、参考になるものを見つけ次第追記していきます。

来週は11日目のフォーム関連まで読み進めたいですね。

まだまだ時間はかかりそうですが、継続していきますのでよろしくお願いします。

ご無沙汰しております。

本業のほうが多忙だったりしてすっかり放置してしまっていたのですが、最近少し時間を取ることができるようになったので、シルバーウィークを期に開発を再開させていただきます。

とはいっても、まずは開発のために必要な知識を身に付けるということで、OpenPNEのプラグイン開発に必要なsymfonyの知識を付けていきます。

OpenPNE3.4プラグイン開発チュートリアルというサイトを参考にさせていただこうと思いますが、まずは、前知識としてPractical symfonyを読んで自分なりにまとめていきます。

(そうしないとディレクトリ構成からsymfonyコマンドの使い方などがわかりませんので)

ですが、このPractical symfonyは、英語でして私は英語が苦手なのでまとめていくのに少し時間がかかるかもしれません。

以下のURLにまとめて行きます。全部終わればきっとプラグインがちゃんと作れるようになるのだと思います。

http://candycane.miku.moe/projects/mikumoe/wiki/Practical%20symfony

予定では、毎日仕事が終わってから3時間程度の時間を取ることができると思いますので、毎週3章ずつくらいをまとめられたら良いかなぁと思います。

もし、日本語で symfony1.4/Doctrineについての良書がありましたら教えていただけますと幸いです。

こんどは放置にならないようがんばりたいです。ミクさんのためにがんばります。

ご無沙汰しております。

miku.moe作成の進捗をなかなか上げられずにおります。

実は,ここ2週間ほど,プロジェクトマネジメントツールとしてRedmineを導入しようとして四苦八苦しておりました。

しかしながら,結局のところ触ったことのないRuby on railsがわからず,レンタルサーバの古いバージョンのせいかと思ってRuby 2.1.3 & Rails 4.1.6にしたりSubversionも1.8.10に更新したりして,bundle installやらbundle exec rake db:migrate RAILS_ENV=”production”が正常に完了するようにはできたものの,environment.rbの最終行で500 Errorが出ている原因が,httpd/error_logの見れないレンタルサーバ上では確認できないわで挫折してあきらめていました。
頑張れば何とかなるかなぁと思ったんですけどねえ。

で,こんなことに何か月もかけるわけにいかないので,代わりになるものを探してみました。そうしたら,RedmineのPHP版「candycane」というものがありました。
インストール方法に書いてある通りに

git clone git://github.com/yandod/candycane.git
chmod -R 777 app/Config
chmod -R 777 app/files
chmod -R 777 app/tmp
chmod -R 777 app/Plugin

としてアクセス,手順に従いDB設定。設定完了!?

なんということでしょう。ものの数分で設置完了。
ここ数週間の悩みはいったい・・・ orz

 

というわけで,プロジェクトマネジメントツールが設置完了しました!

http://candycane.miku.moe/

このツールで開発要素ごとに進捗管理するとともに,必要な開発ドキュメントをWikiで整備するなど,開発の拠点にしていきたいと思っています。

miku.moe開発協力者への仕事の投げつけもこちらで明確にしていきます。
(午後さん,randさん,えびさんよろしくね)

Wikiによる開発情報まとめを始めとし,必要なプラグイン仕様の決定まで,統合的にcandycaneでやっていく予定ですのでご期待ください。

・・・・・といいながら,わたくし社畜なもので,本日も本業のほうに出勤せねばなりませんので,取り掛かるのは帰宅後とか来週末になるんですけど…。

miku.moe では,初音ミク関連のイベント情報に特化したポータルサイトを目指して開発をすすめていく予定です。

ドメイン取得時に考えたこと

  • miku.moeドメインは事前アンケートで2位にランクインしている
  • 取得しても普通のブログとかに使うのは期待はずれだろう
  • 取得するからには何かしらの方法でミクさんに貢献したい

miku.moeに求められるものは何か

私見だけど・・・

  • 初音ミクのためのサイト(これは間違いない)
  • 曲とか動画の公開はニコニコ動画で十分
  • 画像関係はクリプトンがpiaproがやってる
  • ゲーム情報はwikiでまとめてある
  • 初音ミク関連ニュースサイトも既にある
  • 初音ミク関連のイベント情報は各公式サイト+2ch・Twitterでの交流

↓↓↓↓

  • 初音ミク関連のイベント情報をまとめるサイトがあったら良くない?

 

初音ミクのライブとか,レーシングミクの応援とか,イベントはたくさんありますよね。

どんなイベントがあるのか全部まとまっていたら,もっといろんなイベントに参加しやすいと思いませんか?
ライブ以外にもコンサートがあったり,地域とコラボしたイベントがあったり,ゲームの発売祈願イベントがあったり,イベントの種類も数も増えていると思うので,より幅広い目線で情報収集することで,もっと参加しやすくなるんじゃないかと思います。

あと,イベント参加ってとても楽しいけど,敷居もちょっと高いと思うんですね。
そんなときに気軽に質問ができたり,必要な情報をまとめたりしたサイトを作って,イベント参加への敷居を下げることができたらいいなと思います。

 

じゃあどんなサイトにしようか

  • α-version 運用開始までの目標
    • まとめWIKI感覚で編集できるイベント情報をまとめるページを作りたい。
    • イベント毎に複数スレッド運用可能な掲示板設置
    • フレンド登録でユーザ間交流可能にする
  • β-version 運用開始までの目標
    • イベント中もリアルタイムに写真を共有できるようにする
      • イベントに参加できなかったひとも楽しめる要素
    • イベント主催者→参加者のアンケート調査とかを可能にする
    • イベントの感想を投稿して,TwitterやFacebookと連携できるようにする
    • イベントに対してよかったところ・もっとこうしたらいいと思うところを投票できるようにする
    • イベントの種類ごとに検索できるようにする
      • 関連イベント情報でリンクする
        • Amazonがよくってるこのイベントに参加した人はこんなイベントにも参加しています的なアレ
    • その他いろいろやってみて改善点を改善
  • それ以降の展開
    • イベント開催支援をできるようにする(CGM的な要素!?)
      • スタッフ募集をかけられるようにする
      • イベント開催までの連絡支援体制をつくる
      • スポンサー募集をかけられるようにする
      • グッズ販売の事前予約をできるようにする
      • 継続的にPDCAサイクルを回せる仕組みづくり
    • 主催者ベースでイベントを探せるようにする?
      • あの人が作ったイベントなら参加したい!的な
    • 今はあまり思いつくものないけれど,利用者が増えてくれたらアイデア・要望も増えそうなのでその時にまた考えていこうかと。

イベント情報をまとめる

参加しやすくなる

利用者に感想を書いてもらう

次も行きたい!
次のイベントに参加者の声を活かしたい!

という流れを作れたらうれしい。

実際のサイト構築方針

ちなみにmiku.moeの開発についてですが,以下の要件を満たしていて使いやすそうなOpenPNE3のフレームワークを用いる予定で進めています。

  • 基本的なSNSとしての機能を標準で備えている
  • 独自にガジェット開発するのが容易
  • FacebookやTwitterのアカウントと連携できる
    (ユーザがアカウント作る手間が省ける)
  • 細部までカスタマイズが可能

PHPの基礎的なところとかSQLの基礎的なところはわかるつもりだけど,symfonyは触ったことがないのでスタートには時間がかかるかもしれません。

 

次回の更新予定

次回は,開発に必要な,OpenPNE3の基本情報,symfony1.4 (Doctrine1.2) についての情報元についてざっくりまとめたいと思います。

今後のおおまかな流れとしては,開発環境の情報まとめ→サイトに必要とする機能のまとめ→各ガジェット開発情報って感じでしょうか。

あとは,2ちゃんねる互換BBSでも導入して,(導入しました→miku.moe開発掲示板)身内の開発者との情報交換だとか,新規開発協力者を募集したりとかしてみたいなと思っています。

次回の更新は,来週の日曜日【10/19】を目標にしたいと思います。それではまた。

moeドメインを運営する株式会社インターリンクのプレスにて,miku.moeの落札額も公表されました。

同時に,ネットメディア系サイトで記事になっていました!

Read More →