ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

プログラミング

RailsにGoogleのreCAPTCHAを入れる

GoogleのreCAPTCHAとはこれのこと。登録の際にロボットと人間を区別するやつ。 いまだに分かりにくいグニャっとした文字を読ませて入力する形式のCAPTCHAが使われているのが散見される。でもアレってロボットが98%の確率で正解させられるとか聞くし、ユー…

【パズル4】ほとんどのエンジニアには解けるパズル4公開日の事前告知

Webエンジニア向けのパズルシリーズの4作目の公開日を事前告知することにした。パズル4の公開日は2016年1月31日(日)の夜10時(日本時間)とした。事前告知するアイデアはパズル3の解答者kakakayaさんからいただいたコメントにあった。 。◕‿◕。 …

英語ネイティブのエンジニアが英文をタイプするところを間近で見たことがあるだろうか?

人それぞれにムダに勝負してはいけない領域があると思う。 あなたは英語ネイティブのエンジニアが英文をタイプするところを間近で見たことがあるだろうか?外国に住んで英語しか話さない職場で仕事していると、どんなバカでも多少は英語が身に付くし、普段の…

ほとんどのエンジニアには解けるパズル3の解答者へのお礼

ほとんどのエンジニアには解けるパズル3にアクセスしていただいた方、回答いただいた方、ありがとうございます。パズルの解答者に入れていただいたコメントが100を超えたので、一部を抜粋してお礼をここに書く。 楽しい問題でした!- satoshiありがとう…

【パズル3】ほとんどのエンジニアには解けるパズル3

Webエンジニア向けのパズルシリーズの3作目を公開した。プログラム言語を問わず、フロントエンド、バックエンド、iOS、Android、どんな技術を担当しているエンジニアであってもほとんど誰にでも解けるパズルだ。 サイトにアクセスするとHack Me, Baby「ハッ…

エンジニアとしての生き方戦略本『Soft Skills』

『Soft Skills』は主に英語圏におけるエンジニアのキャリアや生き方についてやさしい語り口の英語で解説した本だ。ここで言うソフトスキルのソフトとはソフトウェアのことでない。人とうまくやっていくためのスキル(=Soft Skill)のことだ。で、この本は今…

読んだら最後、試さずにはいられなくなる『ビッグデータの正体』が明かす事例

このところ何冊も購入して読んでいるビッグデータ関連の本の中で群を抜いて読み応えがあったのが2冊ある。ひとつは以前のブログで書評を書いたThe numbers gameで、もうひとつが『ビッグデータの正体』だ。ビッグデータの正体 情報の産業革命が世界のすべて…

ほとんどのエンジニアには解けるパズル2のヒント

ほとんどのエンジニアには解けるパズル2のヒントをもう少し出すことにした。ログ見てるとある箇所で1/3以上の方が停滞していて、それはBase64に関する内容だった。 一応ヒントとしてURLを誘導してBase64のページを見ていただく仕組みにしていた。 これ。 Ba…

ほとんどのエンジニアには解けるパズル2を公開して3日経過した時点での回答者へのお礼

ほとんどのエンジニアには解けるパズル2を公開してからちょうど3日経った。アクセスしていただいた方、回答いただいた方、ありがとうございます。パズルを解くとコメントが入力できる仕組みになっており、そこに入れていただいた方が300を超えたので、…

【パズル2】ほとんどのエンジニアには解けるが、下位20%のダメなエンジニアにだけ解けないパズル?

