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

Ubuntu に RVM をインストールして Ruby のバージョン管理を行う

Ruby には多くの実装があります。 リファレンス実装 (CRuby) としては Ruby 1.8 系 (MRI) と 1.9 系 (YARV) の 2 つが現役で使われていますし、Java で書かれた実装である JRuby や .Net で動く IronRuby などの別実装もあります。 最近では Rubinius が注目…

スマートフォンでも見やすい web ページを作るために media queries を使うという選択

最近スマートフォンを使って web ブラウジングしていて気になることがあります。 それは、幅固定の web ページや複数カラムの web ページが非常にみにくい ということ。 当然ながらスマートフォンの画面の横幅は狭いため、PC 用に作られた幅固定や複数カラム…

CSS の display: table-cell を使って画面中央に要素を配置する

なんらかの要素を画面の中央に配置したい、ということはしばしばあります。 水平方向 (横方向) の中央揃えは CSS の text-align: center を使ったり、ブロック要素ならば margin: auto を使ったりして簡単に実現できますが、垂直方向 (縦方向) の中央揃えは…

Firefox 4 にてコンテキストメニューを開く際に右クリックしたノードを取得する方法

Firefox の拡張機能 (アドオンの一種) の開発をして、コンテキストメニューに項目を追加し、コンテキストメニューからいろいろと操作をできるようにすることがあります。 コンテキストメニューを変更したり、イベントを取得したりする方法については次のペー…

Android のアプリ開発環境と IS01 での実機テスト環境を構築

せっかく IS01 を買ったので Android アプリの開発環境をインストールして、IS01 での実機テストもやってみました。 開発環境、および IS01 の実機テスト環境の構築の流れを簡単にまとめておきます。 Android アプリ開発環境の構築 Android アプリの開発環境…

Android 端末 IS01 を安く入手して運用する方法

