2012-01-01から1年間の記事一覧

Cygwinでssh-addできないときは

Cygwinで普通にssh-addしようとすると… $ exec ssh-agent /usr/bin/bash $ ssh-add .ssh/id_dsa Could not open a connection to your authentication agent.こうなるはず。こんなときは、もう一つCygwinを立ち上げ、そちらで $ ssh-agent -d SSH_AUTH_SOCK=…

CakePHPとXAMPPとEGit、おまけでDropbox

こんな要件で開発するための環境構築について。 複数開発者/拠点で開発したい でも非公開にしたいのでGithubは使いません 有料プランにすれば?というツッコミは華麗にスルー (Cake)PHPで手っ取り早く開発したい GUI(Windows, Eclipse)でなんとかなりません…

fluent-plugin-mysql で time を insert する

UNIX/Linux歴が浅い自分にとって、awk等でログ解析をするのは結構壁が高い。ということで、Fluentdとそのプラグイン(GitHub - tagomoris/fluent-plugin-mysql)に飛びついたのだが、一つ残念だったのが TODO: implement 'time' and 'tag' in key_namesなとこ…

ELB使用時にリモートホストのIPアドレスを取得する

AWS

ApacheのLogFormatを"common"とか"combined"に指定した状態で、Elastic Load Balancer(ELB)による負荷分散を行うと、ログ(%h)にはELBのIPアドレスが残る。 “本物の”リモートホストを取得したいときは、httpd.confに以下のような設定を行う。 LogFormat "\"%{…

沖縄アンカンファレンス#0

先日の沖縄アンカンファレンス #0 : ATNDに参加してきました。 スライドを作成しなかったのでEmbedできるものはありませんが、やったのはこんなネタ。 開発者と心理学 開発者に必要な知識は技術以外にもいっぱいあるよねということで、Webサービスに関するブ…

ものさし

何かを計るとき、基準となる「ものさし」って大事だなあというお話。自分には、良く使うものさしが二つある。 一つは、某ソーシャルゲームにおける自分の成績。 ほぼサービス開始時からプレイを始めて、「無課金〜微課金で結構がんばってプレイしている社会…

node-decorate を作って感じたこと

今回の開発で一番おおっと感心したのは、Node.js(だけではないけど)のエコシステム、特に"npm周り"でした。 まず、install 一発でいろいろな機能(モジュール)が使えるようになるところ。package.json(Mavenのpom.xmlのようなもの)に依存関係が書いてあり、足…

node-decorate 作りました

先日の勉強会で発表したものをこちらにも上げます。 Web勉強会 20120927 from Yoshihiro Furukawa どういうものかを改めて軽く紹介すると、 Node.js で HTML/XMLドキュメントを加工するための土台を作った! プロキシ型なので、自分/自社が管理しているHTML/…

Linked Open Data

今日参加したオープンソースカンファレンスで自分が一番関心を持ったのが、Linked Open Data - Wikipedia(LOD)。 ※さらに参考リンク→ http://ocdi.jp/?q=about_lod 深く理解するために、相似する既存技術/概念と比較してみる。 項目: Linked Open Data / ハ…

Node.jsが非同期で処理してる様子がよく分かるサンプル

概要 HTMLドキュメントを取得するプロキシ 起動したプロキシ(Node.jsプログラム)に対し、jMeter(プロセス数:5)で15回のリクエストを短時間に投げてみた 見所 一つのリクエストに対して細切れ(chunk)となったレスポンスが複数返ってきます 返ってきたレスポン…

sudo node できないときは

AWSにて一通り Node.js をセットアップして、 $ node -vで無事バージョン表示が出来る状態に現在あるとします。 しかし、このとき、 $ sudo node -vすると、何それ?と言われるときがあります。どうやら、EC2の環境的な問題のようです。 解決方法はこちら→ n…

jsdomを使うときの注意点

HTMLドキュメントをごにょごにょするサービスを作るときに Node.js + jsdom を使うと、使い慣れた jQuery セレクタが使えて幸せなわけですが、たまにハマることもあります。 今回、遭遇したのは「Has Attribute Selector [name] | jQuery API Documentation…

Node.js でプロキシっぽいの

Node.js を使って、任意のWebサーバからコンテンツを取ってくるコードを書きました。しかし、その後に手を出した jsdom モジュールでは直接コンテンツを取得出来る(jsdom に渡すためにこれ書いたのに)という・・・ それはさておき。初めて Node.js を触ってそれ…

mahoutとかNode.jsとか

最近、mahoutであれこれやり始めたところだったが、仕事がらみで Node.js を試すことになった。最近、自由になる時間に対してやりたいことが多すぎる感があったのでなるべくmahoutに集中したかったのだけれど、仕事とあっちゃあ仕方ない。仕事用の環境には“…

[Hadoop] Amazon EC2 で Hadoop Cluster を構築してみた

特にニッチなネタでもないので情報はWeb上にいっぱいありますが、バージョンうんぬんでうまくいかないところがいくつかあったので、一例として記録を残しておきます。ほんとは「Amazon Elastic MapReduce で楽勝!」といきたかったのですが、今試している As…

