Connection: close 忘れ

HTTPレスポンスのヘッダに Connection: close をつけ忘れていた。HTTP/1.1では、クライアント/サーバどちらかがConnection: CloseをHTTPヘッダで指定しない限りHTTP応答の後ではTCPは接続されたままとなる。クライアントはひとつのTCP接続上で複数の要求を…

コダックが成功した過程 - モノからサービスへ

コダックは、最初は材料(感光剤)メーカーだった。材料はすぐコモディティ化したため商売にならなくなる。そこで材料を売るのではなくサービスを売ることを考えた。一般ユーザとって当時のカメラは取扱いが面倒な機械だったため、カメラへフィルムのセッティ…

canvas animation demo

$(function(){ $('div#20140509_1').append(''); var c = $('div#20140509_1 canvas')[0].getContext('2d'); var seq = [ function(p){ p.x = 150; p.y = 20; c.clearRect(0, 0, 640, 400); c.beginPath(); c.moveTo(p.x, p.y); c.lineTo(250, p.y + 130); c…

DCモーターの制御

明和電機社長の「【バイト募集】ロボット、DCモーター系の制御の経験のある方。ロボコン系だとベストです。学生可。今月いっぱいの作業です。」 https://twitter.com/MaywaDenki/status/461602736216109056 というツイートをみて、DCモーターの制御ってど…

dot matrix demo

$(function(){ "use strict"; var util = { createMap:function(width, height) { var map = []; for (var i=0; i= 0.5 ? 0 : 1; } } }, draw:function(map){ var height = map.length; var width = map[0].length; var s = ''; for (var i=0; i'); $('div#2…

perlで簡易webサーバを書く

localhostのポート8888にHTTPリクエストをしたとき任意のレスポンスを返す例。(パスは /foobar になっているがサーバ側はパスをみてない) $ curl http://localhost:8888/foobar XXXX=1234サーバはこんな感じで起動する $ chmod +x srv.pl $ ./srv.plsrv.pl: …

キャリア絵文字(Private Use Area)のUTF-8バイト列を得る

キャリア絵文字(Private Use Area)のUTF-8バイト列を得るには、下記サイトでUnicodeコードポイントを調べて http://trialgoods.com/emoji/?career=i&page=all 下記サイトでコードポイントからUTF-8のバイト列を得ればよい http://www.ltg.ed.ac.uk/~richard/…

java.lang.String#getBytes() の動作仕様

Unicode から Shift_JIS(CP932) に変換するときの java.lang.Stringクラス getBytesメソッドの動作仕様について。例として、"♨ B" のUTF-8のバイト列を Shift_JIS(CP932) のバイト列に変換する処理を Java コードで示す。 public class Main { public static…

UTF-8 Toolは便利

UTF-8 Tool http://www.ltg.ed.ac.uk/~richard/utf-8.cgi?input=0x2665&mode=hex UnicodeのコードポイントからUTF-8のバイト列の並びを調べたりできて便利

org.hibernate.exception.SQLGrammarException: could not execute query

Hibernateを使っていて org.hibernate.exception.SQLGrammarException: could not execute queryという例外が発生したら、DBのテーブル定義とhbm.xmlの定義のマッピングが合ってないかどうか確認する。

Vagrant に MySQL をインストール

yumでインストール $ sudo yum -y install mysql-serverでもインストール直後に mysql をたたくとエラーになる $ mysql ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)msyqld を再起動してやる $…

SiriProxy on Raspberry Pi について

SiriProxy on Raspberry Pi は、iPhoneのSiriをつかってRaspberry Piのリモコンをつくるプロジェクト SiriProxy on Raspberry Pi - http://sourceforge.net/p/siriproxyrpi/wiki/Home/ プラグイン一覧 - https://github.com/plamoni/SiriProxy/wiki/Plugins …

プロジェクト管理のメモ

ミスコミュニケーションを少なくすることが要点 顧客とのコミュニケーション(要求、設計、スケジュール、開発費の認識あわせ) 開発者とのコミュニケーション(要求、設計、スケジュールの認識合わせ) 開発者/テスター間のコミュニケーション(実装、テスト、修…

Java 6のCA証明書を書き換える

Java 6 にグローバルサインのルート証明書をインストールする手順 参考: https://jp.globalsign.com/support/faq/331.html デフォルトのキーストアのパスワードは changeit 1. 新しいルート証明書を作成する 1-1. 追加するルート証明書(.cerファイル)を取得 …

MySQL Spiderについて

DBのスケーラビリティ改善手法のひとつに、データを分割して複数サーバで処理するシャーディング(sharding)がある。 シャーディング機能を持つMySQLストレージエンジンの実装として Spider がある。 Spiderは分散されたどのDBサーバにどのデータを格納したか…

Microsoft Office 2011 for MacでExcelのシート名を変更できない不具合の対処法

不具合: シートの名前の変更を変更しようとすると「シートまたはグラフの名前が無効です」とエラーダイアログが表示され変更できないことがある。 対処法: エラーメッセージが出た場合は ESC キーで戻り、一度保存してブックを閉じてから開き直し、再度シー…

Webサービス書くのに使える開発環境/言語/ライブラリについて

ざっくりこんな感じのものを使ってる。 開発環境 Eclipse IDE for Java EE Developers + Pleiades - 何はなくともIDE。WTP(Web Tools Platform)が入っているのでJava EE版がいい。PleiadesはUIの日本語化ライブラリ。 FindBugs プラグイン - Java のソースコ…

Java で半角/全角カタカナ を 全角ひらがな にする

com.ibm.icu.text.Transliterator を使う tr = Transliterator.getInstance("Katakana-Hiragana") s = tr.transliterate("ガダルカナル タカ"); s // "がだるかなる たか"

色を変えるテスト

初期値 change $(function(){ "use strict"; $("div.20140220_2 input#text3").val($("body").css("background-color")); $("div.20140220_2 button#change").click(function(){ var selector = $("div.20140220_2 input[name=group1]:radio:checked").val()…

contentBytesの数値列を文字列に戻す

123,34,109,101,116,97,34,58,123,34,99,111,100,101,34,58,52,49,48,44,34,101,114,114,111,114,84,121,112,101,34,58,34,112,97,114,97,109,95,101,114,114,111,114,34,44,34,101,114,114,111,114,68,101,116,97,105,108,34,58,34,84,104,101,32,70,111,11…

粗利について考えてみる

利益を上げるには粗利以上に経費を使わない。 損益計算書 (の一部) 項目 値 計算式 売上高 A 売上原価 B 売上総利益(粗利) C C = A - B 販売管理費(経費) D 営業利益 E E = C - D なお、粗利益率は下記の式で求める。 粗利益率 = 粗利益 / 売上高例えば、粗…

Macの自動ログアウトを解除する

Macを操作しないで放置していると、起動中のEclipseやらのアプリを終了しようとする現象が起こっていた。新しいMacBookを使い始めてから2年くらい経つが、ググってみても適切な策がわからず放置していた。まあ、Eclipseの終了の確認ダイアログで終了は防がれ…

AWSを使ってみる

Amazon Web Serviceを借りる AWS無料利用枠: http://aws.amazon.com/jp/free/ 使うのはAmazon EC2: http://ja.wikipedia.org/wiki/Amazon_Elastic_Compute_Cloud Amazon EC2は仮想サーバ(ハードウェアとネット環境)を提供する。ユーザーが自分でOSなどを含め…

勉強できない人は、作業を勉強と勘違いしてる事がほとんど

http://2chcopipe.com/archives/51924752.html

JavaScriptでUnicode 6.0の文字をきちんと扱う

小飼弾さんのエントリ参照 http://blog.livedoor.jp/dankogai/archives/51861512.html ライブラリのソースコード https://github.com/dankogai/js-codepoints/blob/master/codepoints.js JavaScriptで文字列オブジェクトのlengthやcharAt()を使うと、Unicode…

Hibernateのサンプルコード

http://downloads.jboss.org/hibernate/caveatemptor/ Hello world Hibernate APIをつかったHello worldサンプルコードのディレクトリへ移動 $ cd jpwh-gettingstarted-070401/helloworld-nativeHSQLDBをバックグラウンドで実行する $ ant startdb &DBを初期…

RDBまわりの備忘録

コネクションプーリング DBへの接続処理はオーバーヘッドの大きな処理なため、接続/切断処理を高頻度で繰り返すとCPUなどのリソースが過度に消費される問題がある コネクションプーリングは複数のDB接続を事前に行い、その接続結果(コネクション)を貯めてお…

イケててヤバいGit入門

あとで読む http://labs.gree.jp/blog/2013/12/10049/

エンジニアやデザイナーは一生下積み、という考え方

http://f-shin.net/fsgarage/921 エンジニアやデザイナーは一生下積み、と思った方が楽しい 下積みとは、事務的な単純労働ではなく自身の成長に繋がる時間を過ごせるかどうか 新しい価値観をもたらす若い人は、常にリスペクトする 自分の力に安泰を求めた瞬…

Twitter Bootstrap - HTML5・CSS3・jQueryを使用したフロントエンドツール

http://getbootstrap.com HTML5・CSS3・jQueryを使用したフロントエンドツール Twitterが開発していた。現在は独立したプロジェクトになっている(っぽい) エンジニアやマークアップエンジニアでも、デザイナーに頼らずにそこそこ格好いいWebデザインのサイト…

twitterが発表したリアルタイム分散処理フレームワークStorm

http://tjun.org/blog/2011/10/storm_intro/ Hadoop: まとまったデータを一気に処理するバッチ処理を、簡単に分散でき高速に処理することができるフレームワーク Storm: 連続的に到達するデータに対して、連続的に結果を出すような処理を、簡単に分散させて…

restfbを使ったサンプル実装

備忘録 ローカルリポジトリへrestfb4devのjarをdeployする方法 $ mvn deploy:deploy-file \ -Durl=file:/path/to/project_dir/repository/src/repository \ -DrepositoryId=non-maven-repository \ -Dfile=/path/to/restfb4dev/target/restfb-1.6.12.jar \ -…

CentOSでNICのMACアドレスが変わってしまったときの対処

http://luna2-linux.blogspot.jp/2011/07/centos-60-nic.htmlいわゆる、Vagrantでインスタンスを作り直すと、NICのMACアドレスが変わってeth2が勝手にできたりするアレな現象の対処に使える。

ランダムな英数字からなる文字列を生成

org.apache.commons.lang.RandomStringUtils#randomAlphanumeric() を使う。 RandomStringUtils (Commons Lang 2.6 API)

ChefをMacにインストール

このエントリが詳しい http://ma2k8.hateblo.jp/entry/2013/08/11/031916下記のコマンドの後、sudo パスワードが求められるので入れる。 $ curl -L http://www.opscode.com/chef/install.sh | sudo bashsuになって下記実行でもいい # curl -L http://www.ops…

2014年のウェブシステムアーキテクチャ

2014年のウェブシステムアーキテクチャ- http://blog.stanaka.org/entry/2013/12/01/092642 要約 ここ数年のインフラ・クラウド周りの進化が2014年にはだいぶ形になるだろう。 アプリケーションサーバーなどの状態をもたないホストは使い捨て可能なImmutable…

Vagrantでjetty開発環境をつくる際の覚え書き

ネットワーク設定 vagranttestディレクトリをつくって初期化する。 $ mkdir vagranttest $ cd vagranttest $ vagrant init $ ls Vagrantfile初期化するとVagrantfileができるので下記のようにネットワークにブリッジ接続するよう設定(コメントアウト)する。 …

Apache CXF

http://cxf.apache.orgWeb APIの実装に使えそうなフレームワーク

Maven + Jetty + Spring + JSON で DI なサンプル

https://github.com/yamataka548/jettyLesson1/tree/jettyHello

Mavenで依存関係のある外部ライブラリを含むjarをつくる

pom.xmlに下記を記述して <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <finalName>hogehoge</finalName> </configuration> </plugin>下記コマンドを実行すると target/hogehoge-jar-with-dependencies.jar ができる。 mvn assembly:assembly -DdescriptorId=jar-with-dep…

Apache POI

Apache POI http://poi.apache.org MS Excel/WordをJavaで扱うことができるライブラリ

TODO

Jetty + Hibernate + MySQL でなんか作るHibernateで理解するO/Rマッピング(4):簡単なプログラムでO/Rマッピングを体験 (1/2) - @IT http://www.atmarkit.co.jp/ait/articles/0408/26/news087.htmlMySQL データベース・テーブルの操作 http://www.yc.tcu…

Google GsonでJSONから整形されたJSON(Pretty JSON)を生成する

http://stackoverflow.com/questions/4105795/pretty-print-json-in-java - javascript - Pretty-Print JSON in Java? - Stack Overflow

Facebook APIの投稿(publishing)に関する仕様

http://developers.facebook.com/docs/reference/api/publishing/補足: Facebook APIの仕様変更 http://developers.facebook.com/roadmap/completed-changes/ "July 10, 2013" によって /PROFILE_ID/checkins メソッドが deprecated になった。 位置情報を投…

restfbでOAuth認証をするサンプルがあった

RestFBとJavaでfacebookアプリケーションを作る (プログラマーですが、何か?(I am a software programmer.)) - https://www.ibm.com/developerworks/community/blogs/pgmrk/entry/restfb

scribedのビルド・インストール手順

下記 tar-ball をとってくる。バージョンの組み合わせが違うとビルドがこけるので注意。 boost_1_38_0.tar.gz thrift-0.5.0.tar.gz ビルド・インストール手順 tar zvxf boost_1_38_0.tar.gz tar zvxf thrift-0.5.0.tar.gz # 以下suで行う yum -y install ope…

scribelog4j をMavenのローカルリポジトリにmvn deployする

※ /path/to/your_project_base は実際のプロジェクトのベースディレクトリに読み替えてください。ローカルリポジトリ用のディレクトリをつくる $ cd /path/to/your_project_base $ mkdir -p repository/src/$ cat > repository/pom.xml

ngrepでlocalhost:8080との通信をみる

ngrep -W byline -q -d lo0 'HTTP' port 8080

mvn jetty:runをEclipseでデバッグ

mvn jetty:runでJetty起動をしてEclipseでデバッグをする方法 http://slashdot.jp/journal/439718/%5BJava%5D%5BEclipse%5D%5BJetty%5D%5Bmaven%5Dmvm-jettyrun-をEclipseでデバッグ上記で4000番ポートでデバッガを受け付ける準備ができるので、 普通にEclip…

Maven + Jetty + Spring で DI なサンプル

https://github.com/yamataka548/jettyLesson1