Tag : P_BLOG

1 - 7 of 89

Loggix関連メモ:P_BLOGからLoggixへの移行

私が知る範囲ではP_BLOGからLoggixへ移行する人はあまり多くないように感じるが、とりあえず私用としての覚え書きと、もしかしているかもしれない希少な方のために、メモしておく。

Loggixは基本的にはSQLiteであるが、前のバージョンでPDOドライバへの移行によりMySQLへの対応も果たしたので、P_BLOGで使っていたMySQLデータベースの資産を引き継ぎ、テーブル名を変更することでそのまま使う事が出来る。(理論上は)ただし、いくつか問題がある。

P_BLOGからLoggixへ開発のフォーカスを移行した際に、カテゴリーを廃止し、タグ周りを大幅改善した。また、パスワードをMD5からSHA-1へ移行したため、パスワード保存用のテーブルのテキストサイズが「32から40」になった、などの変更点がある。移行に必要な作業をまとめると、

【phpMyAdminでの作業】

  • テーブル名をP_BLOG用からLoggix用へ変更
  • パスワードを保存するフィールドを「32」から「40」に変更
  • P_BLOGにないフィールドをいくつか追加
  • 逆に、Loggixで使わないフィールドは削除(残してもよい)

し、

【手作業】

  • 従来のカテゴリー機能が無くなりタグ機能の仕様が大幅変更になったためP_BLOGで登録したカテゴリー/タグは使えなくなり、各エントリーごとに再登録する

という感じになる。

手順としては、phpMyAdminを使い、

  • 移行したいP_BLOGのテーブルのコピーを作る。
  • コピーしたテーブルのフィールド名をLoggix用に変更する。
  • Loggix用に新しく追加されたフィールドを追加する。
  • 新しく追加されたテーブルは、Loggix添付のMySQL用のインストールSQLファイルをphpMyAdminで読み込んでインストールする。
  • 新規に空のLoggix用のデータベース(仮に「loggix」とする)を作成し、そこにコピーしたテーブルを移動する。

という感じだ。

以下、P_BLOGとLoggixの、対応するテーブル比較表を作ってみた。赤で示した部分が、廃止したもの、もしくは変更した数値である。あと、ダウンロードファイル用のテーブルなど、フィールド名がいくつか変更になっているテーブルもある。もし必要な方がこのエントリーを見つけたら参考に。

ユーザー用テーブル

P_BLOG(p_blog_user) Loggix (loggix_user)
user_id smallint(3) user_id smallint(3)
user_name varchar(50) user_name varchar(50)
user_pass varchar(32) user_pass varchar(40) 数値変更
× user_nickname varchar(50) 新規追加
user_mail varchar(50) user_mail varchar(50) NOT
user_date datetime user_date datetime
× user_status tinyint(4) 新規追加

セッション用テーブル

P_BLOG(p_session) Loggix (loggix_session)
id varchar(32) id varchar(32)
sess_var text sess_var text
sess_date int(11) sess_date int(11)

コンフィグ用テーブル

P_BLOG(p_config) Loggix (loggix_config)
config_key varchar(64) config_key varchar(64)
config_value mediumtext config_value mediumtext

エントリー用テーブル

P_BLOG(p_blog_log) Loggix (loggix_log)
id int(11) id int(11)
title varchar(100) name varchar(100)
href varchar(255) href varchar(255)
category varchar(50) × (廃止)
comment longtext comment longtext
× excerpt longtext 新規追加
× text_mode tinyint(4) 新規追加
date datetime date datetime
mod timestamp mod timestamp
draft tinyint(4) draft tinyint(4)
ping_uri text ping_uri text
× allow_comments tinyint(4) 新規追加
× allow_pings tinyint(4) 新規追加
× author varchar(50) 新規追加

コメント用テーブル

P_BLOG(p_forum) Loggix (loggix_comment)
id int(8) id int(8)
tid int(8) tid int(8)
parent_key int(8) parent_key int(8)
title varchar(100) title varchar(100)
comment longtext comment longtext
user_name varchar(50) user_name varchar(50)
user_pass varchar(32) user_pass varchar(40) 数値変更
user_mail varchar(50) user_mail varchar(50)
user_uri varchar(100) user_uri varchar(255)
user_ico_num int(8) × (廃止)
color int(8) type int(8) 名称変更
date datetime date datetime
mod timestamp mod timestamp
user_ip varchar(255) user_ip varchar(255)
refer_id int(11) refer_id int(11)
trash int(8) trash int(8)

