プログラミングに熱中したりしているうちに2か月くらいドライブしていないことに気付き(→ 前回)、一段落したし疲れたりちょっと飽きたりもしたので、気分転換に行きたくなったのと洗車をしてモチベーションが上がったこともあってw、昨日行った。やっぱり行き先には迷ったのだが、花(あやめ、あじさい)は微妙に時期が合わないし見飽きた感もあるので、地図で偶然目に入った、福島県西郷村の堀川(ほっかわ)ダムに、純粋に走りに行った。僕はダムには興味はないのだが、ドライブの行き先としては丁度いいことが多い。具体的には、道が整備されている(細くない)ことが多く(しかも、楽しい道のこともあるw)、自由に入れ、駐車場があり、トイレがあり、DQNや変な人が少なく、静かで、滅多に混雑せず、無料なことだ。

8時頃出発した。9時頃、道の駅矢板に寄った。概ね快適だったが、いつものように眠くなった。

(前の投稿に追記したが、)出て少しして、ハンドルの下部にキズか汚れがあるのに気付いた。前日の洗車で付けられたようだ。白っぽかったので、工具や金具で擦られたのかと思った。道の駅で濡れ雑巾で拭いたら落ちたので、汚れだったことが分かったのだが、それまでは、運転しながら爪で擦っても取れなかったので、「傷だったら消えないから困るなあ」と結構嫌な気分だった。あの店は最低だ。なぜ、ガソリンスタンド(の整備と店員)はこうもクソなのだろうか?

途中にバカなBMW 1シリーズが居た。前の会社の(その車種の)奴のようにムダな加速をしつつ左右にうろちょろしていた。そんなことをしても必ず信号で追いつくから笑えた。そういう1シリをこの辺りで何度か見たことがあるから同じ人なのか、1シリは**揃いなのか、何かコンプレックスでもあるのか、単に若いだけなのだろうか。

10時頃、那須塩原の7-11に寄った。遅いトラックも居たが、それまではすごく気持ち良かった。隣に停まって居たEN400というアメリカンのバイクが意外に小さくて、好感が持てた。反対側では、都会の切れるビジネスパーソンみたいな雰囲気のショートボブのお姉さまがワンボックスに乗っていた。

地図で見て期待してルートに入れた、那須と白河の間の山道(栃木・福島県道290号)が予想以上に楽しかった。分岐するところが唐突で通過しそうになったが、何とか入れた。道が広くて僕には丁度良かったし、平日のせいか、滅多に車が居なくて存分に楽しめた。いつもはなかなかできないことだが、ギアを小まめに切り替えながら、低目のギアで高目の回転数を維持して走るのが気持ち良かった。あの車のエンジンは意外にストレスなく回るからいい。そして、何度か書いているが、軽い車は制御しやすくて大正解だと思う。

山道は涼しく(でも、エアコンを切るとちょっと暑かった)、鳥(うぐいすだったか)が鳴いていた。ツツジも少し咲いていた。見晴らしがいいところもあった気がするが、運転に熱中していたので一気に走り抜けた。

なお、なおきさんがそうしていると聞いてから、僕も、こうやって走りに集中する時(他に、家でも作業に集中している・はまっている時wなど)は音楽を停めるようにしている(近頃は、「垂れ流すことに意味があるの?」と思いつつあるし、無音の静けさも結構好きだし、脳内での再生もいいと思っている)。

11時頃、到着した。運転に熱中して我慢していたせいでトイレに行きたかったのだが、なぜかトイレの扉に鍵が掛かって居て焦った。開け忘れたのか、事務所の人が巡回中だったせいか(それで、事務所に行っても誰も居なくて頼めなかった)。でも、多用途トイレは開いていたので、ほっとした。

1時間近く散歩した。ここでもうぐいすが鳴いていた。気温は24℃とそれほどでもなかったが、日射しのせいで暑かった。

ダムのオーバーフローの口らしい部分の形がすごかった。上に書いたようにダム自体には興味はないが、こういうものには興味が湧く。全くあり得ないことだが、もし僕にこういうのを作れ(設計しろ)と言われても、途方に暮れて逃亡するだろうw あと、万が一、豪雨で放水している時にに引きこまれたら絶対に助からないと思うと、恐ろしい気がした(高所恐怖症のせいもあるがw)。

そういえば、今流行りらしいダムカードの入った箱(実体は郵便受け)が、なぜか分かりにくいところに置いてあった。「一人一枚」と書かれていたが、放置されている感じだったので、中にカードは入ってなさそうだった。基本は事務所でもらうということなのかな。

散歩をして満足したので、帰ることにした。お腹が空いたので、途中で蕎麦屋に寄ろうと思ったのだが、どうも面倒なので(例: 混雑、煙草、愛想の悪い店員、気難しい店主、マズい)、その手前にあった7-11でおろし蕎麦を食べた。ここは見覚えがあって、前にも昼食にしたところだ(調べたら去年の夏だった)。その時は暑かったが、昨日はそれほどでもなかった。レジは公明党の党首みたいな感じのおじさんだった。店長だろうか?

食べていたら、男子中学生が千円札5枚くらいを握りしめて店に入り、少ししてGoogle Playのカードを手にして出てきた。ちょっと現代の闇を感じたが、今は普通のこと? 昔だったらゲームのカートリッジみたいなものなのかな。そういえば、当時の僕は千円札を3枚くらい握りしめてレコードを買いに行ったっけ。

結構疲れたので、帰路は手軽に高速にした。楽だし快適だった。14時頃、無事帰宅した。往路の半分の1.5時間くらいで帰れた。長時間乗ったせいか なかなか疲れた(起きたらふくらはぎが痛い)が、気持ち良かった。いつものように車は快調だった。そろそろ車検だ。総走行距離は約54500km。

約190km、約6時間
IXY Digital 3000isで撮影

 

(19:46 修正、編集時に欠けた箇所を復活)

  •   0
  •   1

先日亀裂を見付けてもらった、右上の奥歯を治療(今回は切削(と言うのか?)と型取り)してもらった※。削ったら、ひびは1本(一箇所)ではなく、奥歯の、上下逆さにした風呂椅子の脚(あるいは、指輪の石を留める爪)のようになっている部分を挟んでもう1本あった。これまでは歯の間で見えなかったのだろう。あるいは、削る前に「虫歯」と言われた箇所(黒い線になっていた)がこれだったのかも知れない。

※ありがたいことに、前回と同じ、若くてちゃんとした歯科医師だった。

