/* */ /* */

2014年7月8日火曜日

【Android Wear】Factory Resetの方法【LG G watch】

LG G wacthを購入しました。

操作方法ミスって、小売店モード?(デモンストレーションが延々と流れるだけの状態)になってしまったので、一度工場出荷状態に戻すことに。。。

やり方書いておきます。(別の端末への紐付けとかでも使うかも?)

1. LG G wacthの裏のResetボタンを8秒間押します。
2.端末が再起動します。
3.LGのロゴが表示されたら、すかさず左上から右下に掛けてスワイプします。
4. 何かバイオス画面っぽいの出てきます。
5. 左右のボタンでrecovery mode を選択して真ん中の丸いボタン押します。(その他にPOWR OFF, RESTART BOOTLOADER, STARTがあります)
6.倒れたドロイド君タップします。
7.上下にスワイプしてFactory Resetを選択。左右にスワイプして決定。
8.工場出荷状態に戻り、言語選択からやり直せます。


取り敢えずは文字だけで書いておきます。
後で画像とか入れて見やすくします。

2014年6月30日月曜日

【AndroidStudio】AndroidStudioアップデートの仕方を間違えた件【0.8.1】


【やってはいけないこと】
・app上書き
    -> SDKとかStudioの設定消えて涙目になる(なった...orz)

【注意点】
・AndroidDeviceMoniterが起動しない。
    -> 不具合っぽい。原因はSDK側?


を、踏まえての、アップデート方法。


AndroidStudio -> Check for Update 選択



DownLoad選択して、サイト飛んでapp DLしてくる。



後はDLしてきたappを適当な場所において(上書きしない!)
起動すると、「前のバージョンからインポートしますか?」的なダイアログが出る・・・。

