2012年8月30日木曜日

ベルトラン競争

ベルトラン競争とは、こんなことを指すそうです。

”競争市場においては、価格は限界費用まで下落する。”

「フリー」 クリス・アンダーソン著 より


しかも!デジタルコンテンツをばら撒く限界費用は限りなくゼロに近づくという。恐るべし!
まぁ、オリジナルをコピーしても劣化しないですし。

で、フリー。

フリーにするときは、それぞれに見合った回収スキームを考えなきゃだめだよ、と。
 
ううむ。
 

2012年8月22日水曜日

画面の表示方向

どこかでみたTips、忘れそうだったのでメモ。

ノートパソコンで対面にいる人に画面を見せるとき、PC本体をクルッと相手に向ける、というのをよくやります。
こんなときに液晶画面をガバっと開いた画面を対面から覗きこんでもらって、
[CTRL] + [ALT] + [↓] とすると、「おおっ」ってなります(ということがあります^^;)


[CTRL] + [ALT] + [矢印キー]
で矢印の方向が画面の上?になるように回転して表示してくれます。

マウスの挙動も物理的なディスプレイに対してではなく、表示画面に対してカーソルが移動します。
難しいです。
また、これをやると、デスクトップのアイコンの並びが変わってしまうのがちょっと・・・
 
ちょっとだけ「おっ」ってなるTipsですね。
 

2012年8月21日火曜日

Chromeの検索結果が英語!

GoogleChrome にはいつもお世話になっています。ありがとう!

少し前から google.co.jp か google.com か、どっちを使う?というメッセージが画面上部に表示されていました。
ここで、google.com を選択したらアドレスバーでの検索結果は、英語版の検索ページになりました。予想通り。さて、設定を変える方法はと思い、Chromeのメニューをいろいろとさわってみます。

ツール-設定-設定-検索-検索エンジンの管理

赤枠のようにすると日本語版の検索結果となりました。(上は修正後の画像です^^;)

(やったこと)
赤枠箇所の修正前は、
{google:baseURL}
でした。

「既定の検索設定」にあるものはこの文字列の編集ができなかったので、とりあえずコピペでとっておいて、「既定の検索設定」から一旦Goolgeを削除しました。
その後、「その他の検索エンジン」にGoogleを追加し、上図のような設定
http://google.co.jp/・・・・
に戻しました。そして「デフォルトに設定」を選択しておしまい。

その後、いろいろと検索してみると、この方法の他にもあるようです。

(Vistaの例です)
ユーザ名\AppData\Local\Google\Chrome\User Data にある
Local State
というファイルをテキストエディタで修正するといいみたいです。
とりあえず私はOKとなったのでこのまま様子見です。

今後のための備忘録として、
↓こちらは、google.co.jp を google.com にするという手順ですが逆もたぶん大丈夫と思われ。
http://f.daccot.com/2011/08/15/8609/
  

2012年8月20日月曜日

Google+フォロー

Google+でフォローした人に、自分がフォローされたときの、お知らせに表示されるメッセージですが、

○○さんが Google+ であなたを追加し返しました。

