動かざることバグの如し

近づきたいよ 君の理想に

Javascriptで生成したHTMLをiframe内で表示させる方法

参考リンク曰く、「かなり限られたユースケース」に遭遇してしまったためメモ

コード

var iframe = document.getElementById('myframe');
var html = '<h1>こんにちはせかい</h1>';

var blob = new Blob([html], { type: 'text/html' });
iframe.src = URL.createObjectURL(blob);

サンプル

See the Pen frame by thr3a (@thr3a) on CodePen.

上のサンプルを見れば一目瞭然だが、本来ifarmeではsrcに別のURL or パスを指定して外部のHTMLを呼び出して表示させているが、これは1つのJavascript内で完結させている。しかもヒアドキュメントだから書きやすい。

対応ブラウザ

技術的にはBlob URL Schemeを使っている。Chrome,Firefoxは問題なし。IEは11以上。

Can I use... Support tables for HTML5, CSS3, etc

参考リンク

Ubuntu 16.04を2TB以上のディスクにインストールする際の注意点

環境

  • Ubuntu 16.04
  • 2TB以上のHDD

結論

  • バグ?というか2TB以上のHDDにUbuntu 16.04をカスタマイズしたパーティション構成でインストールしようとするとコケる
  • が、後述するコマンドで対策可能

経緯

2TBのディスクにUbuntuをインストールしようとしたが、何回やってもうまくインストールできない。インストール自体はうまくいく(ようにみえる)のだが、再起動すると「No boot device found」で起動できない。どうも条件があるらしく

の条件のときにGRUB2がインストールされないという致命的なバグが有る。実際/boot/efiに本来ブートに必要なファイルが有るはずだが空になっている。

なんとも厄介なバグ(仕様?)だが、インストール後に自分でGRUB2をインストールするしかない

GRUB2の再インストール方法

まずUbuntuをLive CDモードで起動してインストール。インストール後は再起動せずにそのままターミナルを開く。ここではルートディレクトリの「/」を/dev/sda2、EFIパーティションの「/boot/efi」を/dev/sda1とする。

まずはマウント。最終的には/mnt下でchrootすることになる。

mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot/efi         

これだけだとGRUB2のインストールはできないので特殊な場所もマウント

mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys

面倒な場合はforで回す手もある

for i in /dev /dev/pts /proc /sys; do sudo mount /mnt$i; done

ライブラリをロード

modprobe efivars

後述するchroot環境でネット通信が必要になるのでresolve.confをコピー

cp /etc/resolve.conf /mnt/etc/resolve.conf

chroot環境下に入る

chroot /mnt

以下はchroot上での作業

必要なパッケージをインストール(最初からインストールしてくれとマジギレ

apt install grub-efi-amd64

grub2のインストール

grub-install /dev/sda
update-grub

chroot環境を抜ける

exit

これで/mnt/boot/efiにファイルが生成されていれば成功。空っぽなら再起動しても結局コケる

再起動前は忘れずにアンマウント -R再帰的にアンマウントしてくれる

umount -R /mnt

花粉飛散量の過去データを取得できるサイト一覧

花粉の推移って予測だとか分析にもってこいの話題なのでは!?と思ってググったけどなかなか天気と違っていい感じのがない。

はなこさん

「花粉 データ」でググると最初にでてくる環境省花粉観測システム(はなこさん)。いったい何世代前のWEBシステムなんだ…と驚いたが、たしかにデータ量は多い。過去のも見れればいいのだが。

と探したらあった。

以下から2003年以降の花粉量がダウンロードできる。(エクセル形式だが

花粉ライブラリ -環境省花粉観測システム-

ただし今年のデータははなこさん本体をスクレイピングしなければならないっぽい。この方のコードは流石に動かなかった。

花粉飛散開始情報(日本アイティディ株式会社)

平成30年10月1日更新:404確認

日本アイティディ株式会社が運営しているサイト。スギとヒノキの全国の花粉量が掲載されている

花粉飛散情報一覧

表で表示されるが、何故かJSONを読み込んでJSでレンダリングしているのでスクレイピングする際はhttp://kafun2018.itdj.co.jp/data/sugi/kafun.jsonを見ればよさそう。

ただ欠点は当日のデータしか見れないということ。毎日貯めれば有力になりそうだが

東京都健康安全研究センター

都内のデータ限定であればここのサイトが1番使えそう。スギとヒノキの花粉量データを2001年から掲載している。

東京都健康安全研究センター » スギ・ヒノキ花粉情報

データはHTML形式なのでスクレイピングする必要はあるがクセはなさそう

データ分析した例

ググったらすでに先人がいた。残念。。。

qiita.com

ARCHISS ProgresTouch RETROがREALFORCEジェネリック版ぽくて良い

先週秋葉原散策している途中にツクモでキーボードを買った。「ProgresTouch RETRO」ってやつで個人的には初の赤軸。

f:id:thr3a:20180405212058j:plain

いい点

  • 赤軸で軽い
  • 安い
  • かな印字なし
  • 光らない←
  • シンプルなデザイン

正直アーキサイトってメーカーを初めて知ったのだが、打ちやすい。もともとREALFORCEにあこがれてそれを見に行ったってのもあったのだが、いかんせん高い。

が、このキーボードは1万円でおつりがくる(実際には税込9,980円だったので20円しかおつり来ないのだが)

今までのキーボードがペチペチELECOMキーボードだったってのもあるけど非常に軽く感じる。それでいて音がうるさくない。デザインもうるさくない(かな印字のない日本語キーボードはあまりない。

よくなかった点

正直現時点では箇条書きにして書くほど量はない。ただ一つ気になるのはWindows10に接続して使ってるとまれに認識しないときがある。(再起動すると直ってるのだが)

もしかしたらなんらかドライバーが必要なのかも?

今回のキーボードは当たりだったと思う。今度はそれにみあうアウトプット(プログラミング)をだな。。。。

ARCHISS ProgresTouch RETRO 日本語配列 | 株式会社アーキサイト

ASUS Tinker BoardをAmazon.comで格安で購入できた話

ASUSが出しているTinker Boardというシングルボードコンピュータがある。

この手のものだとRasberry Piが一番有名だが、Tinker BoardはRaspiよりCPUやメモリがめっちゃ高性能

が、そのかわり高い(当然だが

Amazon.co.jpで買うと

現在AmazonでTinker Boardを買おうとすると9,980円 Physical Computing Labという専門店が正規代理店となって出品している。

Amazon | ASUS Tinker Board ボード&ケースセット (Clear) - Physical Computing Lab | Physical Computing Lab | ベアボーンPC 通販

高いけど正直ぼったくりではないと思う。ケースついてくるしプライムだから即日発送だし。

Amazon.comだと

一方のAmazon.comだとすごく安い。なんと55ドル= 約5800円 半額に近い。

Amazon.com: ASUS SBC Tinker board RK3288 SoC 1.8GHz Quad Core CPU, 600MHz Mali-T764 GPU, 2GB: Computers & Accessories

この商品は日本にも発送できる奴だったので日数かかってもいいので試しにポチってみた。

かかった日数

  • 3月23日 Amazon.comでポチる
  • 3月29日 到着

購入時点だと到着は4月上旬だぞ?って言ってたけど予想より全然早かった。大体1週間後には来る。なおクロネコなので安心

かかった費用

  • 本体 54.99ドル = 6,004円
  • 送料 623円

合計 6,627円 為替はAmazon.com側で行われるので、クレジットカードの請求はドルではなく円でくる。

結論

ゆっくりでもいいので少しでも安くTinker Boardを買いたい方はAmazon.comを使おう