自分はこの時には上書きしてしまっていたからこの先は知らないんだ。
ぜひとも自分の目で確かめてくれ!(泣



※以下追記

Android Studio で Android Device Monitor が起動しない件。
Windowsなら下記で解決できるらしい?試してない。
必要な「hprof-conv」が「tools」から「platform-tools」に移動した事が原因の模様。
/SDK/tools/hprof-conv を /SDK/platform-tools/ に移動してあげればオーケー
(今後も考えてコピーして置いておくのが吉?)





2014年6月14日土曜日

【Android】Android Wear 開発環境構築【Wear】

(´Α`;)ハッカソン参加できなかった・・・。

何もやってないと悔しいので、何番煎じか分からんけど、
取り敢えず現状での開発環境構築の仕方を公開しておく。

私の環境
PC:MacBookPro(多分late2012)
IDE:AndroidStudio
実機:GalaxyS4(OS4.3)
Wear:エミュレータ

AndroidStudioのセットアップ方法は省略。
今はもう様々なサイトで解説出てるからね〜。
てことでその次から書いていきます。


1.AndroidWearの公式でDeveloperPrevirewの登録を済ませます。
Signe up the Developer Preview から登録済ませると、
後日メールが来て、AndroidWearPreview.zipのDLリンクと、
テスター登録のリンクが送られてきます。
zipのDLとテスターの登録を済ませておきましょう。

2.実機(OS4.3以降?)にAndroidWearPreviewってアプリを入れておく。
GooglePlayから、AndroidWearPreviewを入れておきます。

3.AndroidStudioでAndroidWear端末のエミュレーター作成。
適当に作ります。
こんな感じ〜


4.実機とエミュレータつなげます。
PCでエミュレータ起動して、実機でAndridWearPreviewのアプリを起動した状態で、
以下のコマンド叩きます。

$adb -d forward tcp:5601 tcp:5601

=================================
※adbコマンド通してない人用
$cd [AndroidSDKの場所]
$cd /platform-tools
$./adb -d forward tcp:5601 tcp:5601
=================================

そすると、実機のAndroidWearPreviewがConnectedになります。
Wearのエミュレータが繋がりました〜。

画面は自分宛てにテストメール出した物です。
基本的には実機のNotificationに出るのと同じものが表示されます。
(SS撮ろうとして丁度キャリアメールに来る怪しいスパムが来て焦った。。。)
ひとまずここまでで、開発の環境が整いました〜!



ちゃんと動いてるか心配なので、
AndroidPreviewに入ってるサンプル動かしてみましょう。


今回は「Recipe Assistant」を動かしてみます。

AndroidStudioでRecipeAssistantをインポートします。
んで、実機で実行!

適当なレシピを選択して右上の「START」をタップ。
そうすると、Wear用のNotificationが飛びます。
エミュレーターで確認すると

いい感じで動きましたー。


ね、簡単でしょ?



4.3以降の実機が普及してきて、やっとこさ作れる様になってきた感がありますね。




そんな中のハッカソン・・・
嗚呼、ホント勿体無いことした・・・

2014年5月29日木曜日

【HomeBrew】Homebrewのリンクが消えた問題に対処【シンボリックリンク】

OSXをMarvericksにアップデートした所、
Homebrewの/usr/local/bin内のシンボリックリンクが全て消えていた。
( Yosemite でも起こるかも?)

手動で直すのもダルいんで取り敢えずスクリプト組んだんで置いときます。
こんな事中々無いと思うけどね〜。。。

一応githubにも追加。
https://github.com/Shift-Kumagai/HomeBrewReLink
ソース下記のみ。

#!/bin/sh
echo "start..."

for var in `brew list` ; do
echo $var
brew unlink $var
brew link -f $var
done

echo "...finish"

【neovim】OSX Marvericksにneovim入れてみる【Mac】

何か、マーベリックスからXcodeのコマンドラインツールの
インストール方法が変更になった模様。

以下のコマンド実行でインストールしてやる。
$xcode-select --install

ダイアログ出てくるんでインストール!!

下記サイトで対応してるcmakeをインストール!!
(知識足りてないんで、自分で設定するより任せちゃった方が安心・・・。)
http://www.cmake.org/cmake/resources/software.html

勝手にパスとかも通してくれる!楽ちんだね!!

んで、以下からクローン
https://github.com/neovim/neovim

ディレクトリ内で
$make cmake
$make test

これが通ればオーケー!
build/bin/の中にnvimって実行ファイルが生成されるので、
適当な場所に移してパス通すといいんじゃないかな。
エラー出た場合はコマンド足りてないとかlibファイル足りないとかだと思うので、
面倒臭がらずにエラー読みましょうw

2014年5月9日金曜日

【Live2D】エラー : デフォーマを変換できません【Modeler】

最近Unity2DでLive2Dのお勉強をはじめて見た。
ぶっちゃけ色々使いづらい・・・。UIがなってない。

でもまぁ、開発者が作った開発者向けのソフトウェアって無骨さが有るw



んで以下のエラー発生
~~~~~~~~~~~~~~~~~~~~~~~~
ヒント
デフォーマを変換できません。
変換先のデフォーマに全てのオブジェクトが収まっているかを確認して下さい。
選択されている全てのオブジェクトが、関連する全てのパラメータ値において、
変換先のデフォーマに収まっている必要があります。

~~~~~~~~~~~~~~~~~~~~~~~~
最初見た時はサッパリ意味が分からなかった。
デフォーマの範囲見る限りは、パーツが全て収まっている様に見えてた。



関連する全てのパラメータ値において



はい、原因コレでした。
パラメータの値弄って、対象のパーツが動くように設定していたわけですが、
その可動範囲全てをデフォーマが網羅していないとダメみたいです。


って事でパラメータ変えながらある程度の範囲見て、
その範囲覆うようにデフォーマを再設定したら通りました。。。

新しい用語ってわかりづらいよね。
以上

2014年4月25日金曜日

【さくらVPS】誰得!SkypeをLinuxのコマンドラインで操作【CentOS】

さ〜て、鯖上でSkypeを操作するよ〜。

ではやっていきます!!

早速変なコトやります。DLするURLがよう分からなかったので、
別マシンからscpコマンドで飛ばしてます(笑

さくらVPS以外のPCでCentOS向け(ダイナミック)をDLしておきます。
http://www.skype.com/ja/download-skype/skype-for-linux/
※Dynamic版ですぜ

※この時点での最新版はskype-4.2.0.13.tar.bz2でした。

んでVPSに飛ばしてあげる。

$ scp ~/Downloads/skype-4.2.0.13.tar.bz2 {user名}@{夫々のip}:/tmp

インスコディレクトリに移動
$cd /opt/

解凍
$sudo tar jxvf /tmp/skype-4.2.0.13.tar.bz2 

パス通して
$sudo ln -s skype-4.2.0.13 skype
$sudo ln -s /opt/skype /usr/share/skype
sudo ln -s /opt/skype/skype /usr/bin/skype

はいインストール完了♪

さてどうなったかなん♪
$ skype
-bash: /opt/skype-4.2.0.13/skype: /lib/ld-linux.so.2: bad ELF interpreter: そのようなファイルやディレクトリはありません

(´Α`)ヴぁ〜・・・
なんかしらんけど、取り敢えず入れてみんべ。。。
$yum install ld-linux.so.2

もう一回
$ skype
-bash: /opt/skype-4.2.0.13/skype: /lib/○○: bad ELF interpreter: そのようなファイルやディレクトリはありません

(´Α`)・・・
$yum install ○○
コレを出て来る度続けます(5,6回位)

そするとskypeコマンド通るようになります。


さて、次にSkypeをPythonで操作する為のSkype4Pyを導入します。
まずは、Skype4Pyを導入する為のeasy_installを入れる為に下記のコマンド入れます。

$sudo yum install python-setuptools

んで
$sudo easy_install Skype4Py

である程度の準備完了。

|ω・`) 利用規約に同意する操作する為だけにGUI環境入れる必要が有る模様...

x11vnc入れてみたけど何かうまくいかない・・・
この辺りの設定の仕方ご存知の方誰か教えてくださいorz

2014年4月24日木曜日

Vagrantにberkshelf入れたらエラー吐いた

※調べたらberkshelf自体が今は非推奨らしいのでお気をつけて。
https://sethvargo.com/the-future-of-vagrant-berkshelf/

Vagrantの起動しようとしたら・・・

$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
/Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/env.rb:18:in `initialize': undefined method `scope' for #<Vagrant::UI::Colored:0x00000107c07a30> (NoMethodError)
from /Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/action.rb:54:in `new'
from /Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/action.rb:54:in `block in setup'
from /Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/action.rb:53:in `tap'
from /Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/action.rb:53:in `setup'
from /Users/user/.vagrant.d/gems/gems/vagrant-berkshelf-1.3.7/lib/berkshelf/vagrant/plugin.rb:15:in `provision'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:45:in `call'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:45:in `block (2 levels) in run'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:44:in `tap'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:44:in `block in run'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:43:in `map'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/action/runner.rb:43:in `run'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/machine.rb:157:in `action'
from /Applications/Vagrant/embedded/gems/gems/vagrant-1.5.4/lib/vagrant/batch_action.rb:72:in `block (2 levels) in run'
from /Users/kuma/.vagrant.d/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `call'

from /Users/kuma/.vagrant.d/gems/gems/logging-1.8.2/lib/logging/diagnostic_context.rb:323:in `block in create_with_logging_context'


何かエラー吐いた。。。
プラグインのberkshelfのバージョンが古い模様。。。
アンインストールして新しいの入れたげる。

$ vagrant plugin uninstall berkshelf
$ vagrant plugin install vagrant-berkshelf --plugin-version=2.0.1


以上!

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回めの記事はお茶を濁します。。。