cURL と file_get_contents と Photoshop と

奈川に旅行している間、プログラミングをしていたと書いた。そしてその日記の中でどうしても動かないので組み直すことになったとも。その組み直す件が上のツイートだ。WebAPI といってネットワーク上で利用できるようにした機能群というものがある。これは様々なサービスを提供している会社が用意してくれている。
たとえば Twitter なんかはこの WebAPI があるおかげで、サードパーティのソフトやサーバなんかがツイートをしたり、色んなツイートに関する統計をとったりすることができるのだ。Facebook しかり Google なんかの様々な機能を利用するにはこの WebAPI というのが公開されていて、それを叩くことによってその会社がもつ機能を第三者であるボクらが利用することが出来るのだ。

でね、PHP で WebAPI を叩く(呼び出す)方法ってのはいくつかあって、ボクは手抜きが大好きなので、その中でも file_get_contents という命令を使ってやっている。これで今まで失敗したことはないし、それこそ大手ゲーム会社が提供する WebAPI も叩いてきたし、そのためのライブラリもすでに作ってあった。
ところが今回の仕事では、これがサッパリうまく動かない。
何度見直しても、悪いところが見つけられなかったのだ。

そこでもう一つのアクセス方法、cURL という命令に置き換えてみたら、渡すパラメータは一緒なのに動きましたよっていう話。えー……。そもそもボクの作ったプログラムからデータを受け取る相手サーバにとって、file_get_contents も cURL も大差ないはず。規格に定められてデータを渡しているだけなんだから。
でも、file_get_contents だとうまくいかなくて、cURL だとうまくいく。
何かが違うんだろう。

そしてその違いがわからないまま、WEB のプログラムを続けていいのか、ヲレ?<ヲイ
ちゃんと調べる必要があるよなぁと思いつつ……とりあえずクライアントの要望通りのプログラムは書けた。

ところで Adobe Creative Cloud の 2018 年版がリリースされた。いや 2019 年版か?w
よくわからんが、とにかく全てのアプリが一新された。
ここでボクが求めるのはただ一つ、Windows 版 Photoshop  で HEIF 形式のファイルが読めるかどうかだ。そして読めなかった……orz

これはもう Adobe は故意に対応するつもりがないで間違いないだろう。こまったなぁ……なんで対応させないんだろう??

ドメインの移管手続きとOctober 2018 Update

Windows 10 の大型アップデート『October 2018 Update』がやってきた。ので、何のためらいもなくアップデートした。特に大きなトラブルはなく、会社の開発機はアップデートされた。所が Edge でウェブサイトが見られなくなってしまった。
解決策はツイートの通りなんだが、う~ん、なんなんだ……。

October 2018 Update はいろいろ目玉機能が豊富だ。例えば SMS が PC から送られるようになった(ただし Android のみ)。他にもクリップボード共有機能とか。違うマシン同士でコピー&ペーストができる。確かに便利だ。ボクは ON にしてないけど。

ところがこの October 2018 Update、すぐに公開停止になってしまった。
理由はマイ ドキュメントの中身が削除されてしまうことがあるらしい。へー。
マイ ドキュメントってじつはボクはほとんど使ってない。というのも、昔は使ってたんだけど、色んなアプリがこのマイ ドキュメントに勝手にフォルダを作るようになってしまったため、マイ ドキュメントの中がボクが知らないフォルダ・ファイルで溢れかえり、管理するのが面倒くさくなって、ボク自身が直接使うフォルダとしては使うのをやめたのだ。

だからといって何も入ってないのかというとそういうわけではなく、アプリが作ったファイルは入ったままだ。やばいなーって覗いたら特に消えたファイルはなかった。というわけで会社の開発機は今の所 October 2018 Update を使い続けている。

ボクが事件そのものを最初に知ったのは、こちらのツイート
ただこれでいろいろ合点がいったというボク個人的なこともあった。と言うのもボクはいくつかのエロゲ ブランドのドメインを管理しているんだけど、この事件が明るみになる三週間以上前、ボクが管理しているドメインに対して、知らない人から移管手続きの要請があったのだ。しかも拒否しても再度送られてくるという執拗さ。

