2012年9月30日日曜日

People誌、ツイッターの背景画像を広告枠として売り出す。

People誌、ツイッターの背景画像を広告枠として売り出す(People Style Watch Sells Ads on Its Twitter Page)。どんなものでもアイディア1つで商売になるという典型です。People誌は、多分、ゴシップ誌だと思うのですが、そのアクセス数を売りに、シャンプー会社(?)にツイッターの背景画像を売りに出したようです。ユーニーくなビジネスモデルですね。勉強になります。

2012年9月29日土曜日

誰でもクリエイターになれる漫画コミュニティー「pixton」

誰でもクリエイターになれる漫画コミュニティー「pixton」、最初は馬鹿にしていたのですが、これ、すごく面白いです。ひな形が用意されているので、吹き出しに文章を当てはめるだけで、立派なストーリー漫画ができてしまいます。背景やキャラクターを自由に選択できますし、配置やズームも調整できますので、表現の自由度も高いです。かなりユニークなサービスですね。クリエイター魂に火がつく事、間違いなし(笑)。

ちなみに私の作品は、こちら


2012年9月28日金曜日

気合の入ったGoogle Mapマッシュアップ「planefinder.net」

気合の入ったGoogle Mapマッシュアップ「planefinder.net」、航空機の現在地を表示したサービスです。日本上空の機体も確認できますが、圧巻は何と言っても米国上空。この過密具合は、凄まじいものがあります。しかも、時間とともに機体が動いています。まさに感動モノです。良いものを見せてもらいました。「やる時は、とことんやれ」ということでしょうか、素晴らしい。

2012年9月27日木曜日

Unityがエンジニアを募集中、採用者にはハワイ旅行が

Unityがエンジニアを募集中、採用者にはハワイ旅行がプレゼントされるとのこと。コアな開発ではないようですが、それでも刺激的な仕事に違いはないでしょう。募集しているのは、以下の3分野。

・広報?
・サポートエンジニア
・フィールドエンジニア

世界中、必ず、バブルなところはあるものです。それにしても景気がいいですね(笑)。

2012年9月26日水曜日

雲の動きを時系列で追える「Cloud Globe」

雲の動きを時系列で追える「Cloud Globe」、クラウド(Cloud)といっても、こちらは本当の雲の様子です。Chromeブラウザの実験的な試みの一例で、次世代の天気予報を予感させます。台風が発生して、勢力を増し、やがては消えてゆく様子がよくわかります。こんな天気図を幼いうちから目にして育ってきていれば、もうちょっとグローバルな人間になれていたかもしれません(笑)。

2012年9月25日火曜日

Twitter(ツイッター)のつぶやきがダウンロード可能に?

Twitter(ツイッター)のつぶやきがダウンロード可能になるようです。「今年末までに」と期日が紹介されてます。あと3ヶ月、果たして、間に合うでしょうか(笑)? どういった形式にしろ、手元につぶやきデータを取得できるということは、また新たな可能性が広がるように思います。Twitterは、最近、APIをバージョンアップしていますが、更なる驚きが待っているのかもしれません。

2012年9月24日月曜日

Perlの正規表現を用いたメールアドレスチェック「Mail::RFC822::Address」

Perlの正規表現を用いたメールアドレスチェック「Mail::RFC822::Address」が、紹介されています。実際のソースも掲載されていますが、複雑すぎて、なんだかよくわかりません(笑)。メールアドレスを厳密にチェックしようとすると、これだけ気合を入れないといけないという、良い見本だと思います。ちなみに、モジュールとして提供されていますので、実際に利用する際は、何も考える必要はないようです。ありがたい。

実際に動いているサンプルは、こちら

2012年9月23日日曜日

新しいブログのカタチ「jux.com」

新しいブログのカタチ「jux.com」、ブログの定義には当てはまらないかもしれませんが、簡単に情報発信できるという意味では、よくまとめられたサービスと言えると思います。高機能な分、ちょっと動作が重いかなという気もしますが、それを補って余りあるほど、センスの良い綺麗なデザインのページがあっという間に出来上がります。記事、写真、スライドショー、動画、地図など、ひな形が用意されているので、後は文章を用意して、レイアウトを決めるだけです。レベルが高い!

実際のサンプルがこちら

2012年9月22日土曜日

5分でランディングページを作成できる「striking.ly」(無料)