それを見て、その歯の見えないところに深い亀裂がないかと心配になったが、ヒビは誰にでも起こるから、(他の歯にもあるかも知れないし、)隠れていてもすぐには問題にならないと言われた。が、ここについては、下手をすればその「脚」が折れる可能性もあるとこのとだったので、見付けてもらって良かった。それで、その「脚」を削った。

なお、さっき歯を磨いたら、長年気になっていたその歯の辺りのピリピリが起こらなかった。治療直後で一時的に消えているだけかも知れないからぬか喜びは禁物だが、ちょっと(結構)期待できそうだ。

歯科のあと、気が向いたのと、汚れが結構ひどくなって(とは言っても、遠目には綺麗だったw)、乗る時にモティベーションが下がるので、洗車することにした(洗車は延ばして軽くドライブに行こうかとも思っていたが、モティベーションの低下が結構なものだったので洗車にした)。事前に調べて候補にした2箇所のうち、webの案内(作業内容の説明)がちゃんとしているところにした。ただ、長年の経験からそういうのと実際は違う(まず同じことがない)のは分かっていたので、手洗いで料金が手頃なところで決めた。ガソリンスタンドなので何となく心配はあったが、洗車くらいではまず大きな失敗はないと思って行った。(実は、その時点で大きな失敗だったのだがw)

行くと、珍しくセルフでない店で、ポンプ(と言うのか?)の近くに店員が2人居たのだが、邪魔にならないように店の前に停めても誰も来ない。この時点で結構がっかりした。いつものディーラーだったら即座に出て来るのだが・・・ 来ないので、僕が出て歩いて行って頼んだ。どちらもバイトの感じで、片方の男が洗うようだった。バイトだから駄目と決め付ける気はないが、webには(その系列店の)有資格者がやるみたいなことが書いてあったので、「あっ(察し)」だった。まあ、そのバイトが有資格者の可能性はあるし、そもそも「資格」とか言ったってあてにならないから、どうでもいいと割り切って、店内で待っていた。

少しすると、もう片方の女性店員が来て、コーティングを勧められた。「来たな」と思った。6000円だそうだ。そういえば、最初にも、男が「+300円でコーティングできます」とか言っていたが、それはどこへ消え去ったのか。この調子では、仮に6000円のを頼んだら、もっといい(長持ちする?)のがあるとか言って2万円くらいのを勧めて来るのだろう(渡されたパンフにあった)。

僕は、コーティングでは前の車で酷い目に遭った(何も知らなかったので、納車直後に大手チェーン店(「自動後退」とか言われている)で掛けたら、塗装が削れたようで、時間が経ったら表面がザラザラになり、劣化が速かった)し、コーティングなんてたかが知れている※(逆に、塗装に悪いのではないか)と思うし(その証拠に、今のは何もしてないけどまだそれなりに綺麗だ)、やるにしたって、「なんでガソリンスタンドでやる必要があるの?」と思ったので断った。が、どうにもしつこくてなかなか帰らず、3回くらい断ってようやく帰っていった。普通、説明の途中でジェスチャー付きで「いいです。」ってきっぱり言われたら止めるよね??

※コーティングは塗装ではないので、直射日光や雨でなくなってしまうだろう。ガラス質のコーティング(これは一種の塗装ではないか)というのもあるが、本当にちゃんと施工できるのかと思う。いずれにしても、洗車しなければやっぱり汚くなるから僕には同じことだし、そこまでして塗装を「保護」したい気持ちが理解できない。そこそこ綺麗ならいいと思うのだが。

と思いきや、また来た!

今度はエアコンのガスだ。効きが弱くなっていたとか言って、ガスとオイル交換を勧めてきた。「通常は1.3万円が今回は1万円になる」とか言っていた。効きが弱い気はしていたが、それは最初からで、車の構造によると思っていたし(実際、今日の帰路では充分涼しかった)、やるにしたって、やっぱり、「なんでガソリンスタンド(略)?!」と思ったので、断った。が、やっぱりしつこかった。今度も3回くらい断って、彼女の気が済んだら帰っていった。

全くのアフォだと思った。学習能力がないのかノルマが厳しいのか。。。 その時は気付かなかったが、奥に社員とか店長のようなオッサンが居たので、そういう「売り込み活動」をしないと怒られるのかも知れない。今は大変だよね・・・

いずれにしても、こんなにクソな売り込みは久し振りだ。いつもガソリンはセルフだし、ディーラーだって、こっちから「交換した方がいいですかね?」と言っても「まだ大丈夫です」とか言うことすらあるところなので、今回は結構ムカついた。いくら温厚な僕でもwさすがに途中でブチ切れたくなったが、そうしても何もメリットはないし、おもしろくもなくてこっちが疲れるだけなので止めた。手慣れた人は、こういう時に店員を手玉にとってテキトーに弄んで、コーヒーとか出させたりして、でも「じゃあ次に」とか言ってやらず仕舞いにして楽しむのだろうが、さすがにそういう腕はないw せいぜい、ここのネタにするくらいだ。

こういう手口で、ガソリンを入れるだけに来たのにうかつに「無料点検」を頼んでしまって、オイルからタイヤまですべて交換されてとんでもない金額をむしり取られる上客(カモネギ?)が生まれるのだろう。そんなことしているから、よほど酔狂な人以外はセルフに行くようになったのではないかと思うのだが、本人(経営者)は分かってないようだ。まったく馬鹿だ。

洗車は(売り込み込みでw)45分くらいで終わった。予想どおり、洗車料金がwebとは違っていた。約2000円(税抜き)だった。Webでは車種ごとのクラスで料金が書いてあったが、一つ上になっていた。まあ、これも想定内なのでいい。(僕はこういうのも想定していたし、高くなってもたかが知れているから聞かなかったけど、)そもそも、普通は最初に料金を言うよね。そういえば、最後にまた、ガソリンが安くなる会員カードの作成を勧められた。だから、もういいって!!!!

帰路にふとサイドミラーの腕を見たら、わずかに拭き残しがあって少し汚れていたので、がっかりした。Webではちゃんと拭き上げるとか書いてあって、そういうことはなさそうな感じだったが、こちらの過剰な期待だったのか? 僕としては、別に汚くなければいいからいいけど、広告には嘘ありだ。

次に洗車することになったら、もう一つの候補か別のところにしたい。そのもう一つのところは車屋(系列的な名前はあるが、それぞれ独立した店のようだ)で、webがちょっといい加減だったので、今回は止めた。ただ、作業はちゃんとしているかも知れないし、ここまでしつこい売り込みはないと思うから、それだけでもいい。それに、(再び)洗車くらいではまず大きな失敗はないから、仮に駄目でも大丈夫だw あとは、次回ディーラーに行ったら、有料で洗車だけやってくれるか聞いてみたい。それが一番いい。

