第84回 Ruby関西 勉強会での snap や docker イメージについてのプレゼンの発表資料です。

革命的に速いとされるRuby用の新しいアプリケーション・サーバー「Raptor」のサイトが公開され期待を煽っています(Hacker News)。 公式サイトによると、RaptorはRailsやSinatraなどを動かすための新しいアプリケーション・サーバー。最適化されたHTTPエンジンにより従来のアプリケーションサーバーと比較して高速に動作し、Unicornの最大4倍、PumaとTorqueboxの最大2倍の速度で動作するとのこと。 現在まだ何もダウンロードできるものは公開されたおらず、パブリックベータ版のリリース日は2014年11月25日に設定されています。メールアドレスを登録しておくと、状態が更新されるか、あるいは第三者のレビューが公開されたときなどにメールで連絡してくれるようなので気になった方は登録してみてはいかがでしょうか。 ちなみに誰が開発されているかということに関しても「We
Editorは、人によって大きく違うと思うけど、大体こんな感じだと思います。 Rubyでは、Vim,Emacsなどのエディタ + Plugin + 開発支援なgem Javaでは、Eclipse,NetBeans,IntelliJなどのIDE Javaの人はIDEが無いと辛いと思うかもしれませんが、Vim Pluginや開発支援するgemを使えば、IDEと遜色なく使えるのではないかと思います。 例えば、エディタ上で以下のことはできます。 コード補完 ブレイクポイントを置いて、ステップ実行 カーソル上のクラスやメソッドに飛ぶ(gemやRuby本体のC言語も含む) 知りたいクラスやメソッドなどのドキュメントやソースの表示 保存時にコーディング規約違反の表示 homebrew mac標準のrubyでまずはhomebrewをインストールします。 $ ruby -e "$(curl -fsSL ht
この記事を書き上げるには、相当長い時間がかかりました。本来は今年の年明け、 Rubyの死 やデイヴィッド・ハイネマイヤー・ハンソンの TDDは死んだ がアップされて騒ぎになる前に投稿するつもりだったのです。昨年末に書いたツイートを見てください。 > Rubyにはもう飽き飽きした。理由はいろいろあるが、特にその副作用と、ステータスが可変なせいで大量のユニットテストを書かされるのにはウンザリだ。 @abevoelker Rubyの開発に関しては、大勢の人が心のどこかで何かおかしい、何かが欠けていると思っているようですが、たいていの人は責める対象を間違っています。Rubyで書いたアプリがとんでもない代物になったって? それはあなたがきちんとテストコードを書かなかったか、テスト駆動開発(TDD)の指針に則って開発しなかったからです。もしくは、正しいデザインパターンに切り分けるための知識が不足してい
シングルページアプリケーションやモバイルアプリなどの普及により、サーバサイドではJSONを出力するWeb APIの必要性が高くなってきています。みなさんはどのようにWeb APIを作っているでしょうか。 JSONはビュー RailsでJSON APIを定義する時、素のままでやろうとすると コントーラでto_jsonを呼んだり、モデルにas_jsonを定義したりすることになるかと思います。 モデルに書くとAPIによって出力内容を変えたい場合にとても苦労します。 API数が増えれば増えるほどモデルが複雑になっていきます。 APIレスポンスとしてのJSONはコントローラやモデルに書くべきでしょうか? ビューに書いた方が自然ではないでしょうか? これはRailsでの話ですが、Railsに限らず、フレームワークを使ってWeb APIを作るときに一般的にあてはまることだと思います。 変化に強い、再利用
私が最近注目しているプログラミング言語がある。Rustだ。Rustとは、錆のことである。何が錆なものか。JJだ。 RustはMozillaが開発しているプログラミング言語である。恥ずかしいことに私はRustの存在をつい最近まで知らなかった。私がRustの存在を知ったのはkernelvmでのことである。発表をustで聴いたあと自分で調べるとなるほどこれは私の望んでいた言語だと思った。そしてそれは、Linuxコミュニティが望んでいた言語でもあったのだ。 昨今、Go言語なるものが流行っている。猫も杓子もDockerの実装言語として採用されているためだ。しかし、Goは私のテイストに合わない。プログラミング言語というのは、異性のようなもので、一目見ただけで良いとか悪いとか感じるものである。これがまさにテイストということであり、言語にこだわりがないなんて人は、「誰でも良い」と言ってるようなものである。
Deviseを使ってユーザー認証機能を作ったときに、もうちょっとよくするための方法メモ。Deviseは普通の実装するとログイン後は/にリダイレクトされる。それを別のURLにする方法はここに書いた。 Deviseでログイン後のURLを変える方法 - PILOG では、ログインに必要なページのURLに直接アクセスがあったときはどうするか。流れとしてはこうなるのが望ましい。 ログインが必要なページにアクセスがある ユーザーにログインフォームを見せる ログインが完了したら最初にアクセスしたURLへリダイレクト ログインが必要かどうかはコントローラレベルで制御する。これはまあよくやるやつ。 # application_controller.rb class ApplicationController < ActionController::Base private def sign_in_requi
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 追記 RailsでJS辛い問題に関しての結論:http://qiita.com/kaiinui@github/items/dad6180f1910c6a4bfd5 -- 近年、(1) Web/App両対応が増えてきたこと、(2) WebでもJSを多用するようになったこと、の二つがあり、以下の点でRailsが微妙になっている。 ViewのJavascriptがRailsから独立している API層のサポートが微妙 最初に書いておきますが、特に決定的な解決策もなく、辛いから今後解消されてほしいよね、な話です。 ViewのJavascriptが
はじめに サンプルアプリ等を作成する際、デザインに悩むことは多いかと思います。 (特にデザインセンスに乏しい私のようなプログラマは・・・) このような時に、Bootstrapは強い味方となります。(今更感は強いですが・・・) またBootstrapにはデザインのサンプルが用意されているので、このサンプルをベースとしてアプリを作っていけばデザインについて悩むことを減らすことができそうです。 今回はRuby on Rails 4 にBootstrap3を適用し、サンプルにある「Starter template」と同じページを作る 手順について纏めてみたいと思います。 作業手順 以下に、今回の作業手順を書いていきます。 1.ページ作成 まずはRuby on Railsにて、今回表示するページを作成します。 コントローラ、ビューの作成 今回表示する画面のコントローラは「welcome」、ビューは「
DHH の主張って TDD は糞だ TDD によって「テストのしやすさ」が主眼となるため設計がむしろ歪む DCI は糞だ、 Concerns でいいだろ Concerns の結果として超絶巨大なドメインモデルが実行時に作られたところで知ったことではない とかそんな感じで、ある種の複雑さを許容しよう。結果として最適な設計を得られる。というような感じのことが多いと思ってます。 ソフトウェアというのは元来複雑なものです。結局のところ、その複雑さをどのレイヤーで受け入れるかというのが、ソフトウェア開発の本質の一つではないかと思います。 DHH の主張というのは、それを薄く広く受け入れろというようになっている。 一方で TDD や DCI の仕組みって人に何かをアサインする人が全体的な整合性を整えて、あとの人は目の前の問題解決に注力するみたいな形になりがちで、中央集権的と言えると思う。 つまらない話
プログラマとして Symfony 歴は 2 年くらい(フルタイムではない) Symfony1 時代はほぼ知らない Java, Ruby, JavaScript, elisp, PHP github 上では JavaScript プログラマ? 代表作は power-assert Why Symfony? なぜ Symfony を選んだか 「コードがしっかりしている」 メンテ方針がしっかりしている(長期サポート, 後方互換性) DIベースの疎結合設計で自分でアーキテクチャを進化させやすい 中長期的な生産性が高まることを期待できる
最近、RubyやRails系の入門チュートリアルを中心にいくつかの記事があったので、知っている入門系チュートリアルを一式をまとめてみました。本当の初心者な方から、本格的にRubyを勉強したいと思う人にすっごいオススメです! (2016/02/20 17:30) 全般的に内容をリファクタリング 😎 スライド 拙著ですが、Railsをスタートダッシュして学ぶときに良さそうな記事や資料をまとめました。 Ruby 概論のスライド Spice Life CTOの五十嵐邦明さんの一橋大学での講義「Ruby概論」のスライド。 🎳 動画 Ruby入門 (全22回) Ruby on Rails 4入門 (全28回) 最初に見てほしいのがRuby/Railsのドットインストール。このあたりから少しずつ始めていくといいと思います! 🐞 ハンズオンProgate | プログラミングの入門なら基礎から学べるP
結城がMacBook Airで使っている主なソフトウェア一覧です(名前順)。 ATOK: 日本語入力 BetterSnapTool: ウインドウの便利な小技(たまに使う) ClamXav: アンチウイルス Dropbox: クラウドストレージ Evernote: クラウドにメモを保存 FreeMind: マインドマップ(たまに使う) OmniGraffle Professional: ドローソフト Growl: 通知 HyperSwitch: Command+Tabをアプリ切り換えではなくウインドウ切り換えに KeyRemap4MacBook: キーアサインの変更 Numbers: 表計算ソフト OmmWriter: 集中して書き物するエディタ(たまに使う) Perl: LL Pixelmator: レタッチソフト QuickSilver: ローンチャ Ruby: LL Safari: W
続きを書きました。 RubyでただのArrayだと思って・・の続きです。正月中に整備してgem化しました。 GrnMini ongaeshi/grn_mini Groonga(Rroonga)を簡単に使えるようにラップしたものです。 カラム指定不要でデータを追加することが出来ます。 永続化、高度な検索クエリ、ソート、グループ化(ドリルダウン)、スニペット、ページネーションなどを簡単に使うことが出来ます。 検索エンジンがすぐに作れます。 インストール $ gem install grn_mini 基本的な使い方 実体はRroongaの薄いラッパーですが難しいことを考えずに使えるよう工夫しています。 require 'grn_mini' array = GrnMini::Array.new("test.db") 初めてデータを追加する時にカラム種類を類推して作成します。追加するデータが文字列の
最近、とあるスタートアップのお手伝いを細々と続けている。自分は全く分からないのだけれども、ベンチャーの人材獲得が厳しいらしい、みたいな記事を読んでいた。そこであげられていた言語は、PHPとRubyだったが、自分はPythonを使っていて、結構仕事を探すのに苦労したりしていた。当然のことながら、自分のスキルセットが余りにもWeb向きではないし、さすがにポテンシャル云々とも言ってられない歳ではあるので、仕方ないかなと思いながら、今のベンチャーで、いろんな雑用的な仕事を行ったりしている。 で、そこのベンチャーで「Pythonの仕事なかなかないんですよねー」みたいな話をしたら、「あれ、Pythonの仕事、至る所にあるよ」と言われて、あれ、これって何かミスマッチが起きているのかなと思ったりもした。お金は寂しがり屋であるから、お金のある人のところにいくんやで、という話があったか、仕事も「元々仕事が多い
最近になって、オブジェクト指向がよくわからないという御仁とご一緒することになった。別段、それ自体が悪いことではない。確かに、その人の書いた、以前のコードというのはめちゃくちゃであった。当然のことながらif文は何十にも繰り返されているし、その中でネストが3つにも4つにも増えていくという恐るべきコードだ。そして、どうやら僕の前に、教えてくれた人がいるらしく、その人に「オブジェクト指向というのを教えてもらったから、もう少し上手く書けるようにになっている筈だ」ということを言っていた。 僕はそのことに、特段ケチをつけたいとは思わない。誰だって無知から始まる。僕もオブジェクト指向にとんちんかんなことを言って恥をかくことがある(もしかしたらこれからもね!)。無知が恥なのではなく、学ばない姿勢が恥なわけだから、僕はそういうのはいいなあ、と素直に思える。しかし、どうも僕は引っ掛かっていることがある。それをメ
書籍『Rubyソースコード完全解説』はインプレスダイレクトで御予約・御購入いただけます。 書籍紹介ページ: http://direct.ips.co.jp/directsys/go_x_TempChoice.cfm?sh_id=EE0040&spm_id=1&GM_ID=1721 HTML 版 『Rubyソースコード完全解説』の本文を HTML 形式で無償公開しています。 (2004-02-17) 全章を公開しました。 初校の修正を紙上で行ってしまったたため、現在公開しているのは初校段階の原稿です。 従って書籍では修正されているところがまだ修正されていない場合があります。 順番に修正していくつもりではいますが、いつ修正できるとは断言できません。 予め御了承願います。 なお、その逆に一部の章が出版時より新しい場合もあります。 オンラインで閲覧 tar.gz 形式でダウンロード zip 形式で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く