/* */ /* */

2014年4月23日水曜日

インストールでこけた! Failed to download resource "openssl"

Rubyのバージョンアップしようとしたらこんなん出た。

Error: Failed to download resource "openssl"
Download failed: https://downloads.sf.net/project/machomebrew/Bottles/openssl-1.0.1g.mountain_lion.bottle.tar.gz

結論から言うと、俺はOSXだったんでMarvericksにアップデートすれば解決!!


・・・なんて何か悔しいので別の方法も記載


良う分からんけど取り敢えず直接取りに行く

適当な所にDLして
【OSX等】
$curl -O http://www.openssl.org/source/openssl-1.0.1g.tar.gz

【Linux等】
$wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz

展開してビルド
$cd /usr/local/src
$tar zxf openssl-1.0.1g.tar.gz
$cd /usr/local/src/openssl-1.0.1g
$./config
$make
$make test
$make install

完了。。。

バージョン確認
$openssl version
 OpenSSL 0.9.8y 5 Feb 2013

古いまま・・・

.bash_profileにパスを通して...
$vi ~/bash_profile
~~~~~~~~~~~~~~~~~~~~
#以下を追加
#sshの更新
export PATH="/usr/local/ssl/bin:$PATH"
~~~~~~~~~~~~~~~~~~~~

再度バージョン確認
$ openssl version
OpenSSL 1.0.1g 7 Apr 2014

はい、オーケー

2014年3月24日月曜日

いなかソン第2弾!「地域の宝を掘り起こせ!第一次産業×ITで地域を輝かせる!~農家ソン~」  に参加して

上げなきゃいけない記事山ほどある中で、
 コレはどうしても早い段階で上げたかったので公開...

 去る2014年3月21~22日に秋田県五城目町で開催された、
 いなかソン第2弾!「地域の宝を掘り起こせ!第一次産業×ITで地域を輝かせる!~農家ソン~」 
というイベントに参加してまいりました。

秋田県の五城目町という場所で開催されたのですが、
この町は役所の人が非常に元気で、やる気に満ち溢れてます!
 このイベントのはるか前に、東京で開催された「秋田県IT県人会」にて、
「五城目をITで元気にしたいんだ!」と熱いプレゼンを聞いておりました。
そんで、「機会があれば何かやりたいなぁ」とは思っていた所で、

その"機会"がやってきた感じです。

アイディアソンとハッカソンが別グループで行われる二日間。
一日目はどちらのグループも共同で五城目町観光しながら町の
成り立ちや現状を説明してもらい、全員でアイディアソン。

二日目にグループ分かれて本格的なアイディアソンとハッカソンが行われました。


実は、先にどんな物作ろうかという案を持って会場に行くという、
ハッカソンを楽しんで居ない感じのフライングを行っておりました。


自分が考えていた案は
「五城目町ストリートビュー」
THETAを使い、GoogleMapに載せるのではなく、
Webページで独自に動作するストリートビューを作れないかなぁと考えておりました。
後から色々エフェクトとかも掛けられるし、映像だけじゃなく音とかも載せられる。
動作環境はWebページ/Windows/Mac可能ならOculusRiftにまで
対応させる予定だったのです。Unityだし多分いけるだろうと思ってました。
(最新のデバイスと開発環境使ってドヤ顔する予定でした...)



さ〜て、そんな中私は、
一日目に重大な失態を犯しました。
ハッカソンは1日目の22:00〜2日目の16:00まで...
一睡もせずにコーディングを行うというもの。よくある感じですね。
しかし、前日の19時頃から行われた懇親会。
お酒も多少入り気を良くした私は・・・

そのまま二次会に参加。あろうことか午前二時までカラオケを楽しむ

なんてことをやらかしました。
「一体お前は何しに来たんだ」と、未だに自分でも思います。
宿泊施設に戻りパソコンを開いたようなのですが、
それに気づいた時には朝日が眩しかったです...。

はて、これでは16時にドヤ顔が間に合いません!




そこで急遽方針を変更♪
THETAの画像はそのままGoogleMapに載せることが可能で、
GoogleMap上の領域に自作のストリートビューを乗せられる事を知っていたので、
それをそのまま使うことに...


んで、出来上がったのが下記の様な物。







うん、まんまストリートビューで面白みもない!
既存のサービスをただ使っただけなので何も作ってない!
これでハッカソン?ハッ?笑わせるな...と

