投稿

Androidアプリ開発再入門

1. 環境セットアップ Android SDKとeclipseをインストールして設定 パスを通すなど 2. アプリのライフサイクル onCreate, onStart等のアプリの挙動を把握 Log.vをつかってDDMSパースペクティブのLogCatビューに表示すると良い。 そのままだといろんなログが出てしまって見づらいので、 LogCatビューにあるプラスボタンを押下してフィルターを作成するとよい。 3. イベントプログラミング まずは慣れるため、buttonクリック時にログ出してみる。 http://d.hatena.ne.jp/jitsu102/20110831/1314796481 どうやら4パターンの実装方法があるらしい。 自分としては2が一番好ましかった。 activity_main.xmlに追加したボタンに、onClickプロパティを追加するだけ。 関数名は自由で、追加した関数をjavaソース側で実装すればOK。 ちなみに1はクラス内に変数定義してるので、いっぱいオブジェクト出てきた時管理が面倒だなーっていう発想で却下。 4. ページ遷移 複数のアクティビティ遷移を実装する。 Intentクラスを利用して、      Intent it = new Intent( いまのアクティビティ, 遷移先.class );     this.startActivity(it); って感じに実装すればOK。 ここまでくれば紙芝居レベルなら実装できる。 5. センサー機能の利用 SensorEventListenerのインタフェースを利用して加速度機能を利用。 加速度センサーを使ってこんな感じで実装。     public void getAcc(View v){     manager = (SensorManager)this.getSystemService(SENSOR_SERVICE);     List<Sensor> sensors = manager.getSensorList(Sensor.TYPE_ACCELEROMETER);   ...

ウェブサイト構築について再考したところ重要だと思ったことのまとめ

父の仕事の都合でウェブサイトをスクラッチから書くことになった。 制約としてはお金をびた一文も使わないこと。 当時の私は「HTMLなにそれおいしいの?」状態でした。 三段階で私の成長過程をまとめてみる。 1. HTMLとCSSで紙芝居 とりあえずググりまくる。 「HTML 入門」とか、「CSS 入門」とか。 dotinstallに出会えたのは嬉しかった。 とりあえずテキストエディタという原始的な手法でhtmlファイルやらcssファイルを作成してお勉強。 クソみたいなサイトを量産するのです。 結果、HTMLとCSSで紙芝居ができればおk。 2. エディタを見直す 少し経つと腹立ってきます。 テキストエディタがまじクソなので。 いちいちタグ名とか覚えてらんねーし 複数行を選択しつつTabキー押してインデントとかできねぇし。 ここでeclipseというものに出会う。 コードの予測とかしてくれてすご~く助かりました。 ただ一見よく見えたのですが実はクソでして、、、、 重たすぎるんです。。。 もっさりもっさり動くから自分の思考スピードももっさりしてきて。。。 最近見つけたのはsublime text2です。 これ、デフォルトだと日本語扱えないので、 UTF8をShift-JISに変更して云々っていうプラグインを入れると実用に堪えるようになります。 色付けがそのまんまできれいなのでマジおすすめ。 3. ウェブデザイン&マッシュアップ 今までゼロからスクラッチでコードを書いてきた人ならわかると思うけど、 毎回毎回コード書くのまじだりぃんだけどぉおおおおおおおって気持ちになります。 車輪の再発明という言葉があります。 賢い人なら自然と避けてるんでしょうね。 今まではとにかくどうやって実装するかを考えぬいてきた。 思考の始点がダサいんだよね。 本当に大切なのは最初っからどうやって楽するかを考えることだと思います。 楽するために脳味噌使うといろんなことが見えてきます。 例えばウェブデザイン。 ゼロから作るのだるいし、そもそも大したものにならない。 これが車輪の再発明。 そこでマシな方法としては「テンプレート」とかでググりまくること。 ある程度いいなーって思えるものがあれ...

Rarejobがもたらしているポジティブな社会的影響について

Rarejobは世の中にとって凄くいいことをしている。 だれもが幸せになれるビジネスだと思う。 こう思うようになったのは今日の授業を受けてからだ。 最近は英会話にも慣れてきて、 講師の方と割とプライベートな話までするようになった。 仕事がどうだとか、将来どんなことを考えているとか。 よく授業してもらっている人は、すっごく人間性も良くて英語も喋れて、 将来は法律家になりたいので、いまはロースクールに通ってると話してくれる大学二年生。 なんで講師をやっているのかっていう話になったとき、 彼女は「Rarejobは退屈にならないためにやってる」って言ってたけど、よく聞いてみると違った。 本当は親にお金を借りることなく本を買うためにやってるとのことだった。 雇用機会が少なくて給料もそんなにもらえないフィリピンでは、 Rarejobの仕事は割がいいということだった。 それでも30分100円のビジネスだから一授業あたりのfeeは、 face to faceでやる日本の英会話教室に比べたら凄く安いはず。 授業を受ける側の自分としては、 かなり安い値段でしっかり英語を教えてもらえるので助かるし、 講師側からすると大学生をしながらも、 ウェブ経由でバイトできるから幸せなんだろう。 働く側、利用者側の双方のメリットがしっかり成り立ってる。 インターネットを利用した国際的な教育ビジネスに携わりたい気持ちになった!

