kamihik0ukiのブックマーク (75)

  • オレオレ証明書をopensslで作る(詳細版) - ろば電子が詰まつてゐる

    前回のopensslでRSA暗号と遊ぶでRSA暗号や秘密鍵について中身を色々といじってみた。続いて今回は、Apacheで使うオレオレ証明書を作ってみる。 細かいことはいいから、オレオレ証明書を作るコマンドだけ知りたい お急ぎの方は、以下3つだけやれば良い。これで10年間(3650日)有効なオレオレ証明書ができあがる。 $ openssl genrsa 2048 > server.key $ openssl req -new -key server.key > server.csr $ openssl x509 -days 3650 -req -signkey server.key < server.csr > server.crtできあがったserver.crtとserver.keyを、例えば/etc/httpd/conf/ 配下のssl.crt/ と ssl.key/ ディレクトリに設置

    オレオレ証明書をopensslで作る(詳細版) - ろば電子が詰まつてゐる
  • High Performance Ruby行かなかった会議2日目 - #詰んでる日記

    チケット持ってなくて1日目行ってないので、当然2日目も行ってません。今日はPerlを書いたり、さよならクロールを貰ったりしました。 さて、今日はRubyKaigiでHigh Performance Railsという発表があったらしいので、Rails 4でのキャッシュ(fragment_cache)の話でも書こうかと思います。既出だったらすみません…。 Cache Digests Rails 4でもfragment_cacheの使い方は変わりません。ただCache Digestsというものが入っていて、キャッシュのキーにdigestが追加されるようになりました。 digestはテンプレートを元に作成されるので、これによりテンプレートが更新された場合にfragment cacheがヒットしなくなり、テンプレ更新時のキャッシュ削除忘れ事故がなくなるわけですね!便利!! = cache 'aaaa

    High Performance Ruby行かなかった会議2日目 - #詰んでる日記
  • unoh.github.com by unoh

    先日、まちつく!が正式リリースになりました。よろしければ是非携帯でアクセスして遊んでみてください。 おはようございます。内田です。 今までRailsを使うほどでも無いアプリはオレオレフレームワークで作ってたのですが、最近巷で流行ってるsinatraのコードを読んでみたら必要十分な機能があり、センスも良く、とても気に入りました。 今回は公式ドキュメントの流れで、使いそうな機能をまとめてみました 一番簡単な例 sudo gem install sinatra # app.rb require 'rubygems' require 'sinatra' get '/' do 'Hello, world' end ruby app.rb curl http://localhost:4567/ Routes HTTPメソッドにURLとブロックを渡します get ‘/’ do end post ‘/’

    kamihik0uki
    kamihik0uki 2013/05/14
    [sinatra]
  • rbenv のメカニズム - @kyanny's blog

    rbenv 環境下で実行された Ruby プログラムの中から他の Ruby プログラムを起動するときに、 rbenv 環境をリセットしたい―要するに別のバージョンの Ruby で外部プログラムを実行したい―という事情があったので rbenv のメカニズムについて調べた。 rbenv 環境下で ruby コマンドを実行するとき、実際にコンパイルされた ruby バイナリが直接実行されているわけではない。 rbenv 環境をお膳立てした上で ruby バイナリを exec するラッパーのシェルスクリプトが実行される。こういうものを binstub と呼ぶ。 binstub である ruby という名前のシェルスクリプトの中身をみてみると、最終的に rbenv exec というサブコマンドを呼び出している。 rbenv のサブコマンドはリポジトリでいうと libexec ディレクトリ以下にある。

    rbenv のメカニズム - @kyanny's blog
  • Railtie を使った Rails3の拡張 (翻訳版) - Engine Yard Blog JP | Engine Yard Blog JP

    この記事はコミュニティ ゲスト投稿者兼 Engine Yard OB の Andre Arko 氏から英語版ブログで2010年10月3日に寄せられたものです。Arko 氏は 5 年前から Ruby and Rails を使ってウェブ アプリケーションを作成されており、Bundler コア チームのメンバーでもあります。同氏は Plex に勤務するかたわら、@indirect としてのツイートや、andre.arko.net でのブログも公開しています。 Rails 3.0 の gem プラグイン ついに Rails 3.0 がリリースされました。このバージョンには Railtie という、Rails を拡張するための素晴らしい新機能が追加されています。Railtie は Rails 3 のコア コンポーネントの基盤であり、これには Carlhuda さんが何か月もかけて丁寧にリファクタリン

  • Capistranoのdeploy.rbを今更よんでみて、タスクの挙動をまとめてみた(その2) - massの日記

    最近はデプロイもツールを使って一発になったけど、タスクの挙動をよく忘れてしまうので、備忘録をつけてみた。 フレームワーク:RubyOnRails バージョン:3.1.0 デプロイツール:Capistrano バージョン:2.9.0 書き方の例 $ 実際に打つコマンド # 内部処理 リリースしたけど、バグが出たので、1つ前のソースに巻き戻す。 1つ前のリリースに戻し、再起動をかけ、最新のリリースソースを削除する。リリース後、バグが発覚し、巻き戻すならこれ。 $ cap deploy:rollback # revision # restart # cleanup 1つ前のリリースに戻し、最新のリリースソースを削除する。再起動は行わない。 $ cap deploy:rollback:code # revision # cleanup カレントディレクトリの向け先を1つ前のリリースディレクトリに変

    Capistranoのdeploy.rbを今更よんでみて、タスクの挙動をまとめてみた(その2) - massの日記
  • Unicorn についての知りたい情報のすべて (翻訳版) - Engine Yard Blog JP | Engine Yard Blog JP

    記事は英語版ブログで2010年5月18日に公開された記事の翻訳版です。 Engine Yard のお客様や開発者の友人の多くが Unicorn を愛用し、推奨しているので、これについて兼ねてから勉強したいと思ってました。そんな矢先に、幸いにもその学習機会が自然と訪れました。最初は無料のリソースをいろいろと見ながら疑問を解決しようとしましたが、思ったより難しく、結局は大元のソースに当たることにしました。 まず、十分な時間をかけて Unicorn の README ファイルを熟読しました。このファイルには総合情報が網羅されていますが、読み終えた後でも疑問が解決しなかったので、すべてまとめて Unicorn の開発チームに E メールで送ってみました。有難いことに、返信には私の全質問に対する答えが詳しく書かれていました。そのおかげで内情に通じることができたので、この素晴らしいリソースを皆さんと

  • RailsエンジニアのためのTwitter Bootstrapカスタマイズ例

    Sassを使ったり、人からパクったりして、極力失敗しない方法

    RailsエンジニアのためのTwitter Bootstrapカスタマイズ例
  • Zabbix2.0でRDSを監視する〜外部スクリプトパート2〜 - zabbiたんAMIたん

    最近ようやく修羅モードを超えた気がします。 久しぶりにブログ書きます。 書きたいことがたくさんあるんですが、先にzabbixの外部スクリプトを・・・ 今回は、ZabbixにCloudwatchのスクリプト走らせてRDSのステータスを取得するってやつです。 https://github.com/zabbio/zabbix/tree/master/RDS ↑gitに公開しているので、使いたい人はどうぞー Rubyで書いているので、Zabbixサーバに「gem install right_aws」 でインストールして使ってください。 使い方は前回と同様に、マクロでパラメータを渡してください。 今回は、アクセスキー、シークレットキー、RDSのidentiferを指定して実行しています。 個人的に気にいっているのは、 RDSのディスク容量の確認 DBEventsの取得 ですねー。Zabbixは文字列

    Zabbix2.0でRDSを監視する〜外部スクリプトパート2〜 - zabbiたんAMIたん
  • 非同期I/OやノンブロッキングI/O及びI/Oの多重化について

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 2017年5月20日追記 エントリはI/OのOperationとCompletionおよびデータ整合性を混ぜてまとめた一部誤った定義になっているので、正確な定義を日語で知りたい方は下記にリンクしたエントリを読むことをおすすめします。 非同期とノンブロッキングとあと何か Apache2.4.1のevent_mpmnginx及びnodde.jsのアーキテクチャを考える上で、非同期I/OやノンブロッキングI/O、I/Oの多重化に関してある程度正確な理解が必要だと思ったのでまとめておく。 ここで「ある程度」といったのは、非同期を表すAsynchronousとノンブロッキングのnon-blockingは曖昧に使われる場合が多いからだ。まず、英語

    非同期I/OやノンブロッキングI/O及びI/Oの多重化について
  • JavaScript MVCフレームワーク Backbone.jsのコメント付きソースコード日本語訳が公開

    JavaScript MVCフレームワークとしてもっとも知名度が高いBackbone.jsのコメント付きソースコードの日語訳が公開されています。havelogの記事「Backbone.js コメント付きソースコード日語訳」で紹介されていました。 翻訳を行ったのは、githubをベースにオープンソースソフトウェアのドキュメントを翻訳している翻訳コミュニティのenja-oss。 同グループはすでにBackbone.jsのFAQの翻訳を公開済みで、それに続いてBackbone.jsソースコードのコメントについても翻訳を終えました。 全部で1411行の軽量フレームワーク Backbone.jsはJavaScript MVCフレームワークとしてもっとも知名度が高いものですが、とても軽量なフレームワークでもあります。 今回日語訳が公開されたソースコードを見ても、全部で1411行、60.72kb。

    JavaScript MVCフレームワーク Backbone.jsのコメント付きソースコード日本語訳が公開
  • Bowling Game Kata by Robert C. Martin

    1. Bowling Game Kata Object Mentor, Inc. fitnesse.org Copyright  2005 by Object Mentor, Inc All copies must retain this page unchanged. www.junit.org www.objectmentor.com blog.objectmentor.com 2. Scoring Bowling. The game consists of 10 frames as shown above. In each frame the player has two opportunities to knock down 10 pins. The score for the frame is the total number of pins knocked down, plu

    Bowling Game Kata by Robert C. Martin
  • PHPUnit の実行を自動化する 3 つの方法 | Born Too Late

    皆さん, ユニットテスト書いてますか. TDD (テスト駆動開発) によるプログラミングは当に楽しいものですが, コマンドをいちいち手動で実行するのは面倒ですよね. テストを自動化しているんだから, その実行も自動化したいですよね. この記事では, 私が仕事趣味で使っている PHPUnit を例に, テストの実行の自動化について紹介します. PHPUnit の, としてはいますが, 他の言語で使えるテクニックもあります. なお, ここでの自動化は開発しながらの自動実行のことで, CI (継続的インテグレーション) の話は出てきません. その前に... 私の開発時のターミナルは以下のようになっています. [caption id="attachment_1298" align="alignnone" width="300" caption="開発時のターミナル"][/caption] GN

    PHPUnit の実行を自動化する 3 つの方法 | Born Too Late
  • Rails アプリを nginx の拡張モジュールで置き換えて高速化する方法 - HeartRails Tech Blog

    HeartRails Tech Blog ハートレイルズのエンジニア、デザイナーによるブログです。 ウェブサービス、スマホアプリ、IoT デバイスの開発に関連する技術的な情報を発信していきます。 こんにちは、ハートレイルズの境 (@kazsakai) です。好きなエクスペンダブルズはドルフ・ラングレンです。 さて、弊社ではよくサーバーサイドを nginx+passenger+Ruby on Rails という構成でサービスを構築しています。 Rails を使っているのは社名が HeartRails だから、というわけでは全くなく、単に僕が昔から Ruby を使っていたからで、他意はありません。 passenger は今や Rails/Rack アプリ向けの標準ミドルウェアみたいな存在で、このおかげで随分 Rails の運用が楽になっています。passenger のリリース以前は手製スクリプ

  • イマドキのgemのつくりかた - キモブロ

    なんかマジで簡単になった。最近ライブラリ作りまくってるのでその全体的な手順をメモ。 Ruby1.9の前提で書きますが、1.8でも出来るかもですね。Rubygemsの認証周りについては記載してませんが、画面に表示される英文読んでたら楽ショーで出来る思います gemのひな形を作る まずローカルにリポジトリを作ります。これはbundle gemコマンドを使います $ bundle gem your_project create your_project/Gemfile create your_project/Rakefile create your_project/LICENSE create your_project/README.md create your_project/.gitignore create your_project/your_project.gemspec create

    イマドキのgemのつくりかた - キモブロ
  • RSpec の入門とその一歩先へ - t-wada の日記(旧)

    和田 卓人(@t_wada) 作『RSpec の入門とその一歩先へ』はクリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスで提供されています。 東京 Ruby 会議 03 の RSpec ワークショップの資料です。このワークショップでは参加者の方に「写経」(コードを書き写すこと)をして貰い、TDD/BDD と RSpec を同時に学べるように都度説明を入れるかたちで行いました。 第2イテレーションも書きました。続きに興味ある方はご覧下さい (更新) 第3イテレーションも書きました。続きに興味ある方はご覧下さい 1st iteration favotter の みたいな NG ワードのフィルタリング機能を RSpec で作りましょう。まずは NG ワードの検出機能を作成します。 このイテレーションでは最初ベタな形のテストコードと実装を書き、だんだんとそのコードを洗練させてゆきま

  • いま読みたいRuby on Rails3アプリ 10選:Rails Hub情報局:エンジニアライフ

    ITエンジニア向けの質問・回答コミュニティ「QA@IT」で、「RSpec のテストがたくさんついたオープンソースの Rails3 アプリはあるでしょうか」という質問に対して回答したところ、少しはてブが付いたりしたようです。Railsに限らないかもしれませんが、ちょっとしたサンプルコードや簡易なアプリというのはたくさんあるのですが、そこそこの規模のアプリ、あるいは実運用されているアプリで参考にできるソースコードとなると、意外にパッと思い付かなかったりします。「Railsアプリなら、これを読め」というべきアプリのリストがあればいいのにと、よく思ったりしています。 そんなわけで、いま読むべきだと私が勝手に考えてGitHubのウォッチリストに入れているRails3アプリを、10個ほどリストアップしてみたいと思います(全部で11個ですが)。ほかにオススメなどがあれば、ぜひコチラで情報をお寄せください

    いま読みたいRuby on Rails3アプリ 10選:Rails Hub情報局:エンジニアライフ
  • Web開発チームをタスクボードだけで見える化する 5つのコツ - Lancers開発ブログ

    はじめまして。今月からランサーズにJOINしましたkeiと申します。 長らく更新が滞っていたブログですが、これから定期的に情報発信していこうと思ってますので、どうぞよろしくお願いします! ランサーズでは、エンジニアの作業を見える化するために、タスクボードを導入しています。 今回は、社内で運用してみて効果的だった5つのコツをご紹介します。 タスクボードとは ボードを作業予定、作業中、作業完了(ランサーズではToDo,Doing,Done)の3つのレーンに分け、タスクをその状態に応じて適切なレーンに置くことで、タスクの見える化とステータス管理を行うツールです。 ランサーズでは、ボードとしてホワイトボードを、タスクは付箋に書いたものを貼って運用しています。 運用ルール ランサーズでは、以下の流れでタスクボードを運用しています。基的な流れは、よくあるタスクボードの運用方法と同じです。 発生し

  • Enterprise Architectures with Ruby (and Rails)

    This document discusses strategies for scaling a Ruby on Rails application from a small startup to an enterprise-level application. It recommends starting with a small, highly productive team using Rails for rapid development. As the application and user base grow, it suggests adding caching, load balancing, and splitting the application across multiple servers. It also discusses personalizing pag

    Enterprise Architectures with Ruby (and Rails)
  • WebDriverとRSpecを使って自動クロスブラウザ画面テストする

    Selenium2 WebDriverを使うとRubyなどでスクリプトを書くことができます。これが結構便利でCIサーバとも相性がいいので、クロスブラウザチェックするときの書き方をメモ。細かい話はWebDriverのドキュメントに書かれています。 IE、FireFoxi、Chromeでテストする場合の書き方 Chromeを動かす場合は、ここからchromedriver.exe を落としてきてPATHを通しておく必要があります。そして、以下を記述すればOK。 https://gist.github.com/daipresents/97509a466788036c908799ab780f31c1.js?file=gistfile1.txt Proxyを通したい場合の書き方 Proxyを通したい場合は、ブラウザごとにやり方が異なります。 https://gist.github.com/daipre

    WebDriverとRSpecを使って自動クロスブラウザ画面テストする