5分でランディングページを作成できる「striking.ly」、クリックと文字タイプのみの簡単な操作で、クオリティーの高いウェブページが作成できます。無料版は1ページのみの表現になりますが、メニューのエリアは自由に追加、削除が可能です。有料版で、複数ページが作成できるようになるようです。ちょっとした告知ページやプロモーションページを作成するには、これで十分ではないでしょうか。この操作性や収益モデルは、たいへん勉強になります。


実際のサンプルはこちら

2012年9月21日金曜日

英語のボキャブラリーを鍛えられる「Vocabulary.com」

英語のボキャブラリーを鍛えられる「Vocabulary.com」、英単語の意味を、与えられた選択肢の中から選び出し正答率を競う学習系サイトです。シンプルで使いやすいし、何より面白いです。ネイティブユーザーを対象としているため(?)か、かなり難しい印象。私は5割も正解できませんでした(笑)。質問も選択肢もヒントも英語なので、力がつくこと間違いなしです。

2012年9月20日木曜日

サイバーエージェントのビジネスSNS「intely」に登録

サイバーエージェントのビジネスSNS「intely」に登録してみました。コンテンツの充実感は、まだまだこれからかと思いますが、さすがに洗練されています。Windows 8のMetro UIを取り入れた操作感は、新しさを感じさせてくれます。ビジネスSNSの分野は、大きな可能性を秘めていると思いますので、今後、どのような進化をたどるのか楽しみに参加してみることにします。

2012年9月19日水曜日

Google Driveが、JavaScriptで操作可能に

Google Driveが、JavaScriptで操作可能になった模様(Google Apps Developer Blog)。こちらに実際のソースが紹介されています。意外と簡潔。ファイルを扱えるようになると、アイディア次第で、かなり高機能なサービスが展開できそうです。それにしても、このところ、JavaScriptは勢いがありますね。

2012年9月18日火曜日

twitter(ツイッター)UIのヘッダーイメージ設定

いつの間にか、twitter(ツイッター)UIのヘッダーイメージが設定できるようになっています。いつから、こんなお洒落な試みを始めたのでしょうか。全く気づきませんでした。下記URLのデザイン変更画面から設定可能です。まずは見かけからということで、早速、設定してみました。賢いことに、登録した画像は、文字表記の辺りを暗く変更してくれています。こんな感じ。中身はないですが、格が上がった感じがします(笑)。

https://twitter.com/settings/design

2012年9月17日月曜日

File APIって、スゴイ。

File APIって、スゴイですね。「Android 4の新機能でカメラWebアプリ作ってみた」の記事を読んで、最近は、こんなことになっているのかと驚いてしまいました。HTMLとJavaScriptだけで、今まででは思いもよらなかった操作が可能になっています。携帯に全てが集約されていくのでしょうか。とにかく、遅れないように、ついていかないと(笑)。

2012年9月16日日曜日

オンラインでPHPを学ぶ「phpacademy」

オンラインでPHPを学ぶ「phpacademy」、全部英語ですが、多数のチュートリアルが紹介されていて、充実した内容になっています。YouTubeの動画付きのものも多く、直感的に勉強できます。コースが多くて、圧倒されそうですが、身構えずに、空いた時間を利用して、気軽に目を通してみる、あるいは聞き流すという使い方が合っているかもしれません。

2012年9月15日土曜日

jQuery Mobileをテスト導入

jQuery Mobileをテスト導入してみました。慣れが必要な部分もありますが、簡単に高品質なスマートフォン向けのページが作成できます。日本語リファレンスには、サンプルが豊富に用意されていて、非常にわかりやすい。よくできているなと、感心させられっぱなしで、人気の理由がよくわかります。デザインに凝りそうで、怖い(笑)。



実際のサンプルがこちら

2012年9月14日金曜日

簡潔なソースコードを競う「Code Golf」

簡潔なソースコードを競う「Code Golf」。、ゴルフはストローク数で勝負ですが、Code Golfは、プログラムソースコードのキーストローク数で勝負です。Perlがメインですが、PHP、 Python、Rubyなどでも参加可能。いろいろなコース(チャレンジ)が紹介されています。数学者のごとく、切れ味するどいエレガントなコードが身につくようになるかもしれません(笑)。

2012年9月13日木曜日

phpで、shell?「phpsh」

phpで、shell?「phpsh」。ちょっと怪しげなホームページですが、真面目な取り組みのようです。実際、どれだけ有用なものなのなのか、未知数ではあります。shellで、ゴリゴリ何でもかんでも処理したいという方には、便利に使えるのかもしれません。大きな矛盾を感じてしまいますが、インストールには、Pythonが必要なようです(笑)。

2012年9月12日水曜日

新たなPHPクラウド?「fortrabbit.com」

