「technology」タグアーカイブ

DeepL

未来にまた一歩近づいたようです。
📝

最近は英単語の意味を調べるときなどに辞書を引く機会というのはだいぶ減っているのではないでしょうか。私自身はすっかりウェブに頼るようになってしまっていて、アルク英辞郎 on the WEBLEXICOのオックスフォード英英辞典、Thesaurus.comの類義語辞典を使うことが多くなっています。文章全体をGoogle翻訳に突っ込んでいるという人も多いのではないかと思いますが、Google翻訳もどんどん進化して良くなっているとはいえ、未だあまり自然な文章にはならず、時々おかしな結果になるというのが実情でしょう。

しかし、先日のbackspace.fmの「#335:DeepL翻訳がすごいので在米10年のドリキンは英語を学ぶのをやめるって」という回で話題になっていたDeepLというのが本当に凄いので、私も改めて紹介したいと思います。どんなに凄いかというのは実例を見れば一目瞭然だと思います。

たとえばDetroit Free PressMichigan workers are losing paychecks reminiscent of the Great Depressionという記事の以下のような文章を翻訳してみると、

The recently signed $2 trillion stimulus bill contained rescue measures for businesses and workers, but even that record-size bailout may not be enough to counter the economic effects of coronavirus. President Donald Trump has since talked about a possible $2 trillion more in infrastructure spending to keep people working.

Google翻訳では

最近署名された2兆ドルの刺激法案には、企業と労働者のための救済措置が含まれていましたが、そのレコードサイズの救済策でさえ、コロナウイルスの経済的影響に対抗するには十分ではない場合があります。 ドナルド・トランプ大統領はそれ以来、人々が働き続けるためにインフラストラクチャへの支出がさらに2兆ドル増える可能性があることについて話しました。

というような結果になりました。これでも意味を掴むには問題ないかもしれませんが、一部の単語が翻訳されずに「レコードサイズ」というようなカタカナ語になっていたり日本語としては不自然で、ネイティブな日本語話者が書くような文章にはなっていません。これをそのまま転記して人に読ませるのは明らかに問題のあるレベルです。

しかし一方DeepLの翻訳ツールでは

最近署名された2兆ドルの景気刺激法案には、企業や労働者のための救済措置が含まれていたが、その記録的な規模の救済措置でさえ、コロナウイルスの経済効果に対抗するのに十分ではないかもしれない。ドナルド・トランプ大統領は、それ以来、人々が働き続けるためのインフラ支出でさらに2兆ドルの可能性について話している。

というような恐ろしく自然で正確な文章になっています。若干読点が多いようにも思いますが、普通の日本人でももっとたくさん読点を打つ人はざらにいるでしょう。社内文書などであればこのままでもまったく問題なく使える、ストレスなく読める文章になっているのではないでしょうか。

実は私の場合、英語はあまり困らないのであまり使わないように思うのですが、これは凄いと実感したのはイタリア語から翻訳してみたときでした。イタリア人の友人がFacebookでシェアしていた記事の写真に興味を持ったものの、文章がイタリア語だったのでこれまでならスルーしてしまっていたのですが、DeepLを知ったあとだったので試しに翻訳させてみたところ、驚くほど自然でわかり易い文章になったのでした。

このDeepLが日本語に対応したことはつい先日、3月19日のブログで発表されていますが、日本語、英語、イタリア語のほかフランス語、ドイツ語、スペイン語、ポルトガル語、オランダ語、ポーランド語、ロシア語、中国語に対応しているとのことです。いわゆる先進国を中心に対応していっているということかと思いますが、これほどの性能のものがあらゆる言語に対応したとしたら、SFに出てくるような自動翻訳機ももう夢ではなくなってきますね。このペースなら私が生きているうちに実用化してしまうのではないでしょうか。

Visual Studio Code + Iosevka

飽きっぽい私が20年以上使い続けてきたものとは?
✍🏼

