タグ

Rubyに関するm4ilndsのブックマーク (21)

  • Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD

    (訳注: 2016/3/2、頂いたフィードバックをもとに記事を修正いたしました。) Ruby on Railsは最近、急激に注目を集めていますが、その原因はほとんど、この言語が斬新なテクノロジーとしてもてはやされたことと、タイミングにあります。技術的な優位性は時間の経過とともに失われますから、タイミングがよかっただけでは、一過性のブームに終わり、このムーブメントの隆盛は長続きしません。従って、「Railsがいかにして、適切な技術としての位置を維持し続けるるだけでなく、影響力とコミュニティを拡大し続けてきたのか」をより多くの人に説明していく必要があります。そして、その維持・拡大を可能にした/していく要因は、物議を醸すことさえあるRailsの基原則にあると考えています。 この基原則はここ10年ほどの間に進化を続けてきましたが、最も強固な柱となっているルールはやはり、公開当初から制定されてい

    Railsの基本理念 : Railsの生みの親が掲げる8つの原則 | POSTD
  • RubyとPythonにおけるガベージコレクションの視覚化 | POSTD

    稿は、ブダペストで開かれたイベント「 RuPy 」で、Pat Shaughnessyが披露したプレゼンの内容をまとめたものです。 プレゼンの映像はここ から視聴できます。 稿は当初、 同氏の個人ブログ に投稿されましたが、同氏の了承を得て、Codeshipに再掲載します。 このイベントは「RubyPython」に関するカンファレンスなので、RubyPythonでは、ガベージコレクション(以下「GC」)の動作がどう違うのかを比較すると面白いだろうと私は思いました。 ただしその題に入る前に、そもそもなぜ、GCを取り上げるのかについてお話しします。正直言って、すごく魅力的な、わくわくするテーマではないですよね? 皆さんの中でGCと聞いて、心がときめいた方はいらっしゃいますか? [実はこのカンファレンス出席者の中で、ここで手を挙げた人は数名いました!] Rubyコミュニティで最近、Rub

    RubyとPythonにおけるガベージコレクションの視覚化 | POSTD
  • Ruby2.2 ではアレが死ぬほど使いやすくなるの! - Qiita

    そうです、Matrix(行列)クラスに色々入る予定のようです. .... いやもっと伝えるべきモノが他にあるとの怒号が今にも聞こえて来そうですが... 「すみません今日の所は行列の紹介をさせて下さい.」 多くの方は興味もないであろうけど、 Rubyには行列やベクトルを扱う Matrix クラスというものがありまして、 Ruby2.2では色々新機能やバグfixが入るようです. 「行列ベクトル演算するならRubyよね」 と言われるくらいのモノにはなるのではないでしょうか? 日はRuby2.2以前にあるものも含めMatrixのマジですごい所を紹介します. 使わないともったいない!すごいMatrix, 楽しく学ぼう! 1. LU分解 LU分解が出来るという事は... n元連立方程式をいとも簡単に解く事が出来ちゃうの # 2x + y = 2 # x + 2y = 3 Matrix[ [2, 1]

    Ruby2.2 ではアレが死ぬほど使いやすくなるの! - Qiita
  • Rubyの面白さを理解するためのメソッド、ブロック、Proc、lambda、クロージャの基本

    連載目次 連載7回目に当たる前回「Rubyのオブジェクト指向におけるクラスとモジュール、継承、Mixin、アクセス制御の使い方」では、Rubyのオブジェクト指向言語としての一側面を形作る、クラスやモジュールの概要と基的な書き方を説明しました。 クラスやモジュールを駆使して、プログラムを適切に部品化して再利用したり、コードの重複を防ぐことは、Rubyで大規模なアプリケーションを作成するために役立ちます。 連載8回目に当たる今回は、メソッドやブロックといった仕組みについて掘り下げていきます。以降の連載で解説するメタプログラミングを学ぶ上での基礎知識となるので、しっかりと学んでいきましょう。 オブジェクトに干渉するための唯一の方法「メソッド」 メソッドは、Rubyにおいてオブジェクトに干渉するための唯一の方法です。これまでの連載では、メソッド以外のテーマに焦点を当てて解説するために深く言及せず

    Rubyの面白さを理解するためのメソッド、ブロック、Proc、lambda、クロージャの基本
    m4ilnds
    m4ilnds 2014/09/30
  • Procを制する者がRubyを制す(嘘)

    RubyのProcの説明は巷に溢れているから今更感があるけどここ数回Procを使ったネタを書いていたらProcがかわいくなっちゃってもっとみんなにもProcのこと知ってもらいたいという欲求が生まれてきたからProcについての基的なことを僕なりのやり方でここに書くよ。長いよ。 Rubyの関数(メソッド) Rubyにおいて関数(メソッド)はファーストクラス(オブジェクト)ではありません。つまり文字列や数字や配列などの他のオブジェクトとは異なって、Rubyではそれを直接変数に代入したり、他の関数に渡したりすることはできません。 def square(n) n * n end sq = square # squareメソッドを変数sqに代入してみる # ~> -:1:in `square': wrong number of arguments (0 for 1) (ArgumentError)

    Procを制する者がRubyを制す(嘘)
    m4ilnds
    m4ilnds 2014/04/29
  • Ruby製の構文解析ツール、Nokogiriの使い方 with Xpath - プログラマでありたい

    RubyHTMLやXMLをパースする構文解析ツールの定番は、Nokogiriです。スクレイピングする際の必需品で、なくてはならないモジュールの1つです。ただ色々なことが出来る反面、どこから取りかかれば良いのか解り難い部分もあります。自習を兼ねて、Nokogiri概要と主要な機能を紹介してみます。 Nokogiriとは何か? ReademeによるとNokogiriとは、「HTMLとXMLとSAXとXSLTとReaderのパーサー」で、特徴としては、XPathCSS3セレクター経由で探索する機能を持つことのようです。他にもHTMLやXMLのビルダーの機能を持っていますが、HTMLとXMLのパーサー(構文解析器)と覚えておけばよいでしょう。 Nokogiriのクラス構造 Nokogiriは、なかなか巨大なライブラリです。10以上のモジュールと70以上のクラスで構成されていて、yardでダイア

    Ruby製の構文解析ツール、Nokogiriの使い方 with Xpath - プログラマでありたい
  • Webアプリ開発をする上で読むべき本とか - catatsuyとは

    Web アプリ開発をする上で読むべき基的なは無いかと聞かれて,すぐに出てこなくて困った 今後もそういうことを聞かれることもあるかもしれないので個人的にまとめておきたい 基的には何かを作ってみて,習うより慣れろの精神で行くのがいい 最近は Ruby on Rails が流行りな気もするのでその辺りで役に立ちそうなサイトを紹介する Ruby on Rails チュートリアル:実例を使って Rails を学ぼう サクサク引ける Rubyリファレンスマニュアル bbatsov/ruby-style-guide Rails のチュートリアルはたくさんあるので他にも読んでみると良いかもしれない ただ Ruby on Rails が簡単というのはウソ - #生存戦略 、それは - subtech に書かれていることを全部やろうとすると絶対にハマるので分かるところから少しずつやるといい それと We

    Webアプリ開発をする上で読むべき本とか - catatsuyとは
  • Rubyで自然なDSLを作るコツ:値を設定するときはグループ化して代入 - ククログ(2014-02-13)

    最近、fluent-plugin-droongaという分散データストリームエンジンを書いています。その中で、RubyでDSLを実現するときに工夫していることに気づきました。それは、値を設定するときは代入する字面にするということです。代入する字面にするために、グループ化用のオブジェクトを作っていました。 これだけだとどういうことかわからないので、具体例を示しながら説明します。 RubyとDSL Rubyを使っているとRubyで実現されたDSLに触れることが多くあります。RubyのMake実装であるRakeの設定ファイルもそうですし、ライブラリー管理ツールのBundlerの設定ファイルもそうです。 Rakeの場合:

    Rubyで自然なDSLを作るコツ:値を設定するときはグループ化して代入 - ククログ(2014-02-13)
  • Rubyのチートシート 変数 / クラス / モジュール

    Rubyをさわり始めた時に戸惑ったインスタンス変数やクラスインスタンス変数なんかのためのチートシート。変数、クラス、モジュールの使い方についてざっとまとめてみた。RailsでGemばっかり使ってると忘れるんだよなー。 登場人物はこんな感じです。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 9

    Rubyのチートシート 変数 / クラス / モジュール
    m4ilnds
    m4ilnds 2014/02/05
  • Jenkinsでテストを実行してみよう+Rubyテストの基礎(RSpec&Turnip使用) - Build Insider

    Jenkinsを使って小さなテストを自動実行して、開発スピードを飛躍的に向上させよう。また、MacでのRubyRails環境の構築方法から、テストフレームワーク「RSpec」とインテグレーションテスト環境「Turnip」を使ったテストの書き方までを解説する。 ← 前回 連載 INDEX 次回 → 前回の記事を読んでJenkinsの環境を構築することはできただろうか? 今回は簡単なサンプルアプリケーションの作成を行ってみようと思う。同時に、Rubyの標準的なテストフレームワークのRSpecと、インテグレーションテスト環境であるTurnipを使ったテストの書き方を解説する。作成したテストを、Jenkinsを使って自動実行できるようになれば、あなたの開発スピードは飛躍的に向上することだろう。 Railsの開発環境を構築しよう 2013年10月にリリースされたMac OS X 10.9(通称Ma

  • Jenkinsをインストールして使ってみよう[Mac/Linux/Windows]

    継続的インテグレーションツール「Jenkins」の使い方を基礎から解説する連載がスタート。初回は、Jenkinsの概要とインストール手順、簡単なジョブの登録方法を説明する。 連載 INDEX 次回 → Jenkinsとは何か? 「Jenkins」というツールをご存じだろうか? 情報に敏感な読者であれば「継続的インテグレーション(CI)」という言葉とともにネット上で一度や二度は見たことがあるかもしれない。しかしながら「継続的インテグレーション」という言葉の難解さや「Javaで作成されている」という点で、敷居が高く感じられ、導入を見送っているプログラマーの方もいるのではないだろうか。 そんな方々にとって、連載がJenkinsを使うきっかけになれば幸いだ。連載では、Jenkinsの使い方を基礎から説明する。その説明用のプログラミング環境としてはRubyを採用しているが、他の環境の方にも参考と

    Jenkinsをインストールして使ってみよう[Mac/Linux/Windows]
  • Node.js を選ぶとき 選ばないとき

    JavaScript はある程度 読み書きできる人 を対象に、Node.js および npm を実際に使ってみます。 環境は何でもよいのですが、今回は Windows 環境で Visual Studio Code という エディタ を利用して、コンソール に "Hallo World" を出力する プログラム を作成します。 このスライドで Node.js を始める足掛かりが得られる ハズ。

    Node.js を選ぶとき 選ばないとき
  • Ruby 2.1 のすべて [PDF]

    Ruby 2.1 のすべて Koichi Sasada Heroku, Inc. ko1@heroku.com tochigirubykaigi05 2013/09/21 1 About this presentation • In this presentation, I will show you about Ruby 2.1 which I know. tochigirubykaigi05 2013/09/21 2 Ruby 2.1 release plan announcement “I, Naruse, take over the release manager of Ruby 2.1.0 from mame. Ruby 2.1.0 is planed to release in 2013-12- 25. I‘m planning to call for feature prop

    m4ilnds
    m4ilnds 2013/09/22
  • Rspec/Capybara/Turnipの入門記事を全力でまとめてみた - 酒と泪とRubyとRailsと

    Rspec/Capybara/Turnipの入門記事を全力でまとめてみた Aug 30th, 2013 Tweet さっき、『 The Rspec Book』を読み終えました。厚めのですが、RspecやCucumber、Webrat、Seleniumなどを活用するためのノウハウ満載で大満足でした! ということで、こので読んだ内容を忘れないようにするためと、その過程でRspec/Capybaraなどのネット資料をあつめたので、まとめるためにこの記事を書きます。もし、間違いを発見した場合や他にもいいリソースがあれば、是非メッセージを願いします! テスト駆動開発(TDD)と振る舞い駆動開発(BDD) テスト駆動開発(TDD)とは、コードを書く際に最初にテストを書き、次にテストが通る最低限のコードを書き、その後にリファクタリングしていく開発手法です。一方で振る舞い駆動開発(BDD)はTDDの発

  • Ruby中級入門

    Ruby中級入門 1. Ruby中級入門 @shokai 2013年8月5日(火) @masuilab 2. 私 •@shokai (しょうかい) •趣味料理、glitch 3. ある程度大きなアプリケーションを作 っていると、部品に分割したくなると 思います。アプリ内ライブラリやgem の作り方を説明します。Rubyの機能を 活用した使い勝手の良いライブラリの デザインについて考えます。 4. • アプリ内ライブラリの作り方・gemの作り方 • サンプルコードとテスト • ライブラリのデザイン • API • DSL • 泥臭い小手先の技 • 例外・エラーの通知 • ドキュメント コンテンツ 5. ライブラリを作る 例:LeapMotionを自作アプリに組み込むための アプリ内ライブラリを作る 6. • LeapMotionはport 6437にWebSocket 接続するとJSONで

    Ruby中級入門
    m4ilnds
    m4ilnds 2013/08/05
  • 例外設計の話

    例外設計の話。 こんな指針がいいのかなー 2013 夏 ver. 例外の目的とは? 「例外をキャッチする主な目的は、エラーの原因を取り除いて、回復すること」 via http://dobon.net/vb/dotnet/beginner/exceptionhandling.html .NET の「例外のデザインのガイドライン」にもこう書いてある。 特定の例外が特定のコンテキストでスローされる理由を把握できている場合は、その例外をキャッチするようにしてください。 回復可能な例外だけをキャッチする必要があります。たとえば、存在しないファイルを開こうとした場合に発生する FileNotFoundException は、アプリケーションで処理できる例外です。それは、アプリケーションがユーザーに問題を知らせ、ユーザーが別のファイル名を指定したり、ファイルを作成したりできるようにすることが可能だからで

    例外設計の話
  • Learn Ruby on Rails as You Modify a Craigslist Clone

    What to expect in this guide People start learning Rails for all sorts of reasons. Whether you have been programming for years and want to give web development in Ruby a try, or you are a complete coding newbie wanting to see if programming is for you, Rails is a great tool to learn. Most of the resources in this guide assume no programming knowledge — more advanced readers may choose to skim the

    Learn Ruby on Rails as You Modify a Craigslist Clone
    m4ilnds
    m4ilnds 2013/07/28
  • Ruby on Rails チュートリアル:実例を使ってRailsを学ぼう - Michael Hartl (マイケル・ハートル)

    Ruby on Rails チュートリアル プロダクト開発の0→1を学ぼう Railsチュートリアルとは?

    Ruby on Rails チュートリアル:実例を使ってRailsを学ぼう - Michael Hartl (マイケル・ハートル)
  • Jose Valim、Rubyにおける並行プログラミングのためのいくつかのアイデアを提案。~ RubyKaigi 2013 基調講演 2日目 | gihyo.jp

    RubyKaigi 2013 レポート Jose Valim、Rubyにおける並行プログラミングのためのいくつかのアイデアを提案。~ RubyKaigi 2013 基調講演 2日目 2013年5月30日~6月1日の3日間、お台場にある東京国際交流館にてRubyKaigi 2013が開催されています。基調講演をそれぞれレポートします。 2日目の基調講演の演者はJose Valimです。司会の角谷さんにより「再起動したRubyKaigiの基調講演に最もふさわしい人物の一人」と紹介をされたJoseは、Rubyにおける並行プログラミングの可能性について話しました。 自己紹介 Joseは、2006年からRubyを書き始めたそうです。それからOSSにも深く関わっており、2010年からRails coreチームにジョインしています。そして、Elixirという言語の作者でもあります。ElixirはErla

    Jose Valim、Rubyにおける並行プログラミングのためのいくつかのアイデアを提案。~ RubyKaigi 2013 基調講演 2日目 | gihyo.jp
    m4ilnds
    m4ilnds 2013/06/02
  • RとRubyによるデータ解析入門

    人気の高いオープンソースのツール、RとRubyを使い、生データを処理し、シミュレーションし、仮説を立て、統計的手法を用いて検証する、というデータ解析の基の理解を促します。基が学べるだけでなく、自分のメールボックスや自分の心臓の鼓動など身近な題材を対象としており、データサイエンスの醍醐味を味わうことができる一冊です。日語版ではさまざまな統計分析手法についての入門となる章を追加。こので使っている統計の基礎も学べる構成になっています。プログラマ視点で書かれた書は、ビッグデータを活用するためのスキルを身に付ける必要に迫られた多くの開発者にとっても貴重な情報源となるでしょう。 関連ファイル サンプルコード 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すで

    RとRubyによるデータ解析入門
    m4ilnds
    m4ilnds 2013/04/12
    y