2015年12月31日木曜日

2015年まとめ

はいおばんです、田中です!
本日三本目のエントリです。
今度は今年のまとめをば。


今年の出来事トップ5!

1. 5年付き合った彼女と別れる

なかなかデカい。まだつい最近のことだけど、長かった分ダメージの回復や心の整理にも時間がかかる感じ。
高校からの付き合いで、当時と比べると自分が早いスピードで変わったように思う。
変わったから、人生の方向性を考えた時にズレが出たりしたのかもしれない。
仕方のないこと。別れがあれば、また出会いがある。(といいな)

2. Wantedlyでの二週間のインターン

今年のエンジニアライフで一番大きな出来事だった。
二週間東京で一人で出張して宿も確保して仕事する毎日。
楽しく、とても学びがあって素晴らしい経験ができたし、Swiftに関して「こんな書き方があるんだ!」とか、MVVMの設計に触れて「設計って面白い!!」って目覚めることができました。
自分がそれまで足りなかった部分も見つめることができて良かったです。ありがとうございました。



3. 友達とのハッカソン出場

仙台のSPAJAMに会津の友達三人と一緒に出場しました。
前から一緒に何かしたいと思っていたメンツで出場できたのは念願が叶ったし、その後もつるんだりしているのでとてもありがたい。
今年は他の友達との交流も多かった。
良い友達に恵まれて幸せです。



4. 仙台Swift勉強会

今年は自分で勉強会を主催しました。
運営は難しいですね。
最近ちょっとサボってしまっているのですが、来年のtry! swiftの予習企画も考えているのでまたやります!



5. 太極拳の型を108式を通してやることができた

やっている太極拳の108ある形を今年は通すことができました。
確かおととしくらいから少しずつやっていて、ようやく最後まで到達することができました。
まだ復習しながらの段階ですが、また来年もやっていきたいです。
太極拳から学んでいる精神面も今後発展させていって人生を豊かにしたい。



特別枠. 父との交流

今年はエンジニアとしても、同じく太極拳をやる身としても、また人として人生について父と多くを語らいました。
きつい時に救われた部分も多いし、お互いに学びあっている部分もある感覚がとてもありがたかった。
心の師と言える。
人には羨ましがられる親子関係。良いものだとつくずく思う今日この頃です。
来年から一人になるけれど、父からの多くの教えを持って東京に行くことにします。



来年も良いお年を!

就職決定しました

おばんです、田中です。
タイトルの通り今月半ばに内定頂いて、就職が決定しました!
東京に行くことにしました。(ブログ名どうしようかな)
まだ社名は伏せるようにとのことなのですが、いずれブログでお知らせできるかと思います。
お仕事はこれまでの経験を活かし続けていきたいと思い、引き続きiOSをやっていきます。
仕事を始めても東京に行っても、これまでの勉強会に出たり開発したり勉強したりブログ書いたりするスタンスはとても良いことだったのでそのまま維持していきたいです。それをする余裕をキープしたい。


この間まで「書類選考通して面接して面接して面接して〜」みたいな手順を踏まなくてはいけないところは面倒だなーとか考えてましたが、行きたいところに行くためにその手順を踏むことは別にモチベーションが下がることもなかったなという感じでした。
勉強会でも中の人とは以前から会っていたのでむしろ「会って話をする機会がもてる」って考えたらお得な感じ。
勉強会で人と会って話したり呑みに行って人と話すのとあんまり変わらなかったかなという感じです。(若干緊張はしたけど自分の考えとか技術のことを話す時も緊張はするので同じ)


各種コミュニティに参加したり、今年は東京の勉強会にいきなり凸ったりする活動はやっぱり正解でした。
大人に触れることは考えをまとめていったり、自分がどんなエンジニアになりたいかを考える参考にとてもなりました。
どうなりたいかはエンジニアとしてだけに限らず、どう生きたいかという点もです。
都度周りの大人とそんな話をしたりするのは自分の軌道修正になってとてもありがたかったです。特に今年一年は父とはよく話をしました。

逆にこうはなりたくないな、みたいに反面教師があったりもしました。
適度に毒を入れることも必要で、他の良いことがより際立って見えるようになりました。

そんな風に考えて、周りに相談して生きてきた中でたどり着いた会社です。
面接の時には自分ではスキルが足りず落ちるかとも思いましたが、結果入ることができました。
自分の今までを活かしていける良い会社に入ることができたと思い、良い満足感です。
東京でも頑張っていこうと思います。

自作PC入門

こんにちは、田中です。
もう今年も終わりますね。
終わってしまうのか......。
という出だしをしたけれど今年のまとめは別エントリで書きます。

このエントリでは自作PCを初めて組んでみたのでそのまとめを書きます。
Bizsparkに入っているのに長いこと使っておらず、パーツも長いこと放置していたので早くなんとかせねばと思い、windows 10のマシンを組むことにしました。


今回のスペック

今回はたまたまうちの祖父がパーツを買い換えたのでそのお古で組んでみました。

マザーボード: ASUS P8Z77-V PRO/THUNDERBOLT

「アスース」と読むか「エイスース」と読むかで歳がわかるみたいな話を父とPCパーツ屋で話をしたり。

電源: これ(型番のメモを忘れた)


CPU: Intel(R) Core(TM) i7-3370s 3.10GHZ

メモリ: CORSAIR XMS3 — 16GB (2x8GB) DDR3 1600MHz C11 Memory Kit (CMX16GX3M2A1600C11)


HDD: うちにあった500GB


やったこと

配線

PCケースはもともとうちにあったものを使いました。
その中に前使っていたPCが入っていたのでそれを掃除しながら取り外して配線の仕方と各パーツと端子について少し学んでいきました。