私はいわゆる付属の高校に通っていたのですが、夏休みの間に大学の学生がプログラミングを教えてくれる一週間くらいの講座があり、その名も確か「プログラミング教室」だったと思います。教えてくれる言語は様々で、CBASICはもちろん、Pascal, LISP, Prolog, Forthなどがあったと思いますが、FORTRANCOBOLがあったかどうかは定かでありません。私は3年間毎年受講していたと思うのですが、最初の年にPrologを教えてもらった以外、他の年のことはなぜか思い出せません。

この15歳の夏、Prologを教えてくれたのは大学院生のお姉さんで、他にPrologなんていうマイナーな言語を希望した人がいなかったので、一対一の贅沢な講座となりました。このとき使用していたマシンはHP 9000 Series 300というUNIXワークステーションで、その上で動いていてPrologの実行環境としても使ったのが、その後永きに渡って愛用することになるテキストエディタEmacsとの出会いでした。Emacsは単なるエディタではなく環境だ、などという人もかつていたくらい、Emacs Lispという言語で機能を拡張することができ、テキストの編集だけでなくメールの送受信やウェブブラウザなどとしても使うことができるので、やりたいことは大抵できてしまいます。しかし、GNU Emacsは現在でも開発が続いていて毎年新しいバージョンがリリースされてはいますが、最初のバージョンがリリースされたのが1985年ということでさすがに設計の古臭さは隠せず、あまり人に勧められるようなものではなくなってきました。

私もこれまでに何度も新しいエディタに乗り換えようと思っていたものの、なかなか決定版と思えるものがなく、体に染み付いたEmacsの使い勝手に勝るものが見つからずズルズルと使い続けて20年以上になってしまったのでした。しかしようやく、これならと思えるものが見つかったのですが、それがMicrosoftが開発しているVisual Studio Code (VS Code)です。Microsoftの製品ですが、Mac OS用やLinux用も開発されており、また”Visual Studio”という名前は付いていますがWindowsの開発環境であるVisual Studioとの直接の関係はありません。

VS Codeは「Node.jsを使ったBlinkで描画されるElectronフレームワークを使用」と、わからない人にはさっぱりだと思いますが、要するに最新のウェブ開発系の技術を使用した今どきのエディタであるということです。私自身は組み込み系のソフトウェアエンジニアなので疎い分野ですが、最新技術の恩恵は受けても良いでしょう。このVS Codeも最初はなかなかしっくり来なかったのですが、それが大きく変わったのはお気に入りのフォントを見つけて使い始めたことで、それがIosevkaというものです。

このフォントの魅力の一つはリガチャが使えるということです。普通はリガチャと言うと”fi”をくっつけて”i”の点を省略したり、”AE”をくっつけて一つの文字にしたりというようなもののことですが、このIosevkaはプログラミング用のフォントということで”->”を”→”に置き換えたり、”!=”を”≠”に置き換えたりすることができるのです。実用的な意味はほとんどなく、表示するアプリケーションが対応している必要もありますが、VS Codeではちゃんとリガチャを表示してくれ、これでなんとなく気分が変わります。

また、ThinからHeavyまで9種類のウェイトが用意されていたり、記号や0, a, iなどの文字のスタイルの組み合わせで12種類のバリアントが用意されていて、好みに合わせて使うことができます。私は0に斜線が入るのとアスタリスク(*)が上付きでない方が好きなのでSS04というバリアントを選んで使っていますが、他にもいろいろな文字で微妙な違いがあるので、こだわる人はGithubで公開されているソースから自分で生成した方がいいかもしれません。

なお、ASCII文字部分にIosevkaを使ってNoto Sansと組み合わせて一つのフォントセットにした更紗ゴシックというものも公開されているので、英字と日本語文字などで複数のフォントを個別に指定できないアプリケーションの場合にはこれを利用するとよいのではないでしょうか。VS Codeではウェブブラウザと同じように複数のフォントを指定することができるので、フォントの設定は非常に簡単です。フォント周りは昔からEmacsの鬼門と言えるところだったので、それが拍子抜けするくらい容易だというだけでVS Codeが素晴らしいものに見えてしまいます。