トラックバック用テーブル

P_BLOG(p_trackback) Loggix (loggix_trackback)
id int(11) id int(11)
blog_id int(11) blog_id int(11)
title varchar(100) title varchar(100)
excerpt varchar(255) excerpt varchar(255)
url varchar(255) url varchar(255)
name varchar(100) name varchar(100)
date datetime date datetime
× trash int(8) 新規追加

ダウンロード用テーブル

P_BLOG(p_bin_data) Loggix (loggix_downloads_data)
id int(11) id int(11)
masterid int(11) masterid int(11)
bindata mediumblob file_data mediumblob 名称変更
P_BLOG(p_bin) Loggix (loggix_downloads_meta)
id int(11) id int(11)
bin_title varchar(100) file_title varchar(100) 名称変更
bintype varchar(60) file_type varchar(60) 名称変更
binname varchar(100) file_name varchar(100) 名称変更
binsize bigint(20) file_size bigint(20) 名称変更
bindate datetime file_date datetime 名称変更
bin_mod timestamp file_mod timestamp 名称変更
× file_hash varchar(50)
bin_category varchar(50) × (廃止)
bincomment longtext file_comment longtext 名称変更
bin_count int(11) file_count int(11) 名称変更
drafttinyint(4) draft tinyint(4)
× author varchar(50) 新規追加

以下は、新しく採用されたタグ用のテーブル。

エントリーのタグ用テーブル

P_BLOG(なし) Loggix (loggix_log_tag)
× id int(11) 新規追加
× tag_name varchar(100) 新規追加
P_BLOG(なし) Loggix (loggix_log_tag_map)
× id int(11) 新規追加
× log_id int(11) 新規追加
× tag_id int(11) 新規追加

ダウンロードのタグ用テーブル

P_BLOG(なし) Loggix (loggix_downloads_tag)
× id int(11) 新規追加
× tag_name varchar(100) 新規追加
P_BLOG(なし) Loggix (loggix_downloads_tag_map)
× id int(11) 新規追加
× log_id int(11) 新規追加
× tag_id int(11) 新規追加

考えられる問題点

  • おそらく、文字化けが発生する

P_BLOGはEUC-JPでデータベースにストックされるため、UTF-8でストックされるLoggixで読むと文字化けが発生する。

対処法:

  • Loggixのコードを全てをEUC-JPにする(非推奨)。
  • phpMyAdminを使いSQLファイルに落とし、テキストエディタやその他の文字コード変換ツールを使ってEUC-JPからUTF-8に保存し直したあと、再度phpMyAdminで読み込んで実行する。

そのまま移行しない方が良いテーブル

  • コンフィグテーブル
  • ユーザーテーブル
  • タグテーブル
  • ファイルダウンローダー関係テーブル

などは新規にLoggix添付のMySQL用のSQLファイルにある該当部分をコピーしてphpAdminのSQL実行画面にコピーして実行し、インストールした方が良い(というか、楽)

また同様に、エントリーやコメントやトラックバックなどと違い、数が少ないと思われるファイルダウンローダーも、新規にインストールしてアップしなおした方がトラブルも少なく、楽。

まとめ

ようは、手間がかかるのだ。

なので、「P_BLOGからLoggixへは簡単に移行出来ますよ。」と大々的に言えない。かといって完全に移行出来ない訳でもないから、「出来ません」とも言えない、という感じである。「エントリーとコメントとトラックバックが引き継げればいいや。」という人のみ、

  • 素直にLoggixに添付されているMySQL用インストールSQLをphpMyAdminで実行
  • 「エントリー」「コメント」「トラックバック」のテーブルを上記の方法で移行

で移行出来ると思われる。

P_BLOG Projectサイト、公開終了。

2003年3月2日から2009年7月31日までの6年3ヶ月に渡って公開したP_BLOG Projectサイトの公開を、昨日2009年7月31日を持って終了した。

P_BLOG Project (Closed)

