Archive for 1月, 2010

Objective-CとiPhone。

Objective-Cというと、なんだかかっこいい感じがしませんか?オブジェクティブ・シー。なんか、クリエイティブですよね。(え

MacでObjective-Cを使うことは知っていたのですが、まさかiPhoneアプリはObjective-Cで作るとは夢にも思ってもなかった・・・。なんだよ、iPhoneアプリ開発でもやろうともったら、いきなり出鼻をくじかれました。(てっきり、Javaでやるものと思ってた)

うむ。というわけで、早速本屋に言ってObjective-Cの本とiPhoneアプリの開発の本を買ってきました。しかし、よく見ればObjective-Cだって、Javaだってオブジェクト指向言語であるし、初めてJavaを見た時より、ラクラクと言語を覚えられます。

にしてもなんで、スティーブ・ジョブズはObjective-CでOS書いていたんだろうか。

No Comments

iMac & iPhoneを使ってから数日がたちます。

iMac、iPhoneが家に来てから数日経ちます。

遅ればせながら、iMacのレビューのような物を書いてみることにします。

現実味はまだない。

さて、ずっと前の記事で「俺はiMacが欲しい。絶対にだ。」と言ってから数カ月、こんな早くにMacが手に入るとは思っていませんでした。

特に今回は、衝動買いしたiPhoneが予想以上に。むしろ、iMac以上にすごいガジェットで、そっちの印象が強いから現実味が無いのかもしれない。

今でも、自分の手元にiMacがあるなんて、にわかに信じられません。まあ、iMacを買うためにいろいろと現実的なことしてきたんだけどね。

このiMacですが、iMac 21.5インチのMC413J/Aと呼ばれるもので、21.5インチのIPS液晶。1TBのHDD。4GBのメモリ。そして、Windows7の発売直前に発売されたMacOS X v10.6 SnowLeopardがついているらしい。(簡単に言うと、下から2番目上から3番目。21.5インチの中では一番イイやつということです。)

iPhoneとiMacで、すごい。

最初に言っておきたいのは、Macを買うならiPhoneも買うべきということです。(その逆も言えるけど)

iMacとiPhoneは想像以上のチームワークで力を発揮してくれます。

iMacから伸びるケーブルをiPhoneに挿せば、いとも簡単になんの不具合も出さず、電話帳、曲、カレンダー、iPhoneアプリetc…を同期してくれます。そして、充電までしてくれます。

WindowsでiPodを同期するとき、みなさんのPCは「もっさり」しませんか?10秒ぐらい経ってからやっとiTunesが起動してきませんか。設定がめんどくさくありませんか。連帯感がないと思いませんか。Macだと、繋げた瞬間にiTunesが起動し、気づいた頃には同期が終わってます。これは本当に素晴らしいです。

iPhoneをMacと同期する感覚=iPhoneをただ充電する感覚

この方程式が成り立ちます。なんのストレスをなく、すべてのつじつまが合う感じです。

開発環境としてのMac

Macといえば、BSD。BSDといえば、Unix。Unixといえば、Linux。つまり、Bashコマンドが使えます。

ただ、思っていた以上にターミナルの活躍場はなさそう。だって、開発環境としてのGUIの出来も素晴らしいんです。

Xcodeも、僕が最後にみたXcodeとだいぶ違ってました。そうです、なんとオープニングにウィザードがあるのです。

まるで、Wordで文章を書こうとしている感じですよね(ちがうか。

数あるiPhoneアプリはこうしたXcodeで作られています。

(Javaは素直にEclipseでつくろーね。)

音楽だって、簡単に作れる。

Macがすごいというのは、デザインや操作性、所有感だけではありません。付属アプリの出来が素晴らしい。

GarageBandといって、iLifeの製品の一つで、誰でも簡単に作曲ができるという魔法のDTMツールです。

残念ながらピアノもギターも弾けない僕、ループ素材を使って曲のようなものを作ってたりします。

それでもそれなりの、聴ける程度の曲が作れてしまうのです。

なんて素晴らしい。。。

GarageBandには、これ以外にも、楽譜に音符をつけて曲を作る打ち込みとか、Macにはマイクもついているので、ドラムやベースを鳴らしながら、ギターを録音するなんてこともできるはずです。

さらに、レッスンというのもあって、ピアノの弾き方、ギターの弾き方を教えてくれます。Macにキーボード(文字じゃない)を繋げて、レッスンが受けられるのです。(ギターはつなげなくてイイ。)

レッスンは有料だったり無料だったりしますが、基本レッスンは大体の場合無料です。

他にも、iPhotoにはとった場所のわかるモードがついていたりします。さらに、iPhotoからfacebook、Flicerなどにも送ることが可能です。さらに、ボタンひとつでアルバムを作って郵送してくれるサービスも有ります。(これはWindowsにもあったけど、例えば富士フイルムだったりその他のネットプリントサービスにつながったはず。iPhotoの場合は、appleのWebサイトで注文でき、統一されていたりする。)

こんなツールが、Macを買った時から入ってるんです。いや、売れるだろ・・・と。(まあ、OSアップグレード者向けに発売はしてるけど。)

ああ、えっと他に何を紹介しよう。今日はこのぐらいにしておきます。Ciscoやらないと・・・。

,

1 Comment

GrageBandで曲らしきものを作ってみた。

My Song

どんなに音楽センスがなくても。Macなら音楽を楽しめる。

追記:図に乗る悪い癖で、また新しい曲みたいなモノを作ってみた。

My Song 3

2 Comments

iMacとiPhoneを買ってみた。

今々気づいた、このブログはMacOSで閲覧すると、テンプレートが崩れる。

ああー。なんてこった・・・。

,

No Comments

セキュリティ&プログラミングキャラバンに参加。

(吉岡さんのプレゼンにあるように、勉強会に参加したことをブログに書くとどれぐらいの影響があるのか、調べてみる。。。)

セキュリティ&プログラミングキャンプ 2009 キャラバン名古屋に参加してみた。

セキュキャンといえば、2009年の8月、参加したのですが今回のキャラバンは、参加者は22歳以下でも応募抽選しなくても行けます。

さて、ここのところ何かと物いりで、報告が遅れたことを謝っておきます。かといって、たいした文章が書けるわけでもないです。

・セキュキャン参加者の視点で

本家セキュリティ&プログラミングキャンプに参加したいのであれば、キャラバンへ絶対に行くべきです。
今回のキャラバンは、キャンプの紹介が半分・講義が半分という具合でしたが、なんというか「どちらも上手いことキャンプの空気を持ってきたなあ」と感心しました。
キャンプに居るときはそれはもう、常に夢の中にいる感覚です。このキャラバンでもその現象を再現することが出来ました。
というのも、このキャラバンで少なからずの高校生を発見することできたからですね。
すなわち、キャラバンに行くような高校生は、それだけ真剣にプログラミングやらセキュリティをやっている証拠でもあります。
そんな高校生が、名古屋にも居てこうやってセキュキャンキャラバンに参加しているというだけで、それはもう夢のような事です。

高校生でプログラミングとかセキュリティをやってるのは、全国的に見てもやはり異質なわけで、その仲間作りは大変難しいです。
是非、プログラミングに興味があるのなら声を上げてアピールしてほしいと思います。

・お世話になった方

僕がキャンプ中にお世話になった講師の方々とお会いしたとき、言葉で表せないぐらいの感動がこみ上げてきました。
雲の上のような講師の方に5日間も付きっきりでお世話になり、今でも名前を覚えていてくれる。本当に感動です。
僕の悪い癖で、「人見知り」というのがあります。
この感動の言葉を懇親会で言えれば良かったのですが、結局言えなかった。
本当にありがとうございました。

・懇親会

名古屋市立大で勉強会が開かれ、懇親会となると大体の場合、「お寿司」になるパターンが多いそうです。
セミナー会場から歩いて5分ぐらいのところ。大学敷地から5メートルぐらい離れた場所にその寿司屋はあります。

学生2000円・社会人3000円?でお寿司食べて、お酒飲んでみんなで語らう。それが、懇親会です。
もちろん学生は飲めませんので、ウーロン茶を飲みます。
高校生も社会人も何の気兼ねなく話し合いすることが出来ます。
今回のセミナー陣はほぼ全員懇親会に参加と言うことで、会場で聞けなかったお話とかも、質問をしたりします。

懇親会には高校生2名?高専生も数名いました。名古屋では滅多にない数字です。うれしい限り。
このペースなら、学生勉強会とか開けるんじゃねと思えるほどの数字です。

とまあ、特に今回は印象に残る勉強会でした。聞くはタダ。是非皆さんも参加してみてください。

,

No Comments

仮コード・テストコード・リアルコード

XPプログラミングで特にテスト駆動開発といわれ、仮コード・テストコード・リアルコードの順番でプログラムを開発していくのが良いとされてます。

Head First Javaで、簡単にXPプログラミングの説明がしてあったので、少し要約してみる。

仮コードで、クラスに必要なものを挙げる。

仮コード・テストコード・リアルコードをどの単位でやっていくかというと、Javaではクラス単位でやります。第一行程の仮コード作成は、そのクラスに必要なメソッド、変数を具体的に書いていくことです。

たとえば、足し算を行うクラスtashizanというのがあるとします。(足し算をするクラスを作ります。)

「ここでは、tashizanクラスのコンストラクタにint型引数prm1とprm2を受けて、それぞれを足したモノをインスタンス変数resultに代入し、resultをゲッターメソッドでmainメソッドのあるクラスへ返します。」

こんな感じに、どんなものが必要なのかを書いていく。複雑になるにつれて(これら文章で書くより)、より実際のコードに近い形で書いていく方が良いでしょう。(ifとかwhileを使い、極力リアルコード作成の手間を減らす。

テストコードの作成は、リアルコードを書く前に書く。

テストコードとは、すなわち、リアルコードをテストするコードのことです。驚きなのが、リアルコードを書く前にテストコードを書くということです。

テストコードを先に書けば、そのクラスで返すもの、受け取るもの、メソッドが自ずとよくわかるようになるはずです。このtashizanクラスのテストコードは

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Class tashizanTestCode {
	private int inNumber1;
	private int inNumber2;
	private int result;
 
	public static void main (String args[]){
		inNumber1 = 10;
		inNumber2 = 20;
 
		tashizan addition1 = new tashizan(inNumber1,inNumber);
 
		result = addition1.getResult();
 
		if (result == 30){
			System.out.println("成功");
		}else{
			System.out.println("失敗");
		}
 
	}
}

tashizanクラスから戻された値が30以外の場合は、失敗とするテストコードです。(あってる・・・よね。)

リアルコードを書く。

ここで、本来必要となるリアルコードを書いていきます。上のテストコードを動作させるためのコードを書けばよいのです。

1
2
3
4
5
6
7
8
9
10
11
12
13
class tashizan {
	private int prm1;
	private int prm2;
	private int reslut;
 
	void tashizan (int prm1,int prm2){
		result = prm1 + prm2;
	}
 
	int getResult(){
		return result;
	}
}

おそらく、これをみた多くの人は

「そんなめんどくさいことやってられない。」

とお思いでしょう。こんな簡単なプログラムであれば、そもそもクラス分けをする必要もないですが、もっと大きなプログラム、役に立つのではないかと思います。

テストコードを書けばリアルコードは短い時間でかけますし、しかも必要最低限のコードしか書かないので、見た目もすっきり。いいことづくしなので、是非皆さんもチャレンジしてみてください。

,

No Comments

トリプルブッキング回避。

今月23日のトリプルブッキングは何とかなりそうです。

学校の模試を家でできるようにしてもらって、セキュリティ&プログラミング2009キャラバンへの参加が可能となりました。(ありがとう!

部活動も活発になってきたし、iMacが手に入りそうだし、生徒会が本格的な活動を始めたし、年始めだし、いろいろと縁起のいいことが続くね。

No Comments

ブッキングスケジュール

何て言うことでしょう。23日のスケジュールがブッキングしていた。

「セキュリティ&プログラミングキャンプ2009キャラバン 名古屋」、「模試」、「ロボカップジュニア練習会」の三つ。

練習会はサボったとしても、キャラバンと模試、二つを同時に行うのは無理だ。。。キャラバンはめちゃ楽しみにしてたけど、諦めることになりそうだ。実に悔しい。

No Comments

ワークスペースを晒す

「最高に落ち着ける場所」

と言いたいところだが、そうでもない。一日の大半をここに座って過ごすため、その日一日の良い事も悪い事もここで起こる。

ゆえに、落ち着く場所ではない。ただ、居場所が無いからここに座る。そんだけです。

No Comments

Googleから、謎の封筒が届いた話。

ふと、郵便受けを見てみる。グーグルからのお手紙が来ていることに気づき、それはもうたいそう喜んだ。

良くも悪くも、私はこの手紙に裏切られることになる。

「Google Adsenseの支払いが決まったのだ」

そう確信した僕は、一目散に封筒を破り、中の文章を読んだ。。。だが現実はそう甘くはいかず、別のお話であった。

GoogleAdsenseを始めた理由

今冬からこのブログのテンプレートを変更し、GoogleAdsenseのコンテンツ向けのスクエア型広告も一つ追加しました。(カラムの所にある奴)

Adsense自体、このブログを開設当初からやっています。もちろん、儲けようなんて毛頭考えている訳もなく、ただ、殺風景だから載せてみよう。そんな乗りで掲載しているのです。

案の定、まずは自分で一クリック、友達に一クリックしてもらった所、40円の収入が得られることが判明。つまり、ワンクリック20円の収入ということです。

それから、半年ほど立ちましたが、もちろん、全くクリックされません。ええ、分かってたことですが。

5000円分のアドワーズ 広告無料お試し券

さて、本題の封筒の件です。封筒が届いたのは、年が明けてからすぐのこと。この時期に進呈だなんて、間違いなくお年玉感覚で配って居るのでしょう。

ウェブサイトへの集客に抜群の効果を発揮する、Googleの検索連動型広告「アドワーズ」を無料でお試しください。

と言う文章とともに、挨拶、メリット、プロモーションコード(お試しチケット)などが書かれています。要約すると、

  1. このブログに広告を掲載していることことによって、広告主ビジネスに貢献している。とのこと。
  2. あなたが広告主側に回る「アドワーズ」で集客を期待できるとのこと。
  3. アドワーズで広告配信する5つのメリット
    1. Google検索結果およびAdsense利用サイトに広告掲載が可能
    2. 広告料金はクリックされた回数分
    3. 効果が無ければいつでも止めてOK
    4. 地域限定広告が可能
    5. 5000円の無料お試し券進呈
  4. お試し券の有効期限は2月5日であること。
  5. Google株式会社 執行役員のサインの印刷
  6. お問い合わせ先。フリーダイヤル。
  7. 5000円分の無料お試し券のコード
  8. (裏面)5分でできるお申し込み手順

(全然要約じゃない。。。)という、具合です。

2月5日ということは25日後です。最後の最後まで粘ってみて、用途が無いようでしたら、このブログを宣伝して見ようと思います。(!?

何か始めるなら今しかない

このブログを宣伝した所で、運がよければアクセスアップ、悪ければ現状維持。最悪の場合、炎上&閉鎖などと言う自体になりかねません。

そんなことならもっと上手にこの機会を活用すべきです。せっかく5000円をGoogleから貰ったんですから、それらしい何か、事業っぽいことを始められればいいな。。。なんて思ったり思わなかったり。。。

あー、どうしようね。Yahoo!オークションにでも出品するのも、手ですよね。(券を

No Comments