ということで、このVS CodeとIosevkaの組み合わせがとても気に入ってしまい、たとえ仕事でもコードを書くのがとても楽しくなりました。ここ10年くらいは自分でコードを書かないようにしてきたという面もあったのですが、今の新しい環境が楽しすぎて書かずにはいられませんでした。まあそんなことばかりも言っていられないのでほどほどにしておきたいと思います。しかしここまでVS Codeの何がそんなに良いのかということをほとんど書いていませんが、それは今さら私がここで語るまでもないと思うので、ただ「今どきだ」と言うに留めておきます。

View-Master

View-Master革命的進歩。

私は左右の視力が違ういわゆるガチャ目なのが原因なのか何なのか、昔からランダム・ドット・ステレオグラムの類に成功したことがありません。またそれに関連するのかどうなのかもわかりませんが、3D映画なども自然に見ることが出来ず、あまり好きではありません。このため、3D画像の技術についても関心は高くない方なのですが、一方でGoogleの技術には関心を持ち続けているので、Google Cardboardにはちょっと惹かれるものがありました。

Googleの作ったものが段ボール製であることから英語でボール紙を意味するCardboardという名前が付いていますが、これはデバイスの名前であり技術の名前でもあります。ダンボールを折って作る本体に2つのレンズを取り付けて、対応するアプリケーションをインストールして起動したスマートフォンを組み込んで覗き込むと、立体画像のバーチャルリアリティを体験できるというものです。スマートフォンは画面を2分割して左右の目に対応して視差を付けた画像を表示することで立体視が可能となり、スマートフォンに内蔵された加速度センサーにより頭の動きに合わせて画像も動くというわけです。

私も一度体験してみたいということで調べてみると、このGoogle Cardboardに対応したデバイスはいくつもあって、Googleのものと同様の段ボール製のものから樹脂製のしっかりしたものまでいろいろなタイプのものがあります。見た目がかっこいいのはVR ONE GXというZeissの製品ですが、アメリカ国外への発送が行われていないようなのと、現在バックオーダーとなっていること、さらに$120と高価なので諦めます。その次に見てみたのは玩具メーカーMattelView-Masterですが、これがしっかりしていそうな割に日本への送料込みでも$30以下でAmazonで購入できたので、これを試してみることにしました(下記は日本のアマゾンなので割高ですが、すぐに届くはずです)。

Mattel マテル ビューマスターヴァーチャルリアリティスターターパック View-Master Virtual Reality Starter Pack[並行輸入]

もともとView-Masterというのは70年以上前からある玩具のステレオ写真ビューアで、スライド写真が埋め込まれたディスクを本体に差し込んで覗きこむというものでした。これを現代の技術で再発明したのが今売られている最新のView-Masterということになります。さすがに玩具なので子供が多少手荒に扱っても問題ないようにしっかりした作りになっており、値段の割に上質感があります。

iPhoneをケースから取り外さないと装着できないのが面倒ですが、Cardboardアプリをインストールして起動し、View-Masterの内部にあるQRコードを読ませるとビューアの機種が識別されます。この状態でiPhoneをビューア内部に装着し、カバーを閉めて覗き込むともうバーチャルリアリティを楽しむことが出来ます。アプリの操作には入力用のレバーが1つあって、頭の向きでカーソルを合わせてレバーを動かすとクリックできるという仕組みです。

Cardboardアプリでできるのはあくまでデモのレベルのものですが、それでも頭を動かすと画面がそれに追従するというのはなかなか新鮮な体験です。他にもCardboardに対応したアプリはいくつも公開されているので、いろいろ試して遊んでみると良いと思います。ただ、AndroidではYouTubeアプリがCardboardに対応しているらしく、これで立体動画を楽しむことができるようなのですが、iOS版は対応時期未定なので早く対応してほしいところです。

ということで、今のところ実用的な使い方は見つけることが出来ていませんが、非常に可能性を感じさせる技術だと思います。Oculus Riftではさらに凄い世界を体験できそうですが、このCardboardでも新しい世界を垣間見るには手頃でいいのではないでしょうか。