あれはなんだったんだろうなぁ、とその時は思っていたのだが、実際にドメインを乗っ取られてしまったメーカーがあったようだ。

しかしドメイン乗っ取ってどうするつもりだったんだろうなぁ……。

山手線と郵便番号

今日は上野に用事があった。桜台まで車で来ていたのだけど、ここの駐車場が 24 時間止めても 700 円なのね。上野の駐車場、高そうだなぁというわけで電車で行った。そしたら山手線の新型車両 E235 に乗れた。
おお、未来の車両だ。
液晶パネルが、一両につき 34 枚もある。すごいなぁ。

電車の電気の消費量って、技術が進むとともに減ってるのかね?
減ってる分、こういうデジタル周りに電気を回せてるとかあるのかな。液晶一つの消費電力は大したことないかも知れないけど、一両で 34 枚ということは一編成で 374 枚にもなるし、WiFi のルータも設置されてるだろうしで、そこそこ電気は食ってそう。

とある仕事で必要になったので作った。郵便番号を入れると住所が返ってくる WebAPI。作るのはとても簡単で、郵便局のサイトでデータが公開されているのだ。こいつを MySQL にぶち込んであとは都道府県、市区町村、町名、番地ごとに返すように PHP を組めば終了。
あっという間にできてしまった(汗

ただ、けっこう複雑な部分があって、番地まで処理しようとすると一筋縄ではいかない。というのもいくつも選択肢が出てきてしまうからだ。データも○○丁目~○○丁目及び○○丁目~○○丁目みたいなデータがひとつ繋がりになっているから、これらを解読して、丁ごとにプルダウン メニューにするように加工したりしないといけない。
もちろんやってないwwww

今、ボクの作ったヤツを呼び出すと、この丁目と番地は分割されてないデータで来てしまったりする(汗)。たとえばこんな感じ。

  • 北海道札幌市中央区以下に掲載がない場合
  • 北海道札幌市南区藤野(400、400-2番地)
  • 北海道札幌市南区藤野(その他)

こんな風に「以下に掲載がない場合」とか「(その他)」とか出ちゃうwww
これらをちゃんと処理しようとしたら、札幌市南区藤野のデータを全て読み込んでその他を割り出したり、400、400-2とかを別々にしてどちらか選べるようにしないといけない。これはけっこう面倒だ。

Windows Server の証明書サービスを復旧させる方法

amatsukami.jp サーバの SSL 通信部分はボクしか使わないため、オレオレ証明書を使っている。この証明書はボクが勝手に発行したので、他人がブラウザで開くとエラーが出る。ボクのためだけの物なので今の所は問題が無い。
でね、この勝手に証明書を発行するシステムが Windows Server にはあるわけだけど、ftp の証明書の期限が切れていたので更新しようとしたら更新ページがエラーで表示されない。なんだこれ?? 何かいじったかなと思っていじって見るも特に設定は問題なさそうに見える。

エラーの内容は、web.config ファイルが見つからない的な内容なのだが……う~ん、あるよなぁと思っていろいろ調べて見ると、本来あった場所の web.config を見に行かずになぜか C:\Windows\System32\certsrv\ っていうフォルダを参照しに行ってた。

なんだこりゃー!?

何かのパッチでそういう設定に変わったのかしら? Windows Server 2016 や 2019 がそうなってるとか?

そんなわけで C:\Windows\System32\certsrv\ に関係するファイルをコピーしたら普通に動くようになった。もー!

もう一つトラブル事。今、仕事で組んでいるシステムがだいぶ完成してきて、色んな人がアクセスするようになった。ボクはサーバ上のファイルを直接編集していたんだけど、それだとボクのミスでうまく動かなかったりすることがある。そんなときに他の人がアクセスしに来ると、動かないぞってことになってしまう。

そこでボクの開発機にウェブサーバを立ち上げて、開発はそこでやることにし、今のサーバはちゃんと動くものだけ更新することにした。そこで自分のマシンに IIS を入れて PHP を入れて MySQL を入れたんだけどこの時、MySQL の Version 8 を入れてみたのね? SQL 文なんてのは共通だし、別に何か問題が起きるなんてことはないだろうと思って、この新しい開発環境に今まで開発してきたソースファイルをぶっ込んだから、いきなり動かないwww

おい。

エラー内容は SQL 文の Syntax エラー。構文エラーだ。単純にスペルミスとかそういう系のミス。えー、そんなバカな、ちゃんと動くソースですぜ? 間違ってるわけないじゃん、と該当する SQL 文とにらめっこするもどこがおかしいのか全く解らない。
そりゃそうだ、元の環境では動くんだもの。

これは MySQL5.6 系と 8 系で何か根本的なことが変わったのか?
とはいえ SQL 文は規格化されていて、MySQL のバージョンが上がったからと言って勝手に変えていいものじゃない。まぁでもダメ元で調べて見たら、MySQL 8 から新しい内部関数が増えていることが解った。そしてその増えた関数の名前が今回のシステムで使っているカラム名と同じだったのだ。
つまり MySQL はそれを命令だと解釈していたため、エラーになっていたのである。
もー!

解決策はこのカラム名を別の名前に変えるか、カラムを必ず ` で囲むか。
まぁ開発中のものなんでカラム名を変えたので良かったのだけど、ボクの中で意味が定着してしまっていて他の単語がすぐにおもいうかばなかったので `で囲んだ。すると問題なく動いた。

下の写真は大戸屋のカツ煮定食。大戸屋ってセントラルキッチンじゃないのでカツ煮もホクホクとイイ感じのが出てくるんだろうなと思って頼んだんだけど、脂でベチョベチョのカツだった。残念。

トリチウムは流せないけど 2GB の動画は流せるの

東電で貯まり続ける汚染水を海に流すことの問題をわかりやすく説明している記事。記事を書いているのは理系の方でなかなか合理的・科学的にまとまっているとおもうので、ぜひ読んでみて欲しい。

他にも三陸沖の水深 200 ~ 300m あたりに海流が循環している部分があって、薄めて流しでもそこで濃縮されてしまうと言う記事も前に見たのだが、もう探しても解らなくなってしまった(汗)。
ボクは原子力推進派の部類に入る人間なのだが、こういういい加減な対応をするのはやはりよろしくないし、責任を取る人も方法も確立していない中でとにかく流すこと前提で進めるのはなんとも情けない限りである。

一応原子力の素晴らしいことも書いておこう。原子力発電所の燃料(いわゆるウランやプルトニウム)補給は三ヶ月に一回で済む。また、原子力空母や原子力潜水艦は 15 年に一回だ。どれほど原子力が夢のエネルギーかは理解して欲しい。
そして我々が宇宙に進出していくには、この原子のエネルギーでさえも足りないのだ。
だから原子力の研究は怠ってはいけないと思うし、さらにその先(太陽をまるごと利用するとか、反物質とか)も研究すべきだと思っているので、原子力推進派なのである。

ところでファイルサイズが 2GB 以上の動画を <video> タグで貼り付けると Firefox がフリーズしていたんだけど、それが直っていた。やっとだよ、ほんと Firefox ってクソだわー(ぁ
まぁそもそも HTML で 2GB 以上の動画を置くことが仕様として許されているのかどうか知らないけどね!<ヲイ
Firefox は RFC 原理主義者なので、動作としては Firefox の方が正しいと言うことは多々ある。ボクはすちゃらかプログラマなので、IEChrome では動くのに Firefox では動かないなんてソースをよく書く。テヘ!

下の写真はお気に入りの揚げ物屋さん『串竹』のロースランチ+メンチカツなんだけど、おまけに脂身だけのとんかつを一切れいただいた。一番右の写真がそれだ。この脂身だけのとんかつ、ボクの同僚が大好きでわざわさ串竹の人に注文して揚げてもらっているものだ。
脂身なんて揚げたら、全部とけて流れてっちゃうんじゃない? とか思っていたけど、実際はこんな感じになる。すごい、たしかにほとんど脂身だ(笑)。

妹にジト目で見つめられたい

 

妹にジト目で見つめられたい。妹なんていないけど。
そうなんだよなぁ、最大の原因は 10 代の妹がいないってことなんだよなぁ(何
妹ジト目全集とか作りたい。色んなシチュエーションでジト目される画集。

でもお兄ちゃんは解ってるんだ、たとえ着替え中に間違って妹の部屋に入ってジト目されても、心の中では「やっとお兄ちゃんが襲いに来てくれた!」って心ではドキドキしてアソコがジュンと来ちゃってるってことを!<病気

もしくは部屋でオナニーしてるところを妹に見つかってジト目とか。でも心の中では、「言ってくれれば、あたしが手伝うのに! 何一人でオナニーしてんの? 信じらんない!」って思ってるから! 間違いないから!<重病

ボクのお気に入りの妹のジト目、置いておきますね。

昨日萌え時計をいじったとき、ついでに画像の品質を上げるために JPEG から PNG にしてみたんだけど、転送量が 3.5 倍くらいに増えた(笑)。一日だいたい 400MiB ~ 500MiB くらいなのが余裕で 1GiB を超えてしまった。
というわけで、また JPEG に戻した。ただ今まで 80 だった圧縮率を 100 にしておいた(数値が高い方がキレイらしい)。でもぱっと見、差はよく解らなかったり……。

知人から教えて貰ったダイナーを巡る TV 番組。アメリカ人ってバカだなーってのがよく解る動画なのだが、やっぱりデブ(ボクの事)はすごいね、どれも美味しそうに見えちゃうwwww ダメすぎるwwwww
シナモンロールに SPAM やらベーコンやら卵やら詰め込んでさらに揚げたりとか、ホットケーキにこれまたベーコンやら卵やらを詰め込んだものとか……スゲー、すごすぎるよ。なんか 2ch のスレでさ、日本に留学に来た体重 200kg のデブが日本でも腹一杯毎日食ってたらどんどん痩せていったっていう話があってさ、アメリカの食い物ってどんだけ高カロリーななのよって思ったんだけど、この番組を見ればなっとくできる。

満北亭

今週は世間ではお盆になるらしい。しかし、コミケ後にお盆というのはなんだか珍しい気がする。そうでもない? バスに乗ろうとしたら、土日ダイヤですっていう張り紙がバス停に貼ってあった。ありゃ、もうバス行っちゃったのかしらと思って時刻表見てみたら、ボクの利用するバス停に関しては土日も平日も変わらなかったので、良しとしよう。

ところで 15 時頃、自宅近くに落雷があり、停電が発生。amatsukami.jp サーバが落ちた。まぁ、仕方ない。二分後には Ping に応答があり、5 分後にはサーバは復活した。ところがこの時メールサーバはちゃんと起動していなかったようで、メール サービスは止まったままになってしまっていた(汗)。
と言っても止まったのは SMTP Gateway と言ってメールを受け付ける入り口の部分だ。amatsukami.jp サーバは何人かにメアドを提供しているんだけど、それの振り分けや spam フィルタのために SMTP Gateway でいったんメールを受けて、それから条件に従って amatsukami.jp 内の各メールサーバに振り分けて配信されるようになっている。

今日は夜、知人家族と飯に出た。とは言えファミレスは深夜料 10% つくし、ラーメンだとメニューの種類が少ないなどなど色々な要望により、南京亭になった(汗)。家族で来るところかはちょっと解らないが、まぁでも味は安定しているし、メニューは豊富だし、いいんじゃなかろうか。ちなみにこの南京亭の隣りに全く同じようなお店満北亭もある(汗)。GSV でみると、こんな感じ

以下、雑談。

ボクの大好きな Heart Bread が比較的近くにできてた。C’s ware に通っていた頃に途中にあったイオンの中だ。懐かしいなぁ……。あのイオン、どこから入るのかサッパリ解らないんだよねwww 国道 298 からだと。こんな感じで高い壁に阻まれているので、いつも前を通り過ぎるだけだったなぁ……。たぶん側道とかから入るんだろう。今度行ってみよう。

アフリカでライオン(というか肉食獣)よりも恐れられているのがカバ、というのは知識としては知ってたんだけど、まさか年間 500 人も死んでるとは思わなかった。すぎなぁ、カバ。