WiFiテザリングのSSIDに危険な単語を使った乗客、飛行機から排除される

デトロイトからモントリオールに向かうGoJet航空の飛行機が、ヤバいWiFiのアクセスポイントがあるということで離陸できず、ホットスポットの持ち主を排除したというニュースがありました。 出発予定時刻の20:10を過ぎ、客室乗務員がWiFi機器を切るように何度注意しても、オフにならないWiFiアクセスポイントが有ったそう。機内放送でこのままだと警察を呼びますよと警告しても無駄で、結局10台ほどの緊急車両が飛行機を囲み、警官が乗り込んで来て機器の持ち主らしき二人、ケベック州から来ていた42歳男性と31歳女性の二人を連れ出して行ったそう。 https://twitter.com/ReclaimerRob/status/1218041835177893890 WiFiの電波が飛んでいるかを確認して、止まるまで出発しないなんて運用がされているんですね。あまり聞かないけど日本でもそうなんでしょうか。 しかし、緊急車両の数といい、今回の事件がここまでの大騒ぎになったのは、そのWiFiアクセスポイントの名前がREMOTE DETONATOR(遠隔

Fingerbot – リモート操作でボタンを押せるデバイス

メーカーよりレビューしてほしいとサンプルの貸し出しを受けたものです。家電のリモート操作は僕の家でも少しずつ進めていることもあり、面白そうなので借りてみました。 Fingerbot は、スマートフォンから操作できる物理スイッチのガジェットです。 https://www.kickstarter.com/projects/adaprox/fingerbot-control-all-devices-remotely-through-voice-or-app?lang=ja 押すという一動作だけを行うとても単純なデバイスですが、押して動くものは家の中じゅうにあるので、工夫次第で様々な家電などを遠隔操作することができるというわけです。 スイッチにつけたくなるけど、これじゃ液晶が見えなくなる こうか? 邪魔をしないという意味ではこう? はみ出てるので、両面テープだけではこれはなんともならなさそう。取り付けは追加で何か多少の工夫が必要そうですね。手動「でも」押したいなら場所の決め方は慎重にしないと。 手に取った時は「すごい小さいな」と思ったんですが、こうやって設置場所を考えるともっと小さくてもいいかと思うこともあります。でもまあ、バッテリー内蔵で長期間充電せずに動く(←サイトの説明では)ためには、こんなものなのかな。 パソコンはタイマーで起動しようと思えばできるはずなので、あまり意味ないけど。 マンションの鍵はスマートロックにしているのですが、建物のオートロックは結局専用鍵で開けないといけない。Fingerbot でタッチすれば自分で呼び出して自分で開錠することもできそうです。 サンプルには一種類のアタッチメントだけついてきました。先っぽの部分が取り外せて、交換できます。タッチパネルを叩くのに向いたアタッチメントなど複数違った形状のものがセットで購入できるようなので、操作したい相手のスイッチに応じて使い分けることで、よりミスなくスイッチのオン・オフができるということでしょう。 単純に押すだけの似たデバイスは前に見たことがあるので、Fingerbot が優れているとすればこのアタッチメントが交換できるところなのかなと思いました。既存のアタッチメントではどうしてもうまくいかないところを、3Dプリンタで自作・あるいは有料で作ってもらうとかもありそうです。 https://www.youtube.com/watch?v=-B6yVNf9S44 Kickstarter のキャンペーン(今日まで)で1個入手するなら$29、実際のところはインターネットとつなげるアダプタ(Adaprox

AI Dungeon – AI自動生成で無限に遊べるテキストアドベンチャーゲーム

AI Dungeon は、テキストアドベンチャーゲームをAIにより自動生成してくれるというPython 製のツールです。 Jupiter Notebook で動くものが配布されており、Google Colaboratory 上で自分の AI Dungeon を動かすことができます。 ブラウザで数分待つと始まる。簡単です。 大昔にあった Zork シリーズ的なUI。「動詞」で始まる命令文を入れることで、何かが起こります。 「それをやるとループしてしまいます」という返答だらけになり詰まったこともありますが、それでも大昔の同種のテキストアドベンチャーゲームに比べると、かなり自由度が高い。思いついた動詞で適当に命令しても、それに合わせた結果を返してくれます。このへんはさすが自動生成。 ただし、ストーリー展開に整合性が取れているかというと、自分が遊んでみた範囲では、辻褄が合わなかったり急に場面が変わったりの連続で、寝ている時に見る夢に近いような印象を受けました。 AI Dungeon

