2010/10/26

欽ちゃん監督引退→片岡安祐美次期監督

朝、テレビで会見を見てたのですが、なんていうかこの人、オーラなくなったなぁ。。。

「アマチュアやるのは5年が限界。プロからお声がかかるかと思ってたんだけどこないね」とかなんとか。

冗談のつもりでコメントしているのだろうが、なんか球団運営してみたけど5年で飽きちゃったみたいな印象を受けました。

いつも気まぐれ。昔は面白いイメージがあったが、今はただのしょぼくれた老人にしか見えない。

もともと覇気があったり男気を感じる人柄ではないですが、この去り際のみずぼらしさってなんなんでしょうね。

それにしても、後任に片岡って。。。

このチームは相変わらず監督不在のチームなんですね。

ただの客寄せパンダを指名→自分はそそくさフェードアウト→数年後球団も無くなるんじゃないかね。


そういえば、一時期は球団を競売にかけるとかかけないとか・・・今はどうなってんですかね?

2010/10/25

DropboxAPI for Android

DropboxAPI for AndroidのサンプルコードをEclipse上で動かすまでの手順とメモ。

  1. 公式サイトからログイン
    アカウントが無ければ、作成
  2. "My App" > "Create an App" > "App Name"と"Description"を記入 > "Create"
    "App Name"と"Description"は適当で大丈夫です。後で修正できますので。。。
  3. "My App" > 先ほど登録したアプリの"option" > 最下欄のApp keysをメモ
  4. "Client Libraries" > "Java/Android SDK v0.1"をDL
  5. DLしてきたdropbox-android-sdk-0.1.tar.gzを解凍場所はどこでもいいですが、Eclipseのworkspace上に移動しとくと管理が楽。
  6. Eclipse > File > New > Project > AndroidProject > Create project from exisiting source > dropbox-android-sdk-0.1.tar.gzを解凍したフォルダを指定 > Finishでプロジェクト生成
  7. 生成したProjectを右クリック > Properties > Libraries > Add JARs > project/lib下にある._以外の.jarを全部指定してOK
  8. project > src > DropboxSample.javaの以下コードに3.でメモしたkeyとcecretコードを書き換え

    // Replace this with your consumer key and secret assigned by Dropbox.
    // Note that this is a really insecure way to do this, and you shouldn't
    // ship code which contains your key & secret in such an obvious way.
    // Obfuscation is good.
    final static private String CONSUMER_KEY = "PUT_YOUR_CONSUMER_KEY_HERE";
    final static private String CONSUMER_SECRET = "PUT_YOUR_CONSUMER_SECRET_HERE";
  9. 実行
    動かすと、ログイン画面が出てきて、アカウントアドレスとパスを入れ、下のボタンを押すとログインできます。それだけです。
    ※この段階では、アプリを申請した(keyを取得)したアカウントのみログイン可能です。


DropboxAPIを使うためには、認証情報として、アプリ申請を行ったKEYが必要となります。注意が必要なのは、この申請したアプリが承認されるまで(開発期間中)は、KEYを取得したアカウントでのみログインなどのAPI動作が許可されている点です。遊ぶ分にはまったく問題ありませんがね。



それでも動かない場合のメモ

-Http 403 errorの場合(認証エラー)の勘所
  • アカウントアドレスとパスがkeyを取得したときのアカウントのものと違う
  • CONSUMER_KEYとCONSUMER_SECRETが正しくない
  • 実行環境(携帯とか)のシステム時間が世界標準時間と大きく異なる
  • 実行環境がそもそもネットに繋がってない

2010/10/24

ADT Layout Editor は TabWidget に対応してない!?

 EclipseでADT Layout Editor使って、レイアウトのxmlファイルをいじってたら、うんともすんともプレビューが表示されない。

画面には、 NullPointerException = null の文字が悲しく表示されるのみ。
自分が作ったソース的にはエラーはまったくないんだけどなぁ。。。

ってことで、色々調べた結果。

どうやら、layoutとして、TabWidgetを使ってることが原因っぽい。

Android1.5では同じソースは動いてたのに、2.0で同じプロジェクトを立ち上げると、このエラーが出てしまう。

