22時に寝ようと思って2時に寝る。

備忘録や日記を書いてます。きょうは早く寝よう。

ニコニコ超会議2016に行ってきた。

Rootersのアプリデモをしてきた

先週の土日の4/29-30で開かれたニコニコ超会議に30日だけyurueとして二名が岩手県ブースの一部で参加しました。詳しくは、yurueが現在開発中の2016年いわて国体観戦スケジュールコーディネートAndroidアプリRootersのアプリデモを行っていました。今回デモを行ったアプリに関しては、以下で発表したものです。

azunobu.hatenablog.com

超会議、すごい熱気だった

f:id:azuuun:20160502164413j:plain

前日に岩手から東京・新宿へ向かい前泊して、当日は新宿から幕張メッセに向かいました。

開場直後、割とブースが入り口に近かったため、物凄い大群がダッシュでブース前を疾走していく様子や、コスプレで楽しませてくれるレイヤーの方々など、見てて楽しかったです(ちょっとしたパレード的な感じでした)。こんな雰囲気で、最初から会場全体が超!エキサイティン!!な感じになり、終了の17:00の最後の最後まで常に熱気に包まれていました。

自分は休憩時間にドワンゴエンジニア謹製 オープンソースやきそば を食べたり(カレー味美味しかった)、いろんなブースを周ったりして、とても楽しめました。

たくさんの人にアプリを触ってもらった

写真に写っているのはyurueのメンバーであるmsk6252くんです。めっちゃ熱く説明をしていました。

メインのアプリのデモ紹介では、客引きしながら紹介しつつ、たくさんの方にアプリに触れてもらうことができました。直接アプリに触れてもらってフィードバックを頂ける機会はなかなかないので、今回頂いた貴重なレビューは今後に超活かしていこうと思います。フィードバックの所感としては、ポジティブな面よりもネガティブな面が多かったように思います。今後これらを解決できるように、開発を続けていきたいと思います。

言の葉の庭の聖地に行った

www.kotonohanoniwa.jp

前泊で新宿に泊まることになったので「言の葉の庭」の聖地である、新宿御苑にて聖地巡礼しました。

シンプルに言って、サイコーでした。聖地巡礼するのは初めてでしたが、めっちゃいいです。

f:id:azuuun:20160502190556j:plain

f:id:azuuun:20160502190551j:plain

今回は大宮駅で新幹線を降りたので、大宮駅の聖地もバッチリ巡礼できました。

f:id:azuuun:20160502190853j:plain

f:id:azuuun:20160502190901j:plain  

巡礼して改めて「今週末また言の葉の庭見ようかな、、、」ってなってます。またどこか遠出するときに、その先に聖地があったらぜひ巡礼したいですね。

今回掲載してる写真はほとんどmsk6252くんから拝借させていただきました。一眼めっちゃ羨ましい。今回の聖地巡礼Xperiaパシャパシャするより、一眼やミラーレスでシャッター切りたい欲が高まりました。

とても良い経験になった

超会議でいわて国体自体を知らない参加者の方に、アプリを触ってもらって素直な感想を聞くことができたり、参加して本当に良かったなと思います。最近はあまり刺激がなかったので、モチベーションが下がっていましたが、今回の機会でとても高まりました。 アプリは夏にリリースすることを目標に、今後も開発を加速させて頑張っていこうと思います。

 

 

新歓のポスターを作った

入学式の季節

もうすっかり春ですね。先日大学に行った際に、フレッシュで輝いた新入生がたくさんいて、眩しいなー、いいなぁ、と思いました。

とくに和気あいあいとお外のベンチに座ってランチをたのしむ姿なんかは、ほほえましく、大学生エンジョイ!って感じがあふれています。

在学生として言うと、この時期とくに盛り上がるのはサークルの新入生勧誘ですね。

ことしは新入生いっぱい入って欲しい

所属しているデジタル手芸サークルでは、いろいろやってるのですが、

最近は、アプリ開発や勉強会、というよりは、じぶんの好きな分野について自由に熱く語る定期的なLT会という新たな試みに比重が置かれて、そのLT会がとてもワクワクする感じがあって、すきです。