The Deep Sea – 深海の深さをブラウザの縦スクロールで表現

The Deep Seaは、深海の生物を紹介するウェブサイトです。 面白いのは、深さを縦長のウェブページで表現しているところ。 スクロールダウンすると、海の深さが少しずつ深くなっていき、その深さで観察される生物が表示されます。 生物の名前やその特徴の紹介文などはすべてテキストなので、Chrome ブラウザの翻訳機能を使えば自動翻訳の日本語でも読むことができます。 それにしても、このページ、長い長い。ページの最後は、1960年にマリアナ海溝の最深部に到達したトリエステ号のチャレンジを紹介しています。 via

abbreviate – 英単語の省略形を機械的に決めてくれるツール

dnnrly/abbreviate は、英単語を決まった規則で省略してくれるという、単機能のツールです。 Goで書かれていて、フルに書いた複数の英単語の並びを、内蔵の辞書で決まっている短縮形に置き換えます。 指定によってキャメルケース、パスカルケース、スネークケースなどにもしてくれます。 辞書ファイルに定義されていない単語は出ないため、実用にするにはもっと辞書の拡張が必要かなとも思います。 僕は基本的には省略形の利用に反対なのですが、プログラミング言語や環境によっては、命名に文字数の上限があるものもあるでしょう。abbreviateコマンドの作者は、AWSのリソース名をつける際に上限が問題になることが多くてこのツールを思いついたということです。 省略を多用するプログラマーやそのチームにおいて、元の英単語が必ずこの省略形になる、という保証をツールでするのであれば、ツールを使わないよりはずっと良いのかなとも思いました。 via Hacker

facepalm

有名WordPress プラグインのYoast SEO、500万+のブログ管理者に望まぬバナー広告を表示

Yoast SEOといえば、ワードプレスのSEO対策をしてくれるプラグインで最も有名なもののひとつです。 そのプラグインが、北米の国民的特売日であるブラックフライデー前に、ワードプレスの管理画面に派手な広告バナーを勝手に表示した、として騒ぎになっています。 https://twitter.com/indextwo/status/1200070409741357056 バナーのサイズは 1015px x 102px、しかもYoast プラグインのページではなく管理画面のどのページにいっても表示されたそう。 Yoastプラグインのサポートフォーラムもたいへんなことになってます。 無料で使えて信頼もあり、2万5千件以上ある過去のレビューのほとんどは星5つなのですが、今回の件で雪崩のような不評コメントが延々と続いています。 WordPress

playball – コンソールでメジャーリーグの試合経過を見るツール

paaatrick/playballは、ターミナル画面でMLBの途中経過を見るためのツールです。 起動すると現在行われている試合のリストが表示され、選択するとその試合のここまでの打席結果など詳細も表示することができます。 …はずなのですが、ローカルで試してみたのですが、エラーになってしまいます。調べると試合がないオフシーズンはエラーメッセージが出るだけというチケットがありました。動かすのは春までお預けですね。 CUIの描画にはblessed とReact-blessedが使われています。 Reactベースなんだ。 via Hacker

JSONCrush – JSONをURIに圧縮して載せるためのライブラリ

KilledByAPixel/JSONCrush は、JSONをURLに載せやすい形に変換するライブラリです。 JSONCrushのデモサイト。JSON形式のデータを左上に入力すると、それをテキストとして圧縮し(↓)、さらにURIとして使える文字に縁故度しています(→)。 今回入れてみたJSONでは、そのままURIエンコードした場合に比べて52%、約半分のサイズとなりました。 URLにユーザーが入力した結果のJSONデータをなるべく小さくして載せるというのがライブラリの目的です。URLに再現のためのパラメータが全部載っていれば、結果をブックマークしてもらえばいつでも同じパラメータのページが再現できます。サーバーサイドでいろいろ面倒な処理をして覚えておく必要がありません。 そのままURLEncodeする手もあるけど、URLのサイズ上限(2000バイトちょっと)に引っ掛かるのは避けたい、と。HTTPパラメータとして個別に受け取ればもっとコンパクトにできるのでしょうけど、JSONのまま渡せるのは場合によっては楽なのでしょう。作り手側に楽という意味ですが。 使ってるJSCrush ライブラリが変換部分を担っていて、これは特定の文字列内でテキストをエンコードしてくれるもののようです。JSCrushのデモサイトはこちら。 JSCrush は minify したものしかないらしく、 その動作を解析してる人がいました。この解説によれば、JSCrushライブラリは、1KbyteのJavaScriptで何ができるか、というコードゴルフコンテストの2012年の作品で使われたものだそうです。 via Hacker