前回に続き、Webエンジニア向けのパズルを作った。プログラム言語を問わず、フロントエンド、バックエンド、iOS、Android、どんな技術を担当しているエンジニアであっても誰でも解けるパズルだ。 サイトにアクセスするとHack Me If You Can(ハックできるもん…

『下位10%のダメなエンジニアにだけ解けないパズル?』がバズったのでパズルを定期的に作り続けることにした

幸運にもなにげに作って公開したWebエンジニア用のパズルがバズった。これを「バズった」というか「炎上」というのかはさておき、わずか数百のアクセスしかないブログを運営していただけの身に突然に1日10万アクセスが来た。あれだけたくさんの優秀なエン…

エンジニアとしての仕事観を揺さぶられる本『サッカー データ革命』

本書を読んで、エンジニアとしての仕事観を大いに揺さぶられた。もちろんいい意味で。 内容はサッカーにビッグデータの分析を持ち込んで活躍するデータサイエンティスト達の成果とその手法だ。サッカー データ革命 ロングボールは時代遅れか作者: クリス・ア…

『ほとんどのエンジニアには解けるが、下位10%のダメなエンジニアにだけ解けないパズル?』の結果報告

先日『ほとんどのエンジニアには解けるが、下位10%のダメなエンジニアにだけ解けないパズル?』なるものを作って、しばらく様子を見ていたら想像以上にパズルを解いてコメントいただけたのでその結果報告をする。内容は黒い画面にPlease call my APIs.(私の…

AWS EC2の鍵(キーペア)(秘密鍵)をなくしたら

このところ立て続けに「おい、助けてくれ。AWSの秘密鍵を無くした。ログインできねー」と言われて、対処することになった。で、その対処法を書いておく。小さなスタートアップなので、1つのインスタンスに対してアクセスするエンジニアは社内にひとりだけ、…

【パズル1】ほとんどのエンジニアには解けるが、下位10%のダメなエンジニアにだけ解けないパズル?

半年ほど前にソフトウェアエンジニア向けの求人募集ページに簡単なプログラミング系のパズルを出して、それが解けた人だけ応募できる仕組みにしよう、という話になった。その時期は求人を拡大募集していたのだが、あまりにハズレな人が多かった。私もいくつ…

案ずるより産むが易しのAWSのインスタンスタイプ変更

前からAWSのRDSのInstance Classが古い型のを使っていることが気になっていた。最新のに変えれば料金は安くなって、しかも性能が向上するので「スグにでもやるべき」だったのに放置していた。理由はほどんどのインフラを担当しているエンジニアさんならご理…

『エンジニアとして世界の最前線で働く選択肢(著:竜盛博 )』書評

もし海外でエンジニアとして働くことのメリットとデメリットを本当に知りたかったら「こんなブログを読むよりもアマゾンのKindleに本書をダウンロードして読めば、それで十分だろ」と思った。エンジニアとして世界の最前線で働く選択肢 ?渡米・面接・転職・…

他人のコード読むのが好きじゃない私だが、いくつかのRailsのコードだけはよく読んで参考にしている

他人の書いたコード読むのがあまり好きじゃない私だが、いくつかのRailsプロジェクトのコードだけは自分のフォルダにクローンしてよく読んで参考にしている。「この世でもっとも理想的なRailsプロジェクトのソースコードってどんなのだ?」「どこかにそうい…

海外の技術職への転職の際に英語で行われる技術面談対策はこのサイトでやっておいて損はない

英語圏のエンジニア職に転職しようとする際に避けては通れないのが技術面談。何度かこのブログでも紹介しているが、もし海外のエンジニア職への挑戦をお考えの方が居ればこれは十分に対策をとっておいた方がいい。きっと思っているよりも実際にやるとその難…

仕事で一生コード書いててもいい。ただし日本以外に限る

日本以外でならコードを書く仕事をずっと続けていたいと考えている。ソフトウェアエンジニアという職に対する待遇と状況が日本と英語圏ではまったく異なるというのが大きい。元からコードを書くことが好きでオモロイと思っているのがあるが、そんな私でも、…

世界のエンジニアの状況を示すスタックオーバーフローの調査結果は驚きの連続だった

元ネタはこれstackoverflow.comご存知スタックオーバーフローが全世界のエンジニアの状況をアンケート調査した結果。対象はもちろん全世界。 結果は想定通りのものと「え?そうなの?」と予想を裏切るものがあった。こういうのは自分の肌感覚より精密なデー…

海外転職の際の技術面談にある意外な落とし穴とそれを突破するコツ

海外の会社にエンジニアとして転職する際には必ず技術系質問を何時間も受ける面談がある。そうした技術面談の際には意外な落とし穴がある。(ただしネイティブとまったく同レベルで英語ができる人は別)その落とし穴とは 技術質問を英語で聞かれて英語で答え…

英語とプログラミングが勉強できる動画集

YouTubeには英語でプログラミングを解説する動画が山ほどある。これらは英語のリスニングの勉強と同時にプログラミング知識も身につくので重宝している。私は常に50本近くのこれらのビデオファイルをiPhoneの中に入れておき、ちょっとしたすきま時間に視聴…

英語圏のエンジニアにとって大企業とスタートアップの区別は無い

職場の同僚のお別れパーティーがあって、その同僚の次の転職先がロンドンのグーグルだった。いわゆる社員15人以下の誰も知らないスタートアップ企業から誰でも知っている世界企業に転職していく訳だが、ここではそんなに珍しい話ではない。 基本的に英語圏…

海外だからなんとかなってるが私の日本のサラリーマンとしてのスペックは終わってる

正直、日本だったら終わってたな。理由はだいたい3つ 年齢 転職回数 仕事のスタイル もう結構な年齢のいいオッサンだ。日本だったら若い人達に「アラフォーなのにおっさんがコード書いてるけど、アレ大丈夫かよ?」とか言われてそう。 シンガポールではまっ…

Rubyのリファクタリング:「聞くな、言え」の法則

元ネタはこちら。 Tell, Don't Askキャッチフレーズから非常に分かりやすい。 Tell, Don't Ask 言え!、聞くな理想的なオブジェクト指向設計においてはオブジェクトに対してただやって欲しいことを「言う」だけ。 こちらでどうればいいのか聞いたり、判断し…

エンジニアはプログラムエディタとその設定にトコトン気を使うべし

タイピングの速さとコーディングの速さはしっかり相関関係がある、という話。人種国籍問わず、エンジニアでもたまーにエディタ愛が乏しい人がいる。基本的にエディタ愛が強いのはVimとEmacs ユーザーが多いが、ここではどんなエディタであってもいいし、とに…

Vimのスペルチェックのハイライトを止めて下線だけにする方法

Vimのスペルチェックは便利だけど、ハイライトがまっかっ赤になっていて「そこまで目立つように『スペル間違ってますよ!』って主張しなくてもいいだろ」という場合の対処方法。.vimrcに hi clear SpellBad hi SpellBad cterm=underlineとすれば下線だけで地…

Vim、Emacs、SublimeTextなどのプログラミングエディタの選択基準

エディタ戦争と言われるぐらいに、人それぞれがエディタに関しては意見があるのは分かる。特にソフトウェアエンジニアにとってエディタは生産性に直結する重要なツールだ。しっかり吟味して選択すべき、となっている。しかし私はあえてその選択基準をもっと…

オブジェクト指向設計を実現するためのドMなコーディングルール

ちょっと古いブログだけど、オブジェクト指向設計を誰でもカンタンに実現するための4ルールを見つけた。 Sandi Metz' Rules For Developersブログ記事は「Practical Object-Oriented Design in Ruby」の著者が提唱しているコーディングルールをthoughtbot社…