てな訳で、個人的な感想は以下である。

敢えて言おう、ガソリンスタンド(の売り込み)はカスであると!

 

今思ったが、洗車は客集めの道具なのかも知れないな。45分(標準は25分と書いてあった)も掛けて2000円前後では割に合わないのだろう。だから、何か他にも注文を取らないと損になってしまうと考えるのだろう。だが、そこが浅はかなんだよ! そうやって押し売りして嫌な気分にさせたら、その客はその店にも系列店にももう来ないから、結構な量のガソリンと(もしかしたら)整備作業がなくなるだろう。知り合いにも「あそこはしつこい」とか言われるだろうし、ここにもこうやって「ガソリンスタンドは」などと書かれて同業他社にも影響を及ぼすかも知れないから、長期間とか広い目、全体的に見れば、押し売りの方が割に合わないと思う。大体、何時代の売り方だって話だ。

 

(19:22 わずかに加筆・修正)

 

PS. このしょうもないスタンドは更にやらかしていた。まあ、細かいことだけど、ハンドルの下に汚れを付けていた(ワックスのような灰色だった)。今日(6/4)運転していて気付いて、もしや傷付けられて知らん顔されたのだろうかと思って(昔は良くあった)、雑巾で拭いて落とせた時までは結構嫌な気分だった。作業者が気が付かなかったのだろうが、無料サービスじゃないんだから、洗車に来た客の車を汚さないってのは当たり前ではないのだろうか? そして短時間だって嫌な気分はさせないで欲しい。 (6/4 14:44)

  •   0
  •   0

音楽再生履歴記録・検索システム(仮)を作りながら使っていると、いろいろなアイデアが浮かぶ。作ることや使っている時にバグが出て急いで直すwのには結構疲れているが、アイデアを出すのはおもしろい。そういうものの例を書く。

  • 検索条件のプリセットを登録できるようにする。
    • 固定のプリセットを何個か用意するのでなく、随時自分で登録できるようにする。: 今までは、どういうプリセットが要るか分からないから作るのをずっと先送りにしていたのだが、良く使う条件を登録できるようにすればいいことに気付いた。ただ、パラメータのあるもの(例: 「評価がN以上」)はどうするかとか、考え過ぎると進まないw
  • 曲・アルバム・アーティストの評価方法: 「ある曲(・アルバム・アーティスト)の好き/嫌い加減」をどうやって数値にするか。
    • 曲1: 評価※ × 平均完奏率: 好きなら最後まで聴くし、嫌いな曲は途中で飛ばすので。ちょっと試してみたら、そこそこ合ってそうな感じだった。
    • 曲2: 評価 × 平均完奏率 × 再生回数: 好きなら繰り返し聴くので、上よりいいのかも知れない。
      • → 両者を比較してみたら、今のところ、どちらも大差なかった。
    • アルバムやアーティスト: そのアルバムやアーティストの曲(演奏)で、評価が付いているもの(付いていないものは"0"にせず、除外する)の平均を取ると良さそうだ。それ以外に、最高・最低もおもしろそうだ。
      • ※評価の値は、最初はシンプルに「好き」(1)/「嫌い」(-1)だけにしようと思っていたのだが、DBの設計時に、いろいろ入れられるので「せっかくだから」±5にした(実際には整数なら何でも入る)。結果的には、自分でも「好きだけど『大好き』ではない」みたいな状態が表せて便利なことが分かったし、上のような使い方をするには数値が好都合だった。
  • 嫌いな曲の自動スキップ: Spotifyでリコメンドされて掛かってしまった嫌いな曲を手で飛ばすのが面倒なのだw
    • 評価を元に: Spotifyの「嫌い」を設定するのが面倒だし、付けられない場合もあるので、上記の評価値が悪い曲(演奏)やアーティストは自動で飛ばす(検出したら自動で「次の曲」にする)。ただし、場合によっては聴きたいこともあるから、猶予を持たせたい。でも、そのたびにダイアログを出すのも鬱陶しそうなので、いい手が要る。
    • ブラックリスト (アーティスト、曲、作曲家・・・): 新しいDBを作るのもいいし、曲ごとにそういうフィールド(例: "Hate", "Don't play")を作るのもいい。
    • 悪い評価を付けたら、その場で自動的にスキップする。: (今思い付いた) これは便利そうだ。今は、飛ばす前や後にこのシステムのwebで悪い評価を付けて、なおかつ、Spotifyで「嫌い」が付けられるなら付けるので、二度・三度手間になっている。
  • 音量正規化(再生ゲイン)の補正、タイトルなどの上書き(修正)
    • ミニプレーヤーに入れた、自作の音量正規化処理の結果がイマイチ(例: 音が大き過ぎる)な場合の対処のために、手で調整した音量の補正値を(DBに)記録できるようにして、その値がある時はそれで音量を補正する。
    • タイトルやアーティストや初出年も、自分で修正して(DBに)記録した内容を表示できると便利そうだ(Spotifyが間違っていることがあるので)。ただ、webとかミニプレーヤーにしか出せないので、本当に意味があるのかという気もする。
  • Spotifyからの評価の取り込み
    • Spotifyで「好き」/「嫌い」にした曲を取るAPIはないが、「好き」にした曲は「ライブラリ」(曲一覧が取れる)に自動的に入り、ラジオで好きにした曲はプレイリスト("Liked from radio")に入る。好きでもないのにライブラリに入れることはないので、ライブラリに入っていること= 「好き」として良さそうだ。
    • 随時「好き」を設定するので、この処理は自動で定期的に行わなくてはならないうえに、本システムで付けた評価とうまくマージしなくてはならないのが面倒だ。
  • gmusicbowser(配信でない曲のプレーヤー)との連携・統合
    • 曲の自動登録など、Spotify(のミニプレーヤー)でやりたいこと(今、外部プログラムでやっていること)は技術的には充分に可能だが、トラックID(演奏を一意に識別する記号)をどうするかという問題が大きい。(処理は重いけど)すべての曲の音響指紋を計算してISRCを検索して付けておくのが一番良さそうだが、ISRCのないもの(例: ライブの録音)もあるから、話は単純でない。などと考え過ぎると、やっぱり進まないw
      • → ちょっと試してみたら、AcoustID(音響指紋)とMusicBrainzのサービスを使えば、基本的にはISRCを取れることが分かったのだが、「スパっ」とは行かないことが分かった。AcoustIDが登録されていない演奏はあるし、ひとつのAcoustIDでMusicBrainzのIDが多数出て来るものもあり、更に、前に書いたように、ひとつのMusicBrainzのIDに複数のISRCが登録されていることがあって、容易にISRCを特定できないことが多いのだ(これでは、gmusicbowserで聴いた演奏とSpotifyの演奏がマッチしないことが多いだろう)。まさに「なんだかなぁ」だが、フリーのサービスだから仕方ない。そういう時は、こっちがcontributeしなくてはいけない(のが建前だ)。
  • Evernoteとの連携
    • 実現できそうな案はないが、このシステムに書いたコメントなどをEvernoteに(あるはその逆)転記しないで済むようにしたい。Evernote(Nixnote2)からこっちに飛べるリンク(URI)のようなものを作るといけそうではあるが・・・ → あ、webにならすぐにできるじゃん! → いや、そうじゃない。単純に飛ぶのでは何が書いてあるか分からないから、Evernoteにコメントを埋め込みたいのだ。