Startup Engineering Lecture 4b: Linux Development Environment (Week 2/3)

Linux Development Environment 開発環境を整えようの巻。 リモートで複数タブを出力するために、 Githubからwgetでscreenファイルを取ってくる。 Ctrl + T, Ctrl + C : タブ作成 Ctrl + T, Ctrl + U : タブ移動 シェルスクリプトで一気に開発環境を整える https://github.com/startup-class/setup/blob/master/setup.sh ドットファイルもgithubにて公開されてる。 https://github.com/startup-class/dotfiles リモートからでもcommitできるように、 リモート側で生成したrsaキーをgithub側に登録しておく必要あり。 登録したら、 git add hoge.txt git commit -m "commit!!" git push -u origin master で、マスターのリポジトリにコミットできる。

Startup Engineering Lecture 4a: The Linux Command Line (Week 2/3)

CourseraのStartup Engineering、Lecture4が追加で公開されてるー!! とのことで、聴講してみました。 今回はLinuxコマンドについてつらつらと説明してくれる感じ。 STDIN, STDOUT, STDERRの説明をグラフィカルに説明した後、 各種Linuxコマンドの解説に入る。 wgetとcurl curlとかwgetとかしれっと使ってるけど、 知識皆無で挙動だけみてる私にとってそれらの違いが明確に見えて来なかった。 ぐぐってみるとこんな記事があった! wgetとcurlの根本的な違い 素晴らしくよく纏めてもらっていた。 wgetは再帰的な動作、拡張子を指定しつつダウンロードできる機能があり、 curlは多数のプロトコルに対応している点が違うとのこと。 なるほど。 後々見返してみると、 講義資料にも下記のような違いが説明されていた。 It doesn’t have the spidering/recursive properties that wget has, but it supports 6a much wider array of protocols. It is very commonly used as the building block for API calls. その他コマンド - rsync 講義資料には、"Transfer files between two machines."って書いてあった。 ローカルとリモートのファイル転送に使う感じね。 - コマンドライン上でのショートカットキーで使えそうなもの抜粋 Ctrl + A: コマンドラインの先頭に飛ぶ Ctrl + E: コマンドラインの末尾に飛ぶ Meta + F: カーソルを一単語分進める Meta + F: カーソルを一単語分戻す - backticks `` ←これ使うと変数展開してくれるみたい。 キーボード的にはShift+@で出力されます。 (例)  $ echo `date` | sed "s/2013/foo/g"   foo年 7月 6日...

Syntax Highlighterの導入

Bloggerにソースコードそのまんま貼ってると汚いし読みづらいことに気づく。 そういえばほかのウェブサイトとか、しれっと綺麗に整形されてる。。。。 色々ググったら Syntax Highlighter なるものがいいという記事を沢山見たので、 私も導入してみる。 仕組みとしてはBloggerのテンプレートHTMLに、 javascriptのライブラリをロードするコードを埋め込んで、 ソースコードをscriptタグ内部に記述すればいいだけ。 こちらに手順が載っていたので、 この通りにやってみました。 http://toldalie.blogspot.jp/2012/01/blogger_31.html できた。。。 // サンプル int main(void){ return 0; }

HW1 Programming: Basic Server-Side Javascript with node.js@Startup Engineering

イメージ
I've just done  the homework assigned at the lecture "Startup Engineering". What is "Startup Engineering" ? => There's a description like this... Overview Welcome to Startup Engineering! This is the course we wish we'd had before beginning our careers. It's a summarization of what we know about starting technology companies/labs and scaling them up, taken from our experiences building  Counsyl and  Folding@Home . There's a lot of things to learn. First, it is necessary to create an account of Amazon Web Service (AWS). In addition to this, we need to learn how to use Amazon Elastic Compute Cloud (Amazon EC2). Do you think it's difficult? No, it is very easy to understand. It is because Balaji S. Srinivasan , who is a lecturer of Stanford Univ , teaches us through streaming video. I'm very appreciated to him. What I learned is as follows. - How to use Amazon EC2 - How to operate Ubuntu with Linux commands. - ...