読者です 読者をやめる 読者になる 読者になる

夜のラブレター

今までの人生で、いわゆるラブレターを書いたことが、多分3回くらいある。 偉いことに、どのラブレターも相手に渡すことができて、 幸いなことに、どの相手からも返事が返ってきた。 書いている時には、ドキドキする文章。 次の日に読み返すと、恥ずかしく…

オブジェクト指向について

最近ネット界隈で、「オブジェクト指向は必要か」という議論が盛り上がっています。自分も便乗して、意見表明しておこうと思います。 ■ オブジェクト指向は便利です 結論から言うと「現在のところ、オブジェクト指向は設計、実装、単体テストを包括的にサポ…

ケアシェアのアンケートにご協力下さい

知り合いで高校の先輩のお医者さんと、地域の在宅医療をITで解決できないかと考えています。もしご興味ありましたら、下記のアンケートにご協力いただけないでしょうか? 5分くらいで終わる簡単なものです。よろしくお願いします。 「支援・介護に関するア…

Startup Weekend For Games Nagoyaに参加してきた(プレゼン〜パーティ)

Startup Weekend For Games Nagoya プレゼン〜パーティ これは、Startup Weekend For Games Nagoyaに参加した三日目のプレゼン〜パーティに関するブログです。前日までの内容は以下のURLを御覧ください。 http://nakaken0629.hatenablog.com/entry/2014/03/3…

Startup Weekend For Games Nagoyaに参加してきた(三日目)

Startup Weekend For Games Nagoya 三日目 これは、Startup Weekend For Games Nagoyaに参加した三日目に関するブログです。前日までの内容は以下のURLを御覧ください。 http://nakaken0629.hatenablog.com/entry/2014/03/30/234354 (初日) http://nakaken…

Startup Weekend For Games Nagoyaに参加してきた(二日目)

Startup Weekend For Games Nagoya 二日目 これは、Startup Weekend For Games Nagoyaに参加した二日目に関するブログです。初日の内容は以下のURLを御覧ください。 http://nakaken0629.hatenablog.com/entry/2014/03/30/234354 朝から軽い失敗 二日目の朝は…

Startup Weekend For Games Nagoyaに参加してきた(初日)

Startup Weekend For Games Nagoyaに参加してきました。非常にハードなイベントで、でも成長が実感できた充実したイベントでした。先ほど帰ってきたばかりなのですが、興奮の覚めないうちにブログでこの三日間を振り返ってみたいと思います。 Startup Weeken…

最後の一つのサーバ

某県のS市に、とあるゲーム開発会社があった。携帯向けのゲームをいくつかリリースしているが、なかなか大ヒットに巡りあえていない。かさむコストに対する声なき圧力により、少しずつサーバが削減されていた。 この会社に入社してもうすぐ3年になるジョン…

GWTの勉強 #3

とりあえずスタンドアロンモードでWebアプリを動かしてみる。 GoogleサイトだとSDKディレクトリの中にプロジェクト用の作業ディレクトリをつくる流れだけど、流石になんなのでPATHを切って自分のホームディレクトリで作業をすることにする。 $ export PATH=$…

GWTの勉強 #2

Get Started with the GWT SDK JavaとAntがいるらしい。Javaは1.6が入っているのでおけ。Antは入ってないからインストールしないといかんな。Antのマニュアルによれば、特にMac OS X用のインストール方法はないので、ダウンロードしたバイナリを展開して、AN…

GWTの勉強 #1

Google Web Toolkit - Overview まずはGWTのトップページを見て、概要を理解してみる。ドキュメントがそろっていると、やってみようって気になるよね。 ふむふむ。 GWTは、複雑なWebアプリを開発するためのものです。ブラウザに関する知識が無くてもハイパフ…

openvzで開発環境を作る #6

パスワードでなく鍵でssh接続しようとした時に、次のようなエラーが/var/log/secureに出てつながらない状況が発生。 sshd[484]: Authentication refused: bad ownership or modes for directory /home/git/.ssh これは、.sshディレクトリのパーミッションが…

openvzで開発環境を作る #5

ここみて、CentOS 6 + openldapで統合ユーザー認証できたよ http://dan-project.blog.so-net.ne.jp/2013-03-29 ただし、最後の動作確認はサーバとクライアントが同じところにいることが前提なので注意。「4. ユーザーのホームディレクトリの作成」はクライア…

symfony 1.x系で、IE専用のcssやjsを設定する

symfony 1.x系で、view.ymlのstylesheetの設定でIEのバージョンを指定する方法を見つけたので共有 http://stackoverflow.com/questions/6174392/conditional-ie-css-inclusion-in-symfony-1-2 view.ymlの設定: default: stylesheets: - style_ie8.css: { co…

