ドコモ新料金プランで本当に4割安くなるのか計算してみる。

6/1よりドコモの新料金プラン「ギガホ」「ギガホライト」が開始する。
某官房長官の4割下げる余地あり発言を発端に、各携帯キャリアの動きが活発になり、ドコモも例外なく2019年6月より導入する。

タイトル通り新プランへ移行すべきかどうか検討してみた。
なお、「ギガホ」「ギガホライト」は通話・通信料金と端末料金を分離する新しいプラン。各種プランの詳細な情報は様々なウェブサイトに掲載されているので割愛する。

現在契約しているプランについて

2019年5月時点、私の契約プランは以下のとおりである。

d払い使用等、支払額が前後するので純粋に携帯料金のみ抽出した金額と見てもらいたい。 また携帯端末を新規購入もしくは機種変更時、一括購入するか分割購入かにより、毎月の支払額は当然変化する。私は一括購入派なので、通話・通信料金から月々サポート分が2年間差し引かれる形式となる。

2019年5月末にて2年が経過する。そのため月々サポートは来月から適用されなくなる。つまり、来月から請求額は税込8534円になるはずだ。これが本来の通信料金となる。

次に「ギガホ」「ギガホライト」プランを選択する上で、現在の利用形態をリストアップしてみる。

  • 毎月のデータ通信使用量は平均2~3GB。
  • 自宅にはWifi完備、またはdocomo wifiを利用できる。
  • 利用形態は、ブラウジング、スケジューリング(リマインダー)、メール、メモ等テキスト処理、写真、動画撮影、クラウドデータ。
  • ゲームしない、動画見ない、ストリーミング配信を使用しない。
  • 通話もそんなに利用しない、または無料通話分でカバーできる、もしくは通話アプリを活用する。
  • テザリングを使用する

以上のことから、次の料金帯が導かれる。

まず毎月30GBも使うシーンが個人的に見当たらなかったため、とりあえず「ギガホライト」プランに決定。将来的にテザリングや通話アプリにって通信料が増えることも想定されるが、その時に「ギガホ」へ移行を考えればよい。通話オプションは切替できるらしいのでとりあえず安い方に設定。毎月40分以上も通話する人ってリア獣かノマドワーカーかフリーランスぐらいだろ?(決めつけは良くない)通話なんて今のご時世オマケみたいなものです。通信だけでほぼカバー可能なのである。
結果、通話・通信料金のみに着目すると、2~3割程度支払金額が減ることがわかる。そして4割下がる条件はかなり限定的になることもわかる。スマートフォンは随時通信しているので、適切な設定を行った上でwifiを活用することでデータ通信を切り詰めないとまず1GB以内に収めることはまず難しい。

繰り返しになるけど、通信料金のみならば、2~3割の支払額減少を見込める。ただし、これに端末料金を上乗せかつハイエンド端末(8万円以上の機種)を購入した場合、2年間の負担額は相殺どころか増加に転じる。将来どうなるかわからないが、現状端末費用は定価販売になり、「月々サポート」等の割引は原則受けられなくなる。ハイエンド端末に限り、「36か月分割払いで2年目に端末返却してくれたら12か月分免除するから新しい端末買ってね!」プログラムが始まるようだが。

スマートフォンの性能は、すでに普段使いならば十分な性能を有している。キャリア各社は毎年ハイエンド機種しか販売してこなかった。ここ1~2年でミドルエンド、ローエンド、型落ち端末、フリースマートフォンが増え始めたため、状況は変わりつつある。

総評として、通信料金は下がっているけど、その恩恵を得られる人はそんなにいないように感じた。使用形態にもよるが、私のように運よく「月々サポート」終了時期に新プラン導入するならば効果はあるだろう。また長年端末を使い、wifiを駆使して通信量を抑えたならばメリットがあると感じた。でもそれは利用形態に制限をかけることになり自由に使えないことを意味する。
そして分割払いしているひとや 「月々サポート」 を受けている人が新プランへ移行すれば間違いなく運用コストが上がる。

ただねぇ・・・

ドコモユーザー的に0点だよ!確実に4割下がってねぇから。

だってあのドコモだよ。期待するだけ時間の無駄だよ。

