月別アーカイブ 2月 2018

著者:ym

MyJVNバージョンチェッカーが.NETFrameworkに

しばらく使っていなかったけど MyJVN バージョンチェッカーが JAVA Runtime 環境から .NET Framework 化してバージョンアップした様です。JRE だといろいろと脆弱性出るしね。

最近のアプリは自動アップデート機能が装備されているので、あまり古いバージョンを使うことはなくなったので問題はないですかね。

  • この記事いいね! (0)
takahashi 著者:takahashi

WordPressの公式プラグイン”Jetpack”に画像遅延読み込み機能が追加!

本日、自分のメールアドレス宛に、jetpack.comからメールが来ました。

Jetpack 5.8ではスピードが改善された
Jetpack に大幅な改良を加えました。

素晴らしいお知らせ: 画像の遅延読み込み機能を実装しました。この機能は、すべての方が使用できるもので、エンドユーザーがページを読み込む際の時間を短縮し、バウンスレートを減少させるのに役立ちます。

Jetpackとは、WordPressが公式で出しているインストール型WordPressの最適化プラグインです。
SaaS型のWordPressである”WordPress.com”で提供されている機能の一部を、手軽に自分のインストール型WordPressに導入することができます。

このJetpack、従来のバージョンでも、画像のキャッシュ機能を利用することはできていたのですが、今回新たに画像の遅延読み込み機能が追加されたとのこと。
早速自分のブログサイトのJetpackを更新してみました。

Jetpackの設定画面に、”Lazy load images” という項目が追加されているのでこれを有効化します。
その後、自分のブログ記事ページを開くと、ページの読み込みが終わった後にスクロールに合わせて非同期で画像が読み込まれていることがわかるかと思います。

ブログが重くなる原因の一つとして、画像などのメディアの表示が影響していることが多い、というのはよく言われる話ですが、この画像読み込みを遅延させることでブログサイトそのものの読み込み負荷を減らす、という手法を、プラグイン一つで簡単に試せるというのは非常にありがたいです。

Jetpackは便利な機能が豊富で、使いやすいので、入れておいて損はないかと思います。
是非お試しあれ!

  • この記事いいね! (0)
村上 著者:村上

【CSS】画像の読み込み中にローディング画像を表示させる方法

<img>タグで画像を表示させるときに、少し大きめの画像を読み込むときに時間がかかることがあるかと思います。
その際にローディング画像を表示させる方法についてです。

今回参考にさせていただいたサイトはこちら。

画像の読込完了まで、ローディング画像を表示する方法
https://allabout.co.jp/gm/gc/431053/

 

ちなみに、ローディング画像は、以前ご紹介した「Loader Generator」を使いました。

【Webサイト】ローディングのGIFアイコンが手軽に作れる「Loader Generator」
https://cpoint-lab.co.jp/【webサイト】ローディングのgifアイコンが手軽に作/

 

で、ローディング画像の表示方法ですが、すべてCSSで済みます。
しかも、3行!

コードはこちらです。

img{
    background-image: url("ローディング画像のパス");
    background-repeat: no-repeat;
    background-position: center center;
}

サンプルコードでは、全ての<img>タグに適用させていますが、もちろん ID や Class で指定してもOKです。

コードの説明をすると、まず「background-image」で<img>タグの背景画像にローディング画像を設定します。
そして「background-repeat: “no-repeat”;」で画像の繰り返し表示を無効にし、「background-position: “center center”;」で画像を上下左右中央表示にします。
設定は以上!とても簡単です!

 

表示されるのは本当に一瞬で、ちらっと見えるだけかもしれませんが、画像が表示されるまで、ただ空間がぽっかりと空いているよりも、読み込み中を示すアイコンが見えたほうが、まだ画像の読み込みを待てるような気がしますね。
画像の読み込み中のアニメーションをお探しの方は、ローディング画像生成サイト「Loader Generator」共々、是非参考にしていただければと思います。

  • この記事いいね! (0)
takahashi 著者:takahashi

その”Prime”はいらなかった。新たな脆弱性 Meltdown Prime/Spectre Prime が発見される。

先日発覚してから大騒ぎになっているCPU脆弱性Meltdown/Spectre ですが、最近別の方法で同様の脆弱性をつくことができる攻撃手法が見つかったそうです。

CPU脆弱性「Meltdown/Spectre」を悪用した新たな攻撃手法–研究者らが発見 – ZDNet

その名前も「Meltdown Prime」「Spectre Prime」。
Primeってぱっと聞くと、高級なイメージが浮かんできますが、実際に調べてみると

primeとは -Weblio

1主要な,主な,最も重要な.
2優良の,最良の,第一等の; すばらしい,極上の.
3根本的な,基礎的な,本質的な.