とくに先輩がやっている研究というのは普段の会話であまりしないのですが、この場では研究内容をかるく発表する先輩も多いので、専攻している分野以外のはなしも聞けて、勉強になります。

個人的にはすごく好きなサークルなのですが、前年度加入実績は2名、いま残っているのは1名というちょっと、残念な結果でした。

そこで今年は「勧誘がんばりたい!」ということで、ポスター制作を担当し、全力で作ってみました。

ポスターをつくった

f:id:azuuun:20160409094342p:plain

もともとスライド資料をつくる際のデザインをいじるのが好きだったり、Webサイト制作を通してデザインを考えるのが好きだったので、今回もわくわくしながら取り組めました。

今回はいい機会だと思ったので、イラストレーターCCを契約して、いろいろなサイトの説明を見ながら、見よう見まねで作ってみました。

一番、重きを置いたのは見た目のインパクトで、あとはデジ芸の活動の「ワクワク感」を表現しました(適当)

世界を見据えた感じはちょっと誇張してる感じがありますが熱さを感じるポスターになっていればいいなと思います。

きょうは新歓当日

僕は所用できょうの新歓には欠席するのですが(申し訳ないです)、たくさんの新入生が参加し、技術のおもしろさや、何かを作ることで得られるワクワク感を知ってもらい、それらを共有できる仲間になってくれたらいいなと思います。

春休みの振り返り

1ヶ月ほど前に「春休みにやりたいことリスト」をあげました。

azunobu.hatenablog.com

そろそろ春休みが終わるので、かんたんに振り返っておきたいと思います。

1. Webサービス作れるマンになる

岩手県八幡平市安比高原で行われたスパルタキャンプ in八幡平PHP編に参加しました。朝から晩までの8日間のキャンプでは最終的に、ピュアなPHPでTodoリストやブログアプリを作り、その後、CakePHPを用いてMVCモデルを意識しながらおなじものを作りました。

とくに、Webアプリケーションフレームワークを使う上で重要なMVCモデルの概念について理解が深まってよかったです。モデルが何かを理解するにはかんたんなものを自分で実装してみるとよい、ということでオリジナルなモデルクラスを実装したり、MVCモデルのクラスローダの中身がどうなっているのかを理解するには自らクラスローダを実装してみる、といった一歩踏み込んだ内容も学びました。

これまでフレームワークを使いこなせて、その上でWebアプリを作れればいい、程度に考えていましたが、フレームワークの内側も理解しておくとより安心してプログラミングできて良さそうだなと感じました。

キャンプ全体を振り返ってみて体系的に学べたことでWebサービス作れるマンへの第一歩を踏み込めたように思います。キャンプが終わった今ここからが大変だと思いますが、これからは具体的に作りたいWebアプリケーションを実装しながら継続的にWebアプリ開発をガツガツやっていきたいです。

また、技術的なこと以外にも刺激的な言葉が多く、そのたびに奮い立たせられました。たとえば、

今回のPHP編のキャンプは計80時間でしたが、これは部活動の野球部に置き換えると、一日練習5時間だとして1ヶ月半程度、つまりまだ球ひろいのレベルだったりしますね。すぐできる、ということはありません。継続してやることが大事です。プログラミングも野球も一緒です。

今回のスパルタキャンプin八幡平は、講師のみなさん、受講生のみなさん、運営を支えているみなさんから刺激されまくりの日々でした。ありがとうございました。

2. Rootersを継続的に開発する

これはコードを書く、という意味ではほとんどできませんでしたが、アプリをリリースするためにクリアすべき課題の整理やこれからの予定についていろいろ話が進みました。継続的に頑張ろう。

3.Python言語の基本を学ぶ

paizaスキルレベルチェックでいうと、Cランク→Bランクに昇格できました。

さいごに

誰かが使ってくれるだろうものより、まず、自分が使いたいものを作っていきたいと思います。

春休みにやりたいことリスト