長年ドコモで契約して端末も購入してきたけど、そもそも通信と端末代金は別物と認識してきた。「実質負担金」という言葉にも踊らされていなかったし、「月々サポート」等の端末代金割引に対しても「端末買ったから、そこから通信料金割引してくれるんだね」程度にしか思っていなかった。着目すべきは通信料金が8000円超もすること一点なんです。端末なんて人が好みで買うものだから、どうでもいいんです。毎月の維持費として通信料金が問題なのさ。

結論は、「格安SIM使えばいいんじゃね?」が終着点。料金だけ見ればそうなるけど、通信品質を天秤で図る点で個人の展開で異なる。

ところかわり、2年経過したので「あんしんセキュリティ利用料」「ケータイ補償サービス利用料」「あんしん遠隔サポート利用料」「ケータイお探しサービス利用料」解約しようかな?と考えている。もしものときのサービスだけど、そのような場面が一度も遭遇しなかったし、分離プランに移行したら、端末の面倒ぐらい自分で管理しないといけないという考えが芽生え始めた。現在の端末はもう1、2年使用するつもりだけど、その後はフリースマホへ移行予定。4サービスを解約することでもう少し料金を抑えられるようになる。

最後に理想と思っている通信料金形態を書いて終わる。
個人が利用形態を自分で判断して、1か月単位でプランを切り替えできる柔軟性が欲しい(ウェブなら無料、店頭なら3000円取ればいいんじゃね?)。または+500円ぐらいで使用量に応じて段階的に料金が変動するようなプランも欲しい。

データ通信プラン通信料金
データ通信(2GB) 超過時128kbps980
データ通信(3GB) 超過時128kbps 1480
データ通信(5GB) 超過時256kbps 2980
データ通信(8GB) 超過時256kbps 3980
データ通信(12GB) 超過時512kbps 4980
データ通信(20GB) 超過時512kbps 5980
データ通信(30GB) 超過時1Mbps 6980

安いに越したことはないんですけどね。

urllib.requestモジュールのurlopen関数ってローカルファイルもいけるんじゃね?

PythonによるWebスクレイピング学習初期に必ず一度は使うことになると思われるurllibライブラリ。そのrequestモジュールに含むurlopen関数。ネットの情報もしくは書籍に目を通しても、必ず何処かのウェブサイトからページ取得を試みている。

初心者が学習する内は、単発程度のリクエストなので、サーバ負荷なんて微々たるものだと思うけど、何度も繰り返すような処理は、いろいろと問題があると思われる。

じゃあ、自前でローカルサーバ立ち上げて試すという方法も思ったけど、ちょっと方向が違うように感じた。

理想は、ローカル環境のカレントディレクトリ内にhtmlファイルを置いて、Pythonコードから操作して取得するという方法。

Python Code

urlopen関数の引数部分をこのように絶対パスで記述することで試したいHTMLを取得できるようになります。なお、相対パスは試していない。なんとなく動かないような気がしたから。

メモ:Electron 5 リリース

Electron | Build cross platform desktop apps with JavaScript, HTML, and CSS.

Web技術を活用したソフトウェアが作成できるアプリケーションフレームワークがバージョンアップしていたようです。

以前から興味はありましたが、中々手が付けられなく今に至る。そろそろ実験的に何かやってみたいと思っている。

メモ:Node.js 12 リリース

Node.js

新しいNode.jsがリリースされていたようだ。

Node.jsって何?と聞かれたら、「サーバーサイドjavascript」と返ってくる。でも、これがよくわからない。理解している範囲では、「Googleが開発したV8JavaScriptエンジンをベースに、サーバークライアント間のデータ通信を非同期で行うプラットフォームである。何かイベントが発生した場合、その都度動作する。処理はシングルスレッドで行われるため、メモリ消費が少ない。そのためリアルタイムを求められるアプリケーション開発に向いている。」というところだろうか?

現在、私の開発環境にはバージョン10.xがインストールされている。少し触った時期もありましたが、ただいま放置状態。つまりすっかり忘れている。いい加減にじっくり試してみたいのだけど・・・。

VBAには型宣言記号による型宣言方法が存在する

型宣言記号?

カルチャーショックという程でもないけど、VBAには古いVBの名残り?として「型宣言記号」というものが存在した。VBAを勉強して数年は経っているにも関わらず知らなかった。軽く後頭部を叩かれたような気分になったので、メモることにした。