Codem Ipsum – ソースコードを Loren Ipsum化

JavaScript のソースコードを左側のペインに入れると、Loren Ipsum風に関数・変数名を置き換えて右側に表示してくれる、というwebサービスです。 本やウェブサイト制作時の文章のダミーとして使われることで有名な Lorem Ipsum のように、ソースコードのダミーとして使うことができるということ。 作者は「文法的には正しいまま、ダミーのコードを作りたかった」とのことです。変換後のコードも動くのか、は不明です。たぶんいろいろ不具合がでるんじゃないかな。 ソースコードは公開されたサイトのhtmlそのままですが、GitHub にも上がっています。 via Hacker

AdBlock Radio – 機械学習+ユーザー投稿でラジオ番組の広告やトークを飛ばす

AdBlock Radio は、名前の通り、ラジオ広告をブロックするためのサービス/ツールです。音声データから、ラジオ番組のトーク、音楽、そして広告を判別させ、広告やトークの部分を除外することができます。

広告抜きpodcastラジオ再生ツール buffer

AdBlock Radio を使ったwebアプリ buffer の Docker 版を手元で動かしてみました。起動して localhost をブラウザで開くと、カタログから podcast ラジオ局を最大4局まで選ぶ画面になります。

4局について、「音楽を飛ばす」「トークを飛ばす」のチェックを入れて開始ボタンを押すと、サーバアプリケーションが podcast データをバッファしていきます。

バッファされたラジオ音源は上のように色分けされていきますが、青が音楽、緑がトーク、赤が広告と思われる箇所となります。トークや広告を聴かない設定にしておくと、緑や赤に再生が差し掛かったところで、次の青まで再生が飛ばされ、音楽が終わっても次の音楽がすぐに続きます。

とは言っても判定も完全ではなく、ところどころに灰色の「何かわからなかった」部分がまだらに入ったりもします。CM の一部が音楽として再生されたり、ラップなど言葉が多い音楽ではトーク(緑)や不明(灰)の細かい帯のようになったりしました。

最初、なんで4局選ばせるのかな、と思ったのですが、CMやトーク部分を飛ばしてずっと聴いていると、その局の再生が最新に追いついてしまうから、次の局、次の局へと切り替わっていく作りなんですね。4局分のデータを使って、音楽だけを途切れずに流し続ける仕組みということになります。

ラジオ局の情報はCommunity Radio Station Boardから取得したものをベースにしているようです。このサイトにはコミュニティFM局を中心に日本のラジオ局も多数載っていますが、Adblock Radio のリストには日本の局は含まれていないようです。

トークやCMの判定はスペイン語など英語以外のラジオ局でもそれなりに動いているのを確認したので、おそらく登録して試せばそこそこ動くのでしょうね。

影響

ラジオ局は広告料もテレビやネットに比べて安いそうですし、こんなadblockツールを使う人が増えたら広告料への影響が大きいでしょうね。

個人的には、ラジオにCMが入るのは昔からなので慣れているというか、ウェブ広告やYouTube の広告などに比べるとそれほど気になりません。

ウェブ広告はポップアップや全画面広告、動画広告などいろいろなヤンチャが過ぎたために、広告ブロックツールを使う人を増やしてしまった歴史がありますが、ラジオ局が無くなってしまうような影響が出るのであれば、この Adblock Radio のようなツールは少しやりすぎなのではないかなあ、とも思います。

まあ、それとは別に、放送内容を自動でカテゴライズして切り出すというアイデアは面白く、何か他にもいい応用があるかもしれません。

via Hacker News

子音だけ取り出された英単語から、元の単語を推測するための復元ツールサービス

Missing Vowels は、オンラインで使える英単語推測のためのツールです。

