• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

 GTUGのBootCamp 2011 Japan でGoogleAppsScriptのハンズオンに参加してきました。

セッション資料はこちらに公開されています。

Twitterのハッシュタグは #bc2011jp #gas1

 本当はGAEのセッションに参加するつもりだったのですが、GAEコーナーはセッションではなくオフィスアワーだったらしく、急遽こちらに参加しました。

 Google Apps ScriptというのはGoogle Apps内で提供されているスクリプト実行環境で、自分の認識としては、マイクロソフトオフィスでいうところのVBA的なものという感じです。VBAをろくに触ったことはありませんが。。Script自体は基本的にJavascriptなので、jsを使える人なら言語自体の学習コストはほぼゼロです。

 例えば値を受け取って消費税分を加算して戻すような関数は下記のような感じでJavascriptそんまんまです。

javascript>>
function calc_tax(no_tax_price) {
var inc_tax_price = no_tax_price * 1.05;
return inc_tax_price
}
<<--

 ハンズオンでやったのは、TwitterのAPIからJsonデータを取得・パースしてSpreadsheetに表示したり、Tasksと連携させたりといった内容。
時間内で最後まで終わらせることはできませんでしたが、Javascriptは一応知識がありますし、純粋に楽しくやれました。
皆がTwitterのAPIにアクセスしたのでアクセス数制限にひっかかってエラーになっていたりといくつかハプニングはありましたがw

 GAS自体については確かに便利なので、自分で使うだけのちょっとした便利ツールを作ったりするのにはすごくいいんじゃないかとおもいますが、ExcelのVBAがいろんなところで問題になってたりするように、GASもGoogleAppsにロックインしたものになってしまうので、業務上クリティカルなものを作るために使うべきではありませんね。

 GoogleAppsのサービス自体がいつどうなるかわかりませんし、メンテナンスできる人が多いとも思えないですし。構文はJavascriptと同じですが、例えばSpreadsheetにデータを書き込むなどはやはりSpreadsheetにロックインされたものになります。

javascript>>
var doc = SpreadsheetApp.getActiveSpreadsheet();
var sheet = doc.getSheetByName("hoge");
var start_row = sheet.getLastRow() + 1;
var data = [
[1,2,3],
[10,20,30]
];
sheet.getRange(start_row, 1, data.length, data[0].length).setValues(data);
<<--

 あとは、エラー内容によっては一度エラーになると二度とスクリプトエディタで開けなくなったりとか、結構致命的なところもあったりします。
その辺もうちょっと整備されてくると、ブラウザ上だけで作業できたり手軽に作れたりと良いところも多いので、使いどころを間違えなければ便利なツールだと思います。

posted by akanuma akanuma on Sat 29 Oct 2011 at 20:43 with 0 comments
Contents rssrss
[Rails]to_travel は DateTime.now に対応してない
[Rails]RailsアプリにPassengerから環境変数を渡す
[Rails]Rails4 で datetimepicker を使う
[Vagrant] VM上のUbuntuから名前解決できない
[Rails]Passengerがgitからinstallしたgemを認識しない
[Rails][MessagePack] APIレスポンスとしてのMessagePack検証
[mongodb][couchbase] MongoDBとCouchbaseを比べてみました
[Rails][MySQL] RailsでMySQLを使う
[MySQL] MacにMySQLをインストール
[Rails] APサーバの比較検証(Puma, Unicorn, Passenger)
Tags
railsPassengermysqlRails,Ruby,bootstrapChefCouchbasedatetimepickerMessagePackMongoDBnginxPuma,RSpecrubyubuntuUnicorn,Vagrant
Comments rssrss
yoku0825 yoku0825: nkfの方が使いやすいですが、glibcに含まれているiconvの方が 確実にどの環境にも入っている... 06/11 07:03
Hiroaki Akanuma Hiroaki Akanuma: ご指摘ありがとうございます。「嗜好度は大きい値がより嗜好度が強いことを意味すればどのような値でもよい... 11/08 12:50
akr akr: 初めての推薦エンジンのところ 「属性データはどんなものでも可能。」 は preference val... 11/08 11:18
Services from s21g
MagicBag
MagicBagは、Cloudflare R2やS3互換ストレージをMacのFinderから扱えるファイル同期クライアントです。
アンテナショップめぐり
東京にある全国のアンテナショップ、イベント、特産品を地図や条件から探せるサービスです。
YOMU Web小説リーダー
YOMUは、Web小説の読み上げに特化したiPhoneアプリです。
補助探
公開されている補助金・助成金情報を集約し、条件に合う制度を探しやすくするサービスです。
jotter.me
jotter.meは、考えやアイデア、情報を書き留めるためのノートサービスです。