Spotifyのミニプレーヤーのプログラムが複雑なうえに、作ってから時間が経ってしまって中身を忘れているので、このシステムを組み込む(「ミニプレーヤーをこのシステムに対応させる」が正しい)のが億劫なのだが、自動スキップや音量正規化の補正は外部プログラムでもできそうなので、手軽に試せそうだ。

アイデアを考えてもすぐに試さずに考えて(「温めて」)いると、アイデアだけでなく実際の使い方も良く考えるので、いい方法(例: 簡単に実現できる)とか更にいいアイデアに繋がるのがおもしろい。すぐに作り出すのもおもしろいけど、無駄になることが結構多いのも興味深い。考えるうちに、「なんだ、これいらないじゃん」と、不要なことに気付く機能すらある(こういう時は手間が省けるので、「マジで」嬉しいw 結局、僕はプログラミング自体やパソコンだの計算機に張り付くのが好きではないのだろう。知らんけど。だって、そもそも画面を注視したりキーボードを叩くことが目的じゃないからね。僕にしてみれば、上に書いたことを「やって」と指示したらすぐにできるものがベストだ)。

そして、このシステムは、最初は「まだ聴いたことのない演奏を手軽にSpotifyで検索する」ために作ろうとしたのだったが、検索機能の充実はそっちのけで自動スキップのようなアイデアに夢中になっていたり、検索にしたって、「嫌いなアーティスト・演奏は出て来ないようにしたい」と思っている(いた)ところを見ると、僕がいかに「嫌いな曲は少しでも聴きたくない!」、わがままな奴かが分かったのも、おもしろいw

 

PS. そもそも、システムの名前をちゃんと決めなくてはと思っているのだが、なかなか付かない(ただ、何も呼び名がないと不便なので、自分では"Tih DB" (Tih= Track info. and history)や"Tih web"などと呼んでいる。: 名前からも分かるように、基本的にはSpotifyを中心としたシステムではない)。ここまで決まらないものは珍しい。それだけ、コンセプトが確定してない、やりたいことが多いってことだろうか。まあ、音楽は奥が深いからね。

PS2. 別の(まじめな?w)意味でのこのシステム作りでの大きな収穫は、DB(SQLite)とJavaScriptに抵抗がなくなったことだ。どちらも全く得意ではなく「ちょっと使える」程度だが、躊躇せず(「重い腰」を上げなくてもいいw)使えるようになった。DBは便利だとすら思って、他にもいろいろ使いたいほどだし、webはJavaScriptを使わないとできないことが多い(正確には、使わなくてもやればできるけど、ページ遷移が生じて鬱陶しくなるし、効率が悪くなってしまう)ので、仕方なく多用している。

PS3. 書こうと思っていたけど書けなかった、Spotifyの検索などのAPIがしょうもない件については別途書きたい。

(20:49 修正・加筆)

  •   0
  •   0

ISRC(International Standard Recording Code)は音楽の演奏(正確には録音)固有の識別記号で、世の中のレコードでもCDでも何でも、同じ録音なら同じ値で示せる。つまり、コンピュータの文字ならUnicode、日本の何か良く分からないシステムwならマイナンバーのようなものだ(どこかに書いてあった)と信じていたのだが、そうではなかったようだ。。。

というのは、今日、何の気なしに(という訳でもなく、別件の確認がてら)、開発中のシステムの再生履歴のページを見ていたら、表面的には何もなかったのだが、デバッグ情報に見慣れないメッセージが出ていたのだ。そして、再生履歴を確認したら、確かに再生したのに履歴に出ていない曲があったのだ。

その直接の原因は、どうも、「変なプレイリスト」を再生したからのようだ。いや、そもそもSpotifyなので、変なものはできないはずなのだが、海外の団体が作ったせいか、含まれている曲(の属性?)が日本には合っていなかったようなのだ。

更に詳しく書くと、そのプレイリストで再生した曲には他の曲同様にISRCが付いているのだが、それでSpotifyを検索しても出て来ないのだ。それではと、その曲の題名やアーティスト名で検索したら、ISRCが異なるものが出て来た。それだけなら、まあ、リマスターとかリミックスの可能性があるのだが、検索の結果はその1曲だけで、出て来なかったISRCの曲は含まれていないのだ。更に、MusicBrainzで検索したら、なんと、その曲には6個ものISRCが付いていた・・・ これって、ある人に6個のマイナンバーが付いていて、しかも、普通に検索しても分からず、それぞれ別の人に見えるのと同じことだ・・・ 破綻してるよ!

ちなみに、問題のプレイリストは"80s Classic Hits"で、曲は、Bon Joviの"You Give Love A Bad Name"(アルバムは"Slippery When Wet", 1986)である。「変な」ISRCはNLF059290010で、Spotifyで一般的らしいのはUSPR39402224だった。もちろん、それぞれSpotifyのIDも違う。Spotifyの検索API(Search for an Item)のwebでも出て来ない。ただ、SpotifyのIDから生成されるURLを指定すればちゃんと表示・再生できるので、日本では不可という訳ではないようだ。そして、MusicBrainzでは同じ曲(演奏)の扱いだ。もちろん、この曲だけでなく、変なのは他にもある(→ PS3)。

まあ、いろいろな可能性はあるだろうが、いろいろな国や地域のレーベルがいい加減なことをして、(その国や地域での)再発なのに新たなISRCを割り当ててしまったのではないか。システムを検討する時に参考にしたビートルズは厳密に管理されているから分からなかったが、普通のバンドではそこまで手が回らないのだろう。それは理解できるが、

全く困る!