英単語から子音だけを取り出す、というのは、パスワードの作り方などで見かけることがある手法。たとえば、

詳しく → kuwasiku → kwsk

これは英単語じゃないか。こういうものです。

He can not read this. → H cn nt rd ths.

この手法のことを disemvoweling と呼ぶみたいです。英語版Wikipedia によれば、SMSなど文字数が決まっているところで入りきらない文章を打つために使われるケースが今の主流のようです。

母音が抜かれた文章、とても読みづらいし英語に慣れていないほど復元は大変そうです。子音の組からそれになりそうな英単語を検索するのは辞書データから機械的にできそうだ、と思って探してみたら復元を補助してくれるツールとしてこのサイトが見つかりました。

“THS” をフォームに入れ、英語の一般的な単語からだけ探させると、左側に「母音を抜いたらTHSになる単語」のリストが返ってきます。

文章をそのまま復元してくれるともっと楽なんですけどね。

滅多にこれを使いたいシチュエーションになることはないかもしれませんが、ツールがあって検索すれば使えるということは覚えておくといいかもしれません。

このサービス、ドメインも.fr ですが、英語以外にフランス語にも対応しているようです。

Webtest.app – ウェブサイトの表示が広告ブロックの有無でどう変わるか測定してくれるサービス

Webtest.app は、同じウェブサイトに対してアドブロックを使っていない場合と使った場合に、内部的にどれだけ読み込むファイルやドメインが違うかというのを測定してくれるサイトです。

誰かが既に調べたサイトだと、調査結果がキャッシュされてすぐに出ます。そうでなければ少なくとも数十秒は掛かるようで、リクエストして後から見に来るのがいいかもしれません。

Asahi.comで試してみました。

倍のリクエストを読み込み、これだけたくさんのクッキーを積んでも2秒ぐらいしか読み込みが違わないのは、さすがに毎日膨大なアクセスを捌いているだけのことはありますね。

広告収入で運営しているサイトは特に、広告ブロック機能を使っているユーザーはお客さんではないと思うでしょうから、広告ブロックした場合の性能はそれほど気にしないかもしれません。しかしそれでも、各社の広告スクリプトを載せただけでユーザー体験やその背後で動くデータ量がどれだけ増えるかは、確認しておいてもいいかもしれないと思います。

ムーアの法則と歴代のCPU・GPUの性能を比較した動画

インテルの共同創業者ゴードン・ムーア氏が1965年に提唱したムーアの法則、「18カ月で半導体の集積率は倍増していくだろう」という予言でした。

実際にこれまで開発・発売されたCPU・GPU の性能と、ムーアの法則の伸びを時系列で比較して見せてくれる動画がこちら Moore's Law graphed vs real CPUs & GPUs 1965 – 2019

Wikipedia によれば、ムーア氏の予言も「この先10年ぐらいは」という留保つきの予言だったそうです。そのあと何十年もムーアの法則を達成するCPUが出続けてきたのは業界の競争のたまものですね。

以前から「そろそろムーアの法則についていくのも限界では」という話が何度も出てきましたが、それでも追いつく技術が登場するという繰り返し、この動画を見るとわかります。

とはいっても、無限に集積度が上げられるはずもなく、ムーアの法則に置いて行かれる時は早晩やってくるのではと。

via Hacker News

konduct – イベント用コード・オブ・コンダクト作成とハラスメント通報のためのwebサービス

konduct は、テック系カンファレンスなどで近年増えてきている、イベント運営や発表時のさまざまな差別やハラスメント問題に対処するための新ウェブサービスです。

サービスは大きく二つの機能にわかれているようです。

  • コード・オブ・コンダクト(Code of Conduct, 行動規範)の文章を作る支援機能
  • 参加者等からの通報を受け取る機能

コード・オブ・コンダクトの作成は、イベント名を与え、何を行動規範として取り入れるかを選択することでテンプレートから作成されます。サンプルの Code of Conduct を見てみると、

Regardless of gender, gender identity and expression, sexual orientation, disability, physical appearance, body size, race, age or religion. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks.

性別、性指向、障害、人種、年齢、宗教など多様な要素に関わらずハラスメントを許さないことや、

  • Harmful or prejudicial verbal or written comments related to gender, sexual orientation, race, religion, disability;
  • Inappropriate use of nudity and/or sexual images (including presentation slides);
  • Inappropriate depictions of violence (including presentation slides);

