@ksaito11: シェルの重複起動防止 URL 2010-05-31 23:08:02 via Hatena 同じシェルを複数起動しないようにするには、ロックファイルを使う方法が良く知られています。 単純明快な方法ですがシェルがkill -9で停止した場合には、タイミングによってロックファイルが削除されないことがあります。 メンテナンスフリーで重複起動を防止するには、すこしトリッキーな方法を使う必要があります。 どちらが良いというより状況により使い分けが必要となります。 続きを読む
元々は TDD Advent Calendar jp: 2012 : ATND で人数が足らなかった時の予備として用意していたのですが、めでたく人数が埋まったため単発で上げてみます。 僕は自他共に認めるTDDマニアですが*1、敢えてテストを書かないことの重要性について説きたいと思います。 id:shuji_w6e さんの 軽量なテスト駆動開発を目指して #TddAdventJp - やさしいデスマーチ と近いですが、shuji_w6eさんのがテストを軽くするのに対しこっちはそもそもテストを書かないようにするということです。 テストを書かなくてもいい(書く必要のない)ケース 寿命の短いプログラム TDDというのは最初にテストを書くコストというのがどうしても発生するため、寿命の短いプログラムだとTDDの恩恵を受けづらいです。 自分の経験上、半年以上メンテする必要があるプログラムだと保守フェーズ
2013年はじめのTDD Boot Camp in 大阪 外伝 の資料です。 http://kokucheese.com/event/index/64957/Read less
TDD超入門者、 Java 超初心者が体験したパラダイムシフト 2013.01.19 CLR/H#78 Read less
こんにちは、斉藤です。 前回のブログをさぼっていたので、あっというまに次のブログの日が来てしまいました。 最近、テスト駆動開発入門(ケントベック著)という本を読んでみて、これは!と思ったので、この開発方法の実践をしてみたいと思います。 今回はQUnitというJavaScriptのユニットテストフレームワークを使った方法でのご紹介です。 http://qunitjs.com/ * テスト駆動開発(TDD)とは? ユニットテストを常に書きながら、プログラムを開発していくスタイルのことです。 ユニットテストを先に書くので、プログラムはそれが通るように開発することが求められます。 具体的な開発のサイクル: 1. テストを作成する(表現したいことを確認するテストを作る。) 2. テストをパスする(1で作ったテストをパスする実装を行う。仮実装でも構わない。) 3. リファクタリングを行う(テストを増や
SPDYプロトコルがどういうものなのか理解しておきたかったので、spdy/3の仕様を最近読んでる。 SPDY Protocol - Draft 3 - The Chromium Projects で、実際どういう挙動になるのかPythonで実装してみた。 今回は単純にtext/plainで「Hello, SPDY」と表示するだけ。 PythonでTLS NPN WebでSPDYを使う場合は、TLS NPNでプロトコルを切り替えないといけないが、Pythonのsslモジュールではこれは3.3からの対応となる。 SSLContext.set_npn_protocols(protocols) オレオレ証明書でHTTPSサーバーを作り、set_npn_protocolsでspdy/3を設定しておいたら、Google ChromeはTLS NPNでSPDYを使ってくれてた。 NPNでspdy/3を選
何度かテレビでチラ見してネオヒルズ族って何か胡散臭いなーと感じていたが、尊敬する経営者id:shi3zが『スーパー フリーエージェント スタイル 21世紀型ビジネスの成功条件』を「経営者を目指す人は絶対に読むべきだ」「アパレルが潰れた原因がこれ以上ないくらい克明に描写されている」と激賞してて、ネット業界に転職したのにアフィリやってる若者の生態とか分かってないなーと軽い気持ちでKindle版を買ったら確かに面白い。 自己啓発書っぽいところは苦手だが、うまくいってたアパレルEC会社がひとりの入社でガタガタになっていく様子が活写されているし、社会の動きに対する独特の見立てや刹那的な危機感は読ませるものがある。こんだけ腹を括って生きてるなら、今のようなアフィリの勝ちパターンがぶっ壊れても生き残れるんじゃね?と感心した。 読み終わった拍子にKindle Paperwhiteの画面に触れてしまったらし
弊社社長カルロス ゴーン専属の通訳を努めて12年目となる森本由紀。この度マイクを通さず自らの言葉でその舞台裏を激白します。
2012-07-11 PHP5.4+フレームワーク BEAR.Sundayを理解するためにRay.Diを触ってみるの巻 其の弐 ラベル: BEAR, PHP, PHP5.4, Ray ツイート こんにちは。夏はやっぱり生ビール、@madapajaです。 PHP5.4+フレームワーク BEAR.Sundayを理解するためにRay.Diを触ってみるの巻 其の壱 : 今日も適当ダイアリー の続きです。 PHP5.4+フレームワーク BEAR.Sundayを理解するためにRay.Diを触ってみるの巻シリーズ 其の壱 其の弐 前回は、Ray を Composer 経由でインストールして User クラスを作りました。 Ray を使わずに書いてみる Ray を使ってみる前に、普通に PHP を書いて User クラスを実行してみたいと思います。今回は Madapaja\Ray\Di\Sample01
さて夏がやってきました。夏と言えばPHPということで、昨年に引き続き、最近のPHP事情をご紹介。 1. PHP5.4リリース PHP5.4が2012年3月にリリースされました。 Traits や Short array syntax(配列の短縮構文)、array dereferencing(foo()[0]) などのPHP言語拡張、PHPコマンドで起動するビルトインサーバ、そしてパフォーマンスの改善など大きな変更が加えられています。 言語自体の機能追加も注目ですが、ビルトインサーバは多くの人にとってメリットになるでしょう。これを使えばPHPアプリケーションの動作確認のためにApacheやnginxなどのhttpdサーバを自分のPCに入れる必要はありません。 下記のようなコマンドを打つだけで、ビルトインサーバが起動します。新しいフレームワークやライブラリ、アプリケーションを試してみたい時に手
2012 Pythonアドベントカレンダー(Webフレームワーク) #python_adv の5日目の記事です。 明日は @altnight にお願いします。 Flaskはオモチャじゃないよ PyCharmなどのIDEがFlaskに対応を始めたり、Flask はそろそろ Django に続く Python の Web フレームワーク No.2 と名乗れそうなほど広まってきています。(その割にPython3対応遅いけど) Flaskと言えばマイクロフレームワーク、Hello World が簡単に書けるヤツで有名ですよね。 import flask app = flask.Flask(__name__) @app.route('/') def index(): return "Hello, World." app.run(debug=True) これを見るとオモチャっぽく見えるんですが、Fla
2012 Pythonアドベントカレンダー(Webフレームワーク) #python_adv の5日目担当です。 この記事は自分のBlogとのマルチポストになります。 http://methane.hatenablog.jp/entry/2012/12/05/134206 Flaskはオモチャじゃないよ PyCharmなどのIDEがFlaskに対応を始めたり、Flask はそろそろ Django に続く Python の Web フレームワーク No.2 と名乗れそうなほど広まってきています。(その割にPython3対応遅いけど) Flaskと言えばマイクロフレームワーク、Hello World が簡単に書けるヤツで有名ですよね。 import flask app = flask.Flask(__name__) @app.route('/') def index(): return "Hel
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く