SpeakerDeckが検索にひっかからないのではてなブログにPDFから抜き出したテキストを載せてみた

SpeakerDeckにスライドを公開しているんですが、SlideShareに置いていたときと比較して、びっくりするくらいGoogle検索でひっかかりません。 自分のスライドを発見するのにGoogle検索よりディレクトリを探したほうが速いです。 2つのサービスにはいろいろ違いがあるのですが、こと検索についてはSlideShareの側ではPDFから抜き出したテキストを小さい文字でスライド表示ページに記載しているのが、タイトルと概要しかテキストがないSpeakerDeckより良さそうです。いろいろなキーワードで検索にヒットしますからね。

試しにblog記事として、SpeakerDeckを埋めこんで、スライドの下にpdftotextで作ったテキスト入れたらどうなるのかやってみました。

やったことは以下のとおりです。

  1. speakerdeckのembed用スクリプトをblog記事コピペして、下に概要を書く f:id:mrwk:20191019180703p:plain

  2. (続きを読む)が入るタグを入れる

  3. divで小さいフォントにしてテキストを入れる

実際の記事テキストは以下のような感じになります。

<script async class="speakerdeck-embed" data-id="93c3e6deee684327b5a1473f5ad34d5b" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>
Red Hat Enterprise Linux 8の概要および RHEL 7 からの主な違いをまとめたスライドです。

<! -- more -->  (実際は!と--の間にスペースは要りません)
<div style="font-size: 30%; color: gray">
(ここにpdftotextで作ったテキストをコピペする)
</div>

翌日確認したところ、それほど高い順位ではないものの検索で発見できるようになっていました。この作業をスライド毎に全部やるのは面倒くさいので自動化したいなあ。

Mi Band 4買って1ヶ月くらいつけて気付いたこと

はじめてのフィットネストラッカーとしてMi Band 4を買って1ヶ月ほど経ったのでメモ。

電池は2週間以上持つ

バッテリーもちが良いとは聞いていたけど、自分の使い方(自動心拍数検出と睡眠アシスタント10分おき、アクティビティ2日に1回くらい、毎日同期、手首ひねって画面点灯)だとたぶん17,8日くらいもつ。とはいえバッテリー残量が20%台とかになると気になってしまうので結局2週間くらいで充電することに。充電時間はだいたい1時間ほど。最初にバンドを外すときに力加減がわからないでちょっと心配になる。

バンドをつけること自体はあまり気にならない

腕時計もしてたことがないので一日中バンドつけてると鬱陶しいのではないかという点を買う前に一番心配していた。実際に汗かいたあとにはふやけているので左右を交代したりするもののかゆくなるようなことはない。例外的に気になったのは手首にアトピーが出たとき。その時は右手につけて対応した。風呂では外している。

昼寝には対応できない

睡眠は自動検出してくれる、短い起床を挟んだ二度寝にも対応しているが昼寝には対応していない。たぶん2時間くらい起床時間がつづくと駄目な気がしているが他の判定があるのかもしれない。昼寝情報をあとから足すこともできないのでGoogle Fitで手入力して昼寝を追加している。

睡眠の検出タイミング

自分が「意識このへんでなくなった」と思っている時間より30分〜1時間くらい遅い時間に寝たことになってるケースが多い。脈拍が少なく安定したときを入眠と判断しているみたい。睡眠時間の目安としての働きにはあまり影響ないので問題とは感じない。

Google fitの連携

心拍を10分毎に測定しているがGoogle fitにはなぜか一部しか反映されない。なんでやねん……。Mi Fitでは1日中の情報が表示されてもGoogle Fitでは16時から24時くらいの間しか表示されなかったりする。

MyFitnesspalがめっちゃカロリーひいてくるので困る

Mi Fit ←→ Google Fit ←→ MyFitnesspal と連携しているのだが MyFitnesspalにはどうやら歩数しか同期されていないらしい。ジョギングかなにかを想定しているようで消費カロリーがえらく多めに表示される。 たとえば今日はMi Fitが「359kcal消費したよ」と表示してるのだがMyFitnesspalで見ると「982kcalひいとくわ」みたいに出ている。MyFitnesspalだけ同期せずに使ったほうがいい気がする。

Mi Fitのアドバイス機能

情け容赦なく「22時頃までに就眠するよう心がけてください」とか言ってくる。午前2時3時に寝るのがあたりまえだったのが午後の内に寝ることが増えてきたので、生活改善としては機能してる。

目標歩数

8000歩にしてるけどまだトータルで8日しか達成してない。バス乗るのやめて歩くことが増えてきた。

まとめ

  • 早寝早起きには有効。
  • 運動は……多少ましなくらい。
  • MyFitnesspalが消費カロリーを過剰に表示してるのに気付いたの最近で、それまで食べすぎてた気がする……

Twitter新UI用adblock定義

twitter.com - EasyList Forum これを参考にして「プロモーション」も足した定義を書いたら心の平安を得た

twitter.com##[data-testid="tweet"]:has-text(/Promoted|Gesponsert|プロモーション|Реклама|Promocionado/):xpath(..)
twitter.com##[data-testid="trend"]:has-text(/Promoted|Gesponsert|プロモーション|Реклама|Promocionado/):xpath(..)
twitter.com##[data-focusable="true"]:has-text(/Promoted|Gesponsert|プロモーション|Реклама|Promocionado/):not(:xpath(//span[contains(text(),'Реклама в Твиттере')]))