これでは、何をもって、「この曲は聴いた」と判定すればいいのだ。曲の題名などでの判定なんて、全くできない。さまざまなバージョン違い(初出、再録、ライブ、リミックス・・・)があるからだ。もちろん、CDの型番なんて更にひどい。

という訳で、ISRCを曲(演奏)のIDに使っている、今作っている音楽再生履歴・評価管理システム(仮)の根幹が揺るいでしまった。実際にはISRC以外もIDとして使えるように考えていたので、全く無意味になった訳ではないが、結構ガクッと来た。

 

PS. まあ、西洋だからってものすごくちゃんとしている訳ではないってことだ(それでも日本よりはマシだと思うがw)。Unicodeだって、実際には妥協の産物のおぞましいもので(それでもJISやSJISやEUC、その混在よりはずっとマシだろう)、前にも書いたが、さまざまな似たような文字がてんこ盛りだ。

PS2. ISRCが駄目だとして、代わりをどうすればいいのか考えても、いい代替は浮かばない。現時点ではMusicBrainzのIDが一番まともだが、使うのは気が進まない。今はいいが、継続性に疑問があるからだ。

(5/29 13:25追記) 以前考えて保留にしているのは、音響指紋というものを使うことだ。簡単に言えば、その名のとおりだw 今はいろいろなプログラムが出ているようなので、計算するのは容易だ。ただ、計算が少し重いので気軽にはできないのと、その値をISRCのように短く表すことができない(MusicBrainzだと、アップロードしたものは短く表せるようだ)のと、公開DBがそれほどない(無料なのはMusicBrainz程度?)のが問題だ。

いずれにしても、なぜかMusicBrainzに依存するみちばかりで、ちょっと躊躇している。

まあ、MusicBrainzのサービスを使わなくても、指紋は演奏の同定だけに使うことにして曲情報はSpotifyやMusicBrainzやDiscogなどから(今は必然的にSpotifyになる)適宜取得するなら、MusicBrainzに依存しなくても行けそうではある。指紋を短くするのは、MD5とかCRCなどでダイジェスト処理すればできるから、(短くしたあとで重複しなければ、)それほど大きな問題ではないかも知れない。

この方法のメリットは、今回の問題のように、同じ曲なのに複数のISRCが振られていても、指紋は一緒になるはずなので、必ず(本当かなあ?)同じ曲だと分かることだ。

なんかいい感じがして来た(でも、今までの経験から、必ずどこかに落とし穴があるんだろう)w

さっそく落とし穴があった。Spotifyのような配信サービスでは、合法的に曲のデータ(ファイル)が取得できないから、自分では指紋が計算できない。サービス提供元が指紋を提供してくれるか、MusicBrainzなどの公開DBでISRCなどを使って検索して取得するしかない。

やっぱりMusicBrainzか・・・

指紋の取得元を特定のサービスに限定しないように作ればいい気もしたが、指紋の計算方式にはいろいろあるから、それは無理そうだ。この場合は指紋をDBに保存せずに、常にサーバから指紋を取得ればいいのかも知れないが、それにも欠点はある。

PS3. 他の「変な曲」は、これが問題に気付いた原因なのだが、ISRCでSpotifyを検索すると曲情報は出てくるが、その内容がおかしいのだ。形式的には正しいのだが、やっぱり元のプレイリストが「変」だったようで、そのプレイリストで再生した時の情報とは異なる曲しか出て来ない。例えば、検索で出て来た曲は、再生した時のものとはSpotifyのアルバムIDやトラックIDが異なっている(そして、普通に検索してもこれらが付いている曲は出て来ない)。そのために、僕の再生履歴DBの曲とマッチしなくて、再生履歴に出なかった。

こういう曲はISRCで検索できるからまだマシで、異なっている情報のうち、再生履歴DBにないもの(例: 曲再生用URL)はDBの内容(例: トラックID)で修復(補完)して表示できるようにした。ただ、DBにない情報は無理なので、例えばジャケット画像は出せず(「何か」出せばいいのなら、検索で出たものを使えばいいが、例えば、その曲が入った別のアルバムが出てしまう可能性もある)、そこが歯抜けになってしまう。

PS4. その後、Spotifyの検索API(Search for an Item)でISRCでの検索がまったくできなくなってしまったので、APIの機能が変わったのか(まだ、ドキュメントではできることになっている)、もともとあった不具合の影響が増大したのかも知れない。 (6/5 7:17) → 結局、この問題(ISRCで曲が検索できない)は、SpotifyのトラックIDで検索することで回避した。つまり、SpotifyのISRCはあてにならない(検索で出ないことがある)ようなので、そもそもSpotifyの曲なのだから、SpotifyのトラックIDで曲を検索すれば何も問題はなかったのだ。灯台下暗しとか、コロンブスの卵とでも言うのだろうか。 (6/5 19:51)

(6/5 7:17 加筆・追記)

  •   0
  •   0

動作確認や修正や暇つぶしにSpotifyの再生履歴記録・検索システム(仮)のページを眺めていたら、なかなかおもしろいことがあった。単にテストのために思い付いて入れたのだと思うが、(ビートルズの)"Sgt. Pepper's"での検索結果を見ていたら、本物以外に数多くのカバーがあった。

それは当然だから驚きもしなかったし、ほとんどは「いかにも『カバーしてみました』」って感じで全然興味が湧かなかったのだが、数が多いのに感心して下まで見ていたら、2作、目をひくものがあった。一つはある意味恐ろしい問題作w、もう一つは感心するくらい良かった。こんなに幅広いとは、さすがビートルズだ。

まず、「問題作」は、大場久美子のカバー(シングル)、"Sgt. Pepper's Lonely Hearts Club Band"(1979?)である。そもそもこの人がこれを歌う意味や理由が不明だったが、「怖いもの見たさ」で聴いてみた。が、あえて書こう、

ひどい・・・ 下手過ぎる。

数秒ではなかったが、(記録によれば)1/3くらいで止めた。もちろん、評価を-5(最低)にした。なんでこれが発売されているのか謎なレベルだ。そういえば、これの入っていたベスト盤の曲目を見て、「あれ? 『狼なんて−』とか、ヒットがあったはずだが・・・」と思ったあとで誤解に気付いたのだが、大場久美子は「コメットさん」ではあったが、石野真子ではなかったのだ(もちろん、浅田美代子でもない)w 石野には大変失礼なことをした。

気を取り直して、次のAndy Timmonsという人のカバーアルバム(ビートルズのと同じ曲目+1)、"Andy Timmons Band Plays Sgt. Pepper"(2011)を聴いてみたらなかなか良かったので、通して聴いた。一つだけ残念な曲("Being for the Benefit of Mr. Kite")※はあったが、それ以外はどれも好意的に聴けて、全体的にはとても良かった。

