2015-09-18

位置情報の文字列化

取得した位置情報を文字列化し、URLやデータベースで利用したい。

主な選択肢は下記3つ

現時点で十分に枯れていそうなのはGeoHashかなと。
GeoHexはかっこいいが、今回の利用用とではビジュアルは無関係なので。
plus+codesはGoogle公式というわけでもないようなので、今後の展開は未知数。

あーありがち - GeohashのグリッドをGoogle Maps上に再現するツール書いた

古い記事だがやろうとしていることはほぼコレ。

URI設計の問題

クエリで渡すか、ハッシュで渡すか、階層へ盛り込むのもアリっちゃアリ。

  • http://example.com?geo=xn3pvxy
  • http://example.com#xn3pvxy
  • http://example.com/xn3pvxy

ライブラリの選定

経緯度とジオハッシュの相互変換にはライブラリを使用する。
下記の二つが候補として見つかった。

開発が最近行われており、オプションにより制度の調整も行えるlatlon-geohashを採用した。

1const latLon = Geohash.decode(geoHash); 2console.log(`現在地の経度は${latLon.lat}、緯度は${latLon.lon}です。`);

このように簡単にジオハッシュを経緯度へ変換できる。

1const geoHash = Geohash.encode(latLon.lat, latLon.lon, 8);

経緯度をジオハッシュ化する際に、3番目の引数で桁数(精度)を指定できる。
未指定でも経緯度から自動判別を行う。

2015-09-18

Yamlを学ぶ

AnsibleのPlaybookはYamlで書かなければならない。
見よう見まねで動くコードは結構書けるが、インフラにかかわる技術なのできちんと学んだほうがよいだろう。

こういうときにWikipediaで概要をさくっと理解するのは効率がいいと思った。

とりあえずAnsible用途限定で学ぶならここで

本格的にアプリケーションへ導入したいのであればここかと。

少し触ってみた感触ではXMLよりは簡潔に書けて、JSONよりは設定ファイルに向いていそう。コメントも書ける。

2015-09-18

Ansible

Vagrant上への開発環境の構築をAnsibleを利用したい。

公式とドキュメント。

このへんに目を通せばだいたい使えそう。
ドットインストールのAnsible入門は有料化しちゃったのね…。

冪等性は英語でidempotenceということを学んだ。

この辺を参考にするとWindowsやNode.jsをからめたAnsile導入はだいたいできそうかと。

2015-09-14

Webp 導入思案

Webpをさくっと導入できないか思案。

取りあえず対応しているのはBlinkブラウザのみだが、モバイル対応へ重きを置くならば価値はありそう。

Webpの概要と導入の際の未サポートブラウザへのフォールバック方法を解説。
記事内でも言及があるサーバーサイドでの実装が一番よさそうではある。

しかしサクっとはできなさそうなので、フロントで実装したい。
とりあえず上記を参考にで試してみた。

これは容易でとてもいい方法だと感じた。
しかし今回はbackground-imageへのwebp導入を考えているので残念ながらこの方法は不可である。

色々調べると‘@supports‘を利用した方法を発見。

@supportsで機能が利用できるか確認し、分岐する手法が紹介されている。
筆者は最終的にModernizrを使用したようだが(そりゃそうだよな…)、今回このためにModernizr入れるのは本末転倒である。
@supports面白そうだしカジュアルなのでコレを採用。

1background-image: url("../img/bg.png"); 2@supports (background-image: -webkit-image-set(url("../img/bg.webp") 1x)) { 3 background-image: -webkit-image-set(url("../img/bg.webp") 1x) 4}

CSS4で提案されているimage-listはかなりよさそうである。

background-image: images("../img/bg.webp", "../img/bg.png");

ただ現時点では対応しているブラウザはない様子。
現時点ではimage-setが一番よさそう。

2015-09-14

Conohaクラウドへ引っ越し

旧Conohaで運用していたサイトをクラウド番へ引っ越しした。

正直今までのConohaは結構な頻度で止まっており、あまり信頼できるものではなく他社へ乗り換えを検討していた。しかし最近は極力楽をしたい欲求が強くなっており、その面でConohaクラウドに魅力を感じ、色々葛藤はあったものの改善の期待をこめて引っ越しを決心した。

さて、このConohaクラウド、サーバー追加の際にテンプレを選ぶことができ、LAMPやRails、Wordpressはもちろんのこと、MongoDBやJenkins、DockerやMEANなんてのもあって興味深い。
機会があればそのへんも触ってみようと思う。