Swift2 UI/UXチャレンジ

一覧はこちら

10992_ext_01_0.png?78ad7888f4d765a4158b96785547f2a3
このイベントの募集は終了いたしました。

Swift2でかっこいいUI/UXインタラクションを作ろう

Swift2 UI/UXチャレンジは、開発現場で求められるようなUI/UXライブラリを作り上げるハッカソンです。「AWA」や「Ameba」など、当社のサービスで使われているインタラクティブなUI/UXライブラリの開発手法を紹介しながら、「こんなインタラクティブなライブラリがあったら使いたい」をテーマに、当社エンジニアメンターのフォローのもと開発します。

当日は、当社エンジニアが講師となり、Swift2の導入事例や実装ノウハウのプレゼンテーションを予定しています。優秀なUI/UXライブラリを開発した方は、通常数回ある面接をスキップすることができます。

詳細


・参加確定者にはSwift2の予習リストやレギュレーションを事前にお伝えします。

・当日はUI/UXライブラリとその動作を確認できるサンプルアプリケーションを個人制作します

・開発したライブラリは参加者本人のGitHubに公開し、ライブラリが広く利用されることを目指します

募集概要

賞金 賞金1位:5万円、2位:3万円、3位:1万円
スケジュールと開催場所 東京会場:10月31日(土) 10時-20時 予定
京都会場:11月20日(金) 11時-20時 予定
エントリー締切 東京会場:10月26日(月) 10時
京都会場:11月16日(月) 10時 11月18日(水) 18時
※書類選考通過者のみ、ご参加いただけます。
参加者特典 優秀と評価された方には一部選考スキップ等の権利
募集対象 ・iOSアプリ開発経験(Objective-C, Swift)がある方
・オープンソースプロジェクトの開発に興味がある方
・新しい技術に挑戦することが好きな方
募集条件 2017年3月に4年制大学・大学院(修士/博士)卒業見込みの方
(※対象学年以外の方も大学生・大学院生であれば応募可能です)

選考方法

エントリーいただいた順に書類選考を行い、エントリーから1週間前後で、合否連絡をいたします。エントリー締切日前であっても、定員に達し次第、エントリーを締め切らせて頂きますのでご了承ください。

備考

・当日の服装は自由です。楽な格好でお越しください。 ・当日はご自身のPC(MacBook)をお持ちください。MacBookの貸出を希望される方は個別に対応いたします。

iOSエンジニアインタビュー

当社エンジニアから、iOS開発が好きな学生へのメッセージと、これからSwift2チャレンジに挑戦する学生にむけてのメッセージです。

suzuki_daiki.png
鈴木 大貴 GitHub

(株) 7gogo
iOSエンジニア
2014年度新卒入社

LeVanNghia.png
レ・ヴァン・ギア(Le Van Nghia) GitHub

Ameba統括本部AmebaPFカンパニーFRESH!プロジェクト
2015年新卒入社

今回のSwift2 UI/UXチャレンジですが、実は若手エンジニアの皆さんが開催していた開発合宿(14ピュアネイティブ強化合宿)をヒントに企画しました。どういうきっかけで宿泊つきの社内勉強会を開催したのですか?

鈴木: きっかけは社内の勉強会をもっと活性化しようという声でした。社内でGitHubスターインセンティブ(GitHubのリポジトリのスター数に応じてインセンティブが得られる制度)もはじまったので、「オープンソースライブラリを開発する合宿を開催して、GitHubスターをいっぱいもらおう」という声から始まりました。

開発合宿と聞くと、アプリを開発するイメージがありますが、どうしてライブラリ開発にしたのですか?

鈴木:テックキャンプでも業務でもアプリを作る機会は今までもありました。けれども、オープンソースライブラリを開発するとなると、アプリ開発とは観点が異なるので、そういった新しいことにチャレンジしたいなと思い企画しました。


p1.png

ギアさんは学生の頃からライブラリをつくっていましたね

ギア:私も普通のハッカソンに参加してアプリを作ることが多かったです。アプリ開発は完成度が重視されていて、みんなで作ったアプリを発表する。それは確かに楽しいけど、ライブラリ開発は別の楽しさがあります。ライブラリはコードのきれいさを気にしないといけません。純粋にコードの書き方が問われるので楽しいです。

ライブラリをGitHubに公開すると利用者が出てくると思いますが、初めて利用された時の気持ちを教えて下さい。

鈴木:最初は「あ、フォークされた」ということに気づいて嬉しくなったり。