※残念だった理由は、この曲は大好きな曲なので期待して聴いたら、最初は良かったのに途中から"I want you"になって だらだらしてしまったからだ。本人としてはそうしたかったのだろうが、この曲はきびきび・活発で簡潔なところがいいのに、どろどろしてしまうのはちょっと違うと思った。

そもそも、なぜこれにひかれたのかは分からないが、ジャケットの雰囲気で期待させられたのだと思う。良くあるカバー作は、オリジナルを下手に真似てとてもセンスが悪いのだが、これは全くそうでなく、ストイックに、演奏したいからしたというような雰囲気が出ているところがいい。

石野真子とAndy Timmonsが並ぶ、シュールな再生履歴

※↑ 投稿時に酔っていたのだろうか、「大場久美子」と書くべきところを「石野真子」と書いていた。本当に混同していた証拠だ。申し訳ないので、訂正せずに恥を隠さないことにする。 (5/28 20:04)

という訳で、このシステムの検索機能はまだまだ開発途上ではあるのだが、それでもいろいろ遊べることが分かって「ご満悦」であるw それ以外に、昨夜、やっぱりテストや好奇心で検索結果を見ていたら、今まで聴いたことがないラフマニノフのピアノ協奏曲第3番の演奏(Lukas Vondracekのエリザベートコンクールでの演奏, 2016)が見付かって、早くも本来の用途に役立ったから、改良すれば便利になりそうだ。※

※これを書くのに、その演奏が誰の何だったか調べようとしたのだが、履歴検索はまだ手軽にできなくて(SQLの一部を打ち込むので、気軽に日付で検索するなんてことはできない)ちょっと苦労したけど(日記やDBブラウザを見れば一発だが、意地で使ってみたw)、ちゃんと見付かった。

  •   1
  •   0

SpotifyのRelease Radarで新作を聴いていたら、中に竹内まりやの「ドリーム・オブ・ユー~レモンライムの青い風~」(1979)が入っていた。そういえば、近頃入ったというのを読んだのを思い出した。もちろん曲は懐かしかったが、ジャケットを見て更に懐かしくなった。

竹内まりや "UNIVERSITY STREET" (1979)

テニスのラケット! そして、ファイル(みたいなの)! まさに絵に描いたような女子大生だ。そして、ポニーテールと白いTシャツがいい。(実際に見たことはないが、)昔の都会にはこんな女子大生が大勢居たらしいけど、見事に絶滅したねぇw 呼び方もJDなんて味気もセンスもないものになってしまったな。

 

PS. (典型的な女子大生の写真やイラストを見て)当時から不思議に思っていたのだが、これだけの物しか持たずに済んでいたのだろうか? ファイルみたいなのは教科書数冊のこともあるが、それ以外の教科書や資料やノートや筆記用具は要らないのだろうか。文系の学生は授業が少なくて、そういうのは余り要らなかったのだろうか。あと、スマフォや携帯電話やゲーム機など(それらは当時はラケットだった??)は当時はなかったがw、お金や定期券や、女性なので化粧品などは不要だったのか。今となっては謎が多いw

  •   2
  •   0

Spotifyの再生履歴記録・検索システム(仮)が大分できて来た。まだまだやりたいことは多いし、修正・改良すべき点も多いが、一段落した感じだ。

見た目が前回とほとんど変わらないのが残念だがw、7割くらいはできた気がする。それにしても、いつものことだが、体感で半分を超えると、ぐっと進みが遅くなる。できあがるにつれて、完成度を高めるために作業量が増えるうえに、動き出して使ってみると新しいアイデアが出てくるので、更に作る量が増え、そのために修正や動作確認をする時間も雪だるま式に増えて、逃げ水のようにゴールが遠くなる。

前回からいろいろやったのだが、見た目のインパクトが大きいものは、ボタン一発でSpotifyの再生履歴が出せるようになったことだろうか。前回は再生中の曲だけだったのを、(DBのコマンドを駆使して)指定した数の過去に再生した曲を取れるようにした。もちろんSpotifyアプリでも出るが、自分で作ったので随分使いやすい。例えば、評価やコメントをあとから手軽に書けるようになった。他には、webなので、タイトルなどをコピーできるのは誰にでも便利な気がする(もちろん、web版Spotifyでもできるが)。

あとは「できたてのほやほや」(でまだ満足に動かないw)のアルバム表示機能も便利だ。検索結果や再生履歴に表示されている曲のアルバム名をクリックすると、そのアルバムの曲が全部表示される(書くと当たり前の機能ではあるな・・・)。他に、Spotifyのアルバムやトラックへのリンクも表示するようにしたので、日記やブログで参照するのも楽になりそうだ(ミニプレーヤーでは簡単だが、アプリだとメニューを数段階移動しないと取れない)。

逆に、苦労して作ったけど意外に使っていないのは再生機能だ。これはアプリで充分だ。でも、そのうち検索機能(これが一番の目的なのだ)が充実したら使うかも知れない。

そして、今日の夕方くらいから、聴きながらコメントや評価を付けたり過去の感想を転記したりして、実際に使っている。自画自賛だが、なかなか便利だ。最初はそれらはDB管理アプリ(DB browser)で入力・修正していたのだが、段々使う機会が減って来た。

残件で大きいのは、ミニプレーヤーとの連携(履歴や評価のアイコンを出す、手軽に履歴を付ける、コメントを書くなど)だ。それから検索のプリセットの作成(今は検索条件にSQLの一部を打ち込んでいるのを、いくつかのパターンから選べるようにする)だ。

作っていて思い付いたのは、Spotifyのリコメンドでない、「自分のリコメンド」(履歴と評価をもとに、自分の好きな曲だけを選んで掛ける)を再生できるとおもしろそうだ。そこまでは行かなくても、意味があるかは別として、このシステムに自分のプレイリストが作れる。将来、別のプレーヤー(gmusicbrowser)とも連携できたら、プレーヤーをまたいで再生できるようになるからおもしろそうだ。

もう一つのアイデアは、嫌いな曲が掛かったら即座に自動で飛ばす機能だ。これはすごく便利そうだw ただ、たまに気まぐれで聴きたい時もあるだろうから、ある程度の猶予時間が要りそうだ。