具体的に何をハラスメントとするかという定義の列挙などが生成されます。

もう一つのレポート機能は、イベントサイトなどに貼り付けた通報ボタンから、ウェブで情報を選択しながら運営に対してレポートが送れるようになっています。

運営側は、寄せられたレポートを一覧してみることができます。同じ事象に対して複数のレポートが集まってくれば、実際にそのハラスメントが発生したという確証も得やすいでしょうね。

料金は、単発のイベントでの利用が$100(1万1000円)、利用無制限のプランが月額$80(8800円) ということです。

流行に乗ってコード・オブ・コンダクトを取り入れてみたものの、それが実際に守られているかどうかは様々だという話も聞きます。コード・オブ・コンダクトが存在するというだけでなく、レポート用のボタンがサイトに大きく載せられていることも、イベントでの不快な体験を未然に抑止することにつながるかもしれませんね。

via Hacker News

チャーチルが言ってないチャーチルの名言

国際チャーチル協会が「誤ってチャーチルが語ったとされる名言 (Quotes Falsely Attributed to Winston Churchill)」という記事を公開しています。

25歳の時に自由主義者でなければ情熱が足りない。35歳までに保守主義者になってなければ知能が足りない。

よくツイッター等で見かける気もするこの言葉、チャーチルは15歳で既に保守主義者で、35歳では自由主義者だったそうなので、このようなことを言うはずがないそうです。

勇気とは、起立して声に出すことである。勇気とはまた、着席して耳を傾けることでもある

これも記録にないそうです。

もしも地獄の真っ只中にいるのなら、そのまま突き進むがいい。

これも記録になし。

人は得るもので生計を立て、与えるもので人生を築く

2005年にロッキード・マーティン社がコマーシャルでチャーチルの言葉として利用したそうですが、記録になし。

成功は決定的ではなく、失敗は致命的ではない。大切なのは続ける勇気だ

記録にない。ほぼ同じくらいの量、これを「エイブラハム・リンカーンの名言」とするサイトが存在するそうですが、リンカーン大統領の記録の方にもこの言葉は見つからないそうです。本当は誰が言ったんでしょうね。

(イギリス)政府は戦争か不名誉かを選ぶ羽目になり、不名誉を選んだ。そして戦争も得た – ネビル・チェンバレンに対し

記録にないが、別の時にロイド・ジョージが少し似ている違う言葉を語っているそうです。「数週間のうちに戦争か不名誉かを選ばなければならないだろう。どちらを選ぶかについてほとんど迷いはない」というもの。

長年の熱心なチャーチル卿ファンサイトのようですが、言ってないことまで言ったことにされるのは、ファンとしても納得いかないものがあるでしょうね。

laptop.css – 画像をラップトップ化してくれるスタイルシート

laptop.cssは、画像の周りにアスキーアートのラップトップ枠をつけてくれるという単機能のCSSスタイルシートです。オープンソースです。

3種類のサイズのラップトップが用意されています。

どういう時に有用なライブラリなのか、今一つわかりませんが。

縦横比に注意して画像を用意しないといけないみたいですね。そして、画像につけたリンクが無効になってしまった。

(rss フィード経由の方は元ページを開いて見てください)

via Hacker News

パスワードを決める画面でのアホなルールを集めたリポジトリ dumb-password-rules

dumb-password-rules/dumb-password-rules

パスワードの登録や更新画面で出てきたおかしな制約やエラーを募集している GitHub リポジトリがあります。

あほなパスワードの文字制限を分類

多数の事例が載っていますが、代表的なものをグループ化してみます。

文字種や記号を謎に制限

「% は使えません」「\ は使えません」 – 内部でエスケープしちゃうんですねわかります。ちゃんと作ってあればこんな特例要らないと思うんですが。

「記号で使えるのは ? ! $ €% & * _ = – +. ,:; / () {} [] ~ @ # だけです」

「記号はアンダースコアとハイフンだけ使えます」

「数字や記号は使えません」

「使える記号がありますが、どの記号が使えるかは秘密です」

「パスワードは5-15文字です(が、スペースは文字数としてカウントしません)」

「パスワードに使えない記号は、あなたがそれを入れてみた時だけエラーで教えます」

