オンラインブートキャンプを受講された大谷賢志さんにお話を伺いました。普段は自営業でソフトウェア開発をしているという大谷さん。誰でも投稿できるゲームのレビュー&コミュニケーションサービスを開発されました。

プロフィール:大谷賢志
札幌在住で自営業を営む。Webアプリケーションコース(Ruby on Rails)を8週間受講し、Webサービス「ゲーム☆ニスト」を開発。

何十冊も本を読んで勉強した

――普段はどんなお仕事をされてますか?
一昨年に自営業として会社を興しました。今はVirginTech(ヴァージンテック)という会社を運営しています。
基本的には一人で行っているので自営業という形でソフトウェアを開発しています。

――今の自営業をされる前はどういったお仕事をされていましたか?
父が会社を経営してまして、私も父親の下で働いていました。
仕事内容は弱電設備の会社だったのですが電気のことをまったく知らなかったので、総務として勤務していました。
その後、総務の業務の一環で業務改善や効率化を行うためにプログラムをやり始めたんですね。
ただ、父が倒れてしまい会社を急遽売却する事となりエンジニアの方々は他社に移られたのですが、私は技術者ではなかったので採用してもらえなかったんです。
そこで、せっかくプログラムを身につけたので、その知識でやっていけないかなとか考えました。
それが10年ぐらい前の話なんですが、それからはフリーのプログラマーとして仕事を行っていました。
そして、一昨年に会社を興したという経緯です。

――プログラミングを始められた時の印象は覚えていますか?
「苦労した」というのは覚えていますね。
とにかく訳がわからなかったので、本を何十冊も読みました。
学習した時の環境が良かったのもあって、仕事そっちのけでプログラムの勉強ばかりしていました。
ひとつの形になるまでは3年ぐらいはかかりましたね。

――最初の3年ぐらいはだいぶ苦労されましたか?
はい。とても苦労しましたね。
ですが、1つ言語を覚えてしまえば、あとはプログラム言語というものは他の言語も一緒なんですよね。
文法がちょっと違うだけで、その中にある関数は似たり寄ったりなので「この言語ではこれを使うと動く」というのがすぐ分かってきました。
ですので、とにかく1つの言語を集中的にやっていれば、だんだんプログラミングが分かってくるのかなと思います。

作ったものは出来るだけ多くの人に知ってもらいたい

――今回オンラインブートキャンプを受講したきっかけを教えていただけますか?
私はゲームを作成しておりますが、作ったゲームをなかなか見てもらうことが出来ないという問題がありました。
今はアプリの数が爆発的に増えているのでせっかく皆さんが苦労して作ったゲームをリリースしても誰も見てくれない状況なんですよね。
レビューサイトに依頼しようとしても大手であればかなり費用が発生しますよね。それにアプローチの仕方も、こちらがお願いしてレビューをしてもらうという方法なんです。この現状を何とかしたいと思いまして、自分で登録できるような仕組みがあれば面白いんじゃないかなと考えるようになりました。

Web開発という事をしたことがなかったのでアイデアはあっても技術がなく、ネットで学習できるサービスを探しているときにパーソナルメンターがつくTechAcademyを見つけたんです。値段も手頃で受講期間もちょうどよかったので参加させてもらおうと思いました。

――今回つくられたサービスの名前を教えてください。
ゲーム☆ニストというサービスを開発しました。

screen_pc.jpg

――今回開発されたサービスはどうやって使うのか教えていただけますか?
使い方は、大きくユーザーとデベロッパーに分かれます。
デベロッパーは自分の作ったゲームアプリをサービスに登録します。それをユーザーがダウンロードして使った感想をつぶやき形式で投稿することができるんです。
また、ユーザー同士でフォローする、アプリをお気に入り登録できる、自分の好きなアプリの攻略記事をブックマークするなどの使い方ができるソーシャルネットワークのサービスです。

――サービスの中で工夫された点はありますか?
ユーザー管理の部分で工夫しました。
最近のシステムではログインすると仮登録のメールが送られてきて認証されるという方式だと思うのですが、オンラインブートキャンプではそこまで習わなかったので、セッション管理、またユーザーがしばらく使っていなかったときにパスワードを忘れた際のリマインダーという機能をどういう風につけたらいいかなと考えました。

やり方として、昔は「好きな食べ物は?」などを登録し確認していたと思うんですが、私はワンタイムトークンというワンタイムパスワードを発行し、自分で新しいパスワードを入力するといった、ユーザーにとって困ったときの対処に工夫をして使いやすいシステムを心がけました。

――レイアウトやインターフェイスを作る上で参考にしたものはありますか?
オンラインブートキャンプでは、メインはサーバーサイドだったので受講後にWebデザインの本を2,3冊買って独学で勉強しました。
そこでCSSやレスポンシブデザインを勉強して あとはBootstrapを集中的に勉強しましたね。
メインはBootstrapを使っているんですが、細かい設定ができることを知って、その辺りは工夫しました。
あとは、ボタンを押すとリストが出るとかスライドするとかを学習しながら作ったという感じです。

screen_sp.jpg

Webサービス開発の難しさを知れた

――Ruby on Railsを学習し始めた頃は何が難しかったですか?
今までは静的言語ばかりを使っていたんですが、Railsは動的言語なんですよね。
テキストを見ても動的言語の場合は突然変数が出てくるので、どこで出てきた変数か分からなくなることがあり慣れるまで大変でした。

CとかJavaであればメソッドの定義でジャンプできるのですぐに書いてある場所が分かるのですが、Ruby on Railsの場合はソースをイチから確認する必要がありました。

――「ゲーム☆ニスト」のサービスは今後どのように展開されるご予定ですか?
試験的な試みでもあるので、今後どのようになるか私も分からないです。
今の段階ではゲームデベロッパーの方は個人を含め50団体ほどいます。アプリ数も100件ぐらいにはなっているんですが、まだまだ数は少ないですね。
大手の作ったアプリと違いメインが個人作成のアプリなので、そういったアプリにユーザーが興味を持ってくれるか心配ではいます。
できればユーザー数はデベロッパーの3倍〜5倍は入ってもらわないと運営していく上では厳しいと思っています。

――Web系の言語を学ばれた事によりご自身の「プログラミングへの興味」などに変化はありましたか?
今後はインフラとかサーバー構築といったUNIXの使い方を勉強したいなと思っています。
自分でWebアプリケーションを作ってみて、本格的にいろんな人に使ってもらいたいと思ったらセキュリティなど運用面で色々な壁があると思うんです。そういった運用に関する勉強はしたいなと感じますね。

大事なのはアイデアを形にすること

――今後、あらたにサービスを開発する方にメッセージやアドバイスがあればお願いします。
Web開発だけでなくプログラミング自体、とっつきにくいところがあると思います。
まずは小さな物から取り組んでいって、少しずつ大きなものを作っていくと良いと思います。
そうすると自分自身の力になっていきますし、基礎から応用を利かしていけばどんどん発展させていくことができます。

あとは、とにかく投げ出さない事ですね。
小さな物でも完成させなければ意味が無いので「自分のアイデアを形にする」という意識を持って取り組めば将来的にはすごいものを作れるようになると思います。
とにかく初めてプログラミングをされる方は「形にする」ということが大事だと思います。

(インタビュアー:小嶋大貴)