ReviewTechnologyTips

DuckDuckGo のススメ

ブラウザを使わない人はいないと思いますが、デフォルトの検索エンジンは何を使っていますか?

僕は2000年付近からずーーーーーーっと Google だったのですが、2016年くらいから DuckDuckGo を使っています。(2000年付近のGoogleはシンプルで正確でそりゃあもう🆒でよかった)

DuckDuckGoは検索結果がイマイチとか、日本語の精度がーとか言われますが、それを克服してかつ有り余る活用方法をご紹介します。

とは言っても既に使っている人なら当たり前なことしか書いてないので読み飛ばして結構です

DuckDuckGoとは?

DuckDuckGoは検索エンジンの1つです。近年Googleを始めとする、検索や広告プラットフォームが情報を集めすぎている事が問題になっています。EUやカリフォルニア州は既に規制する法律ができて、今後さらにプライバシー保護は加速していくでしょう。

DuckDuckGoはプライバシーのを最も重視していて、プライバシーポリシーは次の一行だけです

DuckDuckGoは、個人情報を収集または共有しません。

https://duckduckgo.com/privacy

素晴らしい。シンプルでいいですねー

検索エンジンのデフォルトに設定する理由

iOS8以降のSafariやFireFox、表示される広告を削除してお金になるアイデアで急成長中のBraveなどなど、DuckDuckGoはデフォルトでほとんどのブラウザにアドオン無しで検索エンジンのデフォルトに設定できます。プライバシー重視のブラウザなどは既にDuckDuckGoがデフォルトのサーチエンジンに設定されています。

意外に知らない方が多いんですが、アドレスバーに打ち込んだ文字は全部検索エンジンに送られてます。ちょっとメモがわりに、、なんて使ってる方は要注意です。送られてもいいように、プライバシー保護に力を入れている検索エンジンを選択しておけば何か送られてもだいぶマシです。

DuckDuckGoは別にデフォルトに設定しなくても使えます。が、後に説明するBangを使うためにはデフォルトに設定することを強く勧めます。ブラウザーのデフォルト検索エンジンに設定することで、いちいち検索窓に移動しなくてもアドレスバーから色々な操作ができるので検索速度が上がります。

iOS13の 設定 -> Safari -> 検索エンジンの画面

これだけ覚えれば使える、Bang!

これが一番の理由です!これを使わなきゃ使ってる意味が当社比250%減です!!マジで!!

「!bang」と書いていますが、「!bang」は「」自体を入力する必要はありません。キーワードの後ろでも前でも途中でもいいので、一つ以上の空白を開けて「!」始まるキーワードを入れることで、様々な機能を呼び出せます。これはBangという機能で、、 Zero-Click-API と言って、、まあ技術的なことはいーやw とにかく使ってみればわかります。むちゃくちゃ便利です。下のこれだけ覚えれば困ることはないどころか、色々捗ります。

最初の検索結果にジャンプする「!」

検索したいキーワード+「!」で検索結果をスキップして最初の結果にジャンプします。Googleのi’m feeling luckyボタンと同じです。固有名詞とかで検索結果が分かりきっている時に便利です。例えば「! insaneworks」でこのページに自動的にジャンプします。

検索結果をGoogleで検索する!g

検索したいキーワード + 「!g」でGoogleで検索しなおします。検索結果が日本語圏で地域ローカルだとかそういうときは重宝します。「!g ヤマト 伝票番号」とかでGoogleの機能も使えます。「!s」でGoogleプライバシー検索プロバイダのStartpageで検索もできます。

Amazonで商品を検索する !a

検索したいキーワード+「!a」でAmazonで直接検索したのと同じ画面に飛びます。検索エンジンからAmazonの商品を検索するのは効率が悪いです。でも、いちいち検索してAmazon出して、検索窓にキーワード入れて検索して、、なんてやってる方や、モバイル環境などでは一発で検索結果へ飛べるので通信量と時間の節約になります。ちなみに、「!aus」で US Amazon、「!auk」で UK Amazon 「!ade」で DE Amazon で検索できます。

Wikipediaで記事を検索する !w

検索したいキーワード+「!w」です。これも⬆️と同じくいちいち検索エンジン使うより速く記事に辿り着けます。また、日本語版の記事があって、それの英語版の記事を見たいときとか結構めんどくさいのですが「!wen」でWikipedia英語版の記事を直接検索できます。

Twitterでつぶやきを検索する !tw

検索したいキーワード+「!tw」です。地震だ!とか電車止まってる!とかサイト落ちてる!?とかで何気に即時系の情報が欲しい時に使えるTwitter。アプリ起動してーの検索に移ってーの、、めんどくさいです。こいつで楽しましょう。

さらにクイックに!!

Bangを使うときに覚えておくといい操作として、「⌘-L」があります。⌘-Lはブラウザならアドレスバーにフォーカスします。これを組み合わせて使います。どういうことか伝わりにくいですね。