よくよく同じ人をGoogleさんちで探してみると、Issue 2021としてGoogle code Androidに登録されておりました。

あぁ。やっぱね。

さて、TabWidgetで楽して実現すんのあきらめて、ちゃんと他のめんどい方法でやりますか。はぁ。。。

ちなみに、そのエラーは長いけどこんなん。

java.lang.NullPointerException
at android.widget.TabWidget.dispatchDraw(TabWidget.java:105)
at android.view.ViewGroup.drawChild(ViewGroup.java:1484)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1228)
at android.view.ViewGroup.drawChild(ViewGroup.java:1484)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1228)
at android.view.ViewGroup.drawChild(ViewGroup.java:1484)
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1228)
at android.view.View.draw(View.java:5841)
at android.widget.FrameLayout.draw(FrameLayout.java:352)
at com.android.layoutlib.bridge.Bridge.computeLayout(Bridge.java:400)
at
com.android.ide.eclipse.editors.layout.GraphicalLayoutEditor.computeLayout(Unknown
Source)
at
com.android.ide.eclipse.editors.layout.GraphicalLayoutEditor.recomputeLayout(Unknown
Source)
at com.android.ide.eclipse.editors.layout.GraphicalLayoutEditor.activated(Unknown
Source)
at com.android.ide.eclipse.editors.layout.LayoutEditor.pageChange(Unknown Source)
at org.eclipse.ui.part.MultiPageEditorPart.setActivePage(MultiPageEditorPart.java:697)
at org.eclipse.ui.forms.editor.FormEditor.setActivePage(FormEditor.java:628)
at com.android.ide.eclipse.editors.AndroidEditor.selectDefaultPage(Unknown Source)
at com.android.ide.eclipse.editors.AndroidEditor.addPages(Unknown Source)
at org.eclipse.ui.forms.editor.FormEditor.createPages(FormEditor.java:146)
at
org.eclipse.ui.part.MultiPageEditorPart.createPartControl(MultiPageEditorPart.java:283)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:661)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:426)
at
org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:592)
at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:263)
at org.eclipse.ui.internal.EditorManager.findEditor(EditorManager.java:398)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2688)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2651)
at org.eclipse.ui.internal.WorkbenchPage.access$13(WorkbenchPage.java:2643)
at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2595)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2590)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2574)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2565)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:644)
at org.eclipse.ui.ide.IDE.openEditor(IDE.java:603)
at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileAction.java:98)
at org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystemEditorAction.java:98)
at
org.eclipse.ui.views.navigator.OpenActionGroup.runDefaultAction(OpenActionGroup.java:125)
at
org.eclipse.ui.views.navigator.MainActionGroup.runDefaultAction(MainActionGroup.java:328)
at
org.eclipse.ui.views.navigator.ResourceNavigator.handleOpen(ResourceNavigator.java:690)
at org.eclipse.ui.views.navigator.ResourceNavigator$6.open(ResourceNavigator.java:433)
at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:820)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
at org.eclipse.core.runtime.Platform.run(Platform.java:857)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:46)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:199)
at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:818)
at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1079)
at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1183)
at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:263)
at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:257)
at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:297)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:938)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3682)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3293)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2389)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2353)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2219)
at org.eclipse.ui.internal.Workbench$4.run(Workbench.java:466)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:289)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:461)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:106)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:169)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:106)
at
org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:76)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:363)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:176)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:508)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:447)
at org.eclipse.equinox.launcher.Main.run(Main.java:1173)

2010/10/20

DropboxAPI?

オンラインストレージサービスで有名なDropboxが大盤振る舞い!

なんと、アプリケーション開発者に対して無料でAPIを公開してるんだとか。

これで自分で使いやすいように、何かのアプリとDropboxを連携して遊べるな。