ついこの前、春休みに入ったので、3月末までにやりたいことを書き出しておきたいと思います。 やりたいことだけでなく、やることも含む感じなので、やるたいことですね。いま造語しました。

1. Webサービス作れるマンになる

先日、2016/2/28から岩手県八幡平市安比高原で行われる、スパルタキャンプ in八幡平に志望動機を添えて応募したところ、無事PHP編に合格することができました。

スパルタキャンプについて簡単に説明すると、

年齢不問、経験不問、職歴不問。プログラミングを習得したいという”強い思い”を持っている人が対象の短期集中型プログラミングスクールです。短期間でスキルを本格的に身につけていくためのキッカケを提供しています。

という感じです。ちなみに講習料は無料です。スゴイ。

自分はこれまでWebアプリケーション開発を本格的に勉強したことはなく、これを機に、吸収できるものは全て吸収するスポンジと化してWebサービス作れるマンになりたいと思います。あと、PHPもあまり触ったことがないなので、ペチパーになれるようにいっぱいコード書きたい。

一つ心配なことは、日程の集合時間が早い点。いつも10時起きですが、7時ごろの電車に乗らないと間に合わないため、最低でも6時に起きないといけないです。ブログタイトルを改めないといけないですね。

2.「Rooters」を継続的に開発する

azunobu.hatenablog.com

先日、アプリコンテストで発表したAndroidアプリRootersの開発を続けていきたいと思っています。 まだまだ、アプリとしてもプロトタイプでしかなくて、クリアしなきゃいけないこと(大人の事情)もあるので、その辺を一つ一つ解決していきたいなと思います。

アプリコンテストの時や、その後いろいろな方にアプリを見てもらって、たくさんフィードバックを貰いました。なかにはドキッとするような(ときめく感じの方ではない)アドバイスも頂きました。それらを噛みしめて、より良いものにしていきたいです。

3.Python言語の基本を学ぶ

3年次以降、研究でPythonを使うことになっているので、Python力をあげたいです。これまでも、ちょこちょこ書いたことはありましたが、体系的に学んでいないので、ところどころ抜け落ちている感じがしています。基本は、オライリーの書籍で一から学んで、最近では実践も兼ねて、paizaのコーディングスキルチェックをPythonで解いてみています。レベルがEからSまであって、現時点でCレベルなので、春休み中にレベルBに昇格できるように頑張りたい。ちなみにレベルCだと推定年収が270万円とのこと。レベルBだといくらなんだろう。気になる。

さいごに

いまやるたいことを、がんばろう。

いわてアプリコンテスト2015で大賞をいただきました。

f:id:azuuun:20160202234637j:plain

先日、1月30日に行われた岩手県主催のいわてアプリコンテスト2015に出場し、アプリケーション部門大賞とモバイルファクトリー賞をいただきました。

今回は、同じ学部の3人の友人と組んだチームyurueとして応募しました。 ちなみに、ややこしく読み間違われやすいのですが、ゆる良いものを作りたいという意味からyurue(ゆるいー)と読みます。上の写真だと、僕はそばっちの隣の真ん中のやつです。みんな、そばっちのポーズです。

応募から、発表まで何をしたのか、ブログでまとめておこうと思います。

応募まで

いわてアプリコンテスト2015が行われることは知っていたものの、開催時期が期末試験と重なってしまっていたので、正直、かなり迷っていました。応募締切まで一週間に迫ったあたりで、yurueの一人から「アプコン出ないん?」と持ちかけられて、「ん〜〜〜〜〜」と悩んだ末、「よし、やろうか!」と一念発起しました。同時に期末試験はあきらめました。(学生として非常によくない)

やるからには中途半端はなし、ということで、その日から毎日話し合いの機会を設けてアプリ案を書類にまとめる作業、同時進行で、Androidアプリ開発勉強会を行いました。

この時点のメンバーのスキルとして、自分以外はJavaは書けるがAndroidアプリ開発は初めてという状況でした。自分も、Androidアプリ開発は入門レベルしかなく、しょっぱなから"本当に実現できるのだろうか"、という危機感がありました。