Option Explicit

''型宣言記号の確認コード
Sub TypeSymbol()

    ''文字列型
    Dim ss As String
    Dim ss_$ 'ドルマーク
    
    ''整数型
    Dim n As Integer
    Dim n_% 'パーセント
    
    ''長整数型
    Dim l As Long
    Dim l_& 'アンパサンド
    
    ''単精度浮動小数点型
    Dim f As Single
    Dim f_! 'エクスクラメーション
    
    ''倍精度浮動小数点型
    Dim d As Double
    Dim d_# 'シャープ
    
    ''通貨型
    Dim m As Currency
    Dim m_@ 'アットマーク
    
    ''バリアント型
    Dim v As Variant
    Dim v_ '型宣言記号をつけない
    
    ''型確認
    Debug.Print TypeName(ss) ' String
    Debug.Print TypeName(ss_$) ' String
    
    Debug.Print TypeName(n) ' Integer
    Debug.Print TypeName(n_%) ' Integer
    
    Debug.Print TypeName(l) ' Long
    Debug.Print TypeName(l_&) ' Long
    
    Debug.Print TypeName(f) ' Single
    Debug.Print TypeName(f_!) ' Single
    
    Debug.Print TypeName(d) ' Double
    Debug.Print TypeName(d_#) ' Double
    
    Debug.Print TypeName(m) ' Currency
    Debug.Print TypeName(m_@) ' Currency
    
    Debug.Print TypeName(v) ' Empty
    Debug.Print TypeName(v_) ' Empty

End Sub

上記コードでは各種型別に、通常の方法と型宣言記号による方法の2パターンの変数を記述した。型宣言記号は宣言した変数に続き付加する。例で用いた宣言方法の場合、変数名と型宣言記号の間にアンダーバーが含む。これは違いを区別するために使用しているだけである。本来つける必要はない。つまり文字列型の場合、ss$と記述して良い。

後半は、宣言した変数の型確認をおこなっている。見事に同じ型名が返ってくる。それ以上の発見は無かったが、まだまだ知らないことがたくさんあることを実感した。

ところかわり・・・

さて、型宣言記号の存在を知らなかったわけだが、知ったところでコードに優位性が生まれる気がまったくしなかった。もちろん記号による省略でコード記述量が減るため、負担軽減と時間短縮には貢献するのだろう。しかしこの記述方法は使用することによりコードの可読性を低下させる可能性がある。結果として負担が増えるのでは?と疑問を感じた。

これは今よりもコンピュータに積むメモリが少なかったことに起因しているように思う。VBAの登場は1994年前後。その頃は2~8MBぐらいが主流。メモリリソースがシビアだったころの面影かな?

ひとりでコードを書くならば、ちょっと特殊なコードを書いて「オレ、かっこいい!」みたいな中二病的自意識過剰自己満足全開でもよいだろう。しかし2020年代はプログラミング人口が増え始めると想定される。誰もがプログラムを書く時代になろうとしている。そして、いつ誰が自分のコードを参考にするか分からない。その時、合理的で読みやすい整った平均的なコードであれば、それを真似てより良いコードを書く人が増えるのではないだろうか。

何はともあれ、嫌われプログラミング言語No.1の汚名を持つVBA(VB)を題材にこんなことを書いている時点で、説得力はあまり感じてもらえないだろう。Officeのデファクトスタンダード言語かもしれないけど、将来はモダンな言語へ移行をお願いしたいところです。

Microsoft Wireless Mobile 4000

Microsoft Wireless Mobile 4000

ノートパソコン用にワイヤレスマウスを購入。

特徴

  • BlueTrack Technology採用青色LEDセンサー
  • 縦横4方向スクロールボタン
  • コンパクトで持ちやすい形状デザイン
  • 小型USBコネクタタイプのトランシーバー

購入動機

「やっぱりマウスはマイクロソフトだよね!」

現在使用しているノートパソコン(サブ)はThinkPad X220。長年使っている都合で、タッチパットやトラックポイントが徐々に誤動作するようになった。それが顕著になったのは今年に入ってから。ここ数か月騙し騙し使ってきた。ただ使用中に誤動作に気が取られ、キーボード操作が集中できない場面が多々あった。それも我慢の限界に達したため、購入に至る。

最初は、パソコンいじりも兼ねてキーボード部分のパーツ交換を考えました。モノ自体は4000~5000ぐらい。キーボード部分は特に不具合が出ていない。タッチパットとトラックポイントのために交換すべきなのか。特にトラックポイントこそがThinkPadの最大の特徴であり頂点(※X220等で採用されていた7列キーボード自体がノートパソコン史上伝説級に名高い。X230以降は・・・) 。それが使えないとなればThinkPadすら名乗れない。脳内無限ループ状態半月経過。

結論「もうマウスでいいや」

キーボード操作時、キーボードポジションから離れてマウスを操作する余計な動作を嫌っていましたが、もう古い機種なのでそこまでお金をかけないことで結論にいたる。

そして、使いやすい安価なマウスを求めた結果、このマウス購入に至りました。

ガタガタなThinkPad X220。無線LANもダメダメ、バッテリも2時間持たないかも。

久しぶりにマイクロソフトのマウスを触りましたが、「ああ、このフィット感!コレだよ!」と妙に懐かしく感じてしまった。

ThinkPadに限らず、他のノートPCでも使えるので、良い買い物ができてよかったと思うおっさんでした。

macOS Mojaveへ移行

macOS Mojave

・・・したら、HomebrewとXcodeが動作しなくなった。他のアプリケーションは今のところ影響ないようだ。

原因は不明だが、仕方ないので両方を再インストール。
昨日から何度インストール作業させるつもりなのか?

ところ変わって、Mojaveの感想。

噂?のダークモードは思ったよりいいんじゃないかな?目に優しそう。なんとなく没入感が増して集中しやすくなった・・・ような気がする。

ダイナミックデスクトップ?どうでもいいです。目障りなのでは?

スクリーンショットのスナップ機能が増えたらしい。画像加工時に試してみようかな。

なんか標準アプリケーションが増えたようだが、どうでもいいです。おそらく使わない。

Mac App Store・・・これは使いやすくなったのか?慣れの問題なのか?これはよくわかりません。

他にもいろいろ改善?しているらしいが、見栄え的インパクトではダークモードが一番印象深かった。

思ったこと淡々と書いたけど、基本的に何も変わっていない。変わらないことは良いことであり悪いことでもある。今回も同様に変わったのだろうが、もうmacは若者のような先進的なOSではなく、大人のような保守的なOSになったということかもしれない。

Homebrewのアンインストール方法

そろそろmacOS Mojaveに移行しようと思いながら、いまだにHigh Sierraを使い続けています。

さて、過去にインストールしたHomebrewを削除して、再インストールしたいと思ったので、そのメモを残しておこう。

Homebrewのアンインストール方法

Homebrew macOS用パッケージマネージャー
Homebrew Documentation FAQ

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

上記のスクリプトをターミナルで実行する。途中パスワードを聞かれたり、「本当に消すよ?」と確認されたりするけど、気にしない。

おまけ:Homebrewのインストール方法

せっかくなのでインストール方法を再掲しておこう。

まずは、Apple StoreよりXcodeをインストールする。
Homebrewをインストールするには、XcodeのCommand Line Toolsが必要なので、ターミナルより下記コマンドを実行しインストールする。

$ xcode-select --install

Homebrewのウェブサイトより、下記のスクリプトをターミナルにて実行する。

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

正常にインストールされたことを下記コマンドで確認するとよいだろう。

$ brew doctor

Visual Studio Code拡張機能「Live HTML Previewer」

趣味でコードを書く場合、いつもお世話になっている「Visual Studio Code」。

HTML編集時、リアルタイムプレビュー表示してくれる拡張機能「Live HTML Previewer」が便利なので使用しています。

Live HTML Previewer

インストール方法

  1. 拡張機能([Ctrl+Shift+X])より、「Live HTML Previewer」を検索する。
  2. 表示された項目からインストールする。

使用方法

  1. [F1]もしくは[Ctrl+Q]より、コマンドリストを表示する。
  2. サイド表示する場合「Show side preview」フル表示する場合「Show full preview」を実行する。

確認の度にブラウザを立ち上げることもなく、コード編集しながらリアルタイムに確認することができるようになります。