ちなみに、このシステムを作ろうとしたのは、Spotifyをより便利にしたいこともあるが、自分の再生履歴や感想を記録するためでもある。だから、Spotifyに特化したものやべったり依存するものを作ろうとしている訳ではない。仮に将来、Spotify以外のサービスに乗り換えたとしても、記録した情報は使いまわせるようなデータ構造にしている。ただ、そのサービスにSpotifyのようなAPIがないと、再生した曲の自動記録はできないので、そこが結構重要だ。更に、配信サービスを止めたとしても、いいと思った曲の記録は残っているから、買うなどすれば聴くことができる(DBにはそれぞれの曲のISRCを記録しているので、何らかの形で配布されていれば、その演奏が聴けるはずだ)。

なお、最初に少し心配していたDBのサイズだが、文字しか入れていないので当然ではあるが、とても小さい。今までの約2週間で940曲くらい記録したが、DBファイルのサイズは320KB程度なので、1曲あたり300バイト前後だ。ずっとこのペースで行くとすれば、1年では2.5万曲くらいになり、サイズは7MB程度で済みそうだ。なお、定期的にバックアップや"vacuum"というコンパクト化の処理も行うようにした。

 

PS. 作っていて思ったが、Googleなどのサーバには、こんな感じで、各ユーザのいろいろな履歴がまさに山のように記録されていて、すごいAIがあれば(きっとあるんだろう)何でも分かってしまいそうだ。技術的にはおもしろいけど、僕はなるべく"Let me out"させてもらいたいw

でも、それとは関係ないけど、Googleの画面作り(配色・配置)は嫌いじゃないw このシステムのwebページの雰囲気が似ているのは、そのせい(好みの近さ)かも知れない。特に似せているつもりはないが。そして、ダークモードは大嫌いだw

  •   1
  •   0

以前から何回か触れていた、「実質ガッキー」と言われていた椎木という人がYouTubeを始めたというので、当然ながら酷評はあったものの、観てみたら、頭の1秒未満で「駄目」という結論に達した。

僕は、訳もなく世間から叩かれてしまっている人には、判官贔屓のように「頑張って」と言いたくなる(今までに何回かここに書いた。例えば沢尻や昔のJRスキーの人(川口)だ)のだが、彼女には全く起こらない。やっぱりセンスがないんだろうな。だって、例えばイチローのような国際的な有名人でもないのに、頭っから

Hi everyone♡

はないだろう。もう、1秒未満(0.3秒くらい?)で耐えられずに止めて、Thumbs downを押したよ(キャプチャを見ると、実際には数秒は観たようだ)。まあ、可愛い(かどうかは意見が別れるだろうが)かも知れないが、センス・能力がない。これを観てもらいたい相手を分かってない。いい歳して、「なんか作ればきっと受けるだろう」という安易な気持ちで作ったのではないだろうか。いや、逆にとんでもない数のThumbs downをもらいたくて作ったのかも知れない。それなら大成功だ(観た時はUp: 433/Down: 1.1万で、downはすぐに千増えた)。

いずれにしても、まったくもったいない。だから、これを機に忘れるということもなく、これからも冷ややかな目で見つめ続けたいと思う次第だw

 

(5/28 20時 追記) 本当かどうかは分からないが、彼女は留学経験がないとのことだ。なるほどと思った。それが本当なら僕の違和感の一因だと思う。留学は必須でもなんでもないと思うし、そもそも、英語(=道具)が話せること自体に意味も価値もないとも思うけど、彼女は、真に必要で英語を話したことがないし、それ以前に、英語圏(西洋)の考え方を分かっていないのだろう。だから、日本人しか見ないYouTubeなのに英語で挨拶してしまったのだと思う。

とは言え、僕だって留学したことなんてないし、英語圏(西洋)の考え方を分かっているか まったく怪しいものだがw

 

PS. 今思ったのだが、こう思う理由は、この人は確かにしょうもないけど、決して、「CDで握手/投票」なんてクソみたいなことをするほど世の中を舐めていないからかな? あとは、烏合の衆よろしく何百人もで徒党を組むことなどせず、自分で悪評を引き受けているのは、数少ない認められる点だろう。だから「とりあえず観た」のかも知れないw

(5/22 7:34 誤りを修正)

  •   1
  •   0

今回の趣味の開発でいろいろ困っては小技を見付けて対処しているのだが、一番困るのは、JavaScriptからPHPが呼べないことだ。もちろん、外部プログラムも実行できない。実際には、それができたらブラウザが危険極まりないものになってしまう(ActiveXみたいな話?)からあり得ないのだが、僕の今の用途では、是非ともJavaScriptやHTMLからPHPや外部プログラムを実行したいのだ。

というのは、例えば、曲の評価の変更のユーザ操作はHTMLとJavaScriptでしか実現できないが、変更した値をDBに書き込むのはPHPや外部プログラムでしかできない。まあ、JavaScriptでライブラリを探して使ってネット経由でDBのサーバにアクセスすることはできるのかも知れないが、大掛かりになってしまう気がする。

そういう時、基本的には、JavaScriptやHTMLからリンク経由で別の保存処理をするページに飛び、その時に必要なデータを引き渡す。飛び先のページではまずPHPが動くので、渡されたデータをDBに書いたり外部プログラムで処理することができる。

そのデメリットはページが変わってしまうことだ。大昔はそういうのばかりだったが、今はページ遷移なしで処理するのが当たり前になっている。見栄えだけならいいが、ページの状態を全部引き継ぐことができないのが問題だ。今回はSpotifyの検索結果(結構大きくなる)を引き継ぐのが面倒だ(遷移するたびに検索し直すのは無駄だし遅くなる)。検索結果を引き継ぐのは不可能ではないが、中間ファイルが必要になるだろう。

そこでいろいろ考えたら、2つの方法を思い付いた。最初に、HTMLのiframeを使う方法を思い付いた。PHPや外部プログラムの機能が要る処理、例えば、データを保存するのに別のページに飛ぶことは必要だとして、今のページも残せる方法を考えたら、iframeが使えた。以下のような流れになる。

  1. データを保存する契機になる。
  2. iframeにデータを保存するURL(保存するデータも一緒に)を指定して開く。(実際には、このURLは自分自身で、引数を特別なものにして行う処理を指定している)
  3. そのURLでデータの保存が実行されるが、結果はiframeの中に(小さく)表示されるので、今のページはそのまま残る。

JavaScriptを使えば一定時間後にiframeを閉じることができるので、下の方に小さく作っておけば、見た目のインパクトも少ない。

