2014年1月15日水曜日

2014年の抱負

仕事について

2014年の抱負→詳細はEvernoteの"2014年の抱負"に内緒メモった。

技術面について


  • Java以外のサーバ側プログラム書きに適した言語を1つ選び習得し社内に布教する
    • Scala、Haskell、Go あたりかなぁ…?
    • Javaはもういやだお… でもGAEのSpinUp長くなるのも嫌だお…
  • サーバまわりを頑張って覚えよう
    • Chefとかあのあたり 自分でサーバ建てるのが億劫ではないと感じるように頑張ろう
  • TypeScript頑張る
    • おー!
  • ECMAScript 6もちゃんと追う
    • 頑張るぞー!
  • ReVIEW.jsがんばろう
    • 自分でドッグフーディングできるぐらいまでがんばろう
  • 3Dか電子工作かどっちか頑張る
    • このあたりできないとマジで将来食っていけなくなる気がしている

その他

  • お金なんとかして米国Buildに行くべきか悩む…
    • 完全にTypeScriptのためだけだよな… お金もったないな
ここまでAndroidについて言及無し
今年でついに30歳です。でも去年からなんか既に30歳みたいな気持ちで過ごしてきたので1年分損してる気がする…。

2014年1月14日火曜日

2013年の振り返り

2013年の抱負のエントリの次がコレだよ!もはや抱負ブログだ!

仕事について

去年の抱負は秘しておいたわけですが、実際は会社からの年収ほげほげ万円にする!という目標を建ててました。
実際は、2014年頭の水準で1年過ごせば目標達成!ぐらいの感じになりました。2013年の総額はたぶん全然目標に達していない感じ…。
来年は、頑張りましょうね!

また、もう一つ秘してあった目標もあったのですが、そっちは上手く行ったような全然うまく行ってないような微妙な有り様です。
まぁ、俺にしては案外よかったんじゃないの…!みたいな感じでした。