という意味なのだそう。
恐らく1か3の意味で使われているのでしょうが、個人的には2のイメージが強いので、なんだか皮肉に聞こえてしまいます(苦笑

現時点では攻撃に使ったソースも未公開らしく、詳しい内容については不明です。
参照元の記事では

MeltdownとSpectreを悪用した新種の攻撃には、既存のソフトウェアによる緩和策で十分に対応できる見通しだ。しかし、IntelやAMDなどのチップメーカーは、ハードウェアによる緩和策を開発する必要があると、研究者らは指摘している。

と書かれており、ユーザーにとっては特に影響がないようですが、対応に追われているIntelをはじめとするCPUメーカーにとっては”死体蹴り”な出来事になったかもしれません。

各CPUメーカーが何とか根本的な解決にたどり着くことを祈ります。

  • この記事いいね! (0)
村上 著者:村上

【Xcode】アプリのデフォルト言語を日本語に設定する方法

前回に引き続き、今回もXcodeについての備忘録です。
今回は、アプリの言語を日本語に設定する方法について。

参考にさせていただいたのは、こちらの記事です。

Xcodeでアプリの標準言語を日本語にする方法
https://qiita.com/ko2ic/items/8918034d940f66fee97d

 

まず、Xcode上での設定です。
Target > Info を開きます。

まずは、「Custom iOS Target Properties」の「Localization native development」を「Japan」に変更します。
次に、同じく Custom iOS Target Properties に新しく1行追加し、「Localizations」を選択します。
そしてこの Localizations の値で Japanese を選択します。
Xcodeの設定は以上です。

続いて、お好みのターミナルアプリを開き、アプリがあるディレクトリまで移動します。
そして、vi コマンドで下記のファイルを開き、編集します。

vi [プロジェクト名].xcodeproj/project.pbxproj

無事開けたら、下記のような記述があるので、

developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
    en,
    Base,
);

こちらを下記のように変更します。

developmentRegion = Japanese;  // English -> Japanese
hasScannedForEncodings = 0;
knownRegions = (
    ja,  // en -> ja
    Base,
);

なお、行数が多いので、「Region」で検索するのがおすすめ。
検索方法は、コマンドモードで「/Region」と入力して Enter です。
該当箇所を書き換えられたら、「:wq」でセーブして終了です。

日本語設定は以上で完了です。
あとは通常にビルド→実行すれば、デフォルトの言語が日本語に代わっているはずです。

 

以上、アプリのデフォルト言語の設定方法でした。

  • この記事いいね! (0)
著者:ym

WinSCP で AWS S3 ファイル操作

WinSCP が Amazon S3 に対応した様です

FFFTP はメンテ停止公表後、 2.0 リリースに向けて活動しているようですが、私自身はワンタイムパスワードとか使う機会はないので、すべて WinSCP になりました。ディレクトリ同時移動、SCP、SFTP、SSH トンネル越え SCP などにも対応しているので便利。

設定も簡単でした。Amazon S3 を選択して、アクセスキーとシークレットを登録するだけ。

AWS CLI もよいけど WinSCP コマンドでスクリプト制御もありかな。

  • この記事いいね! (0)
村上 著者:村上

【Xcode】実機での実行時に「This application’s application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed.」となったときの対処法

タイトル長いですが、今回は Xcode のエラーについて。
アプリを実機で確認しようとして実行した際に遭遇したエラーです。

エラー全文はこちら。
This application’s application-identifier entitlement does not match that of the installed application. These values must match for an upgrade to be allowed.

ざっくり翻訳したところ、インストール済みのアプリと今実行しようとしているアプリの識別子などが一致していないため、アプリをアップグレードできないとのことでした。
私の場合は、Generalのビルドチームが未選択となってしまっていたことが原因のようでした。

 

で、このエラーの対処法ですが、単純に既に端末にインストール済みのアプリを削除すること、でした。
もしくは、私のように原因が分かっていれば、Generalからビルドチームを以前と同じ設定にするなど、以前と同じ設定に戻せばOKのようですが…こちらについては試していないのでわかりません。

エラー文がそこそこ長い文だったので、もっと手間取るかと思いきや、かなりあっさりと修正できました。
とりあえず、エラー文はきちんと読みましょう。

  • この記事いいね! (0)
takahashi 著者:takahashi

MPEG2の特許が期限切れ。ライセンス料なしで利用できるように。

2018年2月13日、アメリカに残っていた最後のMPEG2に関する特許が有効期限切れになったそうです。

ついにMPEG2の特許が消滅 – Gigazine

MPEG2とは音声や動画の使われている圧縮フォーマットです。主にDVDやデジタル放送などに使われてきました。

MPEG-2 – Wikipedia