配線ではひとつミスをしました。
一通りつなぎ終わって、さて電源をつけてみたら起動直後に一瞬だけファンが回って電源が落ちてまた起動するのを繰り返す、という挙動がありました。
どこかのパーツが悪くなってるのかと思って、メモリ、ハードディスク、マザー、電源とそれぞれテストしていきましたがどれもおかしくなさそう。
お手上げと思ってPC屋に行ってクイック診断をしてもらったらCPUへの電源供給の線が刺さっていなかった模様。
マザーボードから供給されるからそこに刺してればいいと思っていたらそうではないんですね。(^^;
PC屋に500円払うことになったけど、500円で知識を得られたと思えば安い。
配線は無事終わってBIOS起動までたどり着きました。
最近のBIOSはすごく綺麗ですね。




HDDの初期化

家のお古のHDDなので初期化ソフトで初期化して使いました。




OSのインストール

HDDの初期化後、DVDに焼いたisoを開こうとするもThis HDD was erased!!というエラーが出てそこから先に進めません。
BIOSで起動する優先順位をBlu-rayドライブ -> HDDとするのも動かないし、直接Blu-rayドライブを指定して起動するのもできない。
ごにょごにょ調べているうちに、DVDになにかあるかと思ってmacで焼いた元のisoファイルをマウントしようとしたらできないことに気づきました。
どうにもMicrosoft Subscriptionからダウンロードしたisoが正常にダウンロードされていなかったか、ダウンロードしてくるものを間違えていた模様
DVDを焼き直したらうまくいきました。


無事インストールできた。


xcode動かないけどね!


ソリティア

Windowsが入ったらソリティアやらないとね!


気づいたら1,2時間遊んでた


その後の使用状況

開発ではSubscriptionを使ってVisual Studio 2015とSQL Server 2014をインストールしました。
こっちのマシンを使ってサーバーサイド勉強していこうかなと思ってます。特にデータベース。


父からSQL Serverを習っている。SQL Server便利すぎでは!!これ使いながら少しずつSQL勉強していきます。
BizsparkでAzureも使えるので連携させてみたり、VM立ち上げてLAMP環境に慣れていったりもしようかななんて。
決して信仰を曲げているわけではないですよ!林檎美味しい!!

もうひとつの目的はゲームです。
ずっっっと改めてやりたかったUltima Onlineを新垢で少し始めました。昔一年くらいだけやってました。



あと太極拳の先生とガンダムオンラインをやってます。ずっと誘われていたけれどWinマシンを組んでしまったのでもう言い訳できません。
楽しいです。
今までMacだとできなかったゲームがWindowsではできます。Macだからできなくて友達においていかれることも、もう、無いんだ...!!!(歓喜)
しばらくゲームやってなかったけどこれでまたやり始めることになるかな!


まとめ

環境設定も軽く含めてだいたい二日か三日くらいかけてちょこちょこやりました。

よかったことはこんな感じ。
  • 眠らせていたパーツを有効活用する機会をもてた
  • 眠らせていたMicrosoft Bizsparkを有効活用する機会をもてた
  • 少しだけPCの気持ちをわかってあげられるようになった
  • Win使える。ゲームできる
  • 便利なWin環境でDBの勉強できる

今度から東京に行くし、秋葉原とかでパーツを買いあさって色々やってみるのも楽しいかもと思いました!
(そういえば東京に行く話も別エントリで書きます。)

ここまで。

2015年11月2日月曜日

Swiftのライブラリハッカソン、「Swift2 UI/UXチャレンジ」に参加してきた

おばんです、田中です。
2, 3ヶ月ぶりに東京に行ってきました。
今回の旅の目的は主にSwiftのOSSライブラリ開発武者修行です。
最近OSSに興味があって、GitHubのTrending Repositoriesを眺めたり、Trending RrepositoriesのクライアントアプリをOSSとして作って練習してみていたりという経緯がありました。
ちなみにそのクライアントアプリはまだ開発途中だけどこちら。ほんと全然開発進んでないけど...。

TrendingGitHub
https://github.com/ktanaka117/TrendingGitHub



Swift2 UI/UXチャレンジ



サイバーエージェントさん主催のSwift2 UI/UXチャレンジという、1日でSwift製OSSライブラリ作ろうぜ!って会に行ってきました。
リンクこれ。
https://www.cyberagent.co.jp/recruit/fresh/program_detail/id=10992



なに作ったの?

綺麗で楽しい、季節そのものとか、季節性のあるイベントをテーマにしたPull to RefreshのUIライブラリを作りました。(テーブルビューとかを下に引っ張るとテーブルの中身更新するおなじみのやつ)

その名も

SeasonalRefresh


今回はちょうど10/31開催だったのでハロウィンのテーマを作ろうとしました。
こんな感じ。


Pull to Refreshでよくある、UITableViewを引っ張った分だけIndicatorが増えるようなものに火時計みたいな鬼火を順に灯していって、ロード中はジャックオランタンが灯っている、みたいな感じです。朝イチのトイレで思いつきました。

このほかにも今後クリスマス、正月、バレンタインなんかも今後対応していくとして、春夏秋冬、季節そのもののテーマも作りたいなと思っています。

どうですか、リア充っぽいライブラリでしょう!
10/31に一日こもりきりでライブラリ開発!

圧倒的リア充感!!!




SeasonalRefreshの設計




管理クラスであるSeasonalRefreshがUIScrollViewインスタンスのcontentOffsetをKVOで監視して、都度SeasonalRefreshViewに描画させたりするのが基本となっています。


依存性を低くする

最初設計を考えていた時は「contentOffsetを取れば簡単に実装できるだろー(鼻ほじ」くらいに考えていて、UITableViewのラッパークラスを作ってあげたらすぐ作れるだろうなーくらいの考えでいました。

しかしメンターさんからのアドバイスは違いました。

「優秀なライブラリは汎用性を保つためにできるだけそれ単体で機能するように作るべきである」


さっき言ったようにUITableViewのラッパークラスを作るような設計だとRefreshを実装したいだけなのにそのラッパークラスを使わなきゃいけないことになってRefreshとUITableViewの依存性が高くなってしまいます。利用する人にとって、自分で実装したいUITableViewでそれを使わなくてはいけないのは中でなにをやってるのか気にしなくてはいけなくなってストレスになります。
なので今回はRefresh部分だけ切り出して、上の説明の設計にしました。


簡単に使いやすくする

実装するのに行数が少ないと導入しやすいよねー。
ということで今回はクロージャ部分は考えないとすれば一行で実装できるライブラリにしました。




デザイン

今回こちらを参考にさせていただいてリッチにしようかななんて思ってました。
[iOS] SpriteKitとUIKitを組み合わせて、ちょっとリッチなウォークスルー画面 を作りたい

しかし実際やってみるとパーティクルとUIKitのデザインはミスマッチ。逆にチープになってしまいました。



炎をパーティクルで表現するのは良くないのかも?というのも、どうしてやればそれらしく見えるかを画像検索して考えてみたけれど、リアルな炎を空間に浮かべる時は背景や周辺環境が大切になるかも?
まわりの煙や靄、夜闇の色合いなど。
あるいはそもそも炎をパーティクルで表現するというのはそれらしく見えないのかもしれないです。あるいはめちゃむずい。

雪や桜が舞うように、パーティクルの密度を低くして、画面全体に散るような表現の方が良いのかもしれない。
ジャックオランタンの実装方法考えてないけど、同じように靄がかかったような表現が出来たら捗りそう。
レイヤーをかぶせるか、もしくは画面自体に靄のパーティクルを表現させる。smoke。とか。

ちょっとこの辺は方針転換を考えるか、微調整しまくる感じになりそうです。



まとめ

世の中そんなに甘くない!



世の中そんなに甘くないことはすでに穂乃果ちゃんが一期第3話で証明してくれています。
UITableViewを引っ張った値取れりゃそのまんま出来るなんて甘い設計では良くないんだなってわかりました。
いやむしろ良い設計は難しいけど楽しく、その難しい設計に挑戦してそれなりに実装出来たので満足感がすごいです。
今までこんな綺麗に切り分けられて書けたかなーと、ワクワク楽しい最高の気分です。
仕事でもこんな実装を、サクサクサク〜っと出来たら強いな、良いな、目指す。
直接メンターさんがついてもらって、相談に乗ってもらって講評もいただける、大満足のイベントでした。ありがとうございました!



今後

ハロウィンのテーマは残念ながら一日では北米時間なんかで考えても間に合わなかった、残念。
基本の部分は大体できたのでこれからテーマを増やしていって、クリスマスまでにリリースする目標です。
設計としてはユーザーが新たにテーマを拡張して作りやすい機構にすると良いと思いました。
ある程度のフォーマットに沿う形で、リソース突っ込んで少し書き換えるだけで自分独自のテーマが作れる、とか。
人の顔をリソースに使ったりするようなネタテーマも面白いかもしれませんww
背景なんかにアニメーションを入れられるようにしてそれも簡単にできるようにするとか、そんな感じで展開していこうかななんて妄想しています。
仕事でも使えるグラフィカルなpull to refreshの定番になれるように頑張っていきます。
が、まずは綺麗なテーマ作るところが第一段階ですね。^^)


2015年10月11日日曜日

DevLOVE現場甲子園2015「東北大会」に参加してきましたよ!



イベント前に日本酒の試飲を一杯ひっかける大学生の図。

おばんです、田中です。
今日はDevLOVE現場甲子園2015「東北大会」に参加してきました。
具体的な詳細は上記リンクから見られますが、簡単に説明すると様々な現場に関する激アツな話が10本ぶっとおしで話される激アツなイベントです。
今日はその中でも個人的に刺激を受けたトラックを紹介し、今の自分、将来の自分に活かせるであろうと受け取ったヒントを書いてきます。

前提として自分が今やっていること、考えていることとして以下のことがあります。

自分は今個人で仕事を受けていて、金額や契約に関して交渉したりしています。
それをまとめたり考えたりするときにヒントになるものが欲しいです。
エンジニアとして仕事をするときにどんなことが重要であるかということも模索しています。
仕事とは別なところでもプロジェクトを進めていて、チームとプロジェクト自体をうまく回すにはどうしていくことが必要かなども関心事です。
プロジェクトの中でメンバーにどこをまかせてどこに注意を払って進めるか、やっていて楽しい・ためになる環境を作るにはどうするか、などです。

また大学の卒業を控えていて、どんなキャリアをたどるかもいくつか考えています。
最初は大きく余裕のあるところに就職し、先述した仕事の良い進め方や開発の技術力をつけていく。
あるいは大きくはないけれども組織として成っているところに入り、裁量の幅の広いところで力をつけていく。
はたまた最初から個人として独立し、フリーランスや起業という形をとってチャレンジしていくのか。
それぞれどのパターンを取りたいとなっても共通する考えるべきことはあると思うし、もしそれぞれ個々で特に必要なスキルがあるのであればそこについてもかいつまんで知識を得ていきたい。
そんな考えがあります。



「主人がギルド開発をするようになって1年が過ぎました」

ギルドワークス株式会社 佐々木将之さん



発表の流れとしては、佐々木さんのこれまでの略歴とどんな生き方をしてきたか、それらの点がどうつながって今ギルドワークスで仕事をしているかという内容でした。
キーワードは「ギルドワークスは開発もしています!」

発表の中で気になったのが、ギルドワークスの掲げる「正しい開発」というビジョン。
そこに関して発表の後にこんな質問させていただきました。

「正しさとは?」


僕は勉強会に参加して色々な人に会ったりしてきました。
ITという畑の中でよく聞くような愚痴であったり、自分で体験したわけではないので声を大きくして言えることではないですが、業界の「闇」のような話なども聞いてきて、常日頃それについて疑問を感じたり考えたりしていました。

  • なんでそんな条件で働くのか?
  • なんでそこで働くのか?
  • 楽しいのだろうか?
  • 労働環境過酷すぎじゃない?
など。

佐々木さんの回答の「正しさ」というのは
事実に忠実であること
正直であること
でした。

そして正しさは人や場によって変わるということ。

今へのヒント

正しさは時と場合と状況によってその時々人の中で変わるもので、常に自分がどうありたいかを問い続ける必要がある事項だと思いました。
そして正しくあるということは心身ともに健康的で気持ちのよいものであると感じるので、その正しさを遂行できる状況をできるだけ作っていくことが良い生き方につながる。
逆に言えば正しくない、なにか気持ちの悪いことは早く清算しきってしまうことが大事で、それが正直であるということにつながると考えました。
人間関係、プロジェクト、ソースコード、何にでも当てはまることかもしれません。

将来へのヒント

今へのヒントのところに書いてあることの継続が先々を考える上で一番必要かも。
いずれそれが経験値の積み上げによって、パターン化されて見えたり、自分の中で固まったものとして出来上がってくるとそれが生活や仕事をしていく上でのビジョンや哲学になっていく。
今へのヒントで書いたようなことに常にセンサーを貼っていきます。





「プロジェクト管理しないという提案」

株式会社ZIG 森 英寿さん



森さんが株式会社Zigで積んだリーン・スタートアップの経験の紹介とプロセス、良いところ向かないところなどが凝縮された内容でした。
なかなかスタートアップから抽出されたエッセンス的な話を聞く機会はないのでとてもレアでためになりました。

スタートアップはチキンレースである。
お金の数字として会社が無くなる時点が見えて、そこまでにどう金を得るかを考えてという繰り返しになる、のかな。
そんな中でもっとも追求しないといけないものは価値
徹底的に無駄を排除して、価値にフォーカスしていく。
再現する確率が1%以下のバグへの対応は捨て、使われていない機能を捨てて価値を追求する。などなど

プロジェクト管理することとしないことにはそれぞれメリットとデメリットがあり、プロジェクト管理をしないやり方はスタートアップでチームでの意思決定や共通認識を早いサイクルで回すことには向いているやり方のようでした。
それは受託と自社サービスという違いもあり、フォーカスすべきところが違うからという話。
そしてそれをする場合は前提条件として以下が必要。

  • 絶対的なメンバーの信頼
  • 価値あるモノづくりの意識
  • ホラクラシー型組織構造

絶対的なメンバーの信頼がすごく難しく、うらやましく、目指したい境地...。
シビアな経験は、濃く人を惹きつけるというのがよくわかる発表でした。

今へのヒント

今やっているプロジェクトの見直すべき点が再確認されました。
最近思っていることとして、良いチーム・良いメンバーで仕事がしたい気持ちが強くあります。
森さんと会社のチームメンバーの関係性を見ていてうらやましい感覚があって、自分もそんな仲間が持てるように目指したい。

将来へのヒント

良いチーム・良いメンバーで仕事がしたいということと、さらに自分たちのサービスで飯を食うということがしたいという気持ちがあります。
それが今すぐなのかはわからないけれど、条件が整ったと思える時があればやりたいです。
それは以前行ったWantedlyでのインターンの経験が深く印象に残っているからというのが理由な感じです。
自分の考えるサービスが人に使われて、自分の書いたソースコードが生に、生きた状態でサービスにそのまま反映される責任感と楽しさ、そんな感覚の片鱗を味わったインターンだったので深く刻まれています。

Zigの方々と話をさせていただいて感じたのはそれの難しさときつさ。
新たな何かを生み出すのに足る自分であるか、仲間がいるかというのを常に観察しながらでないと機会を見失うだろうというヒントを得られました。


まとめ

上の二つ以外にもこんな感じの発表が8本、合計10本ある激アツなイベントでした。
数として現場を渡り歩いてるわけではないので今はまだまだですが、また今度開催されるのであれば、次のころにはまた少し現場を経験していると思われるので登壇側で喋ってみたいです!

あと嬉しかった点。
イベントの最後に今回のイベントで得たものを参加者同士で話し合って共有するという時間で、森さんに「喋り慣れたね、うまくなったね」と言ってもらえたこと!!
以前から森さんとは知り合いで、度々イベントでお会いさせてもらったりしていた(ハッカソンで同じチームだったり、TDDBCでテストコード書いたり。あの時はなにもできなさすぎて申し訳なかったです...。)ので、少しは成長できたかなと嬉しくなりました。よかった。がんばろ。

2015年9月21日月曜日

Dokugaku-Dojoに入門してみた

こんにちは、田中です。
先日知り合いのFacebook経由でDokugaku Dojoというものの存在を知り、面白そうなので入門してみました。




Dokugaku Dojoってなに?

詳しくはサイトの方を見てもらったほうがいいと思うのですが、独学仲間で集まって一緒に独学したり情報共有したり、成果発表したりするグループのようです。
Google SpreadSheetを使って自己紹介したり、Slackを使って日頃の独学状況を共有したりしています。
appear.inを使って同じ時間帯に集まる人たちで画面共有をして一緒に独学していったりもしています。
適度な緊張感のもと作業しないとグダる傾向が自分にはあるので、ここに特に魅かれました。

月一でミートアップを行って実際に会って成果発表したりなども行っているようです。
基本的には東京のほうでやるそうですが、オンラインでの参加もできるそうで仙台在住の自分としても嬉しいところです。


参加時の面接について

サイトで参加申込をすると主催の深山 雄太さんからSkype面接をしていただけます。
自分と深山さんの間にはWantedlyでお世話になっていたというつながりがありました。
内容はDokugaku Dojoに何を求めて参加するの?っていうことをすり合わせたり、Dokugaku Dojoを良くする上でのアンケートみたいな感じでした。
あとは簡単な自己紹介をしたり、最近独学なにやってますかの独学状況の話とか、影響を受けた本はなんですかーとかの楽しい世間話。
深山さんは物静かでダンディズムある感じの方でした。


感想

自分もまだ昨日面接しただけでオンライン独学道場はまだ参加していないという状況ですが、深山さんとお話させていただいた感じだと良いグループそうだと思いました。
作業効率高まりそうというのと、参加者はなにかしら独学したくて集まってるので良い意味で意識の高い人たちが集まっていそうだという点が良いです。

あと昨日話をしていて、自分の学習を振り返っていたらあんまり独学っぽくも無いのかなと思ったり(:^^)
自分はいろんな人のお世話になっていろんな場でゲリラ的に経験値積んでいったタイプなのかなと。
今まではそんな感じでしたが勉強の仕方はその時々で変化します。
最近はある程度一人でやっていく方法がわかってきたので、もくもくと一人で本を読んだりコードを書くフェーズに入ってきたのかなと思います。
なのでDokugaku Dojo、利用させていただいていこうと思います!

2015年8月31日月曜日

2015/08 太極拳推手倶楽部講習会in仙台 感想

おばんです、田中です。
昨日、一昨日と江口博先生をお迎えしての呉式太極拳の講習会がありました。



今回の講習会もいろいろありました。
その中で推手、呉式太極拳、護身術、健康の四つについて、感じたことがあるので書いていきます。



推手

正直にいうとよろしくないのですが前回講習会からあまり練習をしていなかったので、先生に見てもらうのも若干ガクブル状態でした。
講習会直前に熱心に練習するフリをして拳譜(型の動作の順番を書いたもの)を見て型の順番を確かめていたのは、先生にはナイショだよ!!
練習はあまりしていなかったのですが、推手(お互いのバランスを崩し合う対人練習。太極拳の技のやりとり)の力はなぜか増している感じがしました。
練習してないのに褒めてもらったりもして、よろしくないことですが嬉しかったです!
以前まで推手の中で引っかかっていた先生の技も、ある程度ひっかからず耐えられるようになってきているのも嬉しいです。
そんなやりとりの中でまだやられてしまう部分もあるけれど、そんな部分がやっていて楽しくなります。「なんでやられるんだろう!(歓喜)」って感じで。
推手は奥が深くて本当に面白い。



呉式太極拳

伝統武術の呉式太極拳。
1, 2年ほど前から少しずつやっていますが、昨日ようやく108式の套路(108個の動作の型)を通しで覚えることができました!
108は大変ですよ、多い!圧倒的に多い。
呉式太極拳はまだ表演の長拳、太極拳をやっていた頃から少しずつやっていました。
それまでやっていたものとは目指すところが違かったので、当時は駆け出しの不安というものもあったり、自分の未熟さ故に人から理解を得られなかったりもしました。
しかしやっているうちに自分の求めるところが健康や生き方、考え方をより太極拳を通して感じていくことであるとわかっていきました。
だから続いたように思います。
まだまだ奥の深い太極拳のほんの端っこを感じはじめた程度ですが、これからも江口先生に習いながら父や練習仲間の方々と楽しんで練習していきます。



護身術

最近の太極拳推手倶楽部の講習会で定番になってきました護身術教室。
今回も護身の心得と実技について教えていただきました。
平和な日本でも女性や子供が被害に遭うような犯罪があったり、本当にひどいようなことも起きていたりします。
江口先生の語り口からはそういうところを意識しての内容であることも伝わってきました。
自分はまだどうにかできる、あるいは被害に遭ったりすることも女性や子供に比べたら少ないと思いつつも、ふと彼女の顔を思い浮かべるとやはり不安になったりしました。
そのうち彼女にも一回でいいから受けてみて欲しいと思ったり。

そんな想いもありつつ、楽しくもある内容でした。
というのも先生が大阪出身なので、大阪あるあるのあれやこれやな護身にまつわる例え話なども笑える内容でした。
「そんなんマンガの中の話でしょww」というような話も体験して来てらっしゃるのでリアルが違います。

わかりやすい話として肘と膝は護身の時は有効という話があって、こんな写真。





『ヤられ役のケン』とは僕のことです。


内容はあくまでもっとマイルドで痛くない感じですので安心して参加してみてください。
でも希望すればこんなちょっとした受けもできます。



健康

最近東京にインターンに行ったり、仙台帰ってきて会津行って仙台に即帰ってきて、また東京行って仙台に帰って、とかめちゃくちゃバタバタしたりしてました。
そんな中、練習する機会も減っていったり。
当然デスクワークが多くなり、身体中バッキバキ。
体感として内臓のダメージが多くなったように感じていました。
そんな中、八卦掌のとある練功法をやったらスッと全ての悪いものが抜けた感覚がありました。
体全身を使って力を出すような練功法。
講習会も終盤で足に疲労も溜まっていたのですが、それも、内臓に感じた疲れもスッと抜けました。
まだまだ不思議なことがあるもんだなと感動して、日々の練習も怠らないようにしていきます。



お、綺麗なまとめになった。
というところで今日はこれまでです。
お疲れ様でした。

2015年8月15日土曜日

Wantedlyインターン12日目〜最終日〜

おばんです、田中です。



俺はインターンを終わるぞ、ジョジョォー!!




ということで最終日でした。
ちょうど今日がアップルに審査を投げる日で、リリース日だったのでバグ修正とその他リファクタリングをしていました。
直しなどを行っていたのですが、今日が一番ビルドに時間がかかったひな気がしました。
直しなので一行二行書いた段階でデバッグをしたいということが多かったのですが、その度に20分
作業は思うようにいきませんでした。
しかしなにかが覚醒したのか今日はリファクタリングをしていて、複数のクラスに影響がある部分の修正で結構重かったのですがどこか見晴らしよく、見通しが立つ感じで作業を進めることができる瞬間がありました。
なにかレベルアップ音がなっていたかもしれません。
メンターの森田さんの修正する背中を見て、なにかを吸収したように感じました。それが少し出た。
その感覚が続くようになったらかなり良い!なので帰った後もその感覚を忘れずに作業に取り組んでいきます。

だいたい例えると「読める、読めるぞ...!」と、某大佐を思い出していただければだいたいあんな感じです。

しかし結局、少しデバッグが足りなかったりして挙動が確認できていないので、僕が今回実装していたDropbox連携のところは次回リリースでの組み込みとなりました。
組み込まれてくるのが楽しみです。
バージョンアップでなく、新しく申請するアプリの神聖なリリースに立ち会うのはすごくハラハラしましたww



お昼は社員の相川さんという方とご一緒させていただきました。Wantedly開始から四人目の人です。お昼は親子丼です。



相川さんはWantedlyでインフラなどをなさっていて、インフラのことを色々と熱く教えていただきました。
インフラって地味なイメージがありますが、やっていることは本当に基盤となる超重要なところで、それがパフォーマンスにつながったりする。そんな話を聞いて、だいぶイメージが変わってインフラのかっこよさとか華やかな部分を感じることができてとても楽しい時間でした。
言語にも詳しくて、ああ、好きなんだなっていうのをすごく感じましたw その人の話し方を聞いてるとわかりますよね。

あとは最近話題のDockerってなに?ということを質問したり。
あれはタスクマネージャなんかのプロセス一つ一つをコンテナという単位で区切っていくような仕組みのことで、一プロセスに一コンテナの環境を用意するのでそのプロセスに最適化されるところが良いそうです。
例えばサーバーなんかだとこれを動かすには環境としてあれも必要これも必要となりますが、それを最小構成にすることで立ち上げを早くしたり一プロセスに作業を集中させることでとても効率的なんだそうです。
曖昧な説明なのは、まだちゃんと理解してないからです!便利そうなので少しいじったりしてみたい。



リリース後と僕のインターン最終日ということで仕事終わりは飲みに!!
実は「最終日飲みに誘われるかな、まだかな」、って期待してたのですごく嬉しかったですww



でもリリース後の飲み会なんてまあデバッグ大会ですよ!ww
それも含めて楽しかったですがw
やっぱりお酒は美味しいですね、今日はさらに肉も美味しく感じたので最高以外の言葉が出なかった。
あとWantedlyはIT系には珍しくオタク色が薄いのでラブライブについて熱く語って布教しました。
その甲斐もあって、その素晴らしさの一端をお伝えすることができたようで凛ちゃんのLGTMいただきましたッ!!
めちゃくちゃやる気出るので二次キャラgifLGTM駆動開発を推進していきますこれから。



覚えておいて欲しいのは「好き」と「推し」はまた違うということです。
ここ大事。



そんなこんなであっという間の二週間。
今日ふと帰り際に寄ったトイレの鏡で自分の顔を見て気付きました。

「あっ!もう二週間か!!」


と。
それだけ充実してたってことですね、本当に終わったあとは一瞬でした。
疲れて感覚なくなってるところもあると思うけれど、仙台にいたらとてもできない経験をさせていただいて、本当にWantedlyさんありがとうございました。
チームの方々、誘っていただいたのもありがとうございました。何もしらない自分の面倒を見てくれて丁寧に教えていただけて、ありがとうございました。

Wantedlyさん本当に良い会社でした。
技術サイドからは、普通こんなにリッチな開発の仕方できないよ、と思うようなところも社員さん個人個人のスキルが高いので実装できてしまうという。技術だけでなくコミュニケーションや開発の進め方の部分でも。
中の人柄や文化もあり得ないほどの居心地の良さでした。
こんな世界もあるんだと、楽しみだし、希望が持てるし、頑張ろうと思いました。
もっとスキルを磨いて、もっともっと高みに昇りたい、そう思える二週間でした。
ありがとうございました。

2015年8月13日木曜日

Wantedlyインターン11日目

おばんです。
残すところあと明日1日です。
残タスクの容量も良い感じで、明日の仕事でうまくカタをつけられそうです!!
あとは細々としたところをどれだけ片せるかみたいなところもありますね。



今日はこの二週間のインターンの成果発表会をやりました。
なぜDropbox連携したのか、実際どんな機能を実装したのか、残タスクと今後の展開はなどよくあるパターンです。
なぜDropbox連携したのかということに根拠を持たせるために、メンターの森田さんのアドバイスで数字(データ)を少し拾ってきたりしたんですが、普段そんなことしないからそれで正しいのかわからず!
でも確かに、少し数字をつけてあげるだけで多少なりとも説得力みたいなのは出るかもしれないと、思いました。
「へぇー、そうなんだ」、みたいに思ってもらえると。
今後何かで発表する際はその手もアリですね。というか「そうしないといけない」レベルの話だとは思うのですが。



成果発表の他に、今やっているiOSプロジェクトの全体の開発構成についてなど話をしました。
MVVMのモデルを全体通して使っており、SwiftBondSwiftTaskをうまく利用しているのが特徴で、この規模のプロジェクトでこの構成をとってるプロジェクトもほとんどないのではないかという話。
聞いてくれていたのは会社の方々ですが、普段iOSの開発をしているわけじゃないとか、別のチームでやってますという方々だったので結構聞き入ってもらえる話だったんじゃないかなと思いました。
ただ、自分も特にSwiftTaskに関しては発表に向けた突貫工事みたいな感じだったので、細かい質問に答えられなかったのが悔しかったのでちゃんと勉強します。

自分では準備不足だと思っていたのですが、同じチームの杉上さんに褒めていただけたのでうれしかったです。
普段から発表には必ずネタを入れていこうというスタンスが功を奏しましたw
今日の発表、LGTMでした。(LGTM = Looks Good To Me.GitHubのレビュー後によく使われてます)





発表資料はSlideShareなどにあげたいと思っていますが、まだUpして良いか確認していないのでそれが済んだあとで公開します。
駄目でも差し障りのない技術部分に関してなどあげていこうとおもいますので、乞う御期待!

写真は今日のランチの焼き魚定食です。夜も0時を近くなってまいりましたが、お納め下さい。
明日の最終日も頑張ってきます。

2015年8月12日水曜日

Wantedlyインターン10日目

おばんです、田中です。
インターンも残り二日となりました。
自分の担当する部分もラストスパートです。たぶん。なにもなければ。



今日はなかなかにもくもくと作業をしていたのですが、メンターの森田さんとライブラリについてなどお話をしました。
とりあえずAwesomeSwiftTrendingSwiftRepositoriesは見ておくと勉強になるというアドバイスをいただきました。
AwesomeSwiftは文字通りすごいライブラリまとめみたいなものらしいです。
森田さんのSwiftyDropも載っているのでぜひ!
とりあえず仙台に帰ったらこのあたりを見ながら勉強します。



今日もまた以前と同じようにプロジェクトのちょっとコアな部分の修正をしていたのですが、その中で出てきた書き方に少し苦戦しました。
どこかというとクロージャを使ってクラス間で処理の移譲を行っているところでした。
クロージャを変数に入れてオブジェクト化し、別クラスのプロパティに渡してそのクラスの任意の場所でそのクロージャを発火させるという流れ。
これがどこで処理を保持していて呼び出しているのかが若干読みづらいかと思ったのですが、慣れると使えそうな考え方だなと思ったり。
なによりうまく書かれていたのが、その移譲するオブジェクトのメモリ管理。クロージャの内容が別クラスの方から元クラスで呼べるメソッドを呼び出すという中身で、オブジェクトの破棄に気を使わないといけないなと思ったけれど、自分が今まで知っていたdelegateやKVOによるメソッド呼び出しとはまた違うやり方が知れてとても面白かったです。
このあたりは特徴的だったのであとでまとめ直します。



明日はインターン最終日というわけではないですが、成果発表会を行います。
明日の17時くらいまでに実装できたところなどに関して話そうと思います!
ああ、その用意をこれからしなきゃw
ということで今日はこれまでですー、お疲れ様です。
あ、お昼にとうしょうめん食べました。
真っ赤なのが来た時は「うわあこれどうしようホンマ...とか思ったけど」思っていたより辛くなかったです、仙台の大河原の方が圧倒的にヤバい。美味しかったっす!


第20回potatotips勉強会

おばんです、田中です。
今日は以前からずっと気になっていたけれどタイミングと人数の関係で行けなかったpotatotips勉強会に出てきました!!



この勉強会はiOSとAndroidのtipsを5分のLT形式で次々に紹介していくという、東京のモバイル界隈ではもう人気中の人気の勉強会です。
勉強会情報を見つけた時にはもう満席になっていることが大体。
そんな勉強会に「ブログまとめ枠」というものができていたので、今回は参加可能と相成ったわけでございます。
そんなわけですので、早速まとめていこうとおもいます。
というところではありますが、今回の発表者数がなんと20名!!とても全ては紹介しきれないので、個人的に面白かったもの七選を紹介していきます。

iOS

Core Spotlight Optimization

from sakmtech

iOS9から搭載されるCoreSpotlightまわりの話です。
CoreSpotlightとはSearchAPIのひとつで、アプリ内のコンテンツをSpotlight検索できるというもの。
特徴的だったtipsは
  • 先にインストールしたアプリが検索で優先的に表示される
  • 検索文字列で先に入力したものが優先されて検索される
  • NSUserActivityやWebMarkupのリッチな検索結果のほうが優先される
  • 今後対応を迫られるであろうCoreSpotlight、しっかりと公式ドキュメントも読んでおきたいですね!


    とにかく明るいCoreSpotlight

    from yimajo



    こちらもCoreSpotlightについて。
    CoreSpotlightで便利なのは、Kindleやその他の電子書籍アプリなど、どれでアイテムを購入したか忘れてしまった時に便利そう!
    CoreSpotlightには160〜180の検索対象があるので、詳しくドキュメントを読んだほうが良いかもとのこと。(まだ作ってる途中かもだけど)
    そしてこの発表で一番盛り上がったのがTweetRainという、画面に特定のハッシュタグのツイートを流せるというアプリを使っていたところ!
    ニコニコ動画みたいになってました。
    聞いてる人からの注目度をあげる仕組みとして、TweetRainを発表時に使うのは面白いですね。


    Swiftでコマンドラインツールを作る

    from kitasuke



    出た!変態枠だ!(褒め言葉)
    文字通りSwiftでコマンドラインツールを作った猛者が現れました。
    先日のもくもくiOS勉強会@Rettyでお会いしたkitasukeさんの発表でした。
    正直何をどうやっているのかはわからなかったですが、Swiftではこんなこともできるんですね。
    これを作る時特に参考にしたのがCarthageとのことです。
    なんと知らなかったのですが、Carthageもオープンソースで作られたSwift製のものなのでこちらを参考にして制作を進めたとのこと。
    後日技術ブログに細かい内容を記載していただけるとのことなので、それを参考にSwiftの新たな可能性に挑戦するのも楽しいかも!?


    Android

    温かみのないコードレビュー

    from rejasupotaro

    rejasupotaroさんはコードレビューをする際に、コードレビューが人のスキルに依存することがよくないと考えているそうです。
    レベルの高い人がいないとプロジェクトが回らなくなるなどが発生するからですね。
    それを助けるためにコードの静的解析ツールを使って改善を図ったとのこと。
    CookpadではDokumiという解析ツールを使っているようですが、ネーミングセンス良すぎますw
    オチの「機械的なコード解析の冷たさに反して、激励する立場の優位性が生まれたので、人の温かみが生まれてよかった」
    というシメがとてもよいまとまりでした。


    Naming Rule

    from wasabeef_jp



    僕はAndroidには詳しくないのですが、Androidは大量のxmlを書くことになるようです。
    そしてそれはなんとDirectory管理ができないという問題を抱えていたそうです!
    100近いxmlファイルをベタで管理しなければいけないなんて、身の毛もよだつという感じがしますが...。
    そんな日々とはオサラバな発表内容。
    それを解消するツールの紹介でした。
    Android開発者の皆様は必見なのでは!


    Why don't you use enum?

    from izumin5210



    発表者のizumin5210さんは現在Wantedlyさんにバイト中とのことで、先週一週間たまたま出社していなかったために僕とは初対面でした。
    enum使っていこうぜ!という内容。
    Swiftでもよく使うenumですがその良さとして
  • type safeである
  • 拡張性が高い
  • Prefixをつけなくてもよい
  • event handlingに使えて、イベント発火を分けられる
  • 特にevent handlingが便利だというのは同感で、とてもよいです。
    SwiftではAlamofireのURLRequestConvertibleなどでよく見かけたりします。


    初参加のpotatotips勉強会、今日の回はなぜか厳かな雰囲気が漂っていたというお話でしたが、勉強になりました。
    願わくば、今度参加するときはなにか発表したい!
    運営と会場提供してくださってVoyage Groupさん、ありがとうございました。


    東京に来てからInputは多いけれど前に立って発表する機会がまだ持ててないので、週の後半はそれが増えるとよいなとおもいます。
    Outputまでしないと不完全燃焼な感じなので!

    Wantedlyインターン9日目

    おばんです、田中です。

    進捗あります!!


    今日は午前中にずっとやってきた大きめの作業が終わりました。
    大きめというか、結構細かくリファクタリングや設計の変更が必要な箇所だったので、読みから書きが大変なところでした。
    それがおわって、機能の追加が出来たのでひとまず胸をなで下ろしています。
    これでとりあえず人に話す内容ができますw



    午後からやった作業は細かい修正やバグ修正など。
    いやぁ、いいですね、細々としたissueをザックザック潰してはプルリク投げてマージかけていく。
    残タスクがブチブチと音を立てて潰れていくのは本当に気持ちいです、ふふふ。
    ともすればどんどん降ってくるんですけどね!
    そんなところが今日はとても楽しく感じました。

    今日特に感じたのはgitの管理がスムーズにできるようになったこと。
    昨日は神経使って疲れる、と言っていた(今日の作業がうまく回るところだったかもしれない)けれど、やらなきゃいけないところがうまく分割できていて二台同時開発がうまく活かせた感じでした。
    「そっちのマシンでビルドしていて、こっちのマシンではとりあえずそっちのビルドがおわってから進めたいから、この機能をブランチ切ってやろう。stashしてmasterをpullしてpopしてブランチ切って作業をコミットして、ゴニョゴニョゴニョ」

    技術的に新しく知ったのはInterface BuilderでViewのlayer要素を変更できるということ。
    例えばborderColorをつけたいとか。
    User Defined Runtime Attributesの部分に設定を加えていくと変更できるようですね。
    実際このくらいの処理であればコードでも一行で済むので、それでも良いと思っていたのですが、コードを極力汚したくないとかであればこれが使えそうです。



    そして今日は待ちに待ったpotatotips勉強会があったので別エントリでそれに関しても触れていきます。
    このエントリはここまでー。
    今日もお疲れさまでした。
    木曜にインターンとしてこれまでの進捗報告会があるので、明日はそれに向けてラストスパートをかけていきます!

    2015年8月11日火曜日

    Wantedlyインターン8日目

    まとめのストックが溜まりすぎてるので頑張って書いていきます!
    昨日とか今日とか一昨日とか時系列が大変なので文体は「今日」に統一します!



    おばんです、田中です。
    今日も1日生き延びた!
    進捗があまり芳しくないけれど...orz



    この規模のプロジェクトは見たことのないエラーがいっぱい出る。
    環境によるものだったり、git周りのことだったり。
    そうすると、個人でやってたときに出ていたエラーもどんなものか見当がつきやすくなったように思います。

    ただ今日は脳のメモリが少なくて手がよく止まってしまいました。
    二台開発できるけど複数ブランチを二台で行き来するとスワップが多くなって作業スピードは落ちる。
    でもビルドに時間がかかる。
    人とコンピュータの間のデータのやり取りがスムーズじゃない。
    しかも未コミットのものを扱ったりgitで色々していると余計に神経使う。
    普段からこれくらいの忙しさをやって鍛えてたらよくなるかなぁ。とか思っていました。



    そして今日は普段より遅い時間まで残って作業してました。進捗やばいからね!
    仕事以外のことを社員さんに尋ねたりも出来たので遅い時間良い。
    というのも、SwiftTaskというライブラリの使い方がどうにもわからなくて質問しました。
    反省しないといけないんですが、質問の仕方が悪かった。どこからなにを聞けばいいかもわからなかったのだけれど、主語もなく自分はこうなのかと思っているのだけれど、みたいなことをひたすら喋るというしょうもないことをしてしまいました。主語を特定してから聞ければよかった。

    しかし、理解まで付き合っていただいてとても助かりました。なんとなくわかったときは脳汁が溢れて楽しかったです!!
    こっちに来てずっと思ってるのがこの凄さを友達にも伝えたい。共有したい。友達もまたインターン行ったりしてパワーアップしてるだろうからそれも教えて欲しい。そんな風に思っているので、帰ったら勉強会とかやりたいです。



    細かい技術の部分に触れてない!
    今日はビルド時間の削減とかを目指していたりしたんですが。
    というのも、一度クリーンビルドすると20分も一回のビルドに時間が掛かるから。

    20分ですよ!!!

    ありえますか!?
    どうにかこれを改善したくて、Build Settingを変えたりSchemeをいじったりしたのですが、うまく効果が出ず。
    一説によるとextensionを減らすと改善するという話も聞いたのですが、さすがにそこまで手をつけられず。
    どうにかうまい方法を見つけてヒーローになりたいところです。

    というところで今日はここまでです。
    おつかれさまでした。

    2015年8月10日月曜日

    Wantedlyインターン7日目〜休日編〜

    おばんです、田中です。
    今日は夕方までコード書いたり、ふらふらしたりしていました。

    ふと思ったのですが、東京はすごいところですね。
    なにがすごいって道行くカップルのべたべた度。
    普通に公共の場なのにあの距離感はすごく、価値観が違うんだなーと思ったりしました。
    うらやまけしからん。



    さて、昨日はブログのまとめなどであまりコードが書けなかったので今日はがっつり時間をとりました。

    開発

    先週仕事で見かけたライブラリを使って自分で設計とライブラリの練習がてら、Qiita APIを取ってきてごにょごにょするクライアントみたいなのを題材に今日はもくもくしていました。

  • Bond使ってみた、使えた
  • SwiftTask使ってみた、まだわからない
  • Qiita APIからはユーザーのContribution数が取得できない
  • 通信して取ってきたStringをBondでUILabelに代入するとき、自動で複数行にならない問題
  • shell script invocation errorというエラー
    • いろいろググってPodの入れ直しやCocoaPodsの入れ直しなんかをしてみたけれども直らず。
      仕方がないのでプロジェクトを作り直して対処しました。
      結構イヤ〜な感じのエラーだったので、なにかご存知の方いらっしゃいましたらご教授いただけると大変助かります。

    今日はこんな感じのところまでとりあえずいきました。
    最近感じるのは開発スピードが遅くて良くないなってことです...。
    設計とかどんな風にやるべきかみたいなテンプロートとなるような部分の素振りが足りないのだと思うので、精進します。



    ちなみにリポジトリはgithubに公開でおいてあります。
    https://github.com/ktanaka117/SwiftQiita



    ふらふら

    夕方までの開発が終わったあとは少し本屋とかをふらふらしました。
    最近小説とかの本を読んでないなー読みたいなーと思いつつ、時間があればコード書いて勉強したいという気持ちもありつつ...。
    むつかしいです。
    技術書にしてもそのコーナーに行くとあんな技術もこんな技術も楽しそう!みたいな感じで、手がおいつかないw
    優先順位をつけるっていうのが必要ですね。

    本屋をふらふらして技術書コーナーで本を物色していたら知らないSEを名乗る男性二人から声をかけられました。
    「自作PCを少し始めてみようと思うんですけど、やってたりしますかー」という感じで。
    パーツ積んでてまだ組んでないんですよアハハーとかいいつつ、ちょっと新鮮でした。
    本屋の技術書コーナーによく行ってて考えるのですが、このコーナーにいる人はみんなエンジニアかそれを始めようとしている人なんだから話をしてみたいなー!ということ。
    今日はそれが初めて叶って嬉しかったですw

    それと小説読みたいんだけど、自分の好きなタイプの本がどれなのかわからないというのをふと考えていたのですが、ありました、そういうの。



    コンシェルジュ、そういうのもあるのか。
    今度お願いしてみたいですね。入間人間とか好きなんですけど、とかそんな感じでw



    そして今日のメインイベント。

    ラブライブ The School Idol Movie

    みちゃったんですよ!!!!
    念願叶ってやっと見にこれました。
    もうテンションあがりすぎて、変なテンションになってました。
    みなさんすみません、自分でもわかってましたが多分キモかったです。
    でもそれくらい特別でした!!



    色紙は真姫ちゃん!!
    真姫ちゃんかわいいよ...かきくけこ...。
    真姫ちゃん特に好きだから来てくれたことに運命感じる。

    アニメとか見ていて本当に影響しそうだなと思ったのは久々で、CLANNADぶりかもしれないという感じ。
    泣けた。
    映画終わったあとの館内の一体感を若干感じました。
    ラブライブに出会えてよかった。

    仕事頑張ろうって思いましたし、こういう感動できることをやっていきたいなって...ね...。
    僕もラブライブで出てきたアニメーションを再現してみたりとかしてみよう。



    明日からまた仕事が始まるので、今日のこのモチベーションをもっていきます。
    暑苦しいかもしれない。

    2015年8月9日日曜日

    Wantedlyインターン6日目〜休日編〜

    おばんです、田中です。
    今日はお仕事がお休みなので色々ふらふらしたりしてました。



    動きのカガク展



    これに行ってきました。
    正直に言って展示ものって見てもそんなに楽しくないものだと思っていたのですが、これはめちゃくちゃにおもしろかったです。
    表現方法や実装方法について考えるのも面白いですし、アイデアがそもそも自分とは考える次元が違うということ認識するのに良かったです。

    これは是非行ってみるべきイベントでした!

    ラブライブ

    買ってしまいました。チケット。


    仙台でも見れるのだけれど、なんとなくタイミングが合わなくて。本当にずっと見たかったのですが。
    ちょうど良い機会なので明日の分のチケットを早めに手に入れておきました。

    パンフレットも見る前に確保。
    明日見終わるまで見ないぞ...!!
    もう明日は号泣する予感しかしません。最高の夜にします。




    楽天カフェ

    その後はブログまとめやコード周りで振り返りをしたかったので作業場所として楽天カフェに行ってきました。
    さすが楽天なのかはわからないですが、MacBookを広げて開発作業をしているっぽい人が結構見受けられました。
    カフェとかで開発しているなこの人っていうのがわかると、その人と話をしてみたくなるのですが、シャイなので今日もやらずにおわりました。w
    ちょっとブログ書きが思っていたよりもかかってしまって開発の方がほぼおろそかになったので明日ずっと作業しようと思っています。





    夜のデザイニウムOB+α会

    長期のインターンとしてお世話になっている会津若松のデザイニウムさんのOBの先輩方と飲みに行く流れとなったので行ってきました。
    ざっくばらんに、今後のキャリアについての話や最近流行りの開発についてなど話をしていました。
    美味しいお店を紹介していただいたので、料理が美味しかったです。
    みなさん元気そうで良かったです、というのと以前と比べて、自分が若干ながらも話に入っていけたのがとても感慨深かったです。


    今日も飲んでしまいました。
    厚揚げと究極のTKG(卵かけご飯)!!
    この二つが美味しすぎました。
    なにが美味しいって、どちらにも使われているカツオ節。
    これの味がしっかりついていて美味しかった!
    厚揚げには間にネギが挟んでおり(TKGも)、ネギとカツオ節、そして醤油の相性が完璧でした。





    iOS系の会話だとRealmがまだやはり不安定でとか、Reactiveとは?という話で最近のBondの話などえおまじ得ながら近況報告的にやりました。
    やはり先輩方と比べてまだ全然足りないと今日話をしていて思ったので、今はやはりコードを強化するフェーズなのかなと実際に感じました。




    今日も適当にふらふらして美味しいもの食べてという感じでした。
    いやー、今日も楽しくて良かった。
    明日はラブライブに本気で取り組みます。
    あ、あとコード書きも。
    もう限界なので寝ますみなさい。


    2015年8月8日土曜日

    Wantedlyインターン5日目

    こんにちは、田中です。
    5日目の分をまとめる時間がちょっと取れなかったので6日目に更新しています。

    昨日は仕事終わりに六本木のバーというシャレオツでシティーボーイなところに社員の方々に津れて行っていただきました。


    六本木の雑居ビルの中にある隠れ家的バー。


    店内の雰囲気はこんな感じ。



    初めは白ワインと三種のチーズ盛り合わせ。





    白ワインは飲みやすかった。
    このワインはニュージーランドのワインだそうで、ニュージーランドのワインは外れが少なくどれも美味しいとバーテンさん談。
    チーズは真ん中の青カビが味と風味がしっかりしていておいしかったです。
    そして先日からの飲みの流れでなんとなく掴んだんですが、洋酒のスタートは白ワインが良いっぽいということ。飲みやすいのが多いからかな?ちぃ覚えた。


    ざっくばらんに開発の話、女性やお酒に関する話なんかをしつつ、美味しいお酒をゆっくりと飲みながらの楽しい大人の時間が過ぎて行きました。







    とても素敵な夜をありがとうございました。



    それと4日目の分であまり技術について触れていなかったのでその繰越分も含めて今回は技術部分も軽く触れていきます。

    Swiftについて

  • ブロック分には[unowned self]
  • String, NSString, NSURLなんかのpathExtensionプロパティでファイル形式がわかる
  • Unwrapの使用をできるだけ避け、Optional Bindingでnilチェックする
    • ただしUnwrapするかしないかはプログラマに委ねられる。明らかにnilでないところであれば使っても良い。
  • initとclosureの中以外でselfは使わない

  • 今いるプロジェクトでは大まかな規約はGitHubのswift-style-guideに則っています。
    よくまとまっていて、英語ではありますが平易でコード部分が多いのでぜひ目を通してみてください。
    僕も改めて目を通してみます。


    Git(Hub)について

  • git co .で不要な変更を削除
    • 僕はgit stash, git stash clearでやっていたのですが、用法としてはgit co .の方がシンプルだし正しそう。
  • git stash, git stash pop
    • git stashはコミットしていない変更点を一時的に退避させておくコマンド。git stash popで退避を戻してきます。これがcode signing周りでとても便利でした!個人と会社で使っているcode signingが違う場合にそれをgitでやりとりしていたりするとコンフリクトの元だったり、よからぬことが起こります。が、これを使うことでgit stash, git pull origin hoge, git stash popとすることでcode signingの切り替えをいちいち行わなくてすみます。カチャカチャッ、ターンッ!って感じのノリでとても気持ち良い。
  • 特定ブランチでの作業が長く続く場合は定期的にmasterをマージしながら作業を進める
    • 作業ブランチがリモートのマスターと乖離しすぎることを防ぐため。これをしないとコンフリクトの元になる可能性もある。
  • GitHub上で現在作業中のブランチ名の頭には[WIP]キーワードをつける
    • これはチームの文化によるところですが、例として[WIP] Post a file to HOGE、みたいな感じでチーム内の他の人にもどこに手をつけているのかがわかるようにします。WIPはWork In Progressの略。


    その他

  • CocoaPodsのバージョン違いに注意しよう
    • CocoaPodsでpod installしようとしたらエラーが出て、原因はCocoaPodsのバージョンが他の人と違うことでした。これはGemfileをプロジェクトのルートディレクトリにPodfileと同じように置いてBundlerを使ってbundle exec pod install経由で行うことで回避する。
  • MimeTypeという概念
    • AWSのS3を経由する処理をするとき、今回はファイルをアップロードする際にファイルタイプを指定するのに使うものらしいです。多分ウェブ系の方の知識かな?と思いつつそのあたり触るときは思い出せるといいな。
  • 次に買うMacはMBPのメモリ16、CPUはCore i7にしよう
    • 現在Mac二台開発体制をとってますが、自前のMBAと会社のMBPとでマシンスペックの差によるビルド時間の違いをすごく感じました。次買うときは現行よりハイスペックに。
  • Skitch便利


    • こんな感じでスクショを取ってさらに矢印つけたりコメントつけたり枠で囲ったりできる。サクサク。ちなみに画像は下で書いているDashのセッティング中の画像。
  • Dashをおすすめされたので使ってみます



  • 最近飲んでばかりだって?
    お酒が美味しいのが悪いんです。
    いえ、美味しいお酒は素晴らしいです。
    人を恨んで酒を憎まず。仙台に戻ったら抑えます。

    今日も今日で遊んだり少しコード書いたりしているのでまた後ほどまとめます。
    この記事はここまで。