この場を借りて・・ユーザー、開発協力者の皆さん、ありがとうございました。深く深く感謝します。

終了サイトのサイト名の下のサブタイトルの「This used be ... 〜」は、洋楽好きな人は分かるかもしれないが、Madonnaの、私の好きな曲の歌詞。曲が好きというより歌詞が好きで、このサイト終了のページのHTMLを書いているときにふと浮かび、今の気持ちを表すのにぴったりな曲の歌詞だと思ったので書いてみた。

Web系メモ:Loggixのこと、P_BLOGのこと

LoggixをGitHubに移行

portal shit!さんの最近のエントリー「portal shit! : GitHubにP_BLOGのソースコードをアップロードしました」に誘発されて、LoggixもGitHubでコードを管理することにした。

kaz6120's Loggix at master - GitHub

今のところまだSourceForgeとの併用。SourceForgeも最近リニューアルされて多少は使いやすくなったんだけど、細かいとこの使い方がイマイチよく分からない、ってのが多いなぁってのがこれまでの印象。ファイルをアップするのも分かりにくいインターフェイスで、「あれ?どうやるんだっけ?」とフリーズすること多し。

暫く様子みて、不都合なければGitHubに完全移行しようかと思っている。

SourceForgeからGitHubに移行したい理由はいくつかあるが、SourceForgeを使っていて感じたのは、

  • 雰囲気が「堅い」。インターフェイスもごちゃごちゃ賑やかなのもあって、なんとなく敷居が高い感じがする。
  • よくも悪くも「プロジェクト」色が強い。
  • 正直、使いにくい。

という感じで、GitHubは

  • 雰囲気が「軽い」。
  • 「プロジェクト」色より「コードのシェア」色が強い。
  • デザインがオシャレで、使いやすいインターフェイス。

という感じ。今のところLoggixはアーカイブだけのリリースしかやっていなかったが、これだとどうしても自分が「プロジェクトリーダー」様という感じで、使う方も気軽に改造したり出来ないような気がする。GitHubにすることでもうすこし「ソースコードをシェア」という感じで、軽い感じで今後はやっていきたい。

Loggix Projectもこのまま行くとP_BLOG Projectのように自分で自分の首を絞めてしまう状態になってしまう気がしたので、このままじゃいかんなーと思っていた。これで生活の足しになるような収益を上げている訳じゃないし、誰かから報酬もらってやっているわけでもない。あくまでオープンソースマインドで「こうゆうコード書いたけど、どう?」というノリでやっている事なので、リアルライフをもう少し圧迫しないようにしないといけない、と考えての事である。

P_BLOGもGitHubへ。そして、オフィシャルサイト終了へ

去年告知したように、P_BLOGはオフィシャルリリースを1.2b4で完了した。が、サイトのほうはこれまで通り公開してきた。

最近はサーチエンジンのロボットでのアクセスが殆どを占めているため、そろそろ終焉、ということにする。ソースはLoggixと同じようにGitHubへ移行。

kaz6120's P_BLOG at master - GitHub

ソースの管理を外部サーバーへアウトソーシングするので、多少肩の荷がおりる。

ソース管理をアウトソーシングする理由

やっぱりソフトの管理サーバーが開発者の自宅サーバーではユーザーにとっても不安要素が多いだろう、ってのが第一。これまで何度も落ちてユーザーに迷惑かけたり、管理に労力使って結構な「自分リソース(時間、お金、労力)」を費やした。いろいろと勉強にはなったが、マイナスも多かった。なので、「もういいかなー」と。

自宅サーバーは、個人用ブログ&実験用ということで、利用する事にする。その方が気が楽、という結論に達した。

こんな感じで、今年から徐々にWebから身軽になろうと考えている。

JL-Smiley-ver.9.5.3 (と、スマイリーアイコンへの飽くなき情熱)

前回のエントリー(JAM LOG : JL-Smiley-ver.9.5.2)の続き。

typoやいくつか細かい部分で気に入らないところが見つかったので、修正バージョンのver.9.5.3に差し替えた。

JAM LOG : Downloads : JL-Smiley-ver.9.5.3

旧バージョン(2004年版)との差異

