ビジネス羅針盤 ステップメール

ブラックボックスの不便

2018年11月24日
ソースの改善を行っていた【ビジネス羅針盤 ステップメール】が終了しました!(多分)
自分で作っておきながら、ソースが込み入っていて泣きそうでした。小さなバグを見つけたり、少し仕様変更したことでかなり修正が必要になってしまったり、進んだと思えばそれ以上に後退したり、かなり辛かったです。
ステップメールシステムの改変終了ですで終わったつもりになっていたのにねぇ。更に修正をしていました。
自分の実ユーザーさんにステップメールを送ってみてからリリース予定です。


さて・・・
今日はひどい目(?)に会いました。
待ち合わせがあったので出かけようと車にエンジンをかけたら、ランプというランプが全て点灯、アラーム音が鳴り止まなくなり、ドアをロックすらできなくなってしまいました。
不幸にして電子的にドアを開け閉めする車なのです。従来型のキーもあるのだと思いますが、父の車なので私は持っていないのです。
どうやってもエンジンがかからないどころか、アラームを止めることも、ドアのロックもできないので、電子機器のエラーかと思い、ディーラーに電話をしました。別の方法で待ち合わせに行きたいので、とにかくアラームを止めて、鍵を掛ける方法を教えて欲しかったのです。
電話に出られた方が状況を聞いて「バッテリー上がりの可能性が一番高い」とおっしゃり、契約保険会社のレッカー移動サービスの電話番号を教えてくださいました。

電話して手配を頼み、小一時間ほどで来てくださいました。
「鍵はかかっていますか?」
「掛けられなくて困ってます・・・」
「あ、はい。」
おっしゃる通りバッテリーが原因だったようです。
「1時間くらい動かさずにこのままエンジンを掛けておいてください。」とのことだったので、集合住宅の機会式駐車場なのでドキドキしましたが、そのまま掛けっぱなしにしました。1時間なんてとてもその場にはいられないので、家に上がりました。気になるので15分おきに見にいきましたよ。

ああ、疲れた。
数日間乗っていないという認識だったのですが、よくよく考えるともっと乗っていなかったです。「もっと働かせてくれ!!」と車がストライキしたようです。働かせてくれとストライキするなんて、なんともご奇特な。
あ、でも私も「もっと仕事がしたい。」と言ったら「おかしいんじゃあない?」って言われたことがあったなぁ。

それにしても、ドアに鍵すら掛けられなくなるなんて、ブラックボックス化された製品って本当に怖いわ。アラームを消したり、最低でも自分の意志で鍵くらいは掛けたいものです。
ブラックボックスと言えば、最近のPCとかタブレットなどブラックボックスが多くて、使うのが怖いです。何事もなく使えている間はいいのですけどね。
古くからのPCユーザーは内部をかなり分かって使っているので重宝されているという記事を思い出しました。

パソコン・電気製品

久々にユーザープロファイルの破損でログインできず

2018年11月21日
夜中にレンタルサーバーのOSがバージョンアップさせるので、その後動作確認をとの連絡がありました。やや気になっていたので、今朝は早くに動作確認をする予定でした。

ところが、、、

Windows7にログインしようとしたら『ユーザープロファイルが破損しているのでログインできない』旨のメッセージが・・・
以前はちょこちょこ出ていたのですが、最近は見なくなっていたのに、またですか。
急いで動作確認したいのに、こんな時に限って。マーフィーの法則ですね。

仕方ないので、別のアカウントでログインして修復することにしました。
何度か見舞われたことがあるので、操作方法をどこかに保存しているはずなのですが、久々なのでどこに保存したか忘れてしまいました。

また仕方なくネットを検索して修復しました。
いつも行っているのは
"ユーザー プロファイル サービスによるログオンの処理に失敗しました" エラー メッセージが表示される の 方法 1: ユーザー アカウント プロファイルを修正する
です。
きちんと修復した方がいいのかもしれませんが、面倒だし、いつもこれで問題ないので、ズボラしています。
どんなケースでも修復できるかわかりませんし、何よりレジストリを触るので、この方法で修復する時は要注意です。

そして操作し終わって操作方法をどこに保存したか気が付きました。IEのお気に入りに上のサイトを入れていました。ああ・・・

こうしてWindows7にログインでき、目的だったサイトの動作確認をしました。動いているようです。と言っても全部確認はしていません。全部となると、数日かかるので、それはもういいです。

PayPal毎度ありがとうメール

3ツールをバージョンアップです

2018年11月17日
PayPal毎度ありがとうメール
銀行振込サンクスメール
Webページコントローラー
の3つのツールをバージョンアップしました。