新たなPHPクラウドを見つけたかなと思いましたが、正式スタートしていませんでした(笑)。「fortrabbit.com」なんですが、まだ招待制のβテスト中のようです。ブログ記事に、無料でスタートできるというようなことが書かれていた(?)ような気がしますので、楽しみに待ちましょう。ベルリンで開発されているとあります。ヨーロッパ系のサービスですね。

2012年9月11日火曜日

Java Play framework 2.0で、多言語化

Java Play framework 2.0で、多言語化です。素晴らしいのは、ブラウザの Accept-Language ヘッダーを見て、自動でユーザーにマッチした言語表記をしてくれる点です。いちいち切り替えて利用してもらう必要がありません。まずは、application.confに用意する言語ファイルを指定します。次に、viewでは、@Messagesを用いて表示する文字列を設定します。あとは、必要な言語の分だけ、messages.〇〇ファイルを用意すればOK。

/conf/application.conf
application.langs="ja,en-US,en"
/app/views/language.scala.html
@Messages("home.language")
/conf/messages(ディフォルト設定?)
home.language=日本語で言語
/conf/messages.ja
home.language=日本語で言語
/conf/messages.en-US
home.language=English languages
/conf/messages.en
home.language=US languages

実際のサンプルがこちら

参考
JavaI18N(Play20 Wiki)
Accept-Language による言語切り替え(Balun Software (Info)さん)

2012年9月10日月曜日

Yahoo!オークションに「スキル、知識」も出品可能に

Yahoo!オークションに「スキル、知識」も出品可能になったとのこと。ちょっと覗いてみましたが、様々なサービスが登録されています。もちろん、ウェブやプログラム関連のものも出品されています。オークション形式にする必要がないような気もしますが、よくよく考えると、そこは、オークション形式で、高揚感を味わえることに大きな意味があるのでしょう。賑わうことまちがいなし。

2012年9月9日日曜日

添付ファイルも送信できる使い捨てメール「ゲリラメール」

添付ファイルも送信できる使い捨てメール「ゲリラメール」、受信のみができる使い捨てメールのサービスは多く見かけますが、ゲリラメールは送信ができて、なおかつ添付ファイルも追加できるという、太っ腹なサービスです。メール送信の際は、キャプチャ画面が表示され、スパム対策も試みられています。日本語のメールも送信できますが、件名は文字化けしてしまいます。しかしながら、ありがたいサービスであることは確かです。


参考
送受信、添付ファイルもOKの使い捨てメールサービス「ゲリラメール」

2012年9月8日土曜日

Dropboxのフォルダを無料でウェブサーバーにできる「Site44」

Dropboxのフォルダを無料でウェブサーバーにできる「Site44」が便利。プログラムは動きませんが、静的なコンテンツを情報発信するには、十分使えます。JavaScriptは利用可能です。何と言っても、ファイルをドラッグ&ドロップでメンテナンスできるこの快適さは魅力でしょう。他に、ありがたい点は、RapidSSLによってHTTPS通信が確保できている点です。非常にユニークなサービスです。


Site44 Tutorial from Steve Marx on Vimeo.

2012年9月7日金曜日

Java Play framework 2.0で、今まで作りためた機能

Java Play framework 2.0で、今まで作りためた機能をまとめてみました。大それた機能はありませんが、とりあえず、簡易的なサービスは立ち上げられそうな所まで来られたと思います。もうちょっと達成感があってもいいと思うのですが、まだ誰にも利用されていないので、仕方ないでしょう。とにかく、一区切りです。というわけで、雄叫びの日記でした。

2012年9月6日木曜日

Herokuで、Java Play framework 2.0 + cleardb を利用すると c.j.b.h.AbstractConnectionHook のエラー

Herokuで、Java Play framework 2.0 + cleardb を利用すると c.j.b.h.AbstractConnectionHook のエラーが出現しました。意味がわからず、目の前が真っ暗になりました。しかし、ありがたいことに解決法が紹介されていました。Stack Overflow には、いつも助けられています。Heroku のアドオンとして用意されている、cleardb の無料版は、MySQLのコネクションに制限があるため、エラーが出ていたようです。application.conf ファイルにコネクションの数を制限する設定を追加し、事なきを得ました。

/conf/application.conf
db.default.partitionCount=1
db.default.maxConnectionsPerPartition=5
db.default.minConnectionsPerPartition=5

参考
Heroku :: Play 2.0 :: MySQL/ClearDB :: Failed to acquire connection(Stack Overflow)

2012年9月5日水曜日