前々から Android 端末が欲しかったので、安いと巷で噂になっている SHARP 製の Android 端末 IS01 を購入しました。携帯電話に類するものの契約をしたのは今回が初めてだったので、自分としてはちょっと失敗した部分もありました (この記事に書いてあるよう…

応用情報技術者試験の勉強法 (主に電気系の学生向け)

2010 年度秋期の応用情報技術者試験 (応用情報) を受験してきました。 自己採点したところ、午前、午後ともに 9 割程度は取れてそうです。あんまり役に立たないかもしれませんが、どういう風に勉強したのかを電気系の学生向けに書いておきます。 試験内容 応…

Apache 2 で SuexecUserGroup ディレクティブを使うとエラーが発生する問題

問題 Apache 2 の設定ファイルに SuexecUserGroup ディレクティブを使用するように記述し、Apache を再起動すると次のようなエラーメッセージが表示されるというもの。username@hostname:~$ sudo service apache2 restart * Restarting web server apache2 S…

Windows の C で Guarded Suspension パターンを実現する (条件変数を実装する)

マルチスレッドプログラミングをしているときに、「ある条件が満たされているかどうか調べ、満たされていなければ条件が満たされるまで待機する」 という処理が必要になることがあります。 このような処理はパターン化されており、『増補改訂版 Java言語で学…

『増補改訂版 Java 言語で学ぶデザインパターン入門 マルチスレッド編』 結城 浩 著

増補改訂版 Java言語で学ぶデザインパターン入門 マルチスレッド編作者: 結城浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/03/21メディア: 大型本購入: 15人 クリック: 287回この商品を含むブログ (206件) を見るマルチスレッドの基本を勉強…

『プログラミング言語 Ruby』 まつもと ゆきひろ, David Flanagan 著, 卜部 昌平 監訳, 長尾 高弘 訳

プログラミング言語 Ruby作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/01/26メディア: 大型本購入: 21人 クリック: 356回この商品を含むブログ (129件) を見る『初めてのRuby』 (Yugui …

Ruby の Proc オブジェクトと Method オブジェクトの違い (proc, lambda, ブロック, メソッドについて)

プログラミング言語 Ruby作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/01/26メディア: 大型本購入: 21人 クリック: 356回この商品を含むブログ (129件) を見るRuby には、手続きを表すオ…

Ruby でのイテレータを使った繰り返し #2

プログラミング言語 Ruby作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/01/26メディア: 大型本購入: 21人 クリック: 356回この商品を含むブログ (129件) を見る前回 (#1) に引き続き、イ…

Ruby でのイテレータを使った繰り返し #1

プログラミング言語 Ruby作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/01/26メディア: 大型本購入: 21人 クリック: 356回この商品を含むブログ (129件) を見る『プログラミング言語 Ruby…

Ruby におけるオブジェクトの比較 (同一性, 同値性, 順序など)

プログラミング言語 Ruby作者: まつもとゆきひろ,David Flanagan,卜部昌平(監訳),長尾高弘出版社/メーカー: オライリージャパン発売日: 2009/01/26メディア: 大型本購入: 21人 クリック: 356回この商品を含むブログ (129件) を見る最近 『プログラミング言語…

『初めての SQL』 Alan Beaulieu 著, 株式会社クイープ 訳

初めてのSQL作者: Alan Beaulieu,株式会社クイープ出版社/メーカー: オライリージャパン発売日: 2006/04/01メディア: 単行本購入: 4人 クリック: 39回この商品を含むブログ (28件) を見るこれまで PostgreSQL をちょこっといじることはあったのですが、ちゃ…

Ubuntu 10.04 Lucid Lynx に pLaTeX をインストール (ptexlive を使用)

現在のところ Ubuntu 10.04 では dvipsk-ja というパッケージが依存関係の問題により apt-get でインストールできません。 このパッケージは日本語対応の dvips のインストールに必要で、これがインストールできないと pLaTeX から DVI ファイルを作った後 P…

gnome-screensaver に新しいスクリーンセーバーのテーマを設定する方法

Ubuntu 10.04 (Lucid Lynx) において、新しいスクリーンセーバーのテーマを設定しようとすると 9.10 と同じ方法ではうまくいきませんでした。 色々試してみた結果、Ubuntu 9.10 では desktop menu item (拡張子が desktop のファイル) を自動的に認識するよ…

Windows 上に C/C++ 開発環境を構築する #1 (MinGW のインストール方法)

Windows 上で C/C++ の開発を行う際にどの C/C++ コンパイラを使用するかというのは 1 つの悩みどころです。 Windows 専用のアプリケーションの開発を行うのであれば Microsoft Visual C++ でいいと思いますが、できるだけ Unix/Linux 環境に近い状態にした…

Firefox アドオン中での文字コードの変更方法 (XPCOM を JavaScript から使用する)

Firefox のアドオン (拡張機能等) を開発する際に、文字コードを変更する必要がでてくることもあるかと思います。 ここでは、JavaScript のコード中の文字列の文字コードを XPCOM *1 を使用して変更する方法について記します。ここに書いてある方法はあくま…

Ubuntu 9.10 (Karmic Koala) で Ruby + PostgreSQL な環境を構築する (DBI/DBD-Pg 使用)

以前も 似たような記事 を書きましたが、今回は Ruby から PostgreSQL を使用するためのライブラリとして ruby-pg ではなく DBI / DBD-Pg を使う方法 *1 を採ります。 インストールするバージョン等 OS は、タイトルにも書いてあるように Ubuntu 9.10 (Karmi…

JavaScript から HTML Element の class 属性を取得する方法

JavaScript から HTML 要素の class 属性を読み取ったり変更したりしたいとき、DOM の Element#getAttribute メソッド および Element#setAttribute メソッド を使用することができます。// HTML 要素の取得 var elem = document.getElementById("XXXX"); //…

HTML Element をドラッグにより移動可能にする JavaScript ライブラリ

HTML Element (要素) をドラッグにより移動可能にする JavaScript ライブラリを作ってみました。 Element をドラッグで移動可能にする JavaScript ライブラリ - ElementMover 技術的なこと とまあそれだけじゃ面白くないのでドラッグに関してちょっとだけメ…

さくらインターネットサーバー上で画像処理を行う (Ruby 使用)

さくらインターネットのレンタルサーバー 上で動作する Ruby プログラムで画像処理を行うための方法です。画像処理用のアプリケーションは、元々さくらインターネットのサーバーにインストールされている ImageMagick を使用することにします。 Ruby プログ…

Opera 10.50 と background-clip (CSS 3 のプロパティ )

Opera 10.50 がリリースされました ね。 今回は CSS 3 のいくつかのプロパティに対応したということで、主要なブラウザの CSS 3 が進んでいることが実感できます。Opera 10.50 で使用できる CSS 3 のプロパティに関しては下記記事が詳しいです。 ヨツモネッ…

XSLT により XML ファイルを HTML として表示する際のノウハウ的なもの

XML

Web サービスや Web アプリケーションなどでは、データを XML でやりとりすることも多いと思います。 XML ファイルをブラウザで表示するようなこともあるかもしれません。 そういうとき、XML ファイルのテキストデータがそのまま表示されるよりも、HTML 形式…

さくらインターネットサーバに Ruby 1.9 をインストール

レンタルサーバとして有名な さくらインターネットサーバ (スタンダードコース) のユーザディレクトリ内に Ruby 1.9 をインストールしたのでその手順を書いておきます。 作業方法 インストール作業はサーバに SSH 接続して行いました。 ローカルマシンは Win…

AppLauncher ver.0.6.3, ver.0.6.4

Firefox の拡張機能 AppLauncher のバージョンアップを行いました。 AppLauncher とは AppLauncher は Firefox の拡張機能です。 右クリックメニュー (コンテキストメニュー) から外部アプリケーション (IE などのブラウザだとかその他色々) を起動すること…

DOM 3 XPath において名前空間に属する Node を指定する方法

Document Object Model (DOM) Level 3 には XPath に関する仕様も含まれています。 DOM 3 XPath Specification 最近のブラウザである Firefox 3.5 や Safari 4、Opera 10 などの JavaScript 実装は DOM Level 3 に対応しており、XPath 機能も使う事ができま…

JavaScript における文字列置換 (String#replace メソッド)

JavaScript において文字列の置換 (文字列中のある部分文字列を別の文字列に変換する) を行うためには String#replace メソッドを使用します。 // 第 1 引数が置換対象の文字列, 第 2 引数が置換後の文字列 window.alert( "test".replace("t", "a") ); // =>…