Simple, Slowly

ブログを引っ越ししました。http://48.jp

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

intobox.in メールフォーム作りました

寒い日が続きますね。 メールフォーム作成しました。 興味のある方は登録ください。 公開時にご連絡します! 公開は来年の早いうちにできるかなといった感じです。 http://intobox.in/

intobox.inを製作中

開発が止まっていたintobox.inを製作中です。 Facebookの友達リストを使って、友達のDropboxに気軽にファイルを送れるようにするサービスです。 今年中にローンチできたらいいなぁと思っていましたが、けっこうバグが多くて来年になりそうです。 http://into…

paperboy & co.でやったこと

paperboy & co.(以下、ペパボ)に入社して6ヶ月が経ちました。 ちなみにペパボはどんなことをやっているかというと、サイトのホスティングやドメインの提供など、主にインターネットの場所を提供することをやっています。 僕は担当しているサービスは昔から…

gitのリモートリポジトリを消す2つの方法

Git

git のリモートリポジトリの削除ですが、git 1.6以前は git push origin :branch_name のように、コロンをブランチの前につける必要がありました。 1.7から --deleteコマンドが追加されました。 git push --delete origin branch_name ちょっと気になったの…

一括置換を簡単に使えるようにシェルにしてみた

一括置換を簡単に使えるようにシェルにしてみました。 使い方 sh bulk_replace.sh banana apple カレントディレクトリ以下のファイルを対象に banana→appleに置換します。 ダウンロード git リポジトリからcloneしてください。 https://github.com/shoyan/ut…

作業効率アップ Chromeからドキュメントを検索する方法

久々の更新になってしまいましたが、今回はChromeの便利な検索機能の紹介をします。 例えば、PHPのマニュアルを検索したいときですが、 googleで検索、もしくはマニュアルページに行って、フォームで検索しますよね。 Chromeで検索エンジンの設定を行えば、C…

JenkinsとPluginの恐るべき依存関係

Jenkinsがいきなり使えなくなって困ったのでメモします。 現象 http://localhost:8080にアクセスすると、エラーが発生していた。 どうやら、seleniumのプラグインが原因っぽい。 無効にするにも、ブラウザからは何もできないのでファイルを直接消した。 cd /…

ヘテムルでPHP5.3を使う方法

ヘテムルのPHPが5.2だったんで、PHP5.3が使えたらなーと思ったら、できました。 ヘテムルで PHP をご利用いただく方法 .htaccessに以下のように書けば、そのディレクトリはPHP5.3として動作します。 AddHandler php5.3-script .php 古いサイトではPHP4で動い…

ケアレスミスに関してのコードの話し

システム作りの仕事をはじめて5年目になりますが、バグを出さないシステムを作るのは本当に難しいと思います。 バグは、ここは怪しいなと思っていたところで発生します。 そして、ここは出るはずがないだろうと思っていたところでも発生します。 ここは出る…

mount_smbfsでmountする

mac

macはmount_smbfsコマンドを使ってmountします。 mountするディレクトリを作成して、mount_smbfsでマウントすればOKです。 $ mkdir /mnt/example.com $ mount_smbfs //username@example.com /mnt/example.com 起動時に自動でmountするにはどうしたらいいんだ…

例外処理とサンプルコード

PHP

例外とは、プログラムの実行中に発生した問題をうまく処理するための仕組みです。 例外を利用すると、プログラムをあまり複雑にすることなくエラー時の対処などを処理できます。 例外が発生する典型的なケースは、整数をゼロで除算した、ファイルが見つから…

Gitでコミットが失敗した。原因はエディタの設定だった。

Git

Git にて、git commit コマンドを実行し Vim 上でコメント書いて、コミットするとエラーが発生し、コミットが失敗しました。 $ git commit error: There was a problem with the editor 'vi'. Please supply the message using either -m or -F option. Git …

秘密鍵を使ってパスワードなしでログインする

ログインの際にパスワードではなくSSH鍵を使うようにすると、セキュリティを向上させると同時に操作を簡素化でき非常に便利です。公開鍵と秘密鍵のペアを生成し、サーバーに登録します。 ローカル環境に.sshディレクトリを作成し、パーミッションを700に変更…

macに.bashrcを作成したときのメモ

mac

.bashrcがなかったので、作成しました。以下のコマンドで作成します。 $ touch .bashrc .bashrcにailiasを定義してみます。 alias ls='ls -F -G' alias la='ls -a' alias ll='ls -l' .bashrcを反映させます。 $ source .bashrc lsコマンドを実行して変更が反…

設定していると便利なGitのalias

Git

設定していると便利なGitのaliasの紹介です。 試しにホームディレクトリの.gitconfigをエディタで開いて以下を入力してみましょう。 [alias] st = status co = checkout cp = cherry-pick # branch関連 br = branch ba = branch -a # 全てのbranchを表示 # …

Vundleでvimプラグインを管理する

vim