技術面について


  • HaskellかScalaをもうちょっと頑張ってやる
    • 全然やってねぇ…!!それもこれもGAEに絡まないからだ!!
    • GCEでうまいこといかんもんかなぁ…
  • TypeScriptがもっと発展するように頑張る
    • あれ、2013年頭にもうTypeScriptってあったんだっけ…??
    • ということは俺はもう1年以上TypeScriptに熱をあげているのか。珍しい。
    • DefinitelyTypedのメンバーにしてもらった
      • 主にCI用のテストランナーを全部書き直してpull request投げたあたりで評価された(匙を投げられた)感ある inviteしてくれてありがとう @basarat
      • TypeScript 0.9.5 対応で @Igorbek がすっげー頑張ってくれて神かと思った
    • TOPGATE社の案件はexperimentalな要素を忌避するプロジェクトじゃない限りTypeScriptを使っても怒られないようになったと言えるかもわからん
    • WebStormのTypeScriptサポートについてIssueを6件投げた
    • TypeScript本体のバグと思しき挙動についてIssueを5+1件投げた
      • CodePlex, リンクの作り方わかんないな
      • うち 2件既に最新では治ってた 1件僕の勘違い 2件ほんとにバグで誰かがアサインされたか多分アサインされるっぽい…? 1件ディスカッションに投げたらIssueにしときなーって誘導された 
    • TypeScript本体の仕様について2件Discussionsに投げた
      • うち1件 Issueにしときなーつって移してもらった 1件は「そりゃ確かに便利そうだけど遅くなりそうだしやってみねぇとわかんねぇな」みたいな反応だった
    • なんかあんま活動してない気もするな
    • CompilerServiceあたりは全然コード読んでない
      • というか読もうとしたけど量多すぎて力尽きた
    • IDE周りは…
      • Nitraが出たら本気出す
  • HTML5とCSSについて
    • ほとんどやってない
    • やはり仕様読んだりするほうが楽しくて、実装の細かな差を吸収する実装!みたいなのにどうにも興味が持てない…美しい世界にだけ触れていきたい(ただし金は儲からない
  • WebGL
    • ぜんぜんだめ 山下も教化できてないわーつらいわー
  • Arduino
    • ぜんぜん
    • RPiも買ったけど全く触ってない…電源すら入れてないぞ
  • LEAP
    • 遊んだだけ(コード書いてない
    • OculusRiftも完全にユーザ側ですね…!
  • Google Glass
    • 技術的にはしっかり追いかけてるけどあんましハックして遊んだりしてないな…(;´Д`)
  • ReVIEW.js
    • なんとなく作った まだ全然実用デナイ
    • http://vvakame.github.io/review.js/
    • 割りと面白くなると思うので真面目にやっていきたい気がするなー
  • その他
    • 夏コミと冬コミでTechBoosterから同人誌出したけどそこに原稿投げつけた
    • 英語できなくてもできないなりに適当になんか言うと割りといい感じに斟酌してくれるなコレ!みんな優しいな!ちょっと自信ついた!!
    • 世界の頭良いヤツマジ頭良すぎて直接議論するとマジで心折れそうになるわー。レベルが下ってはっきりわかってヤバいわー。
彼女?ウォオアアアアアアアアーー!!(包丁
総括すると、さほど悪くない1年だったような気がしなくもない。

どっとはらい。

2013年1月3日木曜日

2013年の抱負

仕事について

いくつか目標を考えたんですが、ちょっと人に見られるとイヤンな感じなので、Evernoteに書きました。"2013年の抱負"というタイトルにしておいたので、来年になったら達成できたか確認すること。

技術面について

やりたい事が結構色々あってつらぽよい…。
  • HaskellかScalaをもうちょっと頑張ってやる。
    • AndroidにもGAEにもWebアプリにも絡まないと本当にヤル気出ないの辛い
    • Herokuの活用を考える。識者にどこがいいのか喧嘩売ってみる。
  • TypeScriptがもっと発展するように頑張る
    • CompilerServiceのコード読む
    • IDEをなんとかできないか考える
    • もしかしたらjs_of_ocamlとかやったほうがいいのかもしれないですね!
  • HTML5とCSS3についてしっかり学習し、単独でマトモなアプリを書ける知識を付ける。
  • WebGLとかあのへんの技術についてキャッチアップする…。
    • つらぽよいですね。
  • Arduinoを使って玩具を作ったりしましょう。
    • 特に、Newrosky社のアレと組み合わせて遊べるか検討する。
  • LEAPが手に入ったら遊ぶ。
  • Google Glassが手に入ったら本気だす。
こんな感じで。
20歳代最後の年になるので、今年は引っ越して猫を毎日モフれる生活になれればと思います。彼女?ウォオオォォァァアアアア------!!!!

2013年1月2日水曜日

2012年の振り返り

去年の振り返り

去年の目標 めっちゃドヤ顔でドヤヤッ!ってしてますが、去年の目標は全部未達成に終わりました。ザマァないです。
社外収入100万円は、主に広告収入とかで線形じゃない成長になるように稼ごう!!とか決意してた記憶がありますが、終わってみるとアプリとか全然作る脳みそがなくて、主に日経ソフトウェア様と1回日経Linux様に書きたい原稿書かせていただいて稼いでました。あと、北海道に呼んでいただいたのも確か今年だったと記憶しているんですが、僕が使ってる銀行のネットバンキングが3ヶ月しか遡れなくて本当につらぽよです。多分、90万弱くらいの稼ぎだったんちゃうかなーと思います。結構惜しかったのかな。

会社ボーナスについては言うだけ言ってお財布事情とか全く把握せずに普通に仕事してただけで終わったのでまぁむべなるかな…という感じ。
来年はもーちょっとそのあたりに興味を持つように努力していきたいですね。

新しく身に付けた事

なんか特に何も思い出せないので何も覚えていないのではなかろうか…(震え声
モナド倒す足がかりを掴んだような気がするあたりは収穫だった気がする。わかめモナ化開催してくれた名古屋のこわい人達に感謝ですね。2013年はもうちょっと使ってみようね。

2013年の抱負は明日を目処に考えて出す…。

2012年12月26日水曜日

2012年 わかめが書いた記事まとめ

ドーモ、AndroidAdventCalendar 表の25日担当わかめです。

今回は、GAEのCloudEndpointsについて説明する予定…でした。
しかも、昨日担当のえがわさん
Google Cloud Endpointsは、明日(12/25)に @vvakame さんが詳しく説明してくれるそうなので、そちらを読むといいと思います。
とか書かれててすごい申し訳ないんですが、ちょっと挫折しました。

そのため、わかめ担当分は2012年にわかめが書いた記事とかライブラリのまとめを紹介してお茶を濁したいと思います。

僕がCloudEndpointsを諦めた理由

のまえに、一応諦めた理由を書いておきたいと思います。

GoogleAppEngineとは、PaaS型のWebアプリホスティングのサービスです。Google様の超絶なるインフラを間借りさせていただき、あまつさえGoogleのエンジニア様がメンテナンスとかを全部やってくれるため、僕ら利用者はアプリのコードだけゴリゴリ書いとけばええねん!!最高!!わかめが務めているTopgate社でもゴリゴリやってます!!

で、CloudEndpointsというのは、そのGAEの1つの機能なんですね。
これの何がすごいって、サーバ用のコードを書いた事がない人でもちょろちょろとアノテーションのついたコードを書くとAndroidとサーバを繋ぐライブラリを自動生成してくれるという夢のようなライブラリです!やったねたえちゃん!ネットワークの知識がなくても簡単に自分だけのWebサービスが作れるよ!!
まだ、正式にリリースされていないのですが、ローカルではみんな試すことができます!!よーしじゃあやってみよう!!というエントリになる予定でした。

で、無理ぽ…てなるまでの過程を箇条書きでお伝えします。
  1. まずはいつも使ってるGAE用フレームワークのセットアップするかー
  2. あ、あれ…EclipseプラグインのCloudEndpoints周りの機能が動かない…
  3. 公式のサンプルプロジェクトで試すかー
  4. あ、あれ…ライブラリが生成されたフリして一番肝心の独自のjarが生成されない…
  5. ちょっと不安だけど本体は動いてるようなので自前プロジェクトでも同じことやるかー
  6. あ、あれ…やっぱり上手く動かない…
  7. コマンドラインから直接コマンド叩いてみるかー
  8. あ、あれ…やっぱり独自のjarが生成されない
  9. AndroidプロジェクトのBackendプロジェクト生成から試してみるかー
  10. や、やった!!CloudEndpoints周りのファイルが正しく生成されているように見えるよ!!
  11. あ、あれ…プロジェクト生成位置が指定できないし動かすとなんか正しく動かなくなる…
  12. と、とりあえずGAEプロジェクトをcurlで叩いてみよう…
  13. あ、あれ…もしかしてJPA必須なんですか…JPAとか誰も使ってないだろ…
  14. \(^o^)/これは(今はまだ)実用に適さない……正式リリース間近という噂は一体なんだったのか…
こんな感じでした。2日全力で取り組んでもモノになる気がしなかったので諦めました…サーセン…。

わかめが書いた記事について

とのアドバイスを頂いたため、ありがたくこの作戦で行くことにしました。
わかめはありがたいことに、ほぼ毎月日経ソフトウェアさんに記事を書かせていただいています。
実は既に一覧化してあるので、今回は特に苦労した号の愚痴でも書いていこうと思います。

2012年03月号 FragmentとActionProvider

ぶっちゃけ、ActionProviderって使い道なくね???コマル-

2012年05月号 Wi-Fi Directについて

Amazon オンライン(無料)
いや、マジでICS時点ではクソですよこのAPI。本当にひどい。15分に1回くらいOS毎リブートするもんね、使ってると。フレームワークレベルで内部状態の遷移がおかしい感じで、ちょっと足を踏み外したりオラオラしたりするとすぐに…。゚(゚´Д`゚)゚。
その時のまとめを見ると、心が折れかけている様子が分かると思います。
JellyBean以降だとマシになってるのかな…誰か教えてください。Wi-Fi Direct NSDとかもあって期待どおりに動いてくれるとすると大変良い機能だと思うんですけどね…。
記事を書くの自体はなんとでもなるんだけど、サンプルアプリの作成と下調べがやっぱり苦労一番つらい…。

2013年01月号 Network Service Discoveryについて

この号も結構な難産でした。苦しんでいるのは毎回ネットワーク系ですね…。NSDは大変おもしろいサービスで、ゲームとかの実装に役立てると大変便利そうです。ですが、こいつも案外じゃじゃ馬で、とりあえず1回繋ぐだけだと特に苦労はしないんですが、1ゲーム終えてからもう一回繋ごうとすると非常に苦労します…。もしかしたら、サーバソケットは常に開きっぱなしで接続されても拒否するとかなのがベストな実装なのかもしれません。この記事では、苦肉の策としてゲーム終了後に最初のActivityに飛ばして、もう一回ゲームをするときはActivityのレベルからNSDのセットアップをやり直しています。Wi-Fi Directの時と違って、一応そういう雑な扱いでもそれなりに動いてくれたのでそれでよしとしてしまいました…。
記事を書くの自体はなんとでもなるんだけど(ry

書きたいんだけど書けない記事について

本当に動かなくて記憶に残ってる辛かったヤツってWi-Fi絡みの2つくらいだけです。あと、最近はJellyBeanのネタに困ってます…。一応、連載終了まで乗り切ったのでネタ不足の心配はなくなりました!
次は書きたいんだけどまぁ需要が圧倒的に無さそうなので編集さんに提案すらしていないネタについて。

Mavenについての解説と、導入した時のご利益と開発する時の利点や運用について書いたりすると幸せなのでは…と思ったり。しかし、某uPなんとか社でもzaki導師がいるのにy@nzmに伝道されてなかったりするし広く流布するには難易度が高そうで辛い…。

APTについての解説と、現時点での自動生成系ライブラリ作成のわかめ流ベストプラクティスとかを書いていきたいなぁ…と思ったり。僕が作ってるJsonPullParserについて、"導入が難しい!わからない!"とか言われる事が多くて、どこがやねんオラァぐらいに思ってるんですがまぁそのあたりのコストを下げるために、巷にAPT系便利ライブラリをガンガン増やしていく作戦ですね!

あとは、なんかコード書く際の精神論とか書いてみたい気がするんだけど、例えば川峠のようにゲーム系ジャンルの人とかにまで普遍的に適用できるかっつーと非常に怪しいのでどの程度の広さに通用するのか謎です。

何か、読んでみたい記事がある人はわかめとどこかの雑誌の編集部にお願いしてみよう✩

謝辞

原稿を書くにあたり、muo氏の添削とmstssk氏のわかめアイコン作成にはいつも助けられているので殿とかで言ってもらえれば舌打ちしつつ紙1枚ザルに投入したりしたいと思います!!いつもお世話になっております!!!

ライブラリの整備

雑誌のために書いたサンプルコードは、基本的に再利用可能な部品を用意して読者が自分のアプリに簡単に組み込めるように留意しつつ書いています。そのため、僕の雑誌記事のサンプルコードは新機能のためのライブラリの宝庫といってもいいでしょう(ドヤァ
本エントリを書くにあたり、適当に1つのリポジトリにまとめました。しかし、まとめた後に動作確認していないので、動かなかったらごめんね✩雑誌記事のサンプルコードそのままのほうがちゃんと動作確認してあるので信頼性高いです。
将来的には、Gradleを使った新ビルドシステムが開発中との噂ですし、そのうちbuild.gradleに書くだけでライブラリが使えるようになる日が来るでしょう!MavenCentralにjarを上げるのとかは簡単だしね✩

その他のライブラリの紹介

番宣の時間です。

JsonPullParser

こちら。POJOにアノテーションを付けるだけでJSONとPOJOを相互に変換するラッパクラスを自動生成します。リフレクションを使わないのでそれなりに高速に動作しますし、ProGuardなどの難読化にも強いです。提灯記事はこちら。結構マジメにWikiが書いてあるはずなので目を通してみてください。

Memvache

こちら。GoogleAppEngine/Java 用ライブラリ。Datastoreへのアクセスを自動的にMemcacheへのアクセスに変換します。Filterを1枚噛ませるだけでON/OFFできるので超簡単!
しかし、どの程度バグが無くて安定して使えるのかわからんのでちょっと怖いです…。弊社のプロジェクト1つに突っ込んで様子を見ていますが、アクセス数が少ない状態では特に問題は発生していないようです。識者の方はコードレビューしてくれると嬉しいです(;´Д`)

Blaz-db

こちら。SQLite(Android or JDBC)上で使える、KVSライクなDatabaseを作るライブラリです。現在とあるプロジェクトで利用するためにちまちま作業してます。まだ使うのはちょっと早いかも…>< 使い勝手的には結構いいと思うんですが、速度面は何も気にしてないので結構遅そう。あとはH2DatabaseとかだとTEXTがCLOBとかの扱いになってしまい検索対象にならないのも辛い…。GAE/JのDatastoreとMySQLあたりにも対応しておきたいんですが…。

あとがき

記事書いたりの文章ってどういうトコが面白いのかちょっと自信がないので、何か追記して欲しいこととかあったら言ってください><

2012年12月25日火曜日

ブログ移行してみます。

作った後かなり放置してたblogspotですが、移行してみます。
はてなダイアリーのはてな記法が辛くなってきていて、Markdownかせめてtextileがいいなぁ…と思ったのです。blogspotはそのどちらでもないですがGUIが充実しててh1的なものがしっかり置けるぽいので試してみます。


これから12/25担当のAndroid Advent Calendar書かないとあかん…。