特許期間内はライセンス料が発生するので、MPEG2関連の技術を用いて開発されたハード及びソフトは、このライセンス料の支払いが必要でした。
当然、開発側で利用料が必要になるので、販売される製品はその料金を上乗せした形で販売されてきたことになります。
今回の特許期限切れでこの特許料を払う必要がなくなったようで、今後はMPEG2を使う機器やソフトが安く提供されたりなどのメリットが期待されています。

ただし、フィリピンとマレーシアでは特許権は引き続き有効ということなので、関係のある方は注意が必要なようです。

正直なところ、最近販売されている高性能レコーダーが欲しいなーと思ってはいたのですが、そこそこお値段がするのでなかなか手が伸びませんでした。
今回の特許切れでお値段が下がってくれたらうれしいな、と淡い期待をしています(笑

  • この記事いいね! (0)
著者:aoki

インフルエンザを疑ったらやる事やってはいけない事

恥ずかしながら先日インフルエンザB型に感染してしまいかなりキツイ状況に陥りました。
インフルエンザというものに初めてかかってしまったという事もあり色々対応が遅れてしまったのもありましたのでその時の状況とどうすればよかったのか、あとインフルエンザ時にしてはいけない事もあったのでまとめておこうと思います。

経緯

2月8日(木)の夕方から急に悪寒と体のダルさが襲ってきて家に帰って風邪薬を飲む。
ただ熱が39度出てこれはまさかインフルエンザでは?と疑い、2月9日の午前中に内科へ行きインフルエンザの検査をするが結果は出ず。
扁桃炎の可能性という診断だったのでその薬と解熱剤である”カロナール”を3回分貰う。
金土日と薬を飲みほぼ寝て過ごすが一向に熱が下がる気配が無く、夜も寝れないのでカロナールで何とか熱を下げて寝ていたが5時間程度で切れてまたすぐ熱が上がり、更にカロナールが無くなってしまう。
月曜日出社時にはカロナールは当然なく仕方なくロキソニンを飲んで出社。
しかし月曜日の夜も相変わらず39度なので流石にこれはおかしいという事で火曜日に再度内科でインフルエンザの検査を受けた結果、無事インフルエンザB型を検出。
ここで初めてインフルエンザ治療薬である「イナビル」を処方され、2月15日(木)に1週間ぶりに熱が下がり2月17日(土)に完治に至る。

インフルエンザを疑ったら

私はインフルエンザに罹ったことが無かったので知らなかったのですが、インフルエンザに感染して時間があまりたってないと検査で出ない事があるようです。
今回熱が出て12時間近くたってましたが結果としてインフルエンザ治療が遅れ、苦しい思いをする羽目になりました。
もし高熱が続く場合はインフルエンザの検査で出なかった次の日も検査をすることをお勧めします。

インフルエンザの際にしてはいけない事

経緯で書きましたがあまりに熱が下がらずきつかったのでロキソニンを数回飲んでいたのですがこれはNGのようです。
成分の関係でインフルエンザ脳症の予後の悪化やライ症候群という症状を起こす可能性があるようで、インフルエンザの際の解熱剤は「カロナール」のみとの事。

診察の際

診察の際にインフルエンザの時期などは「周りにインフルエンザはいますか?」と聞かれます。
この時に本当に要る場合は必ず「いる」と答えた方が良いです。
その場合は検査でインフルエンザが出なくてもインフルエンザの治療薬を処方してもらえるので結果としてインフルエンザ治療が早く終わります。
まぁ周りにインフルエンザ患者がいて「いない」と答える人はいないと思いますが・・・

始めてのインフルエンザとにかく辛かったです、予防はもちろん必要ですがかかってしまったときどうすればよいか知っておくことも大事ですね。

  • この記事いいね! (1)
takahashi 著者:takahashi

Zend Framework1 Zend_Mail+PHP5.6ではSSLのチェックが無効化できない

既にサポートの終わったZendFramework1ですが、今使っている方は注意が必要かもしれません。

ZendServer8.5 for IBM i(PHP5.6)を入れて・・・ – ushidayの日記

PHP5.6から、CA証明書のチェックがデフォルトで必須の設定になったようなのですが、
これによって何も指定を行っていない場合、PHPからSMTPS経由でメールを送る場合は接続先SMTPサーバーのSSL証明書が”正しい”物でないと接続に失敗します。

なお、この設定は変更することが可能ではあるのですが、

SSL コンテキストオプション – php.net
調べた限りでは、使用するメールライブラリがSSL コンテキストオプションの”verify_peer”の指定に対応していないと設定変更が難しいようなのです。
Zend Framework1のZend_Mailではこのオプションの指定をサポートしていないため、PHP5.6上で動作させると、強制的にSSL証明書のチェックが有効となります。

ちなみに、Zend Framework1のZend_MailのSSLコンテキスト対応化は行われないことはZend Framework1のGitHubフォーラムで明言されています。

Zend_Mail SMTP SSL Problem with PHP 5.6 – GitHub

  • この記事いいね! (0)