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

PerlでTwitterアプリ開発の導入メモ - Net::Twitter

(※)最初に注意書き この記事の記述は、Twitterのボットアプリ、つまりDesktop appの例で書いています。TwitterのWebアプリを作る場合はcallbackの実装などが必要のため別にまとめました、こちらをご参照ください。 http://homepage1.nifty.com/y-osumi/wor…

MacPortsの再インストール

OSのバージョンアップやら色々していたら、どうもMacPortsの依存関係が変になってしまったようで、PerlMagickを使おうとするとエラーを吐いてしまうようになってしまった。こんなことは時折あるらしく、いったんMacPortsをバッサリ消して再インストールして…

ImageMagickで錆びた感じに加工する

ImageMagickを使ったネタ。ちょっと錆びた感じのロゴを作ってみようと思う。この元ファイルを、 以下のような感じにしてみようということ。ちょっと錆びたように見える(よね?)。 convertコマンドで やり方のアイディアとしては、convertコマンドのresize…

Photoshopで、PSDやTIFFをJPGで保存できない

PhotoshopでPSDファイルやTIFFファイルを開くと、モノによっては「名前を付けて保存」でJPEGが候補に出ずにJPGファイルで保存できなくなることがある。一度ハマると大変で、何故なんだろうかと思っていたのだが……これはカラーチャネルが問題らしい。 メニュ…

GoogleサイトでGoogle Analyticsを使う

先日、顕微鏡写真のページをひとつGoogleサイトで作ってみた。 https://sites.google.com/site/microzuma/ ということで、Googleサイトで作ったページをGoogle Analyticsとリンクさせるメモ。以下の方法で設定できるため、GoogleサイトにHTMLタグを埋め込ん…

tremaのお話を聞いてきた

Internetweek 2012で、OpenFlowのRubyフレームワーク、「Trema (http://trema.github.com/trema/)」についてハンズオンを受けてきた。OpenFlowについても素人なのでかなり手探り感があったけど、なんとなく分かってきた。行ってみて良かったわ。うーん、しか…

ImageMagickでJPEG画像からEXIF情報を削除

ファイルサイズを小さくしたり、プライバシー情報の懸念から、画像ファイルのEXIF情報を削除したいとき。Linux上では、ImageMagickのconvertコマンドの、stripオプションを使えば良いそうな。 $ convert DSC_9851.jpg -strip result.jpg

opensslとかディジタル署名とか

情報処理技術者試験でよく出てくる、メッセージのやりとりに用いるディジタル署名。 超頻出問題なのだが、これを実際に使っている部分を目で見たり、手でいじってみたりするのはなかなか敷居が高い。しかしopensslなどフリーの環境だけで試せるのだから、や…

CentOSで起動画面のプログレスバーを消してテキストにする

CentOS 6.3をつらつら使っているけど、起動画面のプログレスバーがウザい。 起動中に止まってしまっても、どこで刺さっているのか分からない。不便なので消すことにする。設定はgrub.confに書いてあるので、/boot/grub/grub.conf をviで開く。 title CentOS …

railsをオフラインでインストールする手順

もう5周遅れくらいだけど、Ruby on Railsなるものを使ってみようかな、と思った。 しかし対象のサーバは内部用のためプライベートネットワークで閉じており、インターネットには直接繋がらない。ということでパッケージだけ手で持ってきて手動で入れよう……と…

CentOS 5 にRubyをソースから入れるにはPyYAMLも要る

なんか、CentOS 5(ちょっと古い)なマシンにRubyをソースからコンパイルして入れてると、gemコマンドが変なことに気が付いた。 $ gem /usr/local/lib/ruby/1.9.1/yaml.rb:56:in `<top (required)>': It seems your ruby installation is missing psych (for YAML output). To </top>…

tarで一部のファイル/ディレクトリを除外してアーカイブする

tarコマンドで何かアーカイブする時、「ログファイルが大きいから、apps/log ディレクトリだけは除外したい」など特定のファイルやディレクトリを除外したいときは --exclude オプションを使う。以下のように、appsというディレクトリ配下に[apple], [banana…

データベースから投稿データを拾ってXML::RSSでRSS 1.0を生成

ユーザが投稿した内容を保存しているデータベースからデータを拾い上げて、RSSを作ることにするか…… (´∀`)定番のPerlのXML::RSSを使って、MySQLのデータベースに入っているとする。こんな流れになるかな。サンプルソースコードをまとめたものは、この記事の…

crontab -e は「絶対に」使ってはいけない

今までナチュラルにcrontab -eでcron編集をしていたのだけど、実はこれはとてつもなく危ないやり方だった。ということを、今さら知った。 crontab -rの恐怖 crontabコマンドにはrオプション(Remove)があり、これを実行すると何の警告もなく全てが消え失せる…

WindowsUpdateでKB2686509が必ず失敗する

先に結論 CtrlとCapsを入れ替えるなどのため、レジストリの HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Keyboard Layout に、Scancode Mapという値をセットしている場合に失敗するので、これをいったん消す必要がある。 概要 先月くらいからWindo…

さくらのレンタルサーバに設置したPukiWikiで、編集作業のみパスワード認証する