Java Play framework 2.0で、OptimisticLockException: Data has changed. エラー

Java Play framework 2.0で、OptimisticLockException: Data has changed. のエラーが表示され、いよいよ完全な行き止まりになったかと。データを更新している箇所で表示されたので、トランザクション絡みのエラーだと思われますが、嫌な予感が。しかし、何とか救われました。EBeanのアノテーションには、@Version という更新時間を設定するものが用意されていて、これを利用したらうまくいきました。

/app/models/Member.java
@Formats.DateTime(pattern="yyyy/MM/dd HH:mm:ss")
public Date updated_at = new Date();
↓↓↓

@Version
@Formats.DateTime(pattern="yyyy/MM/dd HH:mm:ss")
public Date updated_at = new Date();

参考
Class OptimisticLockException
更新処理とロック処理(nigauri.meさん)
Play frameworkのDB操作を楽にするEBeanの基礎知識(@IT)

2012年9月4日火曜日

Java Play framework 2.0で、パラメーター付きのHTTPリクエスト

Java Play framework 2.0で、パラメーター付きのHTTPリクエストです。パラメーターのクエリを投げるのに、setQueryParameter を利用するのがミソ。下の例は、bitly で短縮URLを作成する場合の例です。Play framework に溺れかかっているため、formatは、テキストで返ってくる「txt」を指定していますが、エラーを拾うためにも、本来は、xml や json 形式を指定するべきだと思います。

import play.libs.F;
import play.libs.F.*;
import play.libs.Json;
import play.libs.WS;

public static String shortenURL(String url) {
    String connectURL = "http://api.bitly.com/v3/shorten";
    Promise homePage = WS.url(connectURL)
        .setQueryParameter("login", {bitlyのログインID}))
        .setQueryParameter("apiKey", {bitlyのAPIキー}))
        .setQueryParameter("uri", url)
        .setQueryParameter("format", "txt")
        .get();
    WS.Response res = homePage.get();
    String body = res.getBody();
    return body;
}

参考
Making HTTP Requests(github)
The Play WS API(github)

2012年9月3日月曜日

Java Play framework 2.0で、サバーからHTTPリクエスト

Java Play framework 2.0で、サバーからHTTPリクエストです。GETでリクエストを投げて、データを取得するというものです。もちろん、POSTでも取得可能。取得したデータを加工して、いろいろ処理をしたかったのですが、データを拾ってきただけで終わってしまいました。

import play.libs.F;
import play.libs.F.*;
import play.libs.Json;
import play.libs.WS;

public static Result fetch() {
    String connectURL = "http://www.sample.com/" ; 
    Promise homePage = WS.url(connectURL).get();
    WS.Response res = homePage.get();
    String body = res.getBody();
    return ok(fetch.render(body));
}

参考
Making HTTP Requests(github)
The Play WS API(github)

2012年9月2日日曜日

5GBの無料ストレージ「box.com」

5GBの無料ストレージ「box.com」に登録してみました。ファイルをアップロードしている間も、他の操作が可能で、かなり研究されているなと感じました。とにかく、UIが非常に洗練されていて、使い勝手が良いです。見たところ、英語でのみのサービス(?)となっているようですが、操作で躓く所はないでしょう。最近、無料ストレージを提供してくれるサービスが多く、ありがたい限り。

2012年9月1日土曜日

Java Play framework 2.0で、複数チェックボックス(checkbox)データの取得

Java Play framework 2.0で、複数チェックボックス(checkbox)データの取得です。tags[(数字)] で名前を指定すると、itemForm.field("tags[(数字)]").value() でデータを取得することが可能です。あとは、ループで繰り返し処理すれば、出来上がり。ヘルパーに用意されている @checkbox も利用してみましたが、どうしても value="true" となってしまうので、複数チェックボックスの場合は、直書きするか、自前のヘルパーを作成するのが良いのかもしれません。

// 入力html
<input type="checkbox" name="tags[0]" value="name1">選択1
<input type="checkbox" name="tags[1]" value="name2">選択2
<input type="checkbox" name="tags[2]" value="name3">選択3
<input type="checkbox" name="tags[3]" value="name4">選択4
<input type="checkbox" name="tags[4]" value="name5">選択5
↓↓↓

// コントローラーでのデータ取得
itemForm.field("tags[0]").value()
itemForm.field("tags[1]").value()
itemForm.field("tags[2]").value()
itemForm.field("tags[3]").value()
itemForm.field("tags[4]").value()

参考
Play Framework 2.0 multiple checkboxes in JAVA via GET(Stack Overflow)