asmackでXMPPのPreference情報を取得する

asmack + openfireでチャットについて調査中 相手先の状態(Presence)を取得するには、ユーザーのRosterが登録されていなければならない。Rosterはユーザーの追加を行うことでできるが、通常は一方通行の関係となる(subscribeがfrom, to)。ユーザーが追加…

openvzで開発環境を作る #4

ブリッジの続き 作成したブリッジにコンテナ用のvethが自動で刺さるよう、以下の設定ファイルを新規で作成します。 #!/bin/bash EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr"

openvzで開発環境を作る #3

DMZ環境を用意します。ネットワークは10.0.0.0/24としておき、全てのPCが単一のブリッジにつながるようにしておきます。 まずはホストで以下の設定を行ってリブートします。 "/etc/sysconfig/network-script/ifcfg-br0"(新規作成) DEVICE=br0 TYPE=Bridge …

CentOS 6.3に古いUSB無線LANを導入

古いパソコンにCentOS 6.3をいれたまではよかったけど、USB無線LANの導入に手こずったので備忘録的にブログに記録 [状況] OS: CentOS 6.3 (minimam)無線LAN: WLI-U2-KG54 (Buffalo) [記録] 普通にCentOSを導入。yumでモジュールを最新にする。 yumで"wireles…

Javaで現在実行中のメソッドの情報を取得する方法

Javaで実行中のメソッドの情報は、旧来は次のような方法が用いられていた。 String methodName = new Throwable().getStackTrace()[0].getMethodName() しかしこれはパフォーマンス的にはあまりいい方法ではないし、リフレクションのMethodオブジェクトでは…

openvzで開発環境を作る #2

[]開発環境用のマシンにcentos 6を入れる。限られたリソースを有効に使いたいので、CentOS-6.x-i386-minimal.isoを使ってインストールする。ここでインストールしたOSはOpenVZのホストであり、かつクライアント環境、開発環境、テスト環境を結ぶルーターでも…

openvzで開発環境を作る #1

開発をする時には、開発用のCMSサーバ、Jenkinsサーバ、テストサーバなどもろもろのサービスが必要。でも、一つのサーバの中にサービスを詰め込むと障害があった時に大変なので、なるべく別々のサーバにしたい。 そこで、openvzを使って物理的に一台のマシン…

macでphpunitが動かない

macでphpunitをインストールして実行すると、こんなエラーが出た。 PHP Warning: require_once(File/Iterator/Autoload.php): failed to open stream: No such file or directory in /usr/lib/php/PHPUnit/Autoload.php on line 45PHP Fatal error: require_…

mac + mysql + Symfony2 + doctrineでエラー

mac + mysql + Symfony2でdoctrine関係のコマンドを実行すると、次のエラーが出ることがあります。 Could not create database for connection named `test_project`SQLSTATE[HY000] [2002] No such file or directory これは、mysql起動時のsocket情報を保…

mac + Symfony2でapp/cacheとapp/logsに権限を追加する

Symfony2のマニュアルに沿ってインストールを行っている時に"app/cache"と"app/logs"に書き込み権限を与える方法で、マニュアルに書かれている以下の文章を入力するとエラーが発生することがある。 >sudo chmod +a "www-data allow delete,write,append,file…

macでphp.iniの編集

macでphp.iniを編集する。 >php -i | grep ini として表示される中に、次の文字を探す Loaded Configuration File => /private/etc/php.ini これがmacで使われるphp.ini。管理者権限がいるので、sudoコマンドを使って編集する。編集が終わったら、apacheを再…

設計書なき開発の進め方 #5

※タイトルをちょっと短くしました。 しばらくモデリングについて書いてみようと思う。 ECサイトでは、ビジネスは次のように進むことが一般的だ。 利用者が注文をする 利用者が入金をする(クレジット決済など) サービス提供者が出荷をする これをモデル化す…

設計書なき開発の進め方(Mac, MySQL, Symfony) #5

まずはsymfonyでmysqlを使うようにするための設定。 ./symfony configure:database "mysql:host=localhost;dbname=virtuosoec" これで、config/databases.ymlファイルが以下のように編集される。 このファイルはおそらく、手動でメンテするのではなく上記コ…

設計書なき開発の進め方(Mac, MySQL, Symfony) #4

[TODO] symfonyコマンドでソースを自動生成すると、コメント欄に"author: Your name here"と表示される。これはconfig/properties.iniを書き換えることで対応できるのだが、このファイルは一般的にはソース管理対象下のファイルとして扱われるため、個人個人…

設計書なき開発の進め方(Mac, MySQL, Symfony) #3

