Webアプリケーションを構築しているとどうしても必要になるのがJavaScriptだ。サーバサイドの言語はPHPやRuby、Perl、Java、Pythonなど様々な言語が選ばれるが、JavaScriptについては代わりがない。 RubyからJavaScriptが生成される 元のRubyコード サーバサイドの言語は得意だが、JavaScriptはちょっと…という人もいるのではないだろうか。そんな人にとって、これは朗報かも知れない。 ...
現在、数種類存在する。既存のソリューションに不満のあるGregory Brownは、DSLアプローチを使って独自のライブラリを設計することに決めた。Prawnは(リンク)また他のRuby用PDFライブラリより、速度でも上を行くはずである。インストールを完了すると、DSL風のアプローチを使って簡単にPDFを生成できる(Prawnのサンプルから例を引用)。 Prawn::Document.generate("image.pdf", :page_layout =...
『 splitの空要素、入力が空文字列の挙動 』
いくらバージョン管理のシステムを導入していたとしても、多人数で開発を行っていると意図しない更新や修正によってバグを埋め込んでしまうと言ったケースがある。そのためソースコードのレビューを定期的に行うのが重要だ。 修正したファイル一覧 作業中のソースにおいて何が変わっているのか、それを皆で確認できるのがこちらのシステムだ。 今回紹介するオープン...
はてなダイアリーが AtomPub で編集できるようになったので、早速 fuse を使ってファイルシステムを作ってみました。こんな感じに使えます。 http://rails2u.com/tmp/diary_fuse/fuse.htm (動画) /create に保存すると現在時刻で作成 /20080820101010 など、エントリーを編集可能。保存で更新。 rm するとエントリーを削除 /\d{14} 的なファイル名で保存すると、その時刻のエントリーを作成 などなど。Ru...
を書いたけど、 あれは純粋に動画だけで、コメントがダウンロードできてない。 ということで、今度はコメントもダウンロードしてみる。 はじめにざっとニコニコ動画の仕様をおさらいすると、 動画画面へアクセスする(例えばhttp://www.nicovideo.jp/watch/sm2721967) Flashデータを取りにhttp://www.nicovideo.jp/api/getflv?v={動画ID}へアクセス(動画IDは1でいうsm2721967) 2のレスポンスで動画...
『 かんたんAjax開発をするためのRubyonRailsの基礎知識 』
restful_authenticationは、ログイン認証という限定された機能を、適度なサイズで提供してくれている。ログイン認証には多くのRailsの技が駆使される傾向にあり、コードを眺めていると勉強になることが多い。今回はモジュールの使い方に注目してみた。 restful_authentication classic版のUserモデルの実装は以下のようになっている。 保存データの検証、アクティベーションに関する処理、...
『 Rails2.2からスレッドセーフになる模様. 』
生産性が高いと評判のプログラミング言語「Ruby」。統合開発環境を整えることで、さらに効率的なプログラミングが可能になる(編集部) システム開発現場で使えるIDEとは RubyのWebアプリケーションフレームワークであるRuby on Railsの一般公開から4年がたち、システム開発の現場でもRubyの採用を耳にするようになってきました。2007年12月にはRuby on Rails 2.0も登場し、Rubyはます...
『 ついにスレッドセーフか。プロセス多重起動は不自然な感じがしていたのでたいへんよいと思う。というかみんなプロセス多重起動による並列化って気持ち悪くないのかな。 』
Googleが公開したバイナリエンコード手法であるProtocol Buffersは、クライアントとサーバーの両方でシリアライズ形式を取り決めておき(IDL)、双方がそれに従ってデータをやりとりするようにします。 この方法では高速なデータのやりとりができる反面、IDLを書かなければならない、仕様を変えるたびにIDLを書き直さなければならない(あらかじめしっかりとIDLを設計しておかな...
……の、ことです。 つまり、自分自身の portability のことです。 「ポータブルなプログラム」と言えば いろいろな環境において 動作するプログラムのことですね。 「俺がポータブルである」というのは、 いろいろな環境でも同じように開発できる、 ということです。 どんな環境でも 同じように開発できる → オレポータビリティが高い! 今日はオレポータビリティを高める ...
Python と Twisted できみにも書ける Web サーバとperl - HTTP::Daemonできみにも書けるWebサーバにインスパイアされてみたよ。 require 'webrick' document_root = 'C:/inetpub/wwwroot/' server = WEBrick::HTTPServer.new({ :DocumentRoot => document_root, :BindAddress => '0.0.0.0', :Port => 10080 }) ['INT', 'TERM'].each {|signal| Signal.trap(signal){ server.shutdown } } server.start document_rootは環境に合わせて変更...
これから一からプログラミングを覚えようと考えています。 様々な言語がありますが、どれを覚えるべきでしょうか? なお、条件は下記の通りです。 やりたいこと ・Webサービス(AmazonやGoogleなど)を使った簡単なWebアプリが作れるようになりたい。 私のスペック ・プロとしてのWebデザイン経験があり、現在はWebディレクタ的な職にある。 ・システム関係の簡単な要件定義等は...
『 Read:1m30sUNIXプログラミング「Ruby入門」by清川清.Rubyは手軽さと高機能さを併せ持つ、オブジェクト指向のスクリプト言語です。阪大の情報教育システムには、Rubyで作られたツールがたく 』
Hiki 0.8.0 preview1 の編集画面のキーワード入力欄にあるクロスサイトスクリプティング脆弱性の修正が含まれますので、Hiki 0.8.0 preview1 をご利用の方は速やかにアップデートしてください (0.6.6 にはこの脆弱性はありません)。 なお、今日の Hiki 0.8.0 リリースを以って、0.6 系のメンテナンスは原則として終了いたします。 2005-05-19 Hiki Advisory 2005-05-19 発行 JVN#465742E4: Wiki クローンに...
これにインスパイヤされて。 C/C++で2進数値を記述 - きまぎらすほしゅの不定記 C/C++では、数値リテラルを次のように、8進数、10進数、16進数の三通りで書き表すことが出来る。 int r8 = 01578; /* octal number */ int r10 = 32768; /* decimal number */ int r16 = 0xFFF; /* hexadecimal number */ しかし、8進数よりもよく使われているであろう、2進数の書き方は仕様に存在しないらしい。 続きを読む
『 JRuby自体は100%Javaで実装された処理系である。したがって、実行するためにはJavaVMがあればよいため、Javaが動作する環境ならどこでもRubyプログラムを動かすことができる 』