(追記) 普通に文中に「プロモーション」と書いてあるだけでもひっかかるのでfalse positiveが嫌な人にはおすすめできないです。

amdgpuにファイルに入ったEDIDを喰わせる手順のメモ

我が家のディスプレイの1つにEDIDをちゃんと返さない不調があるので、ビデオカードを交換したときに対応したメモ。

適当なディレクトリにedidが入ったファイルを置く

# mkdir /lib/firmware/edid
# cp benq-edid.bin /lib/firmware/edid

initramfsにファイルを追加する設定

/etc/dracut.conf.d/99-local.conf

install_items+="/lib/firmware/edid/benq-edid.bin"

EDIDファイルを利用する設定

EDIDがない状態でdmesgを見るとエラーを出力しているのでポートの名前(DVI-D-1)がわかる。

エラーの例

Jul 13 14:36:31 dragon kernel: amdgpu 0000:01:00.0: DVI-D-1: EDID is invalid:
Jul 13 14:36:31 dragon kernel:         [00] BAD  a1 a1 ff 01 a1 ff ff 00 09 d1 0a 78 45 54 00 00
Jul 13 14:36:31 dragon kernel:         [00] BAD  10 12 01 03 80 34 20 78 2e c5 c4 a3 57 4a 9c 23
Jul 13 14:36:31 dragon kernel:         [00] BAD  12 4f 52 a5 6b 80 71 00 81 00 95 00 81 80 b3 00
Jul 13 14:36:31 dragon kernel:         [00] BAD  a9 40 d1 00 01 01 28 3c 80 a0 70 b0 23 40 30 20
Jul 13 14:36:31 dragon kernel:         [00] BAD  36 00 07 44 21 00 00 1a 00 00 00 ff 00 45 34 38
Jul 13 14:36:31 dragon kernel:         [00] BAD  30 35 30 31 37 53 4c 30 0a 20 00 00 00 fd 00 32
Jul 13 14:36:31 dragon kernel:         [00] BAD  55 1f 5e 11 00 0a 20 20 20 20 20 20 00 00 00 fc
Jul 13 14:36:31 dragon kernel:         [00] BAD  00 42 65 6e 51 20 47 32 34 30 30 57 0a 20 00 06
Jul 13 14:36:31 dragon kernel: [drm:dc_link_detect [amdgpu]] *ERROR* No EDID read.

ディスプレイとEDIDの対応づけはdrm_kms_helperモジュールがやるので以下オプションをmodprobeの設定に書く。

/etc/modprobe.d/drm-kms-helper.conf

options drm_kms_helper edid_firmware=DVI-D-1:edid/benq-edid.bin

dracutでinitramfs再構成

# dracut --force /boot/initrd.img-4.19.0-5-amd64 

参考リンク

機械翻訳とText to speechの出力を利用する時に制限があるか調べたメモ

機械翻訳とかTTSで作った音声とか、つかってみたいことがあるけど縛りがあったらやだなーということでちょっと調べたメモ。

機械翻訳

Amazon Translate

よくある質問 - Amazon Translate | AWS に、以下記載あり。 f:id:mrwk:20190616132827p:plain

Google Translate API

よくある質問  |  Cloud Translation API  |  Google Cloud の、帰属のところに以下記載あり。ポストエディットで人が処理する場合に帰属は不要だけどユーザに直接見せる場合は帰属の必要あり。 f:id:mrwk:20190616133658p:plain

帰属表示の要件  |  Cloud Translation API  |  Google Cloud をみると、以下記載がある。アプリケーションのメッセージカタログ翻訳でposteditなしで使う場合など、典型的でない利用の時にはGoogleに問いあわせたほうがよさそう。 f:id:mrwk:20190616134106p:plain

Microsoft Translator

FAQ - Microsoft Translator for Businessに、以下記載あり。帰属させてもさせなくてもいい.帰属させるときはガイドラインに従う。 f:id:mrwk:20190616133320p:plain

Text To Speech

Amazon Polly

https://aws.amazon.com/jp/polly/ に特徴として書いてる f:id:mrwk:20190616132437p:plain

よくある質問 - Amazon Polly | AWS にも以下記述あり f:id:mrwk:20190616132720p:plain

Google Cloud Text-to-Speech

帰属についての記述はみつけられず。使いたいときはサポートへ確認かな。。

Azure Speech Service

帰属についての記述はみつけられず。使いたいときはサポートへ確認かな。。

まとめ

ここらへんの権利関係をクリアにしておけばOSSとか自分で作る動画とかに使いたいときに便利なのでまとめました。 TTSについてはAmazon Polly以外みつけられなかったので追加情報あったらおしえてください m(__)m

きになる点

機械翻訳の学習元の文書の著作権が、機械学習で生成された文書に絶対に及ばないと想定するのも無理があるので、わずかながらリスクはありそうです。このリスクを許容できるかはケースバイケースだと思います。OSSプロジェクトへの投稿などは関係者の合意をとった上でやりましょう。

blog移転先検討中……

bloggerのblogを消されてしまったのでどこかいいホスティングサービスを探している。前のblogはまあ年に1本投稿するかどうかくらいのチラ裏だったんですが、理由もわからずいきなり消されてあきらかにおかしくても言う先ないのしんどいのでどこかへ移動しようと決意。

wordpress.comは無料プランで払いだされるドメインが "mrwk805919219.wordpress.com" とかになってしまったので自分で覚えられない……。

はてなダイアリーかなー。note.muかなー。と思いつつどっちも試し中。