Asakusa Framework - モデル操作についてのTips

Application Development Guide ja · asakusafw/asakusafw Wiki · GitHubの"9.2.1. NULL値をとるプロパティの操作"、重要。

[AsakusaFW] Asakusa Framework のファイル入出力についてあれこれ

開発の流れ — Asakusa Framework 0.10.2 documentation に、 WindGateは逆に「ポータブルなデータ転送ツール」を目指したもので、 さまざまなRDBMSやローカルファイルシステム上のフラットファイルなどを利用できますが、 特定環境向けの最適化を行っておら…

Hadoop1.0.3 + Windows(Cygwin) 最初の罠

新しいフレームワークやツールなんかを色々使っていると、「チュートリアル通りにやろうとしたらエラーで進めない」なんてことが稀にあるわけですが、今回もまさにそれ。http://hadoop.apache.org/common/docs/r1.0.3/single_node_setup.html を見ながら進め…

[CakePHP] Controllerのテストを書くときに気をつけること

ようやく、自分の中でテスト駆動開発するのが「デフォルト」になってきた。 そして今回、初めてMVCなシステムのテストを書いていることに気づいたので、そのポイント(一部、CakePHP限定)を書いておこうと思う。 Controllerのテストは書きにくい? テスト駆動…

CakePHPで作成したアプリをGitにコミットするときの注意点

とりあえず、CakePHP 2.1.3でのおはなし。 CakePHPに初めから用意されている".gitignore"には /app/Config, /app/tmp が記述されているので、普通に git add /app ... としてもそれらのファイルはコミットされない。通常はそれで問題ないのだが、他所でこれ…

環境構築2012May(1)

あるアプリをリメイクするにあたって行っている環境構築についてのメモ。 個人的なメインテーマは"CI"。もちろん、それをするにあたって必須と言える"テストの自動化"にも力を入れるし、ブランチ戦略(参照→見えないチカラ: A successful Git branching model…

仮説検証についてのお勉強

・・・シテマス。 『リーン・スタートアップ』では頻りに仮説検証の重要さが説かれていますが、具体的な手法等は紹介されていませんでした。そこで、いざ自分が実践するときのための準備として、いろいろ調べたり探したりしようと思います。 以下、その中で見つ…

Webを流れるお金の5W2H

リーン・スタートアップでは、仮説を検証する際に“もっともリスクが高い要素”、“挑戦の要となる仮説”から検証せよとしている。 それは一般的にどういう仮説か? それはやはり、「誰は、何に対して/どのような理由で/どのようなときに/どれくらい お金を出す…

『リーンスタートアップ』を読んで(3)

第九章 バッチサイズ バッチサイズが小さい方が実は作業効率が良いという話は初めて聞いた。 "免疫系"か、いい言葉だな。確かに、最近のシステムは生物に近い。まあ、生物もそもそも細胞が多数集まって出来ている"システム"なのだから突拍子もない話ではない…

『リーンスタートアップ』を読んで(2)

第七章 計測 会計の目的は、リーダーを評価し、責任を問えるようにすること。 (おそらく)一般的なイメージでは「会計で扱う数値=金額」だが、上記のように定義すれば金額のみに限定されない。アクティブなユーザの数等も対象となる。 (これもおそらく)一般…

『リーンスタートアップ』を読んで(1)

気づいたこと、考えたことなどをここにメモりながら読んでみる。 自分の意見というのはそれまでの経緯・背景によって十人十色なものなので、あわせて自分のスペックも簡単に記しておく。 個人でいくつか、Webサービス、ツールの類を開発した経験有り そのい…

face=worldにて「リア充プラン」提供開始!

本日より、face=world にて「リア充プラン」の提供を開始いたしました! 「リア充プラン」って何? リア充プランとは、face=world ユーザが自身の恋愛パートナーを見つけることが出来るサービスです。 基本利用料無料! ※誕生日やクリスマスなどのイベント時…

アイコンとスプラッシュ画像

appMobiでアプリを製作して、さあ Google Play! / Apple App Store に申請するぞ!というときに「ビルド」という作業を行うのですが、このときアイコンとスプラッシュ画像の指定を要求されます。アプリ開発にばかり気を取られていると、これらを準備してなく…

で「つぶやく」ことができるようになりました!

本日、face=worldに『つぶやき機能』を追加いたしました。 サービス名としては"f2world voice"となります。 f2world voiceの使い方 f2world voiceは音声入力が基本となります。 入力端末は種類を問いません。iPhoneでもAndroidでもアナログの電話機でもOK。…

モックを使ったテストについて

http://1-byte.jp/2010/08/29/cakephp%E3%81%A7%E3%83%95%E3%82%A3%E3%82%AF%E3%82%B9%E3%83%81%E3%83%A3%E3%81%AB%E6%83%91%E3%82%8F%E3%81%95%E3%82%8C%E3%81%9A%E3%81%AB%E3%83%86%E3%82%B9%E3%83%88%E3%82%92%E6%9B%B8%E3%81%8F%E6%96%B9/ を参考にテス…