2004年のver.4.7.2と今回のver.9.5.3の差異は、というと、実はブログツール等で使用するのに適度なサイズである18x18pxに圧縮すると普通の人は殆ど気づかないレベルの差になってしまう。このレベルのサイズになると違いを出すのが非常に難しくなるが、ホントに微妙ではあるが、細部の細部にこだわって、ピクセルレベルで隠し味的な味付けを施してある。

jl-smiley-updates.png

今回は、まず最初に2004年版のオリジナルアイコンリソースを紛失してしまっていたため、それを再現するところから始まった。全く同じではないが、98%くらいはほぼ同じに再現出来た。

JLスマイリーアイコンのコンセプト

「ブログシステムやBBS等のWebツールで使う用の、自分が気に入るデザインのスマイリーアイコンが世の中にない!」、というのがそもそもこのスマイリーアイコンをデザインした理由なので、私が気に入るように本能に従ってデザインすれば結局ほとんど同じになる、というのが自分でも驚きとともに面白かった。

で、基本デザインの再現が終わった後は、2009年度版の味付けとして、

  • 微妙な膨らみを表現する立体的な光と陰のレイヤーをかぶせた。
  • 18x18ピクセルに縮小してもジャギーにならないよう、ボーダーの太さを少し工夫をしていくつかの太さのサイズを検証した。
  • ほとんど分からないような隠し味だが、実は「gasp」と「smile」以外は全てのアイコンは左右非対称。これは「人間の顔は左右非対称」という事を背景とし、「極力機械的にならないように」という気持ちを込めている。(このコンセプトは2004年版からあるが、さらにこのコンセプト対応のアイコンを増やした)

光と陰の味付け具合がまた難しい。小さくしてもハッキリ分かるくらいにするとクドい、しつこい味になってしまう。最初のインパクトはいいかもしれないが、ブログツールなどに使うスマイリーアイコンは、人によっては毎日、何度も何度も見るものである。テイストがクドいと、味の濃い料理のように飽きがくるのが早い。出来れば何年後にみても「程よい味」であることが大事だと私は考え、ホントに微妙ではあるが、殆ど分からない、でも分かる人には分かる、くらいの味付けにしてみた。

そのようなコンセプトで作ったのが2009年版である。自分でもかなり気に入っている。横柄に聞こえるかもしれないが、誤解を恐れずに言わせてもらえれば、私は世の中のどのWebツールのスマイリーアイコンよりも世界一気に入っている。今後はもう少しバリエーションを増やしてみたい。

【追記@11:25.a.m】

・・というわけで、バリエーションを増やしてみた。さらに4つのアイコンを加えたバージョンと差し替えた。

関連過去ログ(古い順)

JL-Smiley-ver.9.5.2

P_BLOG時代の2004年頃に作り、Loggixでも同梱しているオリジナルスマイリーアイコン。実はオリジナルリソースのOmni Graffleファイルが紛失していたため、他の解像度が作れなくなっていた。

そこで、最近はアイコン作成モードなので、ガッと、作り直した。作り直しついでに、Webサイトほか、いろいろ汎用的に使えるように512px対応にしてみた。

jl-smiley-coverflow.png

ダウンロードはこちら(↓)。オリジナルリソースのOmni Graffleファイルのほか、PNG、ICNS、TIFFなど、色々なフォーマットをパッケージしてみた。

JAM LOG : Downloads : JL-Smiley-ver.9.5.2

制作

制作には5年前の前回同様、Omni Graffle Proのみ使用。

jl-smiley-making-1.jpg

TIFFでエクスポートした後、Icon Composerで解像度のチェックとアイコンリソースとして書き出し。

jl-smiley-making-2.png

休日で時間が取れたので、かなり集中モードに入ることができ、午前中で一気にゼロから作り上げることが出来た。

それにしてもOmni Graffleのポテンシャルは高い。Omni Graffleでアイコンを作っている人が世の中にどれくらいいるか分からないが、私のアイコン制作スタイルの一つになりそう。

関連過去ログ

【追記】

typoやいくつかの細かい修正点を加えたので、ver.9.5.3に差し替え。

Loggix関連メモ:PDOへの移行開始(その6)

LoggixをMySQLで動かす

PDOドライバーになったということは・・・SQLiteだけでなく他のデータベースへの移植も容易になる、ということ。