具体例を出すと、今いているDuckDuckGoの検索結果を Amazon で検索しなおすには、「⌘-L」->「Ctrl-A」->「!a」->「Enter」とすることで Amazon で開きなおします。

参考リンク

DuckDuckGo is Now a Default Search Engine Option on Android in the EU

DuckDuckGoのプライバシー

DuckDuckGo Zero-click Info API Documentation (duckduckgo) | RapidAPI

2020年に利用すべき検索エンジン21選

その他のDuckDuckGoで使ってる便利なBangとかは次回予定

Diary

突然ですが、ポーカーにハマりました笑

こんにちは!

突然ですが、ポーカーにハマりました。
皆さんってポーカーと聞いてどんなイメージを思い浮かべますか?
チェスを筆頭としてマインドスポーツとして有名な競技。僕は最初そういうイメージでした。
ポーカーと言っても日本ではブラックジャックというゲームを指すこともあるらしいのですが、僕がハマったのはテキサスホールデムというものです。
そんなポーカーに僕がハマってしまったというお話を今日はしたいと思います。

簡単にポーカーのルールをご紹介します。
普通のトランプのカード(ジョーカーを除く)を使って行うゲームで、まず手札が2枚配られます。手札は自分だけが見ることができます。そのあと3枚、1枚、1枚という順番で全員が見える形でトランプをめくっていって、手札の2枚と場の5枚のカードから一番強い役を作った人が勝ちというものです。

場のカードをめくる前後(合計4回)に持っているチップ(お金みたいなやつ)をかけることができ、勝った人がチップを総取りできるというルールです。
ゲーム性としては他のプレーヤーのお金をいかに巻き上げるかというところにあります。

このようにとても簡単なルールのゲームなんですが、やってみたらこれがまた奥が深い。
手札が強い時だけ高額の賭け金を掛けて弱い時は賭けなかったり小額だけ賭けていると、周りのプレーヤーに強いのか弱いのかすぐにバレてしまいますし、強いからと言ってかけ過ぎてしまうと相手の方がもっと強かった場合に大損をしてしまいます。

人によってもプレイスタイルが様々です。
最初の手札が弱くても少ない確率で超強い役がつくれることがあり、それを狙って毎回積極的に賭けてくるプレイヤーもいれば、最初の手札がそこそこ強いくらいだったら賭けないで超強い手札を引くまでじっくり息を潜めるようなプレイをする人もいます。

やってみて感じたこととしては、結構その人のもともと持っている性格というのが大きくプレイに影響してくるような印象がありました。
例えば僕なんかは少額で連続で勝っているとそんなに強くない手札でも最初から強気に賭けてしまい、利益の全てが吹き飛ぶ大損失を被ってしまうようなことがありました。

ポーカーはリアルの場でもオンラインでもプレイできますが、日本では賭博行為になってしまうので、お金に換金出来る形のポーカーは出来ません。
ですが、日本にもポーカーをプレイできるお店はあります。

僕がよく行っているお店はチップを購入してプレイして、プレイが終わったら購入したチップをお店に預けて次回来店時に引き出してプレイすることができます。(チップの引き出しは新規購入よりも少し安いです!)
中には退店したらチップは全てなくなってしまうお店もあるみたいです。

皆さんぜひ一度、リアルの場でポーカーをプレイしてみてください〜!!

Diary

INSANEWORKSに入社した山田です(後編)

せっかく大学に入学したものの、一度社会に出て働いたことがあった自分には学生という立場がいまいちしっくりこなかったのか、2年在籍して中退してしまいました。

大学を中退してからは5年ほど、スマートフォンアプリ+サーバーAPIの開発の仕事をずっとやっていました。

そんなこんなで大学を中退してから5年ほどが経ち、システム開発・保守をずっとやってきて、これからも同じことをやり続けるのか、自分は今後どうなっていきたいのか今まで以上に考えるようになってきました。

今まで以上に大きな成果を上げたい、多くの人にとって必要とされるものを作りたい、でも今の自分にできることはシステム開発・保守とその延長線にあるものだけ。でもまずは今自分の強みであるところをトコトン強化していくべきなんじゃないか。そう思うようになりました。

考えてみれば今までは人数が10~30人くらいの会社で比較的規模の小さいシステム(一人で全容を把握できるレベルの)の開発ばかりやってきたなと。ならばその対極にあるバカでかいシステムを作ろう。そこで思いついたのは業務基幹システムでした。色々な人と話しているうちに、金融系が業務基幹システムの中でも特に複雑だという話を聞きました。

そんなこんなで気づいたら、金融系システムを作る環境に身を置いていました。

ただ、本業でできる事なんて限られている。もっといろいろなプロジェクトにかかわってもっとスキルを伸ばしたい。そんなことを考えているときに、INSANEWORKSの代表社員白塚さんに一緒に仕事をしないかと声をかけていただきました。

