<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>2021-09 on akky@サイボウズラボ・ブログ</title>
		<link>https://labs.cybozu.co.jp/blog/akky/archives/2021-09/</link>
		<description>Recent content in 2021-09 on akky@サイボウズラボ・ブログ</description>
		<generator>Hugo</generator>
		<language>ja</language>
		
		
		
		
			<lastBuildDate>Wed, 29 Sep 2021 00:00:00 +0000</lastBuildDate>
		
			<atom:link href="https://labs.cybozu.co.jp/blog/akky/archives/2021-09/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Confusables - 紛らわしい文字を含めて検索できるPythonライブラリ</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/confusables-checks-word-matches-with-confusable-letter/</link>
				<pubDate>Wed, 29 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/confusables-checks-word-matches-with-confusable-letter/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;http://www.unicode.org/Public/security/latest/confusables.txt&#34;&gt;Unicode コンソーシアムが提供している見た目そっくりな文字リスト&lt;/a&gt;にある文字が紛れていても文字列マッチする小さなライブラリが &lt;a href=&#34;https://github.com/wanderingstan/Confusables&#34;&gt;Confusables&lt;/a&gt; です。&lt;/p&gt;&#xA;&lt;p&gt;このクラスは最新の Confusables.txt を Unicode.org から取得し、紛らわしい文字を含んだマッチする正規表現を生成してくれます。&lt;/p&gt;&#xA;&lt;p&gt;たとえば、&amp;ldquo;Hello&amp;rdquo; に対しては次のようなパターンができます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Regexp pattern: [HＨℋℌℍ𝐇𝐻𝑯𝓗𝕳𝖧𝗛𝘏𝙃𝙷Η𝚮𝛨𝜢𝝜𝞖ⲎНᎻᕼꓧ𐋏ⱧҢĦӉӇ][e℮ｅℯⅇ𝐞𝑒𝒆𝓮𝔢𝕖𝖊𝖾𝗲𝘦𝙚𝚎ꬲеҽɇҿ][l‎\|∣⏽￨1‎۱𐌠‎𝟏𝟙𝟣𝟭� IIＩⅠℐℑ𝐈𝐼𝑰𝓘𝕀𝕴𝖨𝗜𝘐𝙄𝙸Ɩｌⅼℓ𝐥𝑙𝒍𝓁𝓵𝔩𝕝𝖑𝗅𝗹𝘭𝙡𝚕ǀΙ𝚰𝛪𝜤𝝞𝞘ⲒІӀ‎‎‎‎‎‎‎‎ⵏᛁꓲ𖼨𐊊𐌉‎‎łɭƗƚɫ‎‎‎‎ŀĿᒷ🄂⒈‎⒓㏫㋋㍤⒔㏬㍥⒕㏭㍦ ⒖㏮㍧⒗㏯㍨⒘㏰㍩⒙㏱㍪⒚㏲㍫ǉĲ‖∥Ⅱǁ‎𐆙⒒Ⅲ𐆘㏪㋊㍣Ю⒑㏩㋉㍢ʪ₶ⅣⅨɮʫ㏠㋀㍙][l‎\|∣⏽￨1‎۱𐌠‎𝟏𝟙𝟣𝟭𝟷IＩⅠℐℑ𝐈𝐼𝑰𝓘𝕀𝕴𝖨𝗜𝘐𝙄𝙸Ɩｌⅼℓ𝐥𝑙� 𝓁𝓵𝔩𝕝𝖑𝗅𝗹𝘭𝙡𝚕ǀǀΙ𝚰𝛪𝜤𝝞𝞘ⲒІӀ‎‎‎‎‎‎‎‎ⵏᛁꓲ𖼨𐊊𐌉‎‎łɭƗƚɫ‎‎‎‎ŀĿᒷ🄂⒈‎⒓㏫㋋㍤⒔㏬㍥⒕㏭㍦⒖㏮㍧⒗㏯㍨⒘㏰㍩⒙㏱㍪⒚㏲㍫ǉĲ‖∥Ⅱǁ‎𐆙⒒Ⅲ𐆘 ㏪㋊㍣Ю⒑㏩㋉㍢ʪ₶ⅣⅨɮʫ㏠㋀㍙][oంಂംං०੦૦௦౦೦൦๐໐၀‎۵ｏℴ𝐨𝑜𝒐𝓸𝔬𝕠𝖔𝗈𝗼𝘰𝙤𝚘ᴏᴑꬽο𝛐𝜊𝝄𝝾𝞸σ𝛔𝜎𝝈𝞂𝞼ⲟоჿօ‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ഠဝ𐓪𑣈 𑣗𐐬‎øꬾɵꝋөѳꮎꮻꭴ‎ơœɶ∞ꝏꚙൟတ]&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;あとはこれに対して入力された文字列がマッチするかをチェックすれば、紛らわしい文字列かどうかの判定ができるというわけです。&lt;/p&gt;&#xA;&lt;p&gt;テストコードでは &amp;ldquo;𝓗℮𝐥1೦&amp;rdquo; が &amp;ldquo;Hello&amp;rdquo; にマッチすることが確認できます。紛らわしい文字列として真で、元の&amp;quot;Hello&amp;quot;と同値ではないなら、誤認することを狙った&amp;quot;Hello&amp;quot;のニセモノだ、というわけですね。&lt;/p&gt;&#xA;&lt;p&gt;Confusables のリスト中には日本語の紛らわしい文字(ハと八とかニと二とか)もあります。『カタカナの「ノ」はスラッシュと似ている』という定義もあり、&amp;ldquo;and/or&amp;rdquo; に間違うパターンを出してみるとこんな風になりました。カタカナの「ノ」だけじゃなく斜め線に見える文字もたくさんUnicodeにあるんですね。&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Regexp pattern: [a⍺ａ𝐚𝑎𝒂𝒶𝓪𝔞𝕒𝖆𝖺𝗮𝘢𝙖𝚊ɑα𝛂𝛼𝜶𝝰𝞪а⍶℀℁ꜳæӕꜵꜷꜹꜻꜽ][n𝐧𝑛𝒏𝓃𝓷𝔫𝕟𝖓𝗇𝗻𝘯𝙣𝚗ոռɳƞη𝛈𝜂𝜼𝝶𝞰ᵰǌ][dⅾⅆ𝐝𝑑� 𝒹𝓭𝔡𝕕𝖉𝖽𝗱𝘥𝙙𝚍ԁԁᏧᑯꓒɗɖƌđ₫ᑻᒇʤǳʣǆʥ][/᜵⁁∕⁄╱⟋⧸𝈺㇓〳Ⳇノ丿⼃⧶⫽⫻][oంಂംං०੦૦௦౦೦൦๐໐၀‎۵ｏℴ𝐨𝑜𝒐𝓸𝔬𝕠𝖔𝗈𝗼𝘰𝙤𝚘ᴏᴑꬽο𝛐𝜊𝝄𝝾𝞸σ𝛔� 𝝈𝞂𝞼ⲟⲟоჿօ‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ഠဝ𐓪𑣈𑣗𐐬‎øꬾɵꝋөѳꮎꮻꭴ‎ơœɶ∞ꝏꚙൟတ][r𝐫𝑟𝒓𝓇𝓻𝔯𝕣𝖗𝗋𝗿𝘳𝙧𝚛ꭇꭈᴦⲅгꮁɽɼɍғᵲґ𑣣mⅿ𝐦𝑚𝒎𝓂𝓶𝔪𝕞𝖒𝗆𝗺𝘮 𝙢𝚖𑜀₥ɱᵯ]&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;&amp;ldquo;andノor&amp;rdquo; と入れると、&amp;ldquo;Matched&amp;rdquo; となるわけです。&lt;/p&gt;&#xA;&lt;p&gt;日本語ドメインもあまり普及していないし、日本語に紛らわしい文字を混ぜた文字列で何かをすり抜けられるというユースケースもそんなにないかもしれませんが、まあそういう必要があればこういったチェックをつけるのでしょう。&lt;/p&gt;</description>
			</item>
			<item>
				<title>Debian の perf を高速化するパッチと、そのGPL的な背景</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/</link>
				<pubDate>Tue, 28 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/</guid>
				<description>&lt;p&gt;Cargo の &lt;a href=&#34;https://github.com/flamegraph-rs/flamegraph&#34;&gt;flamegraph&lt;/a&gt; ツールが&lt;a href=&#34;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911815&#34;&gt;Debian の perf のせいでとても遅い&lt;/a&gt;という話。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/example_cropped.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/example_cropped_hu_9c524255cc8709fc.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/example_cropped_hu_ce280d565fd6d098.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/example_cropped_hu_4dc32e8f18544df0.webp 2284w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/debian-perf-slowness-comes-from-license-incompatibilities/example_cropped.png&#34; width=&#34;2284&#34; height=&#34;862&#34; alt=&#34;Cargo flamegraph sample&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;perf コマンドがプロファイルデータを解析する際に libbfd をリンクすればずっと高速になるのですが、&lt;a href=&#34;https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=911815#15&#34;&gt;Debian のポリシーでライセンスに違反するため libbfd をリンクすることはできない&lt;/a&gt;そうです。&lt;/p&gt;&#xA;&lt;p&gt;[修正] コメントでの指摘を受け修正しました&lt;/p&gt;&#xA;&lt;p&gt;perf のライセンスが GPL バージョン2、libbfd のライセンスが GPL バージョン3+ であり、これら二つのプロジェクトを&lt;a href=&#34;https://mag.osdn.jp/07/06/05/0114203&#34;&gt;合法的にリンクさせる方法がない&lt;/a&gt;そう。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://salsa.debian.org/kernel-team/linux/blob/master/debian/rules.d/tools/perf/Makefile#L45&#34;&gt;Debian の Makefile では、わざわざ生成された perf コマンドが libbfd をリンクして「いない」ことをチェックするようになっている&lt;/a&gt;のですね。&lt;/p&gt;&#xA;&lt;p&gt;そんな訳で、Debian の perf は dso 一つごとに addr2line コマンドをパイプで呼び出す(そして、毎回サブプロセスは終了する)方式となっています。&lt;/p&gt;&#xA;&lt;p&gt;しかし、大量の perf 呼び出しを行う flamegraph を作ろうとした @leastfixedpoint さんは、いつまでも帰ってこない perf コマンドに業を煮やし、libbfd をリンクさせない範囲での高速化を考えました。&lt;/p&gt;&#xA;&lt;p&gt;この&lt;a href=&#34;https://eighty-twenty.org/2021/09/09/perf-addr2line-speed-improvement&#34;&gt;パッチでは&lt;/a&gt;、addr2line を別プロセスとして起動させたままにしておき、dso をデータとして送り付け結果を受け取っても、addr2line プロセスを終了させないことで、とあるデータ量に対して68倍速く処理が終わるようにできたそうです。&lt;/p&gt;&#xA;&lt;p&gt;対象のデータ量によっては気にならない程度の速度差なのかもしれませんが、同じようにここの処理速度で困ってる人もいるんじゃないでしょうかね。&lt;/p&gt;&#xA;&lt;p&gt;via &lt;a href=&#34;https://news.ycombinator.com/item?id=28468751&#34;&gt;Hacker News&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Fake Contacts - Androidの連絡帳をフェイク連絡先で汚染するためのツール</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/</link>
				<pubDate>Fri, 24 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/</guid>
				<description>&lt;p&gt;スマートフォンが覚えている連絡先、電話帳として掛けるときにも名前から知人友人を探せますし、相手から電話が掛かってきた時も番号ではなく掛けてきた人や会社の名前を表示してくれて便利ですよね。&lt;/p&gt;&#xA;&lt;p&gt;そんな連絡帳に、嘘の連絡先情報を追加するという Android アプリが Fake Contacts (&lt;a href=&#34;https://github.com/BillDietrich/fake_contacts&#34;&gt;BillDietrich/fake_contacts&lt;/a&gt;)です。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/fake-contacts-screenshot.jpg&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/fake-contacts-screenshot_hu_c7ea825202e708b.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/fake-contacts-screenshot_hu_db2d774870613661.webp 740w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/fake-contacts-android-app/fake-contacts-screenshot.jpg&#34; width=&#34;740&#34; height=&#34;1580&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;アプリケーションは Google Play ストアには無い(Google から承認されていないのでしょう)ため、GitHub のリリースページからダウンロードして開発者モードでインストールする必要があります。&lt;/p&gt;&#xA;&lt;p&gt;アプリを起動すると、ランダムに作られた連絡先の氏名、メールアドレス、電話番号が表示されるので、それでよければ create ボタンを押して連絡先を一つ追加できます。次々繰り返せば、連絡帳には存在しない架空の個人情報がどんどん増えていきます。&lt;/p&gt;&#xA;&lt;p&gt;デフォルトでは、生成される名前の先頭が &amp;ldquo;Z&amp;rdquo; で始まるので、ABC順で見ている分にはフェイクの連絡先は末尾に固まって出てくるだけで、実用上邪魔にならないということです。Zで始まる名前も皆無ではありませんが…&lt;/p&gt;&#xA;&lt;p&gt;生成したフェイク連絡先をまとめて削除する機能もついています。&lt;/p&gt;&#xA;&lt;h3 id=&#34;偽の連絡先を入れる目的&#34;&gt;偽の連絡先を入れる目的&lt;/h3&gt;&#xA;&lt;p&gt;でも、何のためにニセ連絡先を入れる必要が?&lt;/p&gt;&#xA;&lt;p&gt;音声SNS の ClubHouseがIT業界人を中心に大盛り上がりしたのはまだ今年の初めのことですが、この ClubHouse の友人招待も、アプリに連絡帳へのアクセスを許すことで行われるという仕組みでした。&lt;/p&gt;&#xA;&lt;p&gt;ClubHouse に連絡帳を見せないと登録できないし、連絡帳を見せることで自分の連絡帳に載っている相手を招待できるという仕組み。いわば人気の新サービスに登録できる権利でもって連絡帳情報を開放させる取引になっていました。&lt;/p&gt;&#xA;&lt;p&gt;ClubHouse は連絡先のデータの活用をそのラインを超えてはしないかもしれませんが、ユーザーの連絡先情報にアクセスできる権限というのは非常に強力なものだと思います。ユーザーのネットワーク情報を入手できますし、メールアドレスや電話番号を使えばネットワークに次々と勧誘をかけることだって可能です。&lt;/p&gt;&#xA;&lt;p&gt;このアプリは、連絡先情報を渡すサービスに対して、渡したリストの S/N 比を低下させようというものです。リストのほとんどが存在しない人物の情報で、メールアドレスも不達であればリストの価値は減り横流しの動機も減る、かもしれません。フェイクの電話番号はどこかに掛かってしまうという問題も起こりそうですけれど。&lt;/p&gt;&#xA;&lt;p&gt;一人が情報汚染(data poisoning)を仕掛けても、連絡先情報を悪用しようとする取得者側にすぐに問題が起こることはないでしょうし、リストの全員にどのみちスパム等を送られるのであれば、登録してある本物の友人知人に迷惑が掛かることも変わりません。&lt;/p&gt;&#xA;&lt;p&gt;多数の人が簡単にフェイクの連絡先を与える選択を持てれば、悪用業者にダメージを与えることもできるのかもしれませんけども。&lt;/p&gt;</description>
			</item>
			<item>
				<title>Slacktyping - Slackで相手がタイプ中にこちらもタイプ中と見せかけるジョークツール</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/slacktyping-makes-you-pretend-always-replying/</link>
				<pubDate>Fri, 24 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/slacktyping-makes-you-pretend-always-replying/</guid>
				<description>&lt;p&gt;自称&lt;a href=&#34;https://github.com/will/slacktyping&#34;&gt;とても良いプログラム(very good program)&lt;/a&gt;は、Slackチャットにおいて相手がタイプしている時に、相手にあなたも「入力しています(typing&amp;hellip;)と表示するという小さな Ruby プログラムです。&lt;/p&gt;&#xA;&lt;blockquote class=&#34;twitter-tweet&#34;&gt;&lt;p lang=&#34;en&#34; dir=&#34;ltr&#34;&gt;I made a VGP (very good program) that makes it so it looks like I’m typing on slack whenever anyone else is typing, and stops when they stop.&lt;br&gt;&lt;br&gt;Everyone loves it so far and doesn’t find it annoying at all!&lt;a href=&#34;https://t.co/W8e2EKuVXX&#34;&gt;https://t.co/W8e2EKuVXX&lt;/a&gt; &lt;a href=&#34;https://t.co/ZZd01GxYqg&#34;&gt;pic.twitter.com/ZZd01GxYqg&lt;/a&gt;&lt;/p&gt;&amp;mdash; will leinweber (@leinweber) &lt;a href=&#34;https://x.com/leinweber/status/989267343002951680?ref_src=twsrc%5Etfw&#34;&gt;April 25, 2018&lt;/a&gt;&lt;/blockquote&gt;&#xA;&lt;script async src=&#34;https://platform.x.com/widgets.js&#34; charset=&#34;utf-8&#34;&gt;&lt;/script&gt;&#xA;&#xA;&#xA;&lt;p&gt;あなたも何かタイプしてるかと思って相手が手を止めると、あなたの「入力しています」も止まります。&lt;/p&gt;&#xA;&lt;p&gt;とても良いプログラムかもしれませんが、これ使われたらイライラしそうです。&lt;/p&gt;&#xA;&lt;p&gt;このような小さなジョークプログラムを多数公開しているウィル・レインウェバーさん(Will Leinweber)、&lt;a href=&#34;http://bitfission.com/&#34;&gt;彼のサイト&lt;/a&gt;にもネタが多数仕込まれています。&lt;/p&gt;&#xA;&lt;p&gt;via Hacker News&lt;/p&gt;</description>
			</item>
			<item>
				<title>PoW! Capthca - クライアント側で重い計算をさせるCAPTCHA</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/pow-captcha/</link>
				<pubDate>Fri, 17 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/pow-captcha/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;https://git.sequentialread.com/forest/pow-captcha&#34;&gt;PoW! Captcha&lt;/a&gt; は、&lt;a href=&#34;https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AB%E3%83%BC%E3%83%95%E3%83%BB%E3%82%AA%E3%83%96%E3%83%BB%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0&#34;&gt;Proof of Work (作業量証明)&lt;/a&gt;を組み込んだ CAPTCHA ライブラリです。&lt;/p&gt;&#xA;&lt;p&gt;ウェブサイトのコメント欄で使われるときのイメージが公開されています&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/pow-captcha/powcaptcha-screencast.gif&#34;&gt;&lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/pow-captcha/powcaptcha-screencast.gif&#34; width=&#34;476&#34; height=&#34;522&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;コメント欄の下にプログレスバーが出ていて、これがブラウザが与えられた計算をこなしている進度を示すようです。計算が完了すると投稿ボタンが押せるようになり、コメントを投稿できます。&lt;/p&gt;&#xA;&lt;p&gt;どうしてこれでスパム投稿が防げるかというと、ブラウザ上で計算するときに消費される計算資源はスパマーのマシンにあるからですね。スパム投稿で同時や連続で多数のコメントをしようとすると、クライアントPC のリソースが大量に使われて動かなくなると。&lt;/p&gt;&#xA;&lt;p&gt;PoW Captcha も、Pow Captcha が参考にした同様の &lt;a href=&#34;https://mcaptcha.org/&#34;&gt;mCaptcha&lt;/a&gt; も、このPoW 方式の利点としてユーザーの追跡をする必要がないことを押し出しています。ローカルで計算させるだけですからね。&lt;/p&gt;&#xA;&lt;p&gt;依存ライブラリもなくコードもコンパクトだということです。&lt;/p&gt;&#xA;&lt;p&gt;チューリングテストではないので正確には CAPTCHA じゃありませんが、不正な大量リトライを予防するという意味では CAPTCHA と同様の働きをするのかもしれません。&lt;/p&gt;&#xA;&lt;p&gt;via &lt;a href=&#34;https://news.ycombinator.com/item?id=28486918&#34;&gt;Hacker News&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>OKグーグル、東京からベトナムまで徒歩で行きたい - 出てきたルートは?</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/</link>
				<pubDate>Thu, 16 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/</guid>
				<description>&lt;p&gt;Googleマップで「東京→ハノイ」を検索すると、飛行機で6時間ぐらいと出るのですが、&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-plane.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-plane_hu_51ffa41d2b80f7fb.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-plane_hu_9086682ee90bc365.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-plane_hu_fb32b88afa0f491e.webp 1129w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-plane.png&#34; width=&#34;1129&#34; height=&#34;794&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;移動方法を徒歩にすると、こんなルートが出てきます&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-walk.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-walk_hu_6a80f7a940d9a3f.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-walk_hu_17905bcd544ad555.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-walk_hu_8ff295dc69b3d6c0.webp 1134w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/google-maps-tokyo-to-hanoi-by-walk/google-maps-tokyo-to-hanoi-by-walk.png&#34; width=&#34;1134&#34; height=&#34;809&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;キレイに中国を避けてますね。距離にして1万6000km、3163時間は眠らずに歩き続けたとしても4か月以上。&lt;/p&gt;&#xA;&lt;p&gt;八戸～苫小牧、宗谷海峡、間宮海峡はフェリーを使うようなので完全徒歩とは言えませんが。元ネタではウラジオストクからハノイになっていて、こちらはすべて徒歩ルートです。最近なにかとニュースになるアフガニスタンのカブール周辺も通りますし、簡単な道程とは言えません。&lt;/p&gt;&#xA;&lt;p&gt;「Googleマップが中国に対応していないから?」 と、「北京→上海」を入れてみると、ちゃんと結果が表示されます。&lt;/p&gt;&#xA;&lt;p&gt;reddit の議論では、&lt;a href=&#34;https://en.wikipedia.org/wiki/Restrictions_on_geographic_data_in_China&#34;&gt;中国の地図情報データの安全保障上の規制&lt;/a&gt;でデータ利用が制限されているからではということでした。特に国境周辺の地図情報は得られなかったり、利用するとまずいことになったりするんでしょうかね。&lt;/p&gt;&#xA;&lt;p&gt;「新型コロナウイルスで入出国が禁止されているからでは?」という意見もありましたが、COVID-19以前からGoogleマップでの中国国境の扱いはこんな感じだったと反論がありました。&lt;/p&gt;&#xA;&lt;p&gt;via &lt;a href=&#34;https://www.reddit.com/r/MapPorn/comments/pop15d/shortest_route_to_walk_from_hanoi_to_vladivostok/&#34;&gt;reddit&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Steam の開発者アカウントを使ってサービスをポルノ倉庫にする濫用事例</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/</link>
				<pubDate>Tue, 14 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/</guid>
				<description>&lt;p&gt;PCゲームプラットフォーム Steam で提供されていた &lt;a href=&#34;https://steamcommunity.com/workshop/browse/?appid=1497030&amp;amp;browsesort=mostrecent&amp;amp;section=readytouseitems&amp;amp;actualsort=mostrecent&amp;amp;p=1&#34;&gt;EZ VR Video Player&lt;/a&gt; というVRビューワーアプリが、アプリと無関係なポルノ画像の交換場所になっていたそうです。&lt;/p&gt;&#xA;&lt;p&gt;4月に&lt;a href=&#34;https://mmofallout.com/steam-dev-uses-unreleased-game-as-porn-stash/&#34;&gt;MMO Fallout ブログが指摘&lt;/a&gt;したところによれば、このビューワアプリがリリースされる以前から、modやゲームデータを共有するワークショップに多数のデータファイルがアップロードされており、その中に多数のポルノ画像が含まれていたということ。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.gamespark.jp/article/2016/01/01/62801.html&#34;&gt;Gamespark の解説&lt;/a&gt;によれば、Steam のワークショップというのは『「メーカーによる審査はなく、ユーザーが自由にダウンロード可能」という形式』で運営されることも多いそうで、設定次第では誰が何を置くのも自由な緩い場所なのでしょう。Gamespark の記事でも盗作のアップロードなどトラブル事例が紹介されています。&lt;/p&gt;&#xA;&lt;p&gt;しかし、今回リリース「前」にワークショップにデータをアップロードできていたらしいということは、このVRアプリの開発者かその関係者がデータをアップロードしていたということで、単にアプリを購入したユーザーがやったわけではないことを意味するようです。&lt;/p&gt;&#xA;&lt;p&gt;このMMO Fallout の最初の指摘や、それを受けた reddit での議論からだいぶ時間が経っていますが、先週になって開発者自信による開発停止の発表があり、その直後にSteam を運営する Valve 社による配布停止が発生したようです。掲示板やワークショップ等は今でも閲覧できていて、指摘されたワークショップには一般のデータしか表示されていないようで、開発者かValve社のいずれかが削除したのでしょう。掲示板など他の場所ではまだ書き込みが残ってるのですが、アプリの配布を停止にしても何もかもは止めないのですね。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/ez-vr-video-player-workshop-items.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/ez-vr-video-player-workshop-items_hu_e1a2497cbee90b9e.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/ez-vr-video-player-workshop-items_hu_c2b964ff59c54bb.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/ez-vr-video-player-workshop-items_hu_621e18869251b633.webp 1016w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/steam-dev-account-abused-as-porn-storage/ez-vr-video-player-workshop-items.png&#34; width=&#34;1016&#34; height=&#34;724&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hacker News では、この件から連想されるとして Docker Hub に違法コピーのPCソフトウェアを保管するユーザーの存在も紹介されています。ポルノの内容がアジア系だったことや、今も残る掲示板等に中国語の書き込みも多いことから、グレートファイアウォールでアクセスできる海外のサイトが厳しく限定・監視されている中国のユーザーが、開発者としてアクセスできるサービスで大きなファイルを保存できる場所を荒らしているのではという考察も出ています。&lt;/p&gt;&#xA;&lt;p&gt;アプリの開発には関連するファイルの容量が大きくなることもあり、開発者向けのサービスを隠れ蓑に別のファイルを保管したり交換したりする濫用ユーザーの存在はは各サービスの提供社を困らせる存在でしょうね。&lt;/p&gt;&#xA;&lt;p&gt;via &lt;a href=&#34;https://news.ycombinator.com/item?id=28507804&#34;&gt;Hacker News&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Joy Generator - 小さな喜び(joy)を集めたウェブサイト</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/</link>
				<pubDate>Fri, 10 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/</guid>
				<description>&lt;p&gt;アメリカの公共ラジオ局NPR が公開した&lt;a href=&#34;https://apps.npr.org/joy-generator/&#34;&gt;Joy Generator (喜び生成器)&lt;/a&gt; は、&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-top.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-top_hu_2c856c749a8f7578.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-top_hu_a16c87dfde6f619b.webp 764w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-top.png&#34; width=&#34;764&#34; height=&#34;723&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;現時点で提供されているのは、以下のようなもの&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-stories.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-stories_hu_83147e33dc7a07e2.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-stories_hu_60c123c80ac399f1.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-stories_hu_cb97d33f9d4db774.webp 783w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-stories.png&#34; width=&#34;783&#34; height=&#34;726&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;追想しよう - 懐かしい動画の再生&lt;/li&gt;&#xA;&lt;li&gt;フローを見つけよう - お絵かき&lt;/li&gt;&#xA;&lt;li&gt;落ち着く音 - 絵筆の走る音、ささやき声、日常に溢れる心地よい音などを再生&lt;/li&gt;&#xA;&lt;li&gt;それを待つ - 植物の発芽と成長を見る&lt;/li&gt;&#xA;&lt;li&gt;視点を変えてみる - 宇宙や星に関する映像&lt;/li&gt;&#xA;&lt;li&gt;詩を簡単に - 与えられた文章を消し込むことで詩を作る&lt;/li&gt;&#xA;&lt;li&gt;カワイイの力 - 可愛い動物の動画&lt;/li&gt;&#xA;&lt;li&gt;野生の呼び声 - 国立公園の音源を組み合わせてBGMに&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;ちょっとした休憩時間に眺めたり、BGM/BGV にしたりできる小さなページが集められています。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-national-park-sounds.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-national-park-sounds_hu_c2f6fb3f7e2c52fd.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-national-park-sounds_hu_86ab3f81c09b7f04.webp 539w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/joy-generator-collects-small-joys/joy-generator-national-park-sounds.png&#34; width=&#34;539&#34; height=&#34;590&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;野生の呼び声(Call of The Wild)、では、風の音、水の音、蛙の音、鳥の音、を好きなバランスで組み合わせて再生させることもできます。&lt;/p&gt;</description>
			</item>
			<item>
				<title>web2img - 一枚の画像ファイル内にパックしたウェブサイトを展開して動くツール</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/</link>
				<pubDate>Thu, 09 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/</guid>
				<description>&lt;p&gt;&lt;a href=&#34;https://github.com/etherdream/web2img&#34;&gt;EtherDream/web2img&lt;/a&gt; は、ウェブサイトを一枚の画像内にまとめ、またそのまとめた画像をブラウザ上で展開して表示するツールです。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-screenshot.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-screenshot_hu_8df1e010b2d43a83.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-screenshot_hu_47e25b5f187a4de2.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-screenshot_hu_2adf62cb20d04abb.webp 805w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-screenshot.png&#34; width=&#34;805&#34; height=&#34;349&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;複数の html だけでなく、CSS ファイルや JavaScript ファイル、画像や動画などリソースファイルをすべてエンコードして一枚の画像が出てきます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-akky-test-1.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-akky-test-1_hu_3d78d657b93965e3.webp 20w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-akky-test-1.png&#34; width=&#34;20&#34; height=&#34;20&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;画像は簡易なリードオンリーのファイルシステムのように使われています。これを展開するためにはトップの html と JavaScript ファイル一つだけが必要で、これを置いたウェブページからは ServiceWorker 経由で先に作成した画像ファイルが読まれ、デコードされて格納されていた html/css/js/jpg/mp4 等を使った元々のウェブサイトが動きます。(&lt;a href=&#34;https://caniuse.com/serviceworkers&#34;&gt;ServiceWorker に対応しているブラウザ&lt;/a&gt;で)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://etherdream.github.io/web2img/&#34;&gt;こちらに生成用のツールが公開されて&lt;/a&gt;いて、実際に試せます。&lt;/p&gt;&#xA;&lt;p&gt;Step 1 でローカルのウェブサイトのフォルダを指定すると、&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-generated.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-generated_hu_87ea653c9a97ef4f.webp 377w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-generated.png&#34; width=&#34;377&#34; height=&#34;524&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;フォルダに入っているファイルの情報と、ファイルをパックした画像が生成されます。&lt;/p&gt;&#xA;&lt;p&gt;この画像ファイルをインターネット上の&lt;a href=&#34;https://raw.githubusercontent.com/akky/web2img_test/master/web2img-akky-test.png&#34;&gt;適当な場所&lt;/a&gt;に置いて、Step 3に入力すると、&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-extractor.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-extractor_hu_2ffbd74e63e98293.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-extractor_hu_73a9bc2f4fc88d24.webp 665w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-extractor.png&#34; width=&#34;665&#34; height=&#34;422&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;この画像ファイルを展開して動かすための JavaScript ファイルを生成してくれます。&lt;/p&gt;&#xA;&lt;p&gt;この js をこれを呼ぶ最小の html ファイルの二つを置くと、そのページではパックされた&lt;a href=&#34;https://akimoto.jp/web2img/&#34;&gt;元々のウェブサイト/ページが表示されました&lt;/a&gt;。JavaScript を止めたり、ServiceWorker 非対応のブラウザで開くと何も表示されません。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-result.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-result_hu_dcd126789f8815a3.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-result_hu_79e41fcb19bd986c.webp 661w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/web2img-packs-website-into-single-image-file/web2img-result.png&#34; width=&#34;661&#34; height=&#34;360&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;</description>
			</item>
			<item>
				<title>Minus - 100回だけつぶやける新SNS</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/</link>
				<pubDate>Tue, 07 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/</guid>
				<description>&lt;p&gt;新しく登場した&lt;a href=&#34;https://minus.social/&#34;&gt;Minus&lt;/a&gt; はツイッターのようなマイクロブログサービスですが、ツイッターと違うところは投稿の回数に100回の上限が設定されていること。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-top.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-top_hu_8b4060d0e80abe02.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-top_hu_920fb3838bf37ff8.webp 695w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-top.png&#34; width=&#34;695&#34; height=&#34;814&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;100回投稿すると、それ以上は投稿できなくなってしまいます。101回投稿して試したわけではないですが…&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-demo.gif&#34;&gt;&lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-demo.gif&#34; width=&#34;1200&#34; height=&#34;418&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post_hu_55310dd2634568e5.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post_hu_276cf9c599ef7901.webp 508w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post.png&#34; width=&#34;508&#34; height=&#34;379&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;登録して&lt;a href=&#34;https://minus.social/members/akky/activity/2501/&#34;&gt;つぶやいてみました&lt;/a&gt;。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post-done.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post-done_hu_dbaaf5edd0404262.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post-done_hu_ffe423f93223fca7.webp 507w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/minus-microblog-limits-you-100-posts/minus-social-first-post-done.png&#34; width=&#34;507&#34; height=&#34;533&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;投稿フォームにあるカウンターが、99に減っていますね。&lt;/p&gt;&#xA;&lt;p&gt;100回しか投稿できないとなるとツイッターのような気軽さはなくなるかなとも思いましたが、投稿したものの削除や編集をできてしまいます。削除すれば新たな投稿もできてしまうので、自分が厳選した100文を置いておくような使い方を想定しているんでしょうか。&lt;/p&gt;&#xA;&lt;p&gt;回数を限定する、というのは一つの差別化要因だと思います。でも差別化だとすると100回は多いかなあ。&lt;/p&gt;&#xA;&lt;p&gt;via Hacker News&lt;/p&gt;</description>
			</item>
			<item>
				<title>嘘から出たドラクエ風Google Maps</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/</link>
				<pubDate>Thu, 02 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/</guid>
				<description>&lt;p&gt;グーグルが&lt;a href=&#34;https://japan.googleblog.com/2012/04/google-8.html&#34;&gt;ドラクエ風Googleマップを発表&lt;/a&gt;したのが 2012年のエイプリルフール。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/google-april-fools-nes-google-map.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/google-april-fools-nes-google-map_hu_4a22f7b3f9802845.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/google-april-fools-nes-google-map_hu_a9b02e6722b155e1.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/google-april-fools-nes-google-map_hu_b1e08532ffd27e17.webp 828w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/google-april-fools-nes-google-map.png&#34; width=&#34;828&#34; height=&#34;443&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;その時はエイプリルフールのネタでしかなかったのですが、このファミコン風Google Maps を自作した人が現れました。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map_hu_ccaaa67f2c967ae.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map_hu_e966a6e924c24eba.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map_hu_12c9dbc3e26a8e15.webp 920w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map.png&#34; width=&#34;920&#34; height=&#34;511&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-yokohama.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-yokohama_hu_a27a6be6dd15c191.webp 410w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-yokohama.png&#34; width=&#34;410&#34; height=&#34;210&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;ファミコン/ドラクエの祖国に敬意を表してか、&lt;a href=&#34;https://www.youtube.com/watch?v=5vcPnk-6saw&#34;&gt;デモ動画&lt;/a&gt;の中では東京周辺から川崎、横浜を訪れています。(3:20頃)&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-making-tiles.png&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-making-tiles_hu_15155ff6dd79fb1b.webp 378w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/nes-google-maps/real-nes-google-map-making-tiles.png&#34; width=&#34;378&#34; height=&#34;374&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;元の衛星動画をグリッドで切り、グリッド内の色の多さをカウントし、色に合わせたファミコン風のタイル地形を割り当てるという形で8bit地形図を作り、それをタイルサーバとして動かしているということ。&lt;/p&gt;&#xA;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;&#x9;&#x9;&#x9;&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/5vcPnk-6saw?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;&#x9;&#x9;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;現在はラズベリーパイ上などを外に置いたままNESにつないでの動作ですが、NESのカートリッジの形に収めるようがんばりたいそう。&lt;/p&gt;&#xA;&lt;p&gt;via Hacker News&lt;/p&gt;</description>
			</item>
			<item>
				<title>traintrackr - むき出し基盤にLEDでメトロ運行や雨雲情報を表示するサイネージ</title>
				<link>https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/</link>
				<pubDate>Wed, 01 Sep 2021 00:00:00 +0000</pubDate>
				<guid>https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/</guid>
				<description>&lt;p&gt;米ボストンの&lt;a href=&#34;https://www.cambridgehackspace.com/&#34;&gt;ケンブリッジ・ハックスペース&lt;/a&gt;とイギリスのロンドンから生まれた &lt;a href=&#34;https://www.traintrackr.co.uk/&#34;&gt;traintrackr&lt;/a&gt; (&lt;a href=&#34;https://www.traintrackr.io/&#34;&gt;アメリカ向けサイト&lt;/a&gt;) は、基盤上に配置された LED が鉄道のリアルタイム運行情報を表示するというガジェットです。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/tfl3_animated.gif&#34;&gt;&lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/tfl3_animated.gif&#34; width=&#34;800&#34; height=&#34;495&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;地下鉄の路線図に合わせて配置された LED で、車両が現在いるところが光ります。&lt;/p&gt;&#xA;&lt;p&gt;開封動画を観ると、ロンドン地下鉄(大)はかなりの大きさ。&lt;/p&gt;&#xA;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;&#x9;&#x9;&#x9;&lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/676xnII2OZg?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;&#x9;&#x9;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.traintrackr.co.uk/product/tfl-central1&#34;&gt;地下鉄セントラル線&lt;/a&gt;やノーザン線など、単発の路線を扱ったものもあります。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/tfl_central1_animated.gif&#34;&gt;&lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/tfl_central1_animated.gif&#34; width=&#34;600&#34; height=&#34;338&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.traintrackr.co.uk/product&#34;&gt;ニューヨークやサンフランシスコなどアメリカの地下鉄&lt;/a&gt;も。日本の都市はありませんでしたが、運行データの入手ができれば作ってくれるかもしれませんね。&lt;/p&gt;&#xA;&lt;p&gt;対応していない路線についてもデータを送りリクエストできるようにするそう。また、表示内容を自分でプログラムしなおすこともできるそうです。&lt;/p&gt;&#xA;&lt;p&gt;他には、雨雲の状況を表示する &lt;a href=&#34;https://www.traintrackr.co.uk/product/ukrain1&#34;&gt;UK Rain Tracker&lt;/a&gt; も。こちらもニューヨークやカリフォルニアなど複数の地域版が販売されています。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/ukrain1_2.jpg&#34;&gt;&lt;picture&gt;&#xA;  &lt;source type=&#34;image/webp&#34; srcset=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/ukrain1_2_hu_af004a023b754401.webp 480w, https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/ukrain1_2_hu_e990ff4fc5e0bf85.webp 768w, https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/ukrain1_2_hu_2353c2f616dd62d6.webp 1024w&#34; sizes=&#34;(max-width: 56rem) 100vw, 54rem&#34;&gt;&#xA;  &lt;img src=&#34;https://labs.cybozu.co.jp/blog/akky/2021/09/traintrackr-led-circuit-board-signage/ukrain1_2.jpg&#34; width=&#34;1024&#34; height=&#34;641&#34; alt=&#34;&#34; loading=&#34;lazy&#34; decoding=&#34;async&#34;&gt;&#xA;&lt;/picture&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;今なら液晶に表示すれば十分かつ情報量も増やせそうですが、あえてむき出しの基盤で作ったところがデザイン性なんですかね。自宅の近所の雨雲ディスプレイなんかは、玄関に飾っておくのもよさそう&lt;/p&gt;&#xA;&lt;p&gt;via Hacker News&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