自分では上記の様に考えておりました。

発表の内容も、
「(・ω<)何か変なカメラ使って公式のストリートビューに(勝手に)載せてみたよ♪」
ってだけで終わってました。(五城目町にストリートビューは殆ど無い)
私は「何も作っていない」ので発表できる内容なんて無かったんですよね...

反応も悪い事も覚悟してました。発表が終わるまでは...


感想A「これ、次回のいなかそんでマッピングとかできそうですね」
感想B「コードを書かずとも作れる物があるなんて関心しました」
感想C「ピコピコ何やってるのかと思ったけどそういう事ね。すごかったよ」

(゚Д゚;;)ふぁ!?


はてさて・・・
最初は全く意味が理解できませんでした。

私は「プログラマー」としてハッカソンに参加していたわけです。
そして、「コードを打っていない」のです。


「put up or shut up」という言葉。プログラマー的に訳すと
「コードを打つか黙ってろ」って感じになります。
(Shut the fuck up and write some code.
 -「ぐだぐだ言ってないでコード書けよハゲ 」-という格言と同じ感じです)


個人的にも好きな言葉なのですが、今回私はコードを打つことすら行っておりません。
何も作っていないのです。LTなどとんでも無い事で、
発表の場に立っていることが非常に申し訳なく感じておりました。
そう考えている中で予想に反する好評価を頂き、かなり戸惑っておりました。








疑問に思った為、第三者視点で自分の行ったことを再度見なおしてみました。

【行った事】
・一日目の五城目町の説明時に、施設を色々回っている中で、
    観光気分でTHETAで記念撮影♪ボタンポチっと押して終わり♪

・二日目の"何故か"非常に短くなってしまったハッカソンの時間の中で、
    専門知識の一切要らない既存サービスに載せてサックリ完成♪
    環境はGoogle様が作ってくれた使いやすいUI使うマウス操作だけ♪
    二日酔いでもらくらく製作可能♪

これらの作業は一切の専門知識も多大な時間も公開後の管理すらも必要ありません。
それでいて、一度Webに載せてしまえば、全世界に向けて情報を発信する事が可能です。
(審査が通ればGoogle公式のストリートビューにも掲載される)
THETA等の全天球カメラ必要になりますが、
Andoroidのスマートフォンの標準機能で代替出来る物が有るので、

それ使うなら専用カメラすら必要無くなります。


それに比べて自分の初期の案を考えてみましょう。
Unityで作ってWebで独自動作するバリバリ専門的な自作ストリートビュー
コレ、誰がメンテナンスするんですかね?
Oculusとか誰が使うの?
しかもちゃんと公開できる物はハッカソンの時間じゃ足りませんから、
その後の開発も必要でしょ?
アップデートまでやる気はあったのでしょうか?作りっぱなしにする感満載の案です。
公開するサーバは?
アップデートの際に毎回技術者に頼んだらコストかかるでしょ?

もうね、問題点だらけですよ。。。


多分、元の案は技術者ウケは良い物と思います。
でも、今回のハッカソンは、技術者に向けて発表することが目的では有りません。
今回の場合、その後の運用が考慮されていなければ、
作ることに何の意味も無いのです。

自分の成果物ならば、五城目のお役所の方、
又はご年配の方でも簡単に作る事が出来ます。
そんでもって管理も要らないので、やりっ放しで問題有りません。
(管理はGoogle様が勝手にやってくれます)

なので、当日から気軽に初められて辞めたい時に辞められて、
辞めた所で過去の成果物は無駄にならない。そんな内容になっていたようです。
(この辺りのやり方も後ほど纏めますかね・・・)

その後も周りから出るわ出るわ、マッピングの利用方法や
データのマネタイズのお話。。。
よくよく考えると、参加者の中には町づくりや地域復興を生業とされてる方や
企業の経営者さんが多い。
その道のプロの人ばかりなんですよね。。。
技術者としてあの場所でやるべきことは、「こんなこと出来るぜドヤァ」
ではなく「こんな方法使うとコレが簡単に出来ます」という、何かに使えそうな技術を
簡単に使えるよう落とし込んだ手法を説明する方が重要なのかもしれません。


なんか、普段のハッカソンとは違う印象受けました。
普段のハッカソンって運用無視!コスト度外視!ただただ面白いものを作れ!
という感じだと思ってます。んで、そういう空気大好きです。