元々白塚さんとは大学入学前に働いていた職場で一緒に働いていて、それ以来ずっと交流させていただいていて、スキル的にも人間的にも尖っていて一緒にまた仕事ができたら楽しそうだなと思っていました。

まだ具体的にどういう仕事をしていくのか模索中という感じではありますが、色々楽しみながら幅広く仕事をしていきたいと思っていますので、今後ともよろしくお願いします!!

Diary

INSANEWORKSに入社しました山田です(前編)

どうもはじめまして!

2019年の12月からINSANEWORKSに参加させていただきましたエンジニアの山田です。

平日のお昼は別の会社で仕事をしながら、平日夜と土日を中心に仕事をさせていただく予定です。

まずは簡単に自己紹介させていただきます!

今までいろいろなシステムを開発をしていましたが、中でもスマートフォンアプリ(iOS)を一番長く作ってきました。その次にアプリのバックグラウンドとしてのAPIサーバー、webフロントやそれらをホストするクラウド(AWSなど)です。

今は少し方向性が変わって、金融系の業務基幹システムの開発をやっています。今に至るまでの経緯をお話しさせていただこうと思います。

初めてプログラミングをしたのは確か中学生の頃だったと記憶しています。当時パソコンのオンラインゲームのFPSにハマってて、自分でもゲームを作ってみたいと思ったのが最初に興味を持ったきっかけだったと思います。VisualStudioの学生向けエディションを親に買ってもらい、DirectXをラップしたDxLibというライブラリで2Dのゲーム、Flappy Birdの劣化版の様なゲームを作って楽しんでいました。

少し時間がたって高校生になったときにiPhone3GSが日本でも発売されて、親に買ってもらったのをきっかけに、iPhone向けのアプリの開発をはじめました。じゃらんのAPIを使って、近場にあるホテルを検索するアプリを作ってリリースしました。その時初めて自分が作ったアプリをほかの人に使ってもらえることが思っていたより楽しいと思いました。もっとも、リリースした動機は広告収益目当てでしたが。。(結局、、トータルで1万円にも満たなかったです)

もっと本格的にアプリ開発をしたいと思いアルバイトで勉強しながらプログラミングをさせて貰える会社はないかと探していました。

そんなころ、SFC(慶應義塾大学湘南藤沢キャンパス)の卒業生がやっている、スマホゲームやゲーム向けのプラットフォーム等を作ってる会社にアルバイトの応募をしたところ、なんと雇用してくれることになりました。

そこで最初に任せていただいた仕事は、スマートフォンアプリ同士が低レイテンシで通信できるようにする機能をミドルウェアとして提供するという内容の開発でした。少し技術的に説明すると、NAT内にあるスマートフォン同士がUDPでお互いにパケットを送信してNATの外からパケットを受け取れるようにし、NAT内同士でもP2P通信をできるようにするというものでした。

そんな感じで1年くらいが過ぎ、その時の上司のSFC卒業生によかったらSFCを受けてみないかと誘っていただきました。自分としてはそのころSFCがどういう大学なのか全くイメージがありませんでしたが、IT関係に強い大学という話を聞いて興味をもったので、その上司に推薦状を書いていただいて合格することができ、進学することになりました。

===後編につづく===

ReviewTips

asciinema

ターミナルでの作業は、ステップごとにコードハイライト効かせて手順書を作ることが多いのですが、手順が長いと結構しんどい作業です。

かといって YouTube で動画撮ってもコピペできるわけじゃないし、script コマンドとかは vim とか tmux の全画面を書き換えるようなコマンドを使うとぶっ壊れで再現できません。

そこでターミナルでの作業を記録、共有してくれるサービス、asciinemaです。まずはdemoをどうぞ

このdemoだけで大体使い方わかっちゃいますね。埋め込みもできて、さらにコピペもできます。すごく使いやすい!

tmux起動して256カラー出して、vim起動して、、いろいろやってもまず記録がおかしくなることはありませんでした

使い方も超簡単 asciinema rec で記録を開始したら、exitするまで記録してくれます。その後、 upload するかローカルに保存するか聞いてきます。uploadする場合はデフォルトは private になってるので URL が流出しない限りまあ大丈夫です。

自分の環境のターミナルで再生もできます。これが地味に便利!

アカウントを作る(メールアドレス入力するだけでパスワードなど不要)と記録したセッション一覧を管理できます。このあたりの仕組みを調べていた方がいたので詳細はそちらをどぞ。

PIB hack のためのネタ帳, etc,,, asciinema

セッションの内容はtextファイルなので、神経質な方は中身をチェックしてから upload してもいいかもしれません。

追記: redmineで asciinema を埋め込めるように Redmine の Plugin の additionals に pull req 送ったら merge してもらえました!

Added asciinema.org macro #70