ドキュメント作成・ページ作成など、とても便利なPukiWiki。今の私の使い方は、 誰でも編集/閲覧OKの開放型 公開せず、自分メモ用に.htaccessでアクセス制限かけている閉鎖型 の2種類を設置しているのだが、その中間として「誰にでも見られていいけど、荒ら…

Xcodeのアンインストール

Mac

今さらながら、自宅MacBookのOSをLeopardからSnow Leopardにアップデートした(Lionを入れるには、まずSnow Leopardにしないといけないので……)。 で、今まで入っていたXcodeは3.1.2と古いので、これを機会にXcodeも新しいものにしよう。 Xcodeはインストール…

PukiWikiのプレビューが空っぽになる

PukiWikiを使っていると、いつの間にかプレビューが空になるという現象に悩まされた。 「プレビュー」をクリックすると、(ページの内容は空です。更新するとこのページは削除されます。)と表示される プレビューをせずに、いきなり「ページの更新」を行え…

Dropboxで特定のフォルダを同期しないようにする

Dropboxは大変便利なんだけど、メインのマシンで無造作に大容量ファイルをたくさん放り込んでおくと、別のモバイルPC上でそれをどんどん同期ダウンロードしてしまってHDDを圧迫してしまう。ということで、モバイルPC上では特定のフォルダは同期しないように…

画像をモノクロ2値に変換してくれるサイト作った。

ImageMagickを色々といじっていたら、モノクロ2値に変換してドットを荒くすると、なんだかとても懐かしい雰囲気になることを発見。ということで、アップロードするとモノクロ1bit画像にしてくれるサイトを作ってみた。 1bit photo - Tweet your pictures wit…

ロリポップは、MySQLサーバにグローバルから接続できる(ものがある)?

今はレンタルサーバは、さくらのレンタルサーバとロリポップの2つを借りている。さくらのレンタルサーバはDBサーバが物理FWの内側にあるようで、グローバル側からMySQLサーバへはTCPレベルで接続できない。 macbook:~ ozuma$ telnet mysql122.db.sakura.ne.j…

PHPをソースからインストールしてApacheで使う設定

( ´∀`) まぁ最近はパッケージで簡単に入っちゃうけど、PHPをソースからコンパイルして入れてApacheで使うことにするか……。 なお、ググるより前に公式マニュアルに全部書いてあるので、素直にここを熟読すること。 http://php.net/manual/ja/install.unix.ap…

欲しいHTTPステータスコードを返してくれるよ

HTTPクライアントのコードを書いていると、特定のHTTPステータスコードを返してくれるページが欲しくなる。404 Not Foundとかなら出すの簡単だけど、[503 Service Unavailable]とか[301 Moved Permanently]とかはいちいち用意しないといけなくて面倒くさい。…

YAMLでCGIの設定ファイルを書く

Webアプリを構成するCGIのソース内に、データベースへの接続設定などを直接埋め込んでおくのは良くない書き方だ。そのため、プログラムから設定を取得するための共通のコンフィグファイルを作ろうと思う。この設定ファイルを書く形式にはJSONとかXMLとかいろ…

日本語と英語のページをCGI内で判別して出し分け

Webブラウザの言語設定を取得して、日本語ならば日本語ページ、それ以外ならば英語ページを表示するようにする。ApacheならMultiviewsを使う案もあるけど、CGIの中で判断して出し分ける方法を取ろう。 環境変数HTTP_ACCEPT_LANGUAGEには、カンマ区切りで以下…

テキストをURLとして保存する txt2url.com を作ってみた

せっかくドメインを取ったので週末は家に引きこもって、txt2url - Save your text as URL.というのを作ってみました。 元々は、Twitterで140文字以上を呟いてみたい! という本末転倒な自分の希望をかなえようと作ったのですが、単なるメモの置き場としても便…

value-domainで取得したドメインをロリポップで使う

独自ドメインを取得して、ロリポップのレンタルサーバで使ってみようかな、と思った。ロリポップはムームードメインと連携しているので、本来はドメイン取得もそちらを使った方が楽チン(なはず)だ。しかし、「.com」を取得するのにムームードメインだと980…

ApacheのMultiviewsで、htmlを多言語対応

index.html.jaとindex.html.enの2ファイルを置いて、日本語版と英語版をApacheまかせで切り換える……ってのは時々見かけていたけど、自分でやろうとしてみたのでちょっとメモ。 導入準備 hoge.htmlをリクエストされたら言語判断をしてhoge.html.ja(もしくはho…

任意のカラムからn行をランダムに取り出す

大量のレコードがあるテーブルから、ランダムに10件取り出したい、などということがよくある。これは、random関数(モノによってはrand関数)を用いてソートし、LIMIT句を使うことで解決できる。たとえば、table_aテーブルのidカラムから、ランダムに10件取り…

jQueryでpreタグ内にテキストを入れると、IEだけ改行が消える

InternetExplorerは、innertHTMLで<pre>にテキストを突っ込むと改行が消え失せる。これ絡みで、jQueryでtextareaから取得した値を加工してpreタグの中に入れようとしたのだけど、Firefoxでは正常なのにIEでは改行が無くなる……というのにものすごくハマったのでメ</pre>…