3つとも機能の追加はなく、ソースをより良くするための細かな修正をしました。
一旦終了したはずだったのですが、【ビジネス羅針盤 ステップメール】のソースを触っていて気がついた部分を修正しました。

今日は小さな修正ばかりだったので3つ同日にバージョンアップしましたが、明日から大物【ビジネス羅針盤 ステップメール】に戻ります。

銀行振込サンクスメール

プログラマは同じソースは二度書かない

2018年11月16日
いや、寒いです。たまらなくて電気ストーブを出しました。数日前に夏に使用したエアコンの乾燥をやったばかりなのになぁ。


銀行振込サンクスメール】で心配な部分が出てきたので、ソースのチェックをしました。そして全く別の事に気が付きました。
ほとんど同じソースが2箇所にあるじゃない・・・
ちなみに心配してチェックしていた部分は問題がありませんでした。

微妙に違いますが、関数化できるくらい似ています。
同じパターンが出てくる【ビジネス羅針盤 ステップメール】は関数化していました。

銀行振込サンクスメール】も関数化します。

プログラマは同じやほぼ同じソースを複数箇所に書くことはしません。こういう場合は関数化して、それぞれの箇所から関数を利用するようにします。
そうすることでメンテナンス性が上がります。

今回は全く開発側の問題なので、バージョンアップは次回まとめてにします。まだ修正予定があるので、そんなに遠くない未来に一括でバージョンアップになると思います。

PHPコーディング

PHPの三項演算子

2018年11月14日
プログラミング言語によらず、三項演算子は使ったことがないのですが、使ってみようかと調べてみました。
三項演算子って開発プロジェクトでも使ったことがないんですよね。わかりにくいから使わない方針だったのでしょうか。一度もお目にかかったことがない気がします。

使ったことがない、つまり使う習慣がない、つまりいつまで経ってもパット見てわかるようにならないので、ますます使わない、という循環になっていました。

変数自体が存在しない場合変数を初期化(空文字を代入)、
nullの場合も空文字代入あるいはそのままでもOK、
存在する場合はそのまま、
というコーディング(デフォルト値の設定)をできるだけ短く書きたいのです。

$a = $b ? $b : $c;(あるいはPHP 5.3以上なら $a = $b ?: $c;)
 $bがtrueなら$bを、falseなら$cを$aに代入します。

このソースは$bが存在しない場合Noticeが発生してしまいます。

$bが存在していないケースもある場合、
$a = $b ?? $c;
 $bがtrueなら$bを、存在しないかfalseなら$cを$aに代入します。

これでいけるじゃないと思ったのですが、この三項演算子はPHP7から導入されました。
PHP5では動きません。

自分で使うのならPHP7固定で良いのですが、不特定多数の方が使われるので、できればPHP5でも動くようにしたいです。

ならば
$a = isset($b) ? $b : "";
 $bが存在していてnullでないなら$bを、存在していないかnullなら空文字を$aに代入

ううん、実際には深い配列もあるし、短くないなぁ。
書き直す手間を考えると使うメリットはほとんどないので、使わないことにしました。

変数と配列の宣言を完璧にできれば悩むこともないのですけどね。
できるだけ宣言して、忘れてもPHPは動くので、PHPの試用に少し甘えることにしました。

使わないことにしましたが、勉強になりました。ですが使う機会がなければ次に使おうとした時はきれいに忘れているでしょう。

PHP: 比較演算子 - Manual

PayPalオートメール

発見!

2018年11月13日
片頭痛から復活(多分)です。

バグを見つけたので、立て続けに【PayPalオートメール】のバージョンアップです。

全然違うことでソースを見直していて、バグを見つけました。今まで何度も見ているのに気が付きませんでした。

複数人のプロジェクトなら別の視点があるので気が付きやすいのですが、一人だとどうしても視点が固定されてしまいます。
一旦頭をクリアにして、別視点からソースを眺めるよう努めなくてはいけませんね。

銀行振込サンクスメール

【銀行振込サンクスメール】の通信をSSLへ

2018年11月08日
銀行振込サンクスメール】の通信もSSLに移行しようとして気が付きました。バージョンアップしなくてもツールを販売し始めたときからすでにSSLにしていました。
全く覚えていません。記憶喪失でしょうか(笑)。

しかも【Webページコントローラー】の通信をSSLへで使うのを止めた【cURL】関数でSSLにしていました。orz
ソースのメンテナンス性が少し下がるというだけで、SSLで通信できれば全く問題ありません。

1つ前のバージョンアップのご案内がまだだったので、まとめてご案内です。PHP7への対応もしています。