「パスワードは数字8桁で、0で始まってはいけません」 – 数値型か

「#, %, &, =, /, < などのハッキング文字は使えません」 - ハッキング文字!

長さ指定系

「パスワードは8,9,10文字でなければいけません」

「パスワードは7文字か8文字でなければいけません」

「パスワードは6文字です」 – ATMの暗証番号か

「パスワードは6文字以上です (あとどこにも書いてませんしエラーの原因にも出ませんが最大20文字です)」

「メールアドレスは8文字以上にしてください」 – ユーザーのメールアドレスで選別するの?

「登録フォームのパスワードは最大24文字ですが、実際に使われているパスワードは最初の16文字です(更新フォームで判明)」

技術で解決系

右クリックや Ctrl キーを効かなく(alertが出る)することで、パスワードマネージャーの利用を防ぐ

パスワードを入れる箇所が2か所あるが、コピペやChrome拡張からの自動入力を不可能にすることで、パスワードマネージャーの利用を防ぐ

「パスワードは120日ごとに変更しなければならず、一度使ったパスワードは二度と使えません」

総合力タイプ

「パスワードには記号を含めてください。パスワードには記号は使えません」 どうしろと

「とにかくルール、ルール、ルール!」


顧客や上司がパスワードの文字種について不思議提案をしてきた時に、この事例集を見せて「その発想、やっちゃダメなやつだと笑われてますよ」と言ったら説得できるかもしれません。

via Hacker News

Daytripper – 全自動「ボスが来た」装置

Daytripper は、誰かが近づいて来たときにやっていたこと(マインスイーパーなど)を隠す、いわゆるボスが来たボタンを、センサーを持った小型機器との連動で自動でやってしまおう、というプロジェクトです。

実際の利用の様子を見ていただくのが一番わかりやすいかと思います。二つの機器のうち、レーザーセンサーの方をボスが来るときの動線に配置し、受信側を Windows などパソコン側に接続します。

センサーに反応があれば、パソコン側のUSBにつないだ受信機が任意のキーストローク信号を発し、好きなキーを押したようにできる、と。このキーがたとえば Windows + M なら、開いていたウィンドウが勝手に閉じられる、というわけ。上のデモ動画では、全ウィンドウが閉じられていますね。もっと凝ったキー操作を設定すれば、仕事用のウィンドウ群だけを残して表示することもできるでしょう。

作者の dekuNukem さんは製品化もしていて、組み立てキットで $59.99(6490円) 、完成品で $66.98(7260円) でイギリスから購入することもできます。仕様やファームウェアがオープンソースで公開されているので、自作もできるようです。

Windows はドライバ不要で最初から対応していて、USBキーボードで動くなら Linux や MacOS, Android などでも問題ないでしょうとのこと。

ボスが来ようと来まいと、やるべき仕事が終わってればゲームでもはてブでも好きにしてればいいじゃないか、と思いますが、そのあたりは会社の仕事のやりかたにも依るんでしょうね。

まあ、さぼりを隠すというユースケースを示すことで受けそうだし、実際話題になっているのですが、この価格でこの機能に特化したガジェットが買えるなら、もっと真面目な活用法もいろいろありそうですね。

via Hacker News

SocialSharePrivacy – ソーシャルメディアの埋め込みボタンに訪問を追跡させないライブラリ

SocialSharePrivacy は、ウェブサイトの提供者が、利用者に対してプライバシーが保たれるソーシャルメディアボタンを提供するためのライブラリです。

デモページを動かしてみました。スライダーでボタンを有効にしない限り、フェイスブックやツイッターのサーバに情報は送られません。

まずボタンを有効にするアクションを起こすと、初めてメディアが提供するボタンが有効となり、この時点でそのページに訪問したことは各サービスにも伝わります。そして、有効になったボタンをクリックすると、「イイネ」等をすることができます。

2回クリックをしなければならなくなった代わりに、そのページに訪問したことは各ソーシャルメディアサービスには知られずに済む、ということになります。

サイト訪問をしていることをソーシャルメディアから常時されるのは困る、しかし、イイネ等をしたい時にはできるようにしてほしい、という多少込み入った要件のサイトがあれば、このライブラリが一つの解決法となるでしょう。

SocialSharePrivacy のコードはすべてGitHub で公開されています。

akky's work blog