そして、後から考えるとハッカソン当日の自分は「プログラマー」ではなく、
「最新デバイス好きの変人」として参加していたという事なのだと思います。
そう考えると成果物としても大いに有りですね...。



そんなこんなで参加してきた"いなかそん"でした。
非常に考えさせられる事が多く、勉強させていただきました。
今回のブログ長いんで切るんですが、ぶっちゃけまだまだ書き足りないです。
(県外の人と町の人との考えの相違とか、飲んだ日本酒の総評とか、
 杉の木使った工芸品とか、だまこ鍋マジうまいわーとかとか)
それらはまたの機会にしたいと思います。

2014年2月28日金曜日

Unityはじめました。

ブログエントリー書くって言って書いてない!
 この感じ何度目だ・・・続かないねぇ。。。 

さて、最近はUnityという開発環境に触り始めました。


【  Unityとはなんぞや? 】
Unity(別名:Unity3D)とは、統合開発環境を内蔵し、複数のプラットホームに対応する、ユニティ・テクノロジーズ(英語版)が開発したゲームエンジンである。ウェブプラグイン、デスクトッププラットフォーム、ゲーム機、携帯機器向けのコンピュータゲームを開発するために用いられ、100万人以上の開発者が利用している。Unityは主にモバイルやブラウザゲーム製作に使用されるが、ゲーム機及びPCにゲームをインストールすることもできる。このゲームエンジンはC言語/C++で書かれているが、C#、JavaScript、Booで書かれたコードにも対応できる。2005年にOS Xに対応したゲーム開発ツールとして誕生してから、今日ではマルチプラットフォームに対応したゲームエンジンにまで成長した。 --by Wikipedia


とってもよく分かんないですね!


あれです。
RPGツクールとかアクションゲームツクールとか想像して下さい。ソレな感じです。
「ツクール系をプロ用にしたらこうなるんだろうなぁ」って開発環境です。
3Dも2Dも作れます。特に3Dで受けられる恩恵は衝撃的です。
(OpenGLやらDirectXやらを直で触ったことある人は特に...きっと泣きたくなりますよ)

1.コーディングが必要ない!
最初から物理法則とか便利な機能付いているので、パラメータ変えるだけで
重力設定とかも変えられます。
どうしても必要な場所は出てきますが、誰かが似たようなの作っていればそれを
まるっとそのママ持ってこれます。大体揃ってます。
プログラマーじゃなくても使えます。

2.モデリングが必要ない!
キューブやスフィアみたいな短形図形は作れますし、
広大なマップを簡単操作で作るシステムも入ってます。
モデルも作った物をまるっとそのママ持ってこれます。
AssetStoreという所で購入も出来ます。大体揃ってます。
モデラーじゃなくても使えます。

3.というか何も要らない!
誰かが作った物で気に入った所だけ持ってこれます。大体揃ってます。
気に喰わない所や自分の得意分野の場所だけ作り変えることが可能です。
出来ない部分を他人任せにして、得意な所だ作って、
自作した部分を誰でも使えるように公開とかできます。再利用性が高いです。
もう何も技術なくても使えます。



個人的にはガリガリとコード書いて作らないと作った気がしないのですが、
ダラダラ適当にマウス動かしてるだけで思い通りの動くものが
出来あがるというのはとても楽しいです。
何も出来なくても作れるのですが、何か出来たほうが幅が広がります。

とか何とか書いといて、取り敢えず1回めの記事はお茶を濁します。。。

2013年11月27日水曜日

【Android】最初の二歩、Eclipseの設定【入門】

さてさて、折角なのでブログに纏めちゃおうね〜。

てことで、Android開発入門の2つ目の記事。
MaとEclipseの設定、プロジェクトの作成辺りまで書いていきます。

まずは、Macの設定変更。
Eclipseには強力な補完機能(control+space)があるのですが、初期の設定のままのOSXだと、
このショートカットがSpotlightという別の物に割り当てられていて使えなくなっています。
なのでこのショートカットを変更しましょう。
Einder -> アプリケーション から Spotlightを選択
































出てきたダイアログの下の方にある、「Spotlightウィンドウのキーボードショートカット」のチェックを外すか、別のキーに置き換える等の処置を行ってください。
(Eclipseのショートカットの設定を変更したいという方は。。。がんばです)




















これで、Eclipseのコード補完のショートカット(control+space)が使えるようになりました。