さらっと見た感じでは、
  1. ソースはオープンソースで無料(MIT License)
  2. SDK配布(Android用/iPhoneOS用)
  3. ユーザ登録をして開発キーをもらって、APIを使うときにそれが必要
  4. 5000API call/dayくらいは自由に安心して使える(それ以上はアクセス制限かな?
詳しくは、週末にでも調べてみようかな。

2010/10/19

保険証の裏がドナーカードに・・・


会社の保険証が更新になったが、気づいたら保険証 兼 ドナーカードになっていた。

自分が脳死になったら・・・

うーん。。。

私の中では、自分の死後、体を提供することにまったく抵抗感はない。

ま、誰かの役に立つなら、どうぞご自由にって程度。



ドナーカードを見ていたら、自分の老後、死後はどのようにしたいんだろうと、ふと考える。

もし、自分が動けなくなったら・・・

もし、重篤で寝たきりになったら・・・

重度の痴呆になって介護される身になったら・・・

私だったら、家族への負担はできるだけかけたくない。

延命措置はできるだけ行わず、あるがまま死んでいきたい。

たとえ家族が生を望んだとしても、私は延命はしたくないときっと思うだろう。

でも、一般的に家族が望む限り(世間体的なものもありつつ)、きっと普通なら延命の手がつくされ、家族は疲弊していくのでしょう。

今の日本で、老後を延命処置を一切行わずに、残りわずかな生を過ごす方法ってあるんでしょうかね?

2010/10/18

鼻水の色

風邪です。

鼻水です。

洪水です。


鼻がぐじゅぐじゅ・・・

ティッシュという名の白い友達を何人亡きものにしたことか。。。

ここ1週間くらい風邪気味なのですが、ふと気づくと鼻水の色が違うような・・・

ま、汚い話なんですが。

透明でダラダラ → 黄色くてやや粘度増す → 青っぽくてもったり(今ここ)

青っパナは、どうやら治りかけ?のしるしなんて説もあったりなかったり。

鼻水は、風邪の病原菌と戦った後の白血球という名の戦士の亡骸なんだとか。

ありがとう。わが戦士たちよ。ティッシュという名のやわらかい布団でやすらかにお眠り。。。

2010/10/17

1.Prepare your development computer:

1.Prepare your development computer:をクリックすると、

まずは以下のことが書いてあります。

Supported Operating Systems

  • Windows XP (32-bit), Vista (32- or 64-bit), or Windows 7 (32- or 64-bit)
  • Mac OS X 10.5.8 or later (x86 only)
  • Linux (tested on Linux Ubuntu Hardy Heron)
    • 64-bit distributions must be capable of running 32-bit applications. For information about how to add support for 32-bit applications, see the Ubuntu Linux installation notes.

貴方のPCのOSがこの中に入っていますか?ということを聞いています。

Windowsの人は、Windows XP (32-bit), Vista (32- or 64-bit), or Windows 7 (32- or 64-bit)の内、どれかならOKです。

32bitとか64bitとか言う記述に困惑するかと思いますが、家庭用に普通に買ったものなら大抵32bitものですので、XPかVistaかWindows7ならOKだと思ってください。

64bitものは、サーバーを作りたい人とかが、特別に選んで買ったりするものなので、普通の人はお目にかかりませんので、ご安心を。

次に、進むと、

Supported Development Environments

Eclipse IDE

  • Eclipse 3.4 (Ganymede) or 3.5 (Galileo)
    Caution: There are known issues with the ADT plugin running with Eclipse 3.6. Please stay on 3.5 until further notice.
  • Eclipse JDT plugin (included in most Eclipse IDE packages)
  • If you need to install or update Eclipse, you can download it from http://www.eclipse.org/downloads/. Several types of Eclipse packages are available for each platform. For developing Android applications, we recommend that you install one of these packages:
    • Eclipse IDE for Java EE Developers
    • Eclipse IDE for Java Developers
    • Eclipse for RCP/Plug-in Developers
    • Eclipse Classic (versions 3.5.1 and higher)
  • JDK 5 or JDK 6 (JRE alone is not sufficient)
  • Android Development Tools plugin (optional)
  • Not compatible with Gnu Compiler for Java (gcj)

Eclipseというソフト開発ツールと連携して開発ができますということが書いてあります。
簡単に言うと、
  • Eclipseってソフトの3.4と3.5ってver.に対応してるよ。3.6はまだ待っててね。
  • EclipseはIDE(統合開発環境)を含んでるやつにしてね。
  • JDK5  か JDK6を入れといてね。
みたいな情報だけわかればよしです。

まずは、以下のところ
  • JDK5 or JDK6 (JRE alone is not sufficient)
JDKとは、JavaDevelopmentKitの略でJava言語のソフトを作るためのツールです。

AndroidアプリはJava言語で開発されるので、当然必要となりますので、以下の手順でインストールします。

JDK5 or JDK6と記述されている場所のリンクをクリックすると、色々ありますが、ここでは、以下の


"Java Platform, Standard Edition"と書かれている場所の"Download JDK"をClickします。

出てきたページから、Platformを”Windows”としてContinueを押すと、例えば、jdk-6u22-windows-i586.exeなどのインストーラがダウンロードできます。

※UserNameなど求められますが、書かなくてもダウンロードできます。

ダウンロードしたら、インストーラをクリックしてインストールします。



続いて、
  • Eclipse 3.4 (Ganymede) or 3.5 (Galileo)


と色々ありますが、今回は、Eclipse3.5(Garileo)を入れます。

”OlderVersion”  >  "Eclipse Galileo SR2 Packages (v 3.5.2) " > "Eclipse IDE for Java Developers"

の順に辿り、

右欄の”Windows 32-bit”をクリックし、"eclipse-java-galileo-SR2-win32.zip"をダウンロードします。
ダウンロード後、解凍しておけばよいです。



また、他に次のような記述がありますが、


Other development environments or IDEs

  • JDK 5 or JDK 6 (JRE alone is not sufficient)
  • Apache Ant 1.6.5 or later for Linux and Mac, 1.7 or later for Windows
  • Not compatible with Gnu Compiler for Java (gcj)
Note: If JDK is already installed on your development computer, please take a moment to make sure that it meets the version requirements listed above. In particular, note that some Linux distributions may include JDK 1.4 or Gnu Compiler for Java, both of which are not supported for Android development.

ま、今回は、eclipseを使うので気にしません。

また、次の項目は、各ソフトの容量のことです。心配な方だけチェックすればよいと思います。

Hardware requirements

The Android SDK requires disk storage for all of the components that you choose to install. The table below provides a rough idea of the disk-space requirements to expect, based on the components that you plan to use.
Component typeApproximate sizeComments
SDK Tools50 MBRequired.
Android platform (each)150 MBAt least one platform is required.
SDK Add-on (each)100 MBOptional.
USB Driver for Windows10 MBOptional. For Windows only.
Samples (per platform)10MOptional.
Offline documentation250 MBOptional.


Note that the disk-space requirements above are in addition to those of the Eclipse IDE, JDK, or other prerequisite tools that you may need to install on your development computer.

Androidアプリ開発環境の整え方

Android関連の情報はかなりオープンに公開されています。

そのため、Androidアプリを作ろうと思ってる

開発環境の準備などの各種情報はすべてhttp://developer.android.com/に記載されているのですが、なにしろ英語なんで、それで挫折する人多いんじゃないでしょうか。

ここでは、Eclipseという開発環境でAndroidアプリを作る手順を公式ページの方法に沿いながら解説したいと思います。
まず、公式のhttp://developer.android.com/sdk/index.htmlを見ると、次のような記述があります。

Quick Start

  1. Prepare your development computer:
    前準備
  2. Download and install the SDK starter package:
    ソフトウェア開発キットのインストール方法
  3. Install the ADT Plugin for Eclipse:
    EclipseにAndroid開発ツールと連携する方法
  4. Add Android platforms and other components to your SDK:
    Android開発環境やその他の機能を追加する方法
基本的には、以上の4つをこなせば開発環境は整うということです。

以下、簡単に用語説明
Eclipse:Java言語のソフト開発環境のこと。これを使って主に開発を行います。
SDK:SofrwareDevelopmentKitの略。ソフトウェア開発環境キットのこと。
ADT:AndroidDevelopmentToolsの略。Android開発用ツール群のこと。

2010/10/07

Googleで"googol"と検索すると・・・



Googleの社名の由来って知ってますか?

その名前の由来は、googol(グーゴル)という数学造語と言われています。

googolは、10の100乗(1000・・・と1の後に0が100個)という意味で、エドワード・カスナーという数学者の甥が9歳の頃に考えた造語なんだとか。

このgoogolは、エドワードの書籍で甥の話を書いたときに紹介され、この言葉を気に入ったラリーペイジという人が現在のGoogle(グーグル)という名前へ変化させ、社名が誕生したのだそうだ。

由来となったgoogolという途方も無い数字という意味から、Googleは、世界に溢れる数多の情報を集め、必要な情報をユーザーに提供するという願いも込められているとかいないとか・・・

やっぱ、大きな会社ってこういう逸話があってなんか趣があるなって感じますね。

大きくなってからの後付かもしれませんが・・・

ちなみに、記事タイトルのようにGoogleで"googol"と検索すると・・・ま、小ネタがあります。

2010/10/06

Androidケータイって?


ケータイでAndroidケータイとかって騒がれるようになったけど・・・

Androidってそもそも何?って方はけっこう多いと思います。

簡単に言うと、Androidというのは、

携帯端末での全体の動きを制御する仕組みの名前のことなんです。
(厳密に言うと、携帯だけじゃなく、タブレットPCや、家電などにも使える仕組みです)

PCで言うと、Windows、MacOSなどのOS(基本ソフト)とニュアンスは遠くないかな。

つまり、Androidという仕組み上で動くソフトウェアを作った場合、Androidケータイと呼ばれるケータイのどれもでそのソフトウェアは動くということです。


ふーん・・・じゃ、なんで、このAndroidが騒がれての?って言うと、

このAndroidは、無償で誰にでも中身が公開され、自由に開発したりできるというところなんですよ。

普通だと、こういった仕組み(Windowsとか)は、中身は外部には非公開で、中身は開発した会社が独占して開発できるってのが一般的。

しかし、このAndroidは、Google,Incが開発したものなんですが、

なんと、Googleさんは、中身を万人に公開して、しかも自由に開発して使っていいよってことにしちゃったんですよね。

さすがGoogleさん。太っ腹。

こういった、中身を公開して自由に使っていいよってのをオープンソースって言うのですが、

オープンソースであると、利用者(開発者)には、次のようなメリットがあると言われています。
  1. 無料でその仕組みを使える
  2. なにか問題があった場合に、中身を見れる為、自分で解決できる可能性がある
  3. その仕組みに独自機能を追加することも可能

ま、もちろん、公開しているGoogleにも、メリットはあります。

このように、開発者が参入しやすいので、この仕組みを開発したり、開発された製品を利用する人が増えれば、この仕組みは、携帯端末業界の中でデファクトスタンダード(Defact Standard:事実上の標準)となり、Googleは携帯市場を独占できるので、おいしいってのもあるのです。


ってことで、最近余裕が出てきたので、そろそろ暇つぶしに私もやってみようかなっと。

ゆくゆくは、iPhoneアプリの一つでも作れるようになれたらいいなー・・・

ってことで、近いうちに少しずつAndroidアプリ開発する備忘録を作成予定。

2010/10/05

理想体型算出値(ゴールデンカノン指標値)

ゴールデンカノン

それは、かの有名な下着メーカー:ワコールさんが長年の研究の結果、日本人の理想の体型を指標化したものなんだとか。



これは、身長を基準

バスト:身長×0.54

ウエスト:身長×0.38

ヒップ:身長×0.54

太もも:身長×0.31

という値が見た目としてバランス良く見えるというものなんだそうで。

めんどくさいので、身長を入れたら計算してくれるスクリプトページを探してたら、こんなのありました。

どうやら、自分の身長、胸囲、胴囲を入力すると、指標値とどれくらい差があるのか出してくれます。

なんで、こんなの調べたの?って言われたら・・・

ま、エロいこと考えてたのは、否定しません。

本当のところを言うと、男性版の標準体型を算出するスクリプトを探していたら、ゴールデンカノンが先に検索に引っかかっただけなんですけどね。

あっ、ちなみに、男性版はこちら

身長を入れてボタンを押すと、理想体型が表示されます。

自分の身長で入れてみたのですが・・・

体脂肪率10%前後が理想スか・・・

これ理想すぎない?