vimのプラグインの管理は、Vundleでやると便利です。 Vundle は Ruby on Rails 3 で採用されている、Gem 管理システム Bundler に影響を受けた、plugin 管理システムです。 Vundleをインストール インストールは簡単です。 $ git clone http://github.com/gm…

最低限これはやる。macの開発環境準備

mac

macで開発環境を準備したときのメモです。 OSはLion(10.7.3)です。 1.xcodeをインストール まずは、以下のページを参考にxcodeをAppStoreよりダウンロードしてインストールします。 OS X Lion に Xcode 4.1 をインストールする手順 1.4GBあるので、けっこう…

正規表現で指定されたファイルを抽出する方法

例えば、以下のようなファイルがあったとします。 . |-- 1.php |-- 2.php |-- apple.jpg |-- fuga.php |-- hoge.php |-- lib | |-- 01.php | |-- 02.php | `-- abc.php `-- orange.jpg 数字のファイルのみ抽出 カレントディレクトリのみを検索する場合は、 l…

vimでPHPの構文チェックを行う方法

vim

vimでPHPの構文チェックができないものかと思って調べたら、案の定できました。 .vimrcに以下を記述して、「,l」を入力すれば構文チェックができます。 "" " PHP Lint nmap ,l :call PHPLint()<CR> " " " PHPLint " " @author halt feits <halt.feits at gmail.com> " function PHPLint() </halt.feits></cr>…

データベースとテーブルのサイズを確認する方法

テーブルのサイズはphpMyAdminでも見れますが、コマンドから見れたほうが何かと便利なので、調べてみました。 全てのデータベースのサイズを確認する # MB単位 select table_schema, sum(data_length+index_length) /1024 /1024 as MB from information_sche…

array_mergeとarray+arrayの挙動の違いを検証してみました

PHP

array_mergeとarray+arrayの挙動の違いの理解が曖昧だったので検証してみました。 例1 基本的な配列の場合 Array ( [0] => 1 [1] => 3 [2] => 2 [3] => 4 ) Array ( [0] => 1 [1] => 3 …

Gitのインストール

Git

Gitを使いはじめて2年ほど経ちますが、開発に欠かせないツールとなっているこの頃です。 Gitのインストール方法について、まとめました。 Gitは主に二つの方法で入手できます。 一つはプラットフォームに応じたパッケージをインストールすることです。 もう…

jQueryのchangeイベントで気をつけること

jQueryのchangeイベントですが、IEだけ挙動が少し違いました。 jQueryはv1.4.1です。 以下はファイルを選択すると、changeイベントが発生するコードの概略です。 Smple Code <input type="file" id="imageUpForm"> $("#imageUpForm").change(function() { // 処理 }); ただしIEだと発火しない フ…

PHP5.4.0がリリースされました

PHP

PHP5.4.0がリリースされましたね。PHP 5.4.0 Release Announcement既存のコードへの影響は少ないようです。 Backward Incompatible Changes セーフモードがなくなった マジッククォートが削除された 呼び出し時の参照渡しをサポートしなくなった $a が文字列…

CakePHP2.0を使ってみよう 準備編

CakePHP2.0のチュートリアルです。 Blog Tutorialを参考に進んでいきます。 感じを掴むのが目的なので、細かい部分は割合してます。 環境はLAMPです。 ダウンロード GitHubかレポジトリ git clone git://github.com/cakephp/cakephp.gitからソースコードを取…

渡辺謙のダボス会議でのスピーチで思ったこと

渡辺謙のダボス会議でのスピーチ全文が、東京新聞のサイトに公開されています。渡辺謙さん、ダボス会議でスピーチ 原子力からの転換訴える 国は栄えて行くべきだ、経済や文明は発展していくべきだ、人は進化して行くべきだ。私たちはそうして前へ前へ進み、…

httpsでの注意点

http→httpsに変わるだけなのですが、ちらほらと問題が出たのでまとめておきます。 フォームの値がとれない https→httpにPOSTしてもデータは引き継がれません。 http→httpsも同じです。 httpsはhttpsに、httpはhttpにPOSTするようにしなくてはいけません。 ht…

CakePHPのSSL Componentでhttpとhttpsを切り替える

SSL Componentを使うと、http→https、https→httpの転送をやってくれるので便利です。 SSL Component 使い方 /* app_controller.php */ var $components = array( 'Secured.Ssl' => array( 'secured' => array( 'users' => 'login', 'store' => '*', 'post' =…

cake1.3のsimpletestの罠

罠というほどではないですが、同じ罠にはまった人のためにもメモしておきます。cakeのテストフレームワークはsimpletestで構築されています。 デフォルトではCakePHPに含まれていないため、サイトよりダウンロードしてくる必要があります。 cakeのチュートリ…

やっとスタートラインにたったかな

明けましておめでとうございます!新しい1年が始まりました。 ここ数年を振り返ると結婚と長男の誕生もあり、仕事と家庭の両立が大変でした。 仕事は人からアドバイスをもらったり、教えてもらったりすることがしにくい環境なので、はじめは大変でしたが最近…