意味はわかるのです。意味はわかりますとも、えぇ。でもなんか・・・うーん(^^;
 

2012年8月16日木曜日

ゴーヤ第1号

庭のゴーヤです。まだ4cm弱(^^;
グリーンカーテンにもなっていません。ううむ。


親つる、子つるを剪定して孫つるを伸ばす!というのを実践してみたのですが。。。
たぶん、追肥だ!
 

2012年8月15日水曜日

QRコード

Google Chart API でかんたんにQRコードを生成することができます。

https://chart.googleapis.com/chart?choe=Shift_JIS&chs=150x150&cht=qr&chl=http://goo.gl/pLwKu
ちなみにこれは GoogleAppsScript で作成した販売データかんたん登録のデモサイトです。

2012年8月10日金曜日

行、列見出しの固定

GoogleAppsScript 
スプレッドシートの処理で、行見出し・列見出しの固定をスクリプトでおこなうとセルの表示がなんかおかしい・・・

上記例は、2行固定、1列固定 としたときです。

sheet.setFrozenRows(2);
sheet.setFrozenColumns(1);

セルE4を選択しています。
アクティブなセルとそれを強調表示している青枠の位置がずれています。
この状態で文字を入力すると、E4に格納されます。

ううむ。
 

(追記)
上記の状態から、再び同じ処理を実行すると、固定行列が正常にセットされました。
やはり未解決。 

2012年8月9日木曜日

doGet(e)

GoogleAppsScript

doGet(e) {
  Logger.Log(e);
}

ログ表示結果 
{queryString=null, parameter=null, contextPath=, parameters=null, contentLength=-1}

urlに右のようなクエリストリングをつけてみる   ・・・?a=1&b=2&c=3
Logger.Log("param[a]=" + e.parameter.a);
Logger.Log("param[b]=" + e.parameter.b);
Logger.Log("param[c]=" + e.parameter.c);

ログ表示結果
param[a]=1
param[b]=2
param[c]=3
 


2012年8月7日火曜日

substr と substring


GoogleAppsScript です。JavaScriptも同じですね。

var hoge = "abcdef";
Logger.log("substr(1,3):" + hoge.substr(1,3));
Logger.log("substring(1,3):" + hoge.substring(1,3));

ログ表示結果
substr(1,3):bcd
substring(1,3):bc


2012年8月6日月曜日

DateTimeFormatContents


Googleカレンダーへイベントを追加するGoogleAppsScriptの処理です。

calendar.createEvent("美容院",
                       new Date(startDate),
                       new Date(endDate));

このときの日付(startDate, endDate)の書式はdateBoxで取得したそのままです。
こうなります→ 2012-08-06

この書式は登録できないようなので書式をかえて試してみると、なんとあっさり!

× yyyy-mm-dd
○ yyyy/mm/dd

dateBoxの書式に yyyy/mm/dd なるものがあるのか?と調べてみました。

setFormat()に DateTimeFormatContents を指定します。

例)
var dateFormat = UiApp.DateTimeFormat.DATE_FULL;
var dtHoge = app.createDateBox().setId("date1").setFormat(dateFormat);

いろいろありました。



DateTimeFormatContents取得した値
ISO_86012012-08-06T12:00:00.000+09:00
RFC_2822Mon, 6 Aug 2012 12:00:00 +0900
DATE_FULLMonday, 2012 August 06
DATE_LONG2012 August 6
DATE_MEDIUM2012 Aug 6
DATE_SHORT2012-08-06
TIME_FULL12:00:00 UTC+9
TIME_LONG12:00:00 UTC+9
TIME_MEDIUM12:00:00
TIME_SHORT12:00
DATE_TIME_FULLMonday, 2012 August 06 12:00:00 UTC+9
DATE_TIME_LONG2012 August 6 12:00:00 UTC+9
DATE_TIME_MEDIUM2012 Aug 6 12:00:00
DATE_TIME_SHORT2012-08-06 12:00
DAY6
HOUR_MINUTE12:00 PM
HOUR_MINUTE_SECOND12:00:00 PM
HOUR24_MINUTE12:00
HOUR24_MINUTE_SECOND12:00:00
MINUTE_SECOND00:00
MONTHAugust
MONTH_ABBRAug
MONTH_ABBR_DAYAug 6
MONTH_DAYAugust 6
MONTH_NUM_DAY8-6
MONTH_WEEKDAY_DAYMonday August 6
YEAR2012
YEAR_MONTH2012 August
YEAR_MONTH_ABBR2012 Aug
YEAR_MONTH_ABBR_DAY2012 Aug 6
YEAR_MONTH_DAY2012 August 6
YEAR_MONTH_NUM2012-8
YEAR_MONTH_NUM_DAY2012-8-6
YEAR_MONTH_WEEKDAY_DAYMon, 2012 Aug 6
YEAR_QUARTER2012 3rd quarter
YEAR_QUARTER_ABBR2012 Q3

YEAR_QUARTER, YEAR_QUARTER_ABBR のとき dateBoxの背景がピンクになった!なぜ?

結局、yyyy/mm/dd なる書式はありませんでした。


(追記)
dateBox()から取得した値をそのまま使用すればよかったということでした。


calendar.createEvent("美容院",
                       e.parameter.date1,
                       e.parameter.date2);


よく調べないとダメですね。反省。
 

2012年8月4日土曜日

(function(){...})()

(function(){...})()


即時関数 と呼ばれているようです。
改めて検索してみると、わかりやすいサイトがありました。
わかりやすい!!(長いです^^)



知ってて当然?初級者のためのJavaScriptで使う即時関数(function(){...})()の全て


http://d.hatena.ne.jp/sandai/20110824/p1




なんとなく使っていることっていろいろとあります。
ひとにきちんと説明でき、かつ理解されるようになれば、自信につながります。