というわけで、ふと思い立ったので、MySQL用のテーブルを作成するSQLを書き、phpMyAdminで作成したファイルを読み込んで実行してみた。(↓)

loggix-on-mysql.png

データベースが出来たのであとは接続するだけ。これもLoggix_Core.phpのデータベース接続の部分を1行書き換えるだけ。

・・・で、結論から書くと、「う、動いた!」

もちろん、SQLiteに特化したコードを書いていたのであちこち書き直したり作り直したりしないといけない部分は沢山あるのだが、ログインして新規エントリーを投稿、編集、削除、コメントの投稿、といったBlogとしての基本機能は問題なく動く。

と、いうことは。

P_BLOGからLoggixへの移行が簡単になる、ということ。

まぁ、他のMySQLを使うブログツールからの移植も敷居が若干低くなるが、ちょっと他のツールを解析したり研究したりといった時間はあまりないので(というか「他ブログからの移行ツールを作る」というジャンルが楽しくないのであまり興味と意欲が沸かない・・・)、その辺は今は考えず、自分の作ったツールのフォローアップサポートという面でもこれは嬉しい。

もちろん、P_BLOGのテーブル構造を元にしているとはいえ、若干追加したり削除したりしたフィールドがあるので簡単とはいかないが、phpMyAdminを使える人だったら新しくLoggix用のテーブルをインストールして後はP_BLOGからのデータを移動させたり、あるいはフィールド名をLoggix用に編集すれば上手く行くと思う。(実際自分もローカルでphpMyAdminを使って実験しているが、それほど難しい操作ではない)

ただし、タグのテーブルの構造はP_BLOGとLoggixは全く異なるので、タグ付けは全部初期化される。つまり、再度エントリーをタグ付けする作業が出てしまう。これはどうしようもない。

次のバージョンではSQLite3とPDOへの対応がメインだが、オマケ機能としてphpMyAdminを使ってMySQL用のテーブルをインストール出来るSQLファイルも同梱しようかと考え中。

正式対応は次の次のバージョンくらいか。。不具合チェックもしないといけないし、そう簡単に「対応!」とは言えないので。

サイト更新メモ:P_BLOG、1.2β4をもって最終バージョンと決定。

約2年間新しいバージョンを出していなかったP_BLOG。開店休業状態だったので何らかの告知は必要だろうと思っていたのだが、色々考えているうちに後回しになってきてしまっていた。2006年11月6日が1.2β4リリース日だったので2年には少し足りないが、自分自身の「心の足枷」にもなりつつあったので、思い切って2008年10月13日の今日、告知エントリーを書いた。

「開発終了」という言葉はどうもネガティブなイメージが定着している感があってあまり使いたくなかったので、「最終バージョンとして完成品、ということにしました。公開はサイトを公開する限り、続けます。」という方法をとった。まぁ、要はいままで2年間のスタンスと全く変わらないんだが、ケジメを付けて一区切り入れるという意味では自分の中では勇気がいる事だったし、大きい。

今後のスタンス

これまでトータルで10万超のダウンロードも頂き、バージョン1.2β4もP_BLOGバージョン中歴代2位で、1万件以上ものダウンロードを頂いた。実際に実運用されなくても、1万人以上の人が自分が開発したソフトをダウンロードした、ということは本当に凄いことだと思う。Webの力を痛感する。

ただ、正直言うとここ2年間は開発への情熱が無くなってしまった。自分自身が別ソフトのLoggixに力を入れるようになって、自分のサイトでもそれを使うようになって、それが加速してしまった。(Loggixも、今年公開するまでは秘密裏(?)に2005年頃から3年間も作っていたので、実は自分にとっては新しいものではない。)

そんな感じなので、いつまでサイトを公開し続けるのか、今後のスタンスを問われると難しいところ。ブログツールもCMSツールも今のご時世、フリーでも機能豊富なのがわんさかあるし、設計も流石に古いのでP_BLOGの役目は終わった感があるのだが、未だ現役で使っているユーザーの方々もまだ沢山いるし、自分だけのものじゃなくなってしまっているので。とりあえずフォーラムが機能するうちは公開しておこうと思っている。

1 2 3 4 5 6 次へ