ギア:作ったライブラリが有名な人からスターされたり、利用者からプルリクエストをもらったりすると嬉しいですね。「ここを変更したほうがいい」というコメントをもらうと勉強になります。

鈴木:僕の作ったライブラリは、メールでコメントが来ることが多いです。「なんでこういう設計にしたのか」と聞かれることがあります。その時に、自分の考えや設計思想をちゃんと伝えることが大事だと思いました。それを続けていると、他の人がどういうふうに考えているのかも理解でき、意識も高まりました。


p3.png

作ったライブラリは仕事に活かせましたか?

鈴木:それで言うと、僕もギア君も自分でつくったライブラリを、自分が仕事で開発しているサービスに入れて使っています!


capture.png鈴木が開発した「iOS7とiOS8のアラートの呼び出し方を統一させるオープンソースライブラリ
彼の関わったサービス(Ameba古着屋)に導入しています。

ギア:自分で作ったライブラリなので、使い方もわかっていてメンテナンスしやすいです。

今回のハッカソンでは「イケてるライブラリを開発する」とあります。例えばイケてるUI/UXライブラリを作るコツがあれば知りたいです。

鈴木:UI/UXは知識がないと、自分でいちから作ることは実は難しいのです。通常は、デザイナーが考え、それをエンジニアが実装することが多いですから。ただ、Pinterestなどにデザイナーが公開しているUI/UXで、まだライブラリになっていないものなどを参考にしながら、同じアニメーションの実現を目指して作ってみると、良い腕試しになります。あとは、OSの標準にあるもので、アプリにないものの動きを真似すると良いかもしれません。例えば、iPhoneのホームボタンをダブルタップするとタスクマネージャーが開きます。アプリはビューの重なりがたまっていくのですが、iOS標準の動きとあわせたライブラリを作ったり。iOS標準にある動きだけど、アプリには内部のフレームワークとしてはないものが意外と多いので、それを自分で作ってみるとかも面白いです。

たくさん見ることと、真似するということですね。そういうきっかけに今回のイベントがなったらいいですね。Swift2の話題は現場でありますか

鈴木:新規開発だとβ版をつかって開発するのは可能ですが、リリースされているアプリはSwift2のようなβ版で開発した時、バグがあった時に原因がわかりづらいので慎重になったりします。開発フェーズによって判断しているのが現状です。

ギア:β版は危ないですけどね。私のチームでは、次のバージョンからはSwift2を導入しようと思っています。

どういう基準で新しい技術を導入するのですか

ギア:公式版が出たらOKとか、使っているライブラリが対応したらとか、いくつか基準があります。


p2.png

学生のみなさんは、iOS開発をしている方が多く、Swiftもリリースから1年経ちますがSwift経験者も増えました。そんな中でスキルアップするコツを教えて下さい。

鈴木:Appleのdefinitionを見ることをおすすめします。Xcodeでデフォルトのフレームワークの定義が見られます。そこを読んで、自分の実装やプログラムをデフォルトと差がでないように心がけています。使いやすく、みんなが知っている書き方になるので、なるべくそういうかたちにあわせる定義を心がけています。もちろんSwiftのコード自体は見られないですが、メソッドの定義やグローバル変数の定義などを見ながら、その書き方にあわせて自分のプログラムを書いています。

ギア:わたしは関数型の書き方が好きです(笑)。

鈴木:そういうのに気づくようになったのは入社してからだよね(笑)

ギア:わたしはGitHubで他の人のレポジトリを見ています。GitHubのトレンドを毎日みていると、みんな何をつくっているのか、何が流行っているのかがわかります。いいプロダクトは設計を勉強したりできます。また、ライブラリを作成したら、既にあるライブラリがないか調べた方が良いでしょう。自分と似ているものがあれば、なにか違うところで強調できないか考えたりできます。

鈴木:「品質をあげる」というのがネクストステップです。作りたいアプリだけ作るではなくて、公開して使ってもらう意識ですね。

ライブラリを公開となると、一番最初に何をつくったらいいのですか。

ギア:公開するのは恥ずかしいですよね。いったん、開発や仕事に必要なものをつくって公開する。自分が必要なら他の人も必要なことがあるので。UIならAndriodでいいものをマネてみるとか。

今回ライブラリをつくるハッカソン。どういう人にきてほしいですか?

ギア:コード書くこと、設計が好きな人です。簡単に拡張できるといったことに喜びを感じてもらえたらと。

鈴木:メンターが見てまわっているときに「こんなきれいに書けたのですが見てください」と言われたら嬉しい。メソッド作ってきれいにまとめましたと最終発表で自慢できたら嬉しいですね。


p4.png