早速新しい機能を作成してみる。今回はアジャイル開発を推進するつもりも否定するつもりも無いけど、設計書レスな感じでいくので画面イメージだけ用意してみた。ECサイトなのできっと購入できる商品の一覧画面が必要なはず。ということでこんな画面を用意し…

設計書なき開発の進め方(Mac, MySQL, Symfony) #2

今日はMacにMySQLとSymfonyを入れるだけで終わってしまった。結構環境づくりは大変。 [php.iniの作成] PHPの設定を行うphp.iniファイルは、デフォルトでは用意されていない。しかしひな形が用意されているので、それをコピーする。 $ sudo cp /etc/php.ini.d…

設計書なき開発の進め方(Mac, MySQL, Symfony) #1

新しい会社でSymfony 1.4 + MySQLのシステムの保守をすることになったので、勉強をかねて「設計書なき開発の進め方」というブログを書いていこうと思います。 「設計書」というのがミソで、設計はします。ただ流行のアジャイル開発などで参考になりそうな、…

設計ツールについて

ここでは設計ツール=設計書を書くためのソフトとします。このときよく使われる順に設計ツールを並べると、こんな風になると感じています。 EXCEL > Word > 専用の設計ツール なぜExcelが頻繁に使われるのか? 「無料だから」とか「みんな持っているから」と…

よくやったと誉めてあげたい

「アーキテクト」という責務がある。重要な役割の一つとして、プロジェクトが開始した時にアーキテクチュアルベースラインを作るという作業がある。この作業でよくあるのが、プロジェクト用のフレームワークの作成だ。スクラッチで作成しても良いし、既存の…

愛と力 at システムインテグレーション

「愛なき力は暴力なり、力なき愛は無力なり」 これは昔通っていた大学で、空手部が出していた新入生勧誘用の立て看板に書かれていたキャッチコピーだ。別にこれを見て空手部に入ろうと思った訳ではないけど、なぜか20年近く経った今でも覚えているのは、何…

ASP.NETでPostBackしてもPanelのスクロールバーの位置を固定しておく

ASP.NETでは、Panelコントロールを使うとスクロールバーが簡単に実現できます。しかし、ボタンのクリックなどでPostBackが発生すると、スクロールバーがリセットされてしまいます。そこで、スクロールバーの位置を記憶するExtensionを作成しました。 http://…

facebookページ代行サービス

facebookでお店のページを作成、維持するための作業を代行するサービス。 お店のページの作成 定期的な記事の投稿 週ごとのサマリー情報のレポート作成 オンラインだけではなくオフラインで、お店の担当者と会うことが多分大事。そのためにも、できれば名古…

よくあるサービスを分けてみた

一万人集まるサイトを作ろうと思ったら、「そのサイトは誰に対して何を目的とするのか」について考えた方がいいと思う。今回はその中でも、目的について分類をしてみた。 なくなると不便になるもの 生活を便利にしてくれるもの。一度使ってしまうと手放せな…

.NET Frameworkでプロファイリング

アプリケーションのチューニングを行なう時は、測定が重要です。どのメソッドが時間がかかっているのかを調べ、その個所を重点的にチューニングすることで効率のよいチューニングを行なうことができます。この情報を取得するのが「プロファイラ」と呼ばれる…

【サイト案】メール会員SaaS

「一万人集まるサイトを作ってみよう!の会」のサービス案です。 簡単にメール会員を登録、管理する事のできる小規模ショップ、レストラン向けのサービス。サービスを提供する会社はメール会員の管理業者として、サービスを利用する。メール会員に対するセー…

【サイト案】新刊リマインダー

「一万人集まるサイトを作ってみよう!の会」のサービス案です。訓練もかねて毎日書いて行こうと思います。 新刊リマインダー ユーザー登録をすると、キーワードを決められた数(例えば10個)登録する事ができる。キーワードを含む書籍やCDの発売が近づく…

「一万人集まるサイトを作ってみよう!の会」を始めます

「インプットからアウトプットの年にする」というのが、今年の目標の一つ。それを実践するために「一万人集まるサイトを作ってみよう!の会」を始めます。 この活動の目的は、こんな感じです。 技術やノウハウの発揮 新たな発見 垣根を越えた交流 技術やノウ…

MacBook Proでトリプルブート(Snow Leopard, Windows 7, Ubuntu 11.10)

MacBook Proでトリプルブートに成功しました。ネット上でいろんな人の情報にお世話になったので、自分の成功体験も後の人のために公開しておきます。 スタート MacBook Proに標準でついてくる内蔵ディスク(160G)を、新しいディスク(750G)に交換する。さら…