次に、Eclipseの文字コードを変更します。
これやり忘れると後から結構面倒な事になる可能性あります(汗
Eclipseに戻り、左上の「ADT」又は「Eclipse」から「環境設定」を選択してください。


















出てきた「Preferences」のウィンドウの左側の一覧から、
General -> Workspace を選択。
詳細の下の方にある「Text file encoding」を「UTF-8」に変更


















以上でこのワークスペースの文字コードがUTF-8になります。



取り敢えずこの2つやっておけばいいかなーって思います。
(他に必要な事あったら教えて下さい。。。)


さて、次は実際にAndroidのProjectを作成していきましょう。
//TODO: そのうち書く(笑

2013年11月18日月曜日

【Android】最初の一歩、環境構築 【入門】

さて、久しぶりのブログ・・・
アウトプット大事なんだけど、後に回しがち。本当によろしくない傾向。

あ、後、このブログはmacのChromeで見た時正常に見えるようにしているつもりです。他のブラウザだとレイアウト崩れてるかも....


さて、今回は社内でAndroidの社内講習やることになりましたので、
改めて、現在の環境構築の方法をまとめてみたいと思います。

今回はEclipseの環境構築をしていきます。



Android Studioでも個人的には良いと思うですが・・・
「それに移行して問題あったら責任取れるの?」とか
むっちゃ面倒なのでEclipseでやります。
別にコードの書き方は変わらないです。
Android Studio(というかIntelliJ IDEA?)の方が、慣れた時に使いやすそうです。




ちなみにこちらがAndroidのディベロッパーサイト
なんか、時間有る時に眺めると面白いです。
でも、コード打たないまま読んでも面白さ半減なので、

取り敢えず今は無視しましょう!


どこかのタイミングでJava JDKのインストール求められるかもですが、
どのタイミングで何が必要か忘れてしまったので、適時対応お願いします
...ゴメンナサイ



さて、本題です。


まずはIDEをDLしてきます。
http://developer.android.com/sdk/index.html
ぱっと見、SDKとか書いてありますが、
Android開発に必要な物のオールインワンセットです。
Eclipse,ADTプラグイン,SDK,最新のエミュレータとか入ってます。
これとJavaの環境入れてればアプリ開発できるはず...
















・飛んだページの「Download the SDK」をクリック

















・出てきた規約をざっと読んだらチェックボックスに
 チェック入れて下のボタンクリック


そすると、現在の最新だと「adt-bundle-mac-x86_64-20131030.zip」がDLされてきます。
それを適当な場所に解凍。後はお好みなのですが・・・



自分は下記のように一緒に入れちゃってます。

解凍すると
adt-bundle-mac-x86_64-20131030  -  eclipse
                                                           - sdk

のようなファイル構成になってると思うのですが、これを
adt-bundle-mac-x86_64-20131030  -  eclipse  -  sdk

のような感じで、「eclipse」の中に「sdk」を入れてます。
一つに纏まっていた方が良いと思うんで。。。



ここまで出来ましたら、この「eclipse」のディレクトリを「アプリケーション」の
中に移動させてください。(これもお好みですが、多分皆やってる?)

では、早速Eclipseを起動してみましょう!
eclipseのディレクトリ内にある、「eclipse.app」をダブルクリック!
(お好みでショートカット作りなり、Dockに配置するなり。。。)



================================
※ここで「壊れているため開けません。」というポップアップ出た人用

アプリケーション -> システム環境設定 -> セキュリティとプライバシー -> 一般タブ
左下の鍵のマークを解除して、「ダウンロードしたアプリケーションの実行許可」を
「すべてのアプリケーションを許可」に変更
(...前こんなん出たっけ?)
================================




さて、eclipseを起動しようとすると「Select a workspace」というポップアップが出てきます。
「ワークスペース(プロジェクト置く場所)どこにします?」
これもお好みで、お好きな場所にディレクトリ作って指定しましょう。
自分は書類(Document)の中にworkspaceってディレクトリ作ってそこを指定。
次に進みましょう。


そすると、「Could not find SDK folder」SDK見つかんないよ!!ってエラー出て怒られるかと思います。
Closeして、EclipseにAndroidSDKの位置を教えてあげましょう。



左上の ADT -> 環境設定
出てきた Preferencesの左側メニューから Androidを選択
右側を見ると、赤いバツのマークと SDK Location:の欄があると思います。
ここに先ほどのSDKの位置を入力します。

















人によって違うかと思いますが、
「/Applications/eclipse/sdk」こんな感じで、
先ほどの「sdk」のディレクトリを指定してあげてください。
設定出来ましたら、右下の Applay -> OK

さて、これで"最低限"の開発環境は整いました。
この状態ですと、最新のtargetしか選択できず、最新のOS(現在だとAndroid4.4)でしか
動かないアプリしか作れませんので、古いOSでも動くよう色々取ってきます。




まず、現在の「Shared Area」(一番広い作業スペース)で、
Javaを選択していることを確認して下さい。

















その画面ですと左上の辺りにドロイド君(Androidのロボット)アイコンが
2つ表示されていると思います。
下向き矢印が出ている、「Android SDK Manager」を選択してください。














色々読み込み終わるまで待って。
取り敢えず出てきた奴に全部チェック♪(有って困るものはないので...)
環境によってインストールできずエラーになるものも有るのですが、
一先ず全部にチェック入れておいて問題はないかと思います。
















全てのライセンスにacceptしてあげて、installを選択。















長いインストールが始まります。
それを終えると環境構築完了です。お疲れ様でした!!

次にeclipseの設定とか多少有るのですが、その辺りは次回(があれば)にでも。



・・・てか今本当に楽になったんだね。

























以下、やらなくていい事やって悩んでた。
今はコレ必要ないのよね・・・なんとなく残しとく。

上のメニューバーから
Help -> Install New Software...
「Work with:」に「https://dl-ssl.google.com/android/eclipse/」を入力













そのまま待機...少しすると、下の欄に「Developer Tools」と「NDKPlugin」が出ますので、この2つにチェック入れて「Next」をクリック。
次のページで「Finish」をクリック。
終わると「再起動していい?」って聞かれるので、快く「Yes」と答えたげましょう。

・・・とここまでやって、流石にオカシイだろと気づきました。

2013年5月22日水曜日

【AndroidStudio】libの追加方法【ライブラリ追加】

【Mac環境】
Eclipseだと、適当にlibフォルダに突っ込んでおけば
良い感じにしてくれていたのですが、
現状のAndroidStudioではそうはいかない模様。

libフォルダにコピペ等で突っ込む所迄は同じなのですが、
その後、File->Project Structureを開く。

右側から「Libraries」を選択。真ん中上部にある「+(プラス)」ボタンから
「libフォルダ」を丸々選択してOK。
プロジェクト選択するような画面が出てくるけど、
そこでは「HogeProject-HogeProject」という長くなってる方を選択。

これでちゃんと自動補完とかしてくれるようになる。

------追記----

これでも駄目な模様。実行時にエラー吐かれちゃう。
ビルドパスを直接書き換える必要があるみたい。
もうちょい調べてみる・・・

--------追記2-------
「libsフォルダ」や「srcフォルダ」と同じ階層にある、
「build.gradle」の内容を直接書き換えたらいける模様。


dependencies {
    compile files('libs/android-support-v4.jar')
}

この部分を以下に書き換える


dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
}



これで実行出来る様になった。
そしてこの辺りの事既に全部書いてあるブログを発見。
最初からここ見れば良かった・・・
[android]Android Studioで外部ライブラリを使うアプリを実行する


取りあえず書き残しておく。。。



2013年5月17日金曜日

【AndroidStudio】 There must not already be a project at this location【エラー】

Android Studioでプロジェクト作ろうとしたら以下のエラーが出た。
「 There must not already be a project at this location」
どうやら、既に作られたディレクトリを指定すると駄目みたい。

Macなら
/Users/Documents/Workspace
ここにプロジェクト作る場合は、
「Project location」に「/Users//Documents/Workspace/NewProject」
みたいな感じで、未だ存在しないディレクトリ指定してやって、
AndroidStudio自身にフォルダ生成させないと駄目な様子。

Windowsの場合はこうかな?
C:/hoge/fuga
Cドライブがこうなっていて、「fuga」にプロジェクト作りたい場合は、
「Project location」に「C:/hoge/fuga/NewProject」
でいけるはず。


どうでも良い様な内容だけど、何か新しいIDEだし取りあえず載せとく。。。



序でにAndroidStudioのショートカットキーをちょっとずつまとめていく

自動インポート option+Return
自動整形    option+command+L
Override一覧     control+O