しかし、その後もっと簡単な方法に気付いた。JavaScriptでデータを保存するURLを指定して開くのだ。これなら結果は表示すらされない(しかも、JavaScriptで結果が受け取れる)ので、まったく楽だ。昔流行った"AJAX"らしい(今はfetchという機能がいいようなので、それを使っている)。この場合は以下のような流れになる。

  1. データを保存する契機になる。
  2. fetchでデータを保存するURL(保存するデータも一緒に)を指定して開く。(上と同様に、このURLは自分自身で、引数を特別にしている)
  3. fetchでURLの結果を取得して処理を開始する。

ただ、これの問題点は、URLを開いた(処理を実行した)結果を待てないことだ。fetchの中では結果は受け取れるが、fetchを実行した側はそれが終わるのを待つことができない(fetchが開始したことが分かるだけ)。それで、fetchの中(URLを呼んだ節。スレッドのようなもの)でfetchが終わった後に結果に対応する処理を行う必要がある。JavaScriptが非同期なための手間だ。

でもまあ、この(AJAX)の方法に気付いたおかげでiframeすら不要になって、Spotifyプレーヤーでの再生開始やDBのアクセスなどが手軽に(とは言え、実際のプログラムは、実行したい処理を自分自身(のプログラム)で行うにも関わらず、ネット経由で再び起動されたりするので、ものすごく煩雑だし効率も悪い)できるようになったのはありがたい。

ただ、僕としては、そもそもそういうことをネット経由でやるのが気に入らない。もっと普通のやり方があるのかも知れないので、おいおい考えてみたい。まあ、全部JavaScriptで書く(例: Node.jsとかElectronとか)のがそれなのかも知れないが、非同期は「普通」じゃなくてすごく疲れるからねぇ・・・

  •   0
  •   0

あれから寝食を忘れてw作っていて、web(検索画面)が大分いい感じになって来た。何をどう良くしたのか、思い出したり調べて書くのも面倒だが、僕的には随分良くなった気がするw 例えば、評価を色の濃さで出す(図中の♥マーク)とか、平均「完奏率」(最後まで聞いたか)※を棒グラフで出すとか、前の投稿に書いたが、再生をwebでなくSpotifyプレーヤーでできるようにしたとか、トラック情報を開閉できるようにした辺りだ。まだまだやることは多いが、それなりの形にはなって来た。

※「「完奏率」(最後まで聞いたか)」は少し誤解しやすいので補足すると、1曲を最後まで聴いたら1、途中で止めたり飛ばしたら0なのではなく、止めたり飛ばした時点までの再生時間の曲の長さに対する割合が1回の完奏率になる。例えば、半分まで聴いたら0.5である。その合計を再生回数で割ったものが平均完奏率である。

プログラミングしていると時間がすぐ過ぎるし、おやつはもちろん食事も面倒になるから、ダイエットになるうえにお金も掛からないおから、いいことづくめだね。ってなんか、シャレにならないけど、そんなことはないよw これからの人は、みんなプログラミングするみたいだから、メタボになる心配はなさそうだね。頑張ってね!(爆)

(5/19 20:58) その後もいろいろ改良していたが、見た目は劇的には変わっていない。Spotifyは、どうしてか、クラシック音楽の作曲者をアーティストに入れてしまうので、ミニプレーヤーでしているのと同様に削除するようにしたことと、「現在再生中の曲」をボタン一発で出せるようになった(の中央上部の"Now playing")のと、評価をスライダーで設定する(図の右下)UIができたくらいだ。もちろん、普段はスライダーは出ていないし、評価を変えたらアイコンも色も変わるよ!w (→ デモ動画)。HTML5のおかげで、こういうの(inputのrangeというのを使った)が手軽に(とはいえ、何度も書くが、HTMLだのJavaScriptは苦手なのでそれなりに苦労したがw)できるようになってありがたい。

今は、コメント欄もトラック情報や評価と同様にアイコン(ボタン)を押すと開いて入力できるようにしようとしているのだが、UIの概形ができたところで力尽きているw 不思議なことに、余り考えずに「これだとどうなるかな」とテキトーに作ったら、「こうなったらいいね」っていう感じに入力欄が開いたので、何かの奇跡かと驚いた。 ← イマココ(ってやつ)w

 

体験談的なことを書くと、SQLはなかなか馬鹿にできない。なんというか、僕から見れば「しょうもないもの」だったのだが、ちゃんと完結していて、(苦労して)使いこなすとかなりいろいろな検索や処理ができることが分かった。DBの基本のトランザクション※も便利だ(普通にプログラムを作るのでは実現が面倒なことが、1行でできたりする)。どういう経緯で今の状態に至ったのかは知らないが、最初からこういうのを考えて作ったのならすごいことだ。ただ、今使っているSQLiteはとっつき安いのはすごくいいものの、他に比べて若干機能が少ないので、凝ったことをしようとすると手間が増えるのが残念だ。

※トランザクションの例: 「DB中の、名前がAのデータの要素bの値が10より小さかったら+1して書き込む」が1行でできる。しかも、この1行(SQL)の処理は不可分なので、複数プロセス間での競合が起こらない。あるプロセスが読み出して+1して書き込む前に他のプロセスが+1して書き込んでしまうなんてことがない。

あと、以前も書いた気がするが、PHPとJavaScriptとHTMLを同じファイルに書くので、ちょっと見てもなんだか分からないし、それぞれ文法が違うからいつも間違うし、その部分がいつ実行されるのかを誤解するし、文字列を囲むレベルが増え過ぎて囲むのに使える文字がなくなったりして、かなり厄介だ。一番不便なのは、JavaScriptからPHPの機能が呼べない(あるいは、戻れない)ことだ。よく考えれば当たり前(実際には、PHPからJavaScriptを呼ぶことだってできない)なのだが、そこが何とかできると楽になると思う・・・ だから、サーバ側も全部JavaScriptで書く例が増えているのかも知れない(ここはよく分からない)。

(5/20 22:09) コメントのUIも何とかなった。(→ デモ動画) 昨日から何も変わってないように見えるが、見た目を変えてないから当然だw あとはやっつけ仕事で作った下回りの処理(DBへのアクセス)などをちゃんとしたい。

コメント設定機能も動き出した。

 

それから、SQLiteへのネット経由でのアクセスは、rqliteというもので可能なようなことが分かった。その他に、socatとsqlite3コマンドを使って自分で実現することも考えられた。後者は全く面倒で安定性に欠けるから論外だが、前者は何となく筋が良さそうだった。が、他にも同様に「自分」に通信する必要があるもの(例: Spotifyでの再生)があるので、ひとまず保留にした。

 

(5/17 21:00 完奏率について補足; 5/19 20:58 現状を追記; 5/20 22:09 現状を追記)

  •   0
  •   0