応募の方は、問題なく完了しました。この時点で12/18。

激動の1ヶ月半が始まりました(大袈裟)

開発

我ながらコンテスト1ヶ月半前の時点でAndroidアプリ開発を学び始めるのはかなり無謀のように思いました。でも、やるしかない、後に引けない、ということで地道にやっていくことにしました。

最初の10日間

https://gyazo.com/331dc54a67814273d5dbd3a593c1d890

まずは、やさしいAndroidプログラミングの写経から始めました。

やさしいAndroidプログラミング 第3版 (「やさしい」シリーズ)

やさしいAndroidプログラミング 第3版 (「やさしい」シリーズ)

ドキュメント共有サービスのesa.ioを使って、

  • 必要と思われる部分のコードを写経しコードが実行できることを確認し記事にしてメンバーに共有
  • その記事を読みメンバーが写経し、理解。

この繰り返しで、入門レベルの部分を10日ほどでクリアしました。自分が写経し、動いたという保証があるコードをメンバーに写経してもらうことで、変なところで躓くことを防ぐことができました。 躓いたとしても、動くことは保証されているので「俺もそのエラー解決出来ない…」みたいな共倒れは起きませんでした。

調べまくる

入門レベルをクリアしたところで、さっそく先が見えない状況になりました。

「xxxな機能を実装したい」

どうしたらいいんだろう。わからない。

Google先生に聞きまくる。答えが見つかる→実装できる。先人たちの備忘録が本当にありがたかったです。

結局発表の前日まで、Google先生に聞きまくって、やっとのおもいで実装する、その繰り返しでした。

この時点で、周りのメンバーはなかなか厳しい状況になっていて、タスクを割り振っても、しばらくして、進捗を確認すると「出来ない」との返事で、3日後ふたたび確認しても「出来ない」という感じでした。

参考になりそうなサイトや技術書を探して教えてあげるなど、自分なりのサポートをしてみたものの、思うように捗らないようでした。実装できないことで自信をなくしていくのが目に見える感じで、徐々にチーム全体の士気が下がっていきました。この辺、わりと自分も精神的にきつかったです。

自分も力量不足で目の前にあるタスクでいっぱいいっぱいで、メンバーへ教示してあげるという時間も割くことができませんでした。結果、この時点で自分のみコードを書くことになりました。

メンバーには、データベースの入力作業、フリー画像素材の収集などのタスクをお願いすることになりました。

なんだかんだで、かたちになった前日。

https://gyazo.com/4eea6816dcd7039d820fd28770a70956

一週間前にやっと、それっぽい、かたちになってきました。 データベースのデータを乗せて動作確認、「おぉ、動く。スゴイ。」みたいな。

この時、当日発表する資料も同時並行で作っていました。応募した時点で仕様として書いていた機能のいくつかが未だに実装できてない状態だったので、コンテスト三日前に提出しなくてはならない発表資料にもその機能を実装した前提で書いてもいいものだろうか。もし実装できなかったら、その発表資料はどう説明したらいいのか。。。とか考えましたが、結局書きました。

その懸念していた実装は発表前日に完了できたので、結果オーライということになりました。

発表当日

お腹の調子が優れないなどのトラブルがありましたが、なんとか無事に発表することが出来ました。

内容については以下のスライドを用いて発表しました。


発表は思ったよりも会場の反応が良くて、ところどころで軽い笑いが起きたので、「笑いもあるプレゼンをしよう」という目標は達成できました。

他のエントリーした方々のアプリはどれもレベルがとても高くて驚きつつ、内容が面白く、この日はかなり刺激を受けました。

その後、昼にはブース型の説明コーナーがあり、プレゼンを聞いて興味を持ってくれた人がアプリを触りに来てくれたのは、非常にうれしかったです。 この時間に、たくさんの方からフィードバックを得ることが出来ました。 ここでの話は、とても印象的で、充実していて、これまで頑張ってきた一ヶ月が報われた感がありました。

審査結果

f:id:azuuun:20160202234632j:plain

大賞とモバイルファクトリー賞をいただきました。賞金も!

モバイルファクトリー賞では、駅メモのTシャツやぬいぐるみを頂きました。とても、かわいい。 さっそく懇親会でみんな揃って駅メモTシャツを着てました。

まとめ

  • あきらめないで最後までやり遂げられた達成感。
  • 発表したアプリ、Rootersを実際にリリースする段階まで頑張りたい。
  • yurueとしてさらにもっと頑張りたい。
  • 期末試験もベストを尽くした(と思う)

追記

大学で所属しているデジタル手芸サークルの「DH LTM Ver 1.2.6(LT会)」にて報告させて頂きました。 そのときの資料を貼っておきます。

DH LTM Ver 1.2.6 | Facebook

SQLiteでno such columnが出た

Androidアプリ開発でSQLiteを扱っていてno such columnというエラーが出た。

今回は、Androidアプリ外(sqliteBrowserなど)で作成したデータベース(hoge.db)をassetsにコピーして読み込み、活用しているパターンです。

発生したタイミング

  • データベースの内容を更新し、assets内にある古いデータベースから新しいデータベースに入れ替えた。
  • 中身だけ更新しているのでデータベース名は一緒。
  • エミュレータで実行。
  • 「おめーの定義したcolumnねぇから!!」

原因

  • 通常デバッグするときは、エミュレータ内に既にインストールされている開発中のアプリにさらに上書きする形だが、データベース自体は上書きされていないことがある。
  • 名前が一緒だと更新されないで再利用される?
  • ということなので、更新して新しいSQL文に書き換えても古いデータベースを参照し「存在しないカラムがある」というエラーが出た。

解決方法

  • 一度、エミュレータ内にインストールされた開発中のアプリをアンインストールし、再度デバッグを実行する。

実は、no such columnエラーは二度目で、ずっとSQL文とにらめっこしていた。

猫のコンテンツ力の高さ

2016年初めての記事です。

もうすっかり明けてしまいましたが、あけましておめでとうございます。 去年受けた自己分析診断テストの結果が返ってきて、

身軽にテキパキと動き回るほうではなく、腰が重たい印象を持たれているようです。

というコメントがありました。主にネットワーク上を動き回っているので、現実ではこういう印象を持たれてしまうのですね。今年はもっと”現実で”動けるところ、動いていきたいと思います。よろしくお願いします。

年末年始は北海道の実家に帰省し、寒いというより寒さを超えた向こう側、"皮膚が痛い"という感覚を久しぶりに味わいました。あと、成人式や同窓会に出席しました。楽しかったです。

実家の猫のツイートしたらバズった

帰省したら「実家システム、ご飯も出てくるし暖かいし快適すぎるのでは~」という感じになるのは恒例で、わんこ、ぬこ、亀なども飼っているので、メンタル的にも癒やされます。

1日、夜に階段で何気ない一場面をスマホで撮ったものをTwitterに投稿したら物凄いスピードで拡散されました。

自分のアカウントをフォローしていない友人のアカウントのTLにも猫のツイートが何度か流れたよ、と言われたときは「マジか~!」と驚きました。

リプライがたくさんきた

このツイートにはたくさんのリプライを貰いました。「かわいい」「癒されました」「うちの猫と握手してきました」「シーバ(一般的に高級キャットフード)何個で握手できますか?」

意外とこういった感想リプライが嬉しかったです。

最近のTwitterでは相互フォロー関係にない場合はリプライに「フォロー外から失礼します」的なフレーズを付けないと失礼、みたいな文化も出てきたみたいですが…。

内容によりますが、直接感想をダイレクトに伝えるのも大事だなと思いました。

記事になった

いろいろ記事にしてもらったので、ここにまとめておきたいと思います。

news.biglobe.ne.jp

irorio.jp

実家に帰ったら、階段が「ぬこ握手会場」になっていた【4枚+1】 – grape [グレープ] – 心に響く動画メディア

「犬みたいに気安くお手はしない!」気まぐれ猫の握手会が、どこかのアイドルみたい! | CuRAZY [クレイジー]