2014年11月30日日曜日

YouTubeにScreencastを初投稿

Courseraのandroid-002の課題でアプリ動作のScreencastの提出も推奨されていたので、YouTubeにScreencastを初投稿した。

PCのディスクトップの動画録画は下記のソフトで行った。

[AG-デスクトップレコーダー]
http://homepage2.nifty.com/t_ishii/ag/index.html
http://www.vector.co.jp/soft/winnt/art/se484960.html?ref=vec

[設定]
キャプチャレート: FPS
=> コマ数を減らすため。

モード: バッファリングエンコード
=> PCの処理負荷を減らすため

メインコーデック: WMV
=> 高画質にするため、品質指定、品質100にした
=> 音声は使わないので一番低レートを指定

入力オーディをデバイス: 使用しない
=> 今回は音声は使わないので

上記設定なら3分の動画で35Mbyte程度になった。

[YouTube]
アップロードにはGoogle+のアカウントいるらしい。元々googleにログインしていた状態だったので特に問題なし。

Google+アカウント設定で情報の公開範囲を「自分だけ」に設定
一括設定が見つからなかったので個別に手動で設定。
原因不明で未入力の情報の公開範囲が設定できなかったので後で情報入れる際には注意する。

YouTube右上のの「アップロード」ボタンから「限定公開」でアップロードしただけ。
限定公開とは言っても動画のURLを知っていれば誰でも見れてしまうので注意。

「マイチャネル->動画の管理」でアップロードした動画の一覧が出せる

動画を選んで、「詳細設定」からコメントや埋め込みの許可や言語を設定。
「アノテーション」から動画の説明を追加。
「動画加工ツール」で不要部分を削除。=> 反映されるのに時間が掛かるので注意。

2014年11月29日土曜日

プログラム言語上の概念の学習の効用

色々な課題を解決するのに共通して重要なのは問題を適切に分割すると言う事。
部分問題同士の関係をシンプルにして、ある部分問題の事を考えているときに別の部分問題の事を考えなくても良いように分割する。
全体を俯瞰的に考えると言う行為と、ある部分を詳細に考えると言う行為は、人の性質として同時には行えないような気がする。
したがって、この部分問題同士の関係が疎になる様に上手く分割することが重要となる。

ソフトウエアの設計は物理的な自由度が高いので色々な分割の方法が考えられる。
建築やハードウエアの設計よ様なより物理的なものと、数学や哲学の様なより観念的なものの中間にあたる。
ソフトウエアのメタな設計ノウハウは他の分野でも役立つし、他の分野のノウハウもソフトウエア設計に役立つ。

プログラム言語自体の設計もソフトエアの設計の一つなので、設計方針の好例として参考にする事が出来る。
アプリケーションよりドメインに依存しないソフトウエア設計上の共通的な一般化された問題を考えて設計されている。
さらに、多くのプログラム言語設計にも共通の概念が存在する。
これがより一般化された共通的なソフトウエア設計上の概念を表している。
したがって、複数のプログラム言語の共通の概念を学ぶことは、色々なソフトウエア設計に役立つ一般的な概念を学ぶことにつながる。

また、今後は一つの別となプログラム言語で全ての課題に対処するのではなく、課題の性質によって適切なプログラム言語を使い分けるやり方が主流になると考えられる。
プログラム言語の共通概念を学んでおけば、複数のプログラム言語を早く正確に習得できるようになる。

さらに、これは他人の設計を理解するのにも役立つ。
他人の書いたプログラムを理解する事が難しいのは、問題の分割の様な中間的な概念が存在しているから。
これを共通的な概念が使われていれば、それを理解している人同士では理解が容易になる。

2014年11月4日火曜日

Scroll lock

[excel]
カーソルキーでセルの移動が出来ずにスクロールする様になってしまた。
エクセルのフッター部分にscroll lockと表示されている。

キーボードのscroll lockをキーで解除出来る。

キーボードに無い場合はソフトキーボードを出して解除する。
=> アクセサリ->コンピュータの簡単操作->スクリーンキーボード->ScrLk