2009年1月アーカイブ

[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜DAY1〜 - いそっちノート
[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜DAY2〜 - いそっちノートの最終章。
「ブログに書くまでが勉強会」というamachangの教えを守れそうだ!!


まずはブース編
・AKAMAI
クラウドで有名なAKAMAIだけど、今、動画配信で面白いことやってるらしい!!
動画配信の際に、ネットワークの状況に応じてリアルタイムでビットレートを変更するらしい!!
例えば、再生開始時はなるべく早く見たいのでビットレートを落としたり、ネットワークが混雑してきたときもビットレートを落として動画が止まらないように頑張ってくれる!!

これからの時代、ネット経由で見る動画もどんどん高画質かつテレビみたいなリアルタムな方向に進んで行くだろうから、そのときは状況によってこういう仕組みは必要だと思う!!!



・NTT DoCoMo
近い将来、DoCoMoのケータイにAdobe AIRのRuntimeが載るらしい!!
Developerの視点で言うと、現状がFlashLite3(ActionScript2)なので、ActionScript3.0で開発出来るだけでもめっちゃ楽になる!!それに、既存のFlex/AIRアプリからの移植がめっちゃ楽になりそう。(画面サイズが小さいから、レイアウトは変更しなきゃいけないかもしれないけどね)

Userの視点で言うと、EeePCとかWindowsMobileとかじゃなくて、携帯電話でも
パソコンと同じ(様な)アプリが使えて、パソコンとかケータイとか区別しなくて済む時代が来るみたい。

いろいろ質問してみました。
Q. Adobe AIRで出来ることが携帯で出来るようになるの??
A. 現在あるPC用のものと全く同じではなく、モバイル用にカスタマイズしたものが載ります。

Q. 今のi-appliでさえ、ケータイの個性っていうか特定の機種だけ使えるAPIとかあるのに、クロスプラットフォームを売りにしたAIRで大丈夫??
A. 今、Adobeと調整です。

Q. いつ頃出るの??
A. まだわかりません。

Q. 出る頃には、画面解像度とかどのくらいのサイズになってそう??
A. まだわかりません。

Q. 話し変わりますが、今年DoCoMoからAndroid携帯が出るって聞いたのですが、いつ頃になりますか??

A. 私たちのところまで(情報が)おりてきてません。

結局わからないことだらけwww


ニュース見つけたからリンク貼っとく。
NTTドコモが「AIR on ケータイ」を初披露,Adobe社と協力して開発 - モバイル - Tech-On!


・Borland
Flexの負荷テストツールってタイトルだけど、実際はサーバーの負荷テストツール。
Flexは通信の際にAMFっていう形式をとることがあって、そのAMF形式に対応して負荷テストツールを作ったんだって!


・おみやげ編
いっぱいもらった!!

MAXとFlexのマスコットキャラクター

NEC_0176.JPG





FlexBuilder4βとFlashCatalystβ

NEC_0175.JPG



FRISKケースのAdobe版

NEC_0174.JPG



ClassMethodとBorlandのペン(笑)

NEC_0173.jpg




P.S.
初めてあった人に、「いそっちです」って名乗ったら、「いそっちノートの人!!ブログでお世話になってます。」って言われた♪なんかうれしい(≧∀≦)


[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜DAY1〜 - いそっちノートの続き。


DAY2は昼からの参加で。

・Flashと外部デバイスを使ってアレを作りました。
FlashOOPのセッション。
Wiiバランスボードを椅子に乗っけて、その上で作業をすることにし、
得られた重心から姿勢がずれていたら警告をしてくれるアプリとか

FunnelっていうGainerの無線バージョンのアプリを使ったデモとか

プロジェクターと赤外線カメラで作るマルチタッチスクリーンとか

そういうFlash + もの作り的なので、オモシロ系のセッションでした


写真とか見つけたらリンク貼りまーす。


あと、お隣でamachangがしゃべってたみたいです。終わった後挨拶に行ったら盛り上がってたみたいなのでヨカッタヨカッタ



・ActionScript 3.0におけるパフォーマンス向上のヒント
ちゃんと型指定しろとか、DynamicPropertyじゃなくてドットシンタックスを使えとか、if文の条件分岐の仕方を最適化しろとか、ArrayじゃなくてVectorを使えとか、Math.pow()やMath.abs()は遅いとか、ビット演算をしろとか。まぁ当たり前のお話。

知らなかったことで、
 Vectorは、たぶんJavaでいうArrayListのジェネリクスみたいな実装をしてると思うんだけど、
コンストラクタの第2引数をtrueにすると固定長配列になるので、Javaのいわゆる配列(コレクションではない)みたいになってちょっと高速になるってコト!!

そこは見てなかったぜ!!!


あとn*=0.2とn/=5だと掛け算の方が速いみたいな情報もあるけど、Firefoxだと逆だったり、環境依存な部分もあるし、速いって行ってもそこまで違わない部分もあるからここは気にしなくていいんじゃね??って言ってた。


これ見て、去年の今頃授業で配列のキャッシュラインや、パイプラインとかを意識した最適化について授業でやったの思い出した!!もっかい復習する!!!




・コミッタ全員集合!?SparkProjectライトニングトークセッション
ごめんなさい。メモってないっすwww
内容は理解してきたつもりなんだけど、いざまとめろと言われるときついっすww




[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜ブースその他〜 - いそっちノートに続く。



昨日、今日とAdobe MAX Japan 2009に行ってきました!!


11,000円の出費は学生にはちょっと痛いけど、「MAXも学割が欲しい!!」とAdobeの中の人に伝えてきたので、来年から学割が実装されるといいな!!



アナログ版のいそっちノートに汚い字でメモが書いてあるので、デジタル版いそっちノート(ブログ)と同期させるよ!!!


・基調講演
Adobe Flash Player 10やAdobe AIR 1.5などの紹介。
改めて書くまでもないんだけど、書くコトなくなっちゃうから一応書くね!!

Flash Player 10 / AIR 1.5から
 Soundを動的に生成(合成)することが出来るようになったり、
 DrawingAPIにより、今まで2Dだったものを風でなびく布みたいに表現出来たり、
 PixcelBenderで、エフェクトなどを他の処理とは別のThreadやGPUなどで高速に処理出来たり、
 新たなTextEngineで段落とか使ったり、文字を縦書きにしたり、縦とか横とかじゃなくて螺旋状とかぐにゃぐにゃな線上に書いたり、文字が流れていくようにしたり、できるようになりました。

FlashPlayer10ってリリース当初は今まで動いてたものがセキュリティ上動かなくなったり、普及が遅れてるイメージがあったけど、たった2ヶ月で世界中のPCの55%が10にアップデートされたらしい!!

あと、AdobeAIRは1億台のPCにインストールされたらしい!!1億って言われてもわかんないけど


アメリカでは、野球のMBAの試合がAIRクライアントで見れるようになったり、NewYorkTimesのニュースがオンライン時は常に最新でオフラインでもローカルにキャッシュしてあるニュースが見れるAIRクライアントが開発されたり、めっちゃ大衆に影響する部分でAIRが使われるようになるみたい!!

ニュースのとこで、10のTextEngineによってPDFでは出来ない、ウィンドウサイズや文字サイズのリサイズに伴うレイアウトの最適化ができるんだって!!ネットで無料で見れても、広告のコンバージョンが高いからうまくいくんだろーな。


・セッションG-1 RTMFPを使った未来のコミュニケーション
RTMFPについては、12月に書いた[Flex][AIR] RTMFPはWinMXみたいな仕組みっぽい - いそっちノートに書いてることは省略して、以下補足

まずRTMPとの違いで、
RTMPはTCPなので、p2pを行う際に(簡単には)NATを超えられなかったり、コネクションや再送などのオーバヘッドによる遅延がうざかったり、tcpの上のレイヤーに独自プロトコルを実装するのが難しかったり、SSLだとサーバにもクライアントにもCPU負荷がかかるなどするので、UDPベースでその上に独自プロトコルを独自実装したのがRTMPFなんだって!!

セキュリティに関しても、SSLより軽いけど同じくらいセキュアな暗号化(AES-128)をすべてのパケットに施すので大丈夫だよとのこと。

ストリーミング的な意味では、RTMPと一緒だけど、音声だけはFlashPlayer10で音声チャット用に実装されたspeex codecを使うのが違うってさ

あと、うまく理解出来てなくて、違うかもしれないんだけど、
NATを超えるために、クライアント側で1024より上のポートを1つ使うらしい。なので、セキュリティが超厳しい人は、その人だけRTMPのサーバを経由してねって言ってた。
RTMFPのサーバは、誰がなんていうPeerIDで接続してるかってのを管理するくらいしか通信しないのでサーバ負荷がとっても軽いんだって!!あと、アプリケーションごとに別のポートを使うから、それは設定してちょってさ

資料のスライドは公開されるので(ただし英語)、間違ってたら直します。


・Flash Catalyst(コードネーム'Thermo')のご紹介
これは、去年の秋に彼らエバンジェリストが来日された際に聞いていたので、
どこが「ココがすごいよ!!」的な部分なのかわかんなかったので、他の人のブログ見てね笑


・AIR最適化テクニック:コード処理・メモリ・レンダリングを知る!
これはめっちゃ勉強になった!!2日間で一番勉強になったセッション!!
なので、ちゃんと書こうとしてたら、めちゃくちゃ長くなりそうだったので、後日改めてアップします。


・詳説 Flex3 コンポーネント
これも、ちゃんとまとめて書こうと思うので、別記事で書きます。
特別なことではないんだけど、大切な内容なので。


[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜DAY2〜 - いそっちノート
[イベント][Flex][AIR] Adobe MAX JAPAN 2009に行ってきました 〜ブースその他〜
に続く。

就職活動の一環で、一般常識テストってのを受けたんだけど・・・


漢 字 が ゼ ン ゼ ン 書 け な い!!!><


最近、パソコンばっかで手書きをゼンゼンしなくなったから、昔書けてた漢字すら書けなくなってた!!

ぁ、書けなくなっただけで、未曾有はちゃんと読めるよ!!!



ってことで、漢字覚えなきゃって思って、コトバを覚えるにはやっぱiKnow!だろう!!!と思ったけど、iKnow!では漢字を覚える仕組みがないみたい。


でも、ないなら作ってしまえ!!ってことで、文字認識のライブラリを探したら、Zinniaってのを発見!!



ってころで長い前置きが終わり。


(↓Zinniaを使って出来たもの。ボタンを押すと消えるよ)





まず、Zinniaってのは、

Zinniaは機械学習アルゴリズム SVM を用いたポータブルで汎用的な オンライン手書き文字認識エンジンです。Zinniaは組み込みの容易さと汎用性を高めるために、 文字のレンダリング機能は持っていません。Zinniaは文字のストローク情報を座標の連続として受け取り、 確からしい順にスコア付きでN文字の認識結果を返すだけに機能を限定しています。 また、認識エンジンは完全に機械学習ベースであるために、文字のみならずユーザの任意のマウス・ペンストロークに対して任意の文字列をマッピングするような認識エンジンを小コスト作成することができます。
らしい。


要約すると
・機会学習のアルゴリズム使ってるから、いっぱい学習したら精度はあがるよ!!
・与える情報は、画像じゃなくて、書き順つきの座標で与えてね!!
・文字認識だけやるから、その手書きを書く部分と結果を表示する部分は自分で作ってね!!
ってこと


んで、Flexでやろうにも、ActionScriptからC++をたたけないから(たぶん)、サーバーで文字認識して、結果を返すことにする。


んで、サーバー(Linux)にZinniaをインストールする。
まず、ここから、zinnia-0.02.tar.gzとzinnia-tomoe-0.6.0-20080911.tar.bz2をダウンロード

んで、ダウンロードしたディレクトリに行って、
tar zxfv zinnia-0.02.tar.gz 
cd zinnia-0.02
./configure
make
sudo make instal
cd ..
tar jxvf zinnia-tomoe-0.6.0-20080911.tar.bz2
cd zinnia-tomoe-0.6.0-20080911
./configure
make
sudo make installl

でおk


んで、サンプルのコードを動かすか確認。
※Cのサンプルで
  zinnia_character_t  *character  = zinnia_character_new();
の変数宣言が重複してるから、
*character = zinnia_character_new();
に直してね!!


んで、ちょっと前に書いた、
[Java] MacでJNI 〜JavaからC++を呼ぶ〜
[Java][C/C++] JNIで配列を引数や返り値に使う
らへんを見ながら、


Javaのソース



C++のソース



んで、認識後の文字をつなげて文字列として返す。



あとは、これをtomcatで呼べばおk。





ぁ、iKnow!のなんちゃらってのは、iKnow!のAPIを使って
http://labs.isocchi.com/iKnow/Handwriting.htmlでひっそりと開発中。

デザインがダメなら変えるよってiKnow!にゆったんだけど、何も言われなかったのでリンク貼ってみる


久々のエントリー


今までの流れは、↓こんな感じ

・[3D][Astro] 3Dの移動/回転を行列(Matrix3D)を使ってやる

・[3D][Astro] .obj形式のファイルを読み込んで、ユタ・ティーポットを表示してみた

・[3D][Astro] Flat Shadingで面を表示する



んで、今回はGouraudShadingをやってみる。



まず、今やってるのは3Dのポリゴンにおける、面の塗り方ね!!

前回やったFlatShadingってのは、面と色が1対1で対応して、1つの色で面を塗りつぶす方法。
色はその面の法線ベクトルと光源ベクトルとの角度で決めるみたい。
ただ、面と面の境界がくっきりでちゃう><


んで、今回やったGouraudShadingってのは、頂点と色が1対1で対応して、1つの面を各頂点からグラデーションで塗って、面と面の境界がなめらかになるようにする塗り方!!
色の決め方は、ある頂点に対して、その頂点を含む面の法線ベクトルの平均を取ったものが頂点の法線ベクトルになって、その頂点の法線ベクトルと光源ベクトルとの角度で決めるみたい。


沼津高専の講義資料に図があるから、それを見るとわかりやすいと思う!!!



ロジックは、↑の日本語をプログラムに翻訳するだけなんだけど、
ある三角形に対して、各頂点の色を指定して、グラデーションするってのは、ここを参考にしました!!



↓重いけど、めっちゃきれいになった!!!






P.S.
以前、GPUがどうのこうのってかいてたんだけど、今のソースの書き方だとGPUで計算してくれないっぽい。
DisplayObject#transform.matrix3D = アフィン変換の行列
とかやるときは使ってくれるのかな??あと、PixcelBlenderとか


Adobe Flex 3 リファレンスガイドがhttp://livedocs.adobe.com/flex/3_jp/flex3jp_documentation.zipからzipで落とせるようになりました。

Flex 3って表現されてるけど、細かく言うと、Flex3.2


これでわざわざwgetしなくて済む!!!


TabNavigatorのタブの位置を横にして縦に並べるのは、中垣 茂さんがVTabNavigatorというのを作ってブログで公開していたから知っていたんだけど、

↓VTabNavigator
ピクチャ 12.png



タブをViewStackの下に表示しようと頑張ってたら、すでにやってる人がいた!!!


しかも、下だけじゃなくってあらゆる方向に設置出来る仕様になってる!!


PositionedTabNavigatorExample
ピクチャ 13.png






これ見つけてから知った

FlexCoderでは1年も前に紹介されてたことを




その頃まだFlex始めてなかったから購読してなかったんだよ(´・ω・`)





<参考>

合格証届いたよ!!!


sjc-pの時は、紙の合格証と、カード型の合格証(?)と、バッチがついてきたから



Adobeは何をくれるかな〜って期待に胸を膨らませて待っていたら(`・ω・´)



紙の合格証だけだった(´・ω・`)

200901150033000.jpg


別に自慢とかそんなつもりはなくて(というか自慢になるほどのことじゃないか)、

受かっても、こういうとこに書くくらいしか使い道がなさそうだから書いてみた笑





sjc-pはプログラミングBの期末テストが、納得いかない結果で、めっちゃJavaの基礎とか勉強して、せっかくだから取るかってとっただけwww



Flex 3 with AIRは、就職先でまたFlexとかAIRとかが出来るか分からないから、

とりあえず、若い頃FlexとかAIRとかやってたんだよ!!ちょっとかじったっていうか、そこそこのとこまでいったんだよ!!!っていうのを形にしてみただけwww



「で、この資格どう役立つの??」とか聞かれても、資格としては役に立てれなそうなので先に言っとく。


資格は取ることに意味があるわけでも、持ってることに意味があるわけでもなく、


試験のために、普段しない勉強をし、そこで新たな知識の発見をすることに意味がある気がする。

あんま使ったことないコンポーネントとか、いっぱいある通信系のクラスとかちょびっとだけ詳しくなったよ!!!


Googleでtomcat eclipse pluginとかで検索すると上位のものがリンク切れで、毎回だるい思いをしてるのでメモ


ここにある
http://www.eclipsetotale.com/tomcatPlugin.html


それだけ笑
JavaとC++で配列をやりとりするときのメモ

例えば、int配列を2つ引数にとり、それらを連結したint配列を返す関数appendを作る。


・Java
public native int[] append(int[] a, int[] b);


・ヘッダファイル
JNIEXPORT jintArray JNICALL Java_Hoge_append(JNIEnv *, jobject, jintArray, jintArray);


・C++での実装
JNIEXPORT jintArray JNICALL Java_Hoge_append(JNIEnv *env, jobject obj, jintArray a, jintArray b) {
jboolean jbool;
int i, aLength, bLength;
jint* aArray, bArray, resultArray;
jintArray result;

// jintArrayから、C++で扱えるjint*に変換
aArray = env->GetIntArrayElements(a, &jbool);
bArray = env->GetIntArrayElements(b, &jbool);

// 配列の長さを取得
aLength = env->GetArrayLength(a);
bLength = env->GetArrayLength(b);

// Javaに返せるような配列を作成
result = env->NewIntArray(aLength+bLength);
// C++で扱えるように変換
resultArray = env->GetIntArrayElements(result, &jbool);


// 連結
for(i=0; i<aLength; i++) {
resultArray[i] = aArray[i];
}
for(; i<aLength+bLength; i++) {
resultArray[i] = bArray[i];
}

// リリースを解放。jintでの変更をjintArrayに反映
env->ReleaseIntArrayElements(a, aArray, 0);
env->ReleaseIntArrayElements(a, bArray, 0);
env->ReleaseIntArrayElements(result, resultArray, 0);

return result;
}


JNI(Java Native Interface)とかいうのを使って、JavaからC++の関数を呼ぶまでの手順。




①Javaでnative methodを持つクラスを作る。
public class Hoge {

    static {
        System.loadLibrary("Hoge");
    }

    public native String hogehoge();
}

②コンパイル
$ javac Hoge.java

③ヘッダファイルを作成
$ javah -jni Hoge

これでHoge.hが生成される。

④C/C++でhogehogeメソッドを実装
#include "Hoge.h"

JNIEXPORT jstring JNICALL Java_Hoge_hogehoge(JNIEnv *env, jobject obj) {
        return env->NewStringUTF("huga");
}

⑤コンパイルして、ダイナミックリンクライブラリを生成
$ gcc -fPIC -g -I/System/Library/Frameworks/JavaVM.framework/Headers -c Hoge.cpp
$ gcc -lstdc++ -bundle -o libHoge.jnilib Hoge.o

⑥Javaでmainを作る。
public class Bar {
        public static void main(String args[]) {
                Hoge jni = new Hoge();
                System.out.println(jni.hogehoge());
        }
}

⑦コンパイルして、実行
$ javac Bar.java
$ java Bar

 hugaって表示されればおk



<参考>
JavaでHello World JNI編
JavaでJNIを使ってみる(3) | サラトガIT日記




OSの再インストールしたときにすぐに見つからなかったからメモ。
ターミナルのところに出るコンピュータ名が、漢字だと無理矢理ローマ字にしたっぽくて読みがあってないので修正。


システム環境設定の共有
ピクチャ 1.png

コンピュータ名
ピクチャ 3.png

変更したら鍵を閉めるといいかも


1月:
(イベントとか)
・成人式
 中学校の同窓会とかあって、純粋に楽しかった!!

(プログラミングとか)
学校の課題で、6人ごとグループを作ってJavaでSocketとか使ったアプリケーションを作成せよって課題が2ヶ月ほど前に出て、その発表。ソースコードは、GoogleCodeにアップするだけして放置中。そのうち整理して紹介します。
あと、J2EEとかやろうと試みてた。

(その他)
バイトとテストと実験レポが忙しかったことしか覚えてない汗



2月:
(イベントとか)
・第一回ハチロク世代お食事会
ハチロクの人と初めて会う。yuyarinとかsuztomoとかsyou6162とか・・・ほぼ初めての人だったからあんまり覚えてないけど、同年代でたくさんのプログラミングとかめっちゃできる仲間に出会えて感動した。
大学ではCS(Computer Science)学科なのに、プログラミングが楽しいって人がそんなに多くない。パソコンが好きって人は多いけど

(プログラミングとか)
前年から決まっていたIT企業でバイトを始める。2月はコードは書かずに、なぜかFlashやってたww
バイトとは別で、Webで何か作ろうとしててTeedaってフレームワーク使ってた。
前借りてたXREAではJavaが動かないので、自宅サーバを設置した。GUIは入れなかったのでちょっとLinuxのコマンドとか使えるようになった。



3月:
(イベントとか)
・第3回1000Speakers
 聞く側で参加。ハチロク世代のお食事会の前日が第2回1000Speakersで、それに参加してた人から話を聞いてて、面白そうだから行ってみた。会場はなんかドワンゴだった。
yuyarinのP2Pの話とか加速度センサを使った指ピアノとか面白くて、次は発表する側で出る!!みたいなことをなぜか行ってた。

(プログラミングとか)
 Javaでhttpを実装(SocketにHttpHeaderを書くだけ)して、Javaからmixiにログインしてごにょごにょして遊んでた。
mixiのID(数字のやつ)を2つ入力すると、その2人が何人のマイミクを介して繋がっているのかを検出するプログラムを書いたりしてた。平均マイミク数をm人とすると、普通に調べるとn^mのオーダーになるので、1度調べた人はCacheしたり、両方から調べることで負荷を減らそうとかした。一応できたんだけど、一方的に(株)mixiに負荷をかけるだけのサービスなので公開せずにお蔵入りさせた。
イベントとか合コンとかで始めてあった人同士とか、自分と有名人とかで調べると面白いかなぁーとは思ったんだけど。
 Flexの勉強を始めた。最初はサンプルを写して実行したり、まず、どんなコンポーネントがあってどんなことができるのかとかどういうスタイルのコードを書くのかとかを知っただけ。

(その他)
友達の誘いで、ヘッドウォータースの代表の人の話を聞きに行った。



4月:
(イベントとか)
・第一回ハチロク世代スイーツ部
 ハチロク世代の愉快な仲間たちと、ヒルトンでスイーツ(笑)と食べまくるイベント。sotarokとanemoがカメラ充だった。

・第4回1000Speakers
 1ヶ月前には、mixiのマイミク距離を調べるアプリを発表しようかと思ってたのが、日をおうごとに飽きてきて、前日夜からflexでなにか面白く発表しようと資料を作り出す。
徹夜で頑張って、会場でもギリギリまで資料作ったりでなんとか発表はできたんだけど、偽TAKESAKOメソッドが発動しているために、あまり他の人の発表を楽しむ余裕がなかった。
でも、発表中のUstのチャットのログとか、その後の懇親会で面白かったよーとか言われて目から汗がでそうになった。

(プログラミングとか)
ActionScriptもなれてきて、Papervision3Dっていう3Dライブラリを使ったり、Flexとサーバー(tomcat)との通信にBlazeDSを使えるようになったり、できることが増えてきた。
バイトでも、コードをたくさん書かせてもらえるようになって、AIRアプリを作ったりしてた。

(その他)
3回生になった。


5月:
(イベントとか)
・Seasar Conference 2008 Spring
1000Speakers#4で知り合ったdaisuke-mさんがSeasarのコミッタで、彼のブログ経由でイベントを知って、とりあえず行ってみた。んで、その後のSeasar関係者の打ち上げにもなぜかついて行った笑なんかいろんなとこに行っていろんな人に会ってみたいと思っていた時期でしたwwww

(プログラミングとか)
ずっとActionScriptのターン

(その他)
前使ってたパソコンが壊れたので、MacBook Airを買った(≧∀≦)



6月:
(イベントとか)
・第三回ハチロク卒研発表会
 ujihisaの卒研発表会が本郷であった。第三回って書いてるけど第二回はこの春行われる予定w
研究室とか卒論とか全然知らなかったから、知らなかったことだらけでべんきょーになった。

・Google Developer Day 2008
 Googleのannucal conference(?)に行ってきたー。Androidの話とかOpenSocialの話とかiGoogleV2とかそこらへんのセッションを聞いてきた。Androidは、Javaでアプリを作れるし、電話とかメールとかのnativeなAPIも全部公開されるっぽくて、めっちゃ期待。ただ、日本でのケータイのヘビーユーザーは、若い人とかパソコンとか詳しくない人も多いから、システム的なセキュリティっていうより、ユーザーのセキュリティに対する意識とかがやばそう・・・とか思った。
OpenSocialは、まぁ、mixi早く対応してって感じww

1000Speakersで会った人とかと偶然あったり、世の中せまいなーとか感じる。


(プログラミングとか)
バイトで新たにアサインされたプロジェクトが超楽しかった。それまでずっとデザインとか考えずに、ただやりたいことを実現するっていうか動けばおk的な考えだったのが、デザイナーと一緒に作ってて、デザイン頑張ると見栄えってこんなに代わるんだーとか、見た目のためのプログラミングとかもやってた。Tweenerとかで



7月:
(イベントとか)
・Flex3勉強会
 Flex User Groupの勉強会はたまに顔出したりしてて、んで、こところBeInteractive!のyossyさんに会った。大学辞めてフリーランスで仕事してて、しかもASとかむちゃくちゃくわしくて、それで年下とか・・・。負けられない!!

(プログラミングとか)
リリースに向けて、バグ修正とかリファクタリングとか・・・。はじめからちゃんと書いとけばよかったってか、普段からきれいなコードを書くように心がけるようにした。というか今までが課題とか自分の趣味とかでしかプログラム書いてなかったからそういうの全然ダメだった。ちょっぴり成長!

(その他)
バイトでやってたのがリリース!!リリース日の朝いろいろあったけど、自分がコードを書いたものが使われるってやっぱり感動!!


8月:
(イベントとか)
・第二回ハチロクお食事会
新宿でやったよー。Googleの中の人とか、hatenaでバイトしてる人とか、未踏で採択された人とか、ハチロクっていろんな人に会えて、しかも気軽に話せるからたのしー♪

・セキュリティ&プログラミングキャンプ2008
5日間ほどホテルに缶詰でセキュリティについて勉強した。ハチロクを含めIT系の勉強会とかイベントにいくと、たいていまわりは年上だったのが、このイベントは学生オンリーで中高生もきてたから、周りの参加者は年下が多いという今まで体験したことのない状況。知識的にも精神的にもいっぱい成長して帰ってきたよ!!
学んだことに関してはひ み つ。

・Rejectセキュリティ&プログラミングキャンプ
 主にハチロク世代の仲間たちで、↑の選考で残念なお知らせが届いた人たちが開いた開発合宿。なぜか参加したwww。
 みんなもくもくと開発しすぎで、せっかく会ったのに交流しなきゃダメだろとか思って、「花火しよー」とか「卓球しよー」とか「散歩しよー」とか言ってました。開発は・・・そんなにしなかったかもwww
でも、得意な言語がそれぞれ違う人たちで1つのアプリを作るってことになって、別々の言語で開発して、言語間で頑張って呼び合うような、面白いことをした。


(プログラミングとか)
↑のイベントとかがメインかなー。あと、Topcoderとかやってた!!
ぁ、あと、mixiがechoっていうtwitterみたいなのを始めて、ソッコーでクライアント作った。でも動いて公開したら満足してその後放置。

(その他)
はてなの東京支社に見学に行った。学生の特権すごすぎ。
最近思うに、開発室の明るさと広々した感じはすごく重要だと思う。


9月:
(イベントとか)
・Seasar Conference 2008 Autumn
寝坊したww。id:nowokayさんの「差をつける勉強法」ってのがおもろかった。というかきしださんが面白かったww。要は、どんどん新しいフレームワークとか流行の言語とか入れ替わってるから、フレームワークの使い方の勉強だけじゃなくて、コンピュータの仕組みとかアルゴリズムとかマルチスレッドとか、言語とかフレームワーク関係なしに役に立つローレベルなスキルを身につけるといいんじゃない?みたいなお話。
あと、JiemamyっていうDBのER図とかSQLも一緒にバージョン管理するプラグインも面白かった。これとSQLをメソッドでラップしてカラム名とかコンパイル時にチェックとか自動リネームに対応してくれるDBFluteとかも面白そう。そのうち弄る。

(プログラミング)
2、3日ほどJavaScript書いた。JavaScriptとActionScriptでセキュリティ的にアクセスできるできないに違いがあったり、hatenaのidが抜けたりすることを学ぶなどした。
あと、Flexでカスタムコンポーネント作ったり、再利用性を意識したコーディングをしたり、今までよりちょっとだけレベルの高いことに挑戦した。やってみればできるものだけど、やらないと永遠にダメなコードを書き続けることになるんだなぁって思った。そういいながらまだまだへぼかも知らないけど笑


11月:
(イベントとか)
・Shibuya.ddb
 今は亡きid:dropdb(中の人は生きてるよ!!)の誕生日をお祝いする会(?)なのかな。
ずっとブログ読んでておもしろいなーって思ってたら会う機会があったので全力で参加した。

(プログラミングとか)
大学で、リアルタイム3Dグラフィックスプログラミングっていう講義を履修していて、そこで3Dについて基礎を学習。授業はWPF(C#)でやるんだけど、それだとライブラリを呼ぶだけな部分もあるので、ActionScriptで実装して理解を深めるなどした。最近止まってるけど、続きやらなきゃ!!


12月:
(イベントとか)
・カレーを食べてTopcoderをやる会
 ハチロク世代にtopcoder部っていうのがあって、topcoderの時間がpm8:00とかpm9:00からの時は誰かの家に集まって、みんで飯 -> それぞれtopcoder -> みんなで考察 みたいなことをした。12月はウチでもやった。

・ハチロク忘年会
 なんかこれ用のエントリー書いたきがするから省略

・同窓会
 高校の同窓会があった。出席率がはんぱねぇ!!高3の時のクラスでいうと、出席率75%!!さすがV組!!!
まぁ全員きても12人だけどwwwみんなそれぞれの道を歩んでるみたい。


(プログラミングとか)
Flex3の資格受けた。英語だった。訳せない問題あった。受かった。
資格の対策の勉強で、あんまり使ったことないクラスとかも勉強したり、TourDeFlexに載ってるやつは一通りみたりして、今まで気づかなかったプロパティとかも発見できたのがよかった。

あと、Frameworkの作成も、教えてもらいながらやった。めっちゃ汎用的に考えなきゃいけなかったり、いままでなんでこんなにパッケージ分けるの??とか疑問だったのがやっと理解できた!!



P.S.
やっと終わった・・・。長かった。
明日TOEICなのに勉強してない><

このアーカイブについて

このページには、2009年1月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2008年12月です。

次のアーカイブは2009年2月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

Powered by Movable Type 5.0