タグ

programmingとRubyに関するwatarumのブックマーク (21)

  • Rubyによる関数型プログラミング

    古き良き小学校の時代、この行には困惑させられたものだった。 魔術的な x が、加算されたのに等しいままでいる事に。 どういうわけか、プログラミングを始めると、それに構わなくなる。 「やれやれ、それは重大な事柄じゃないし、プログラミングとは現実のビジネス行為なんだから、 数学的な純粋さについてあら探しなんて必要無い (その議論なら、大学にいる狂った髭面野郎どもにさせておけばいい)」と思っていた。 けれども、ただ知らなかっただけで、我々が間違っていて高い代償を支払っていたのは 明らかである。 Wikipedia によれば、「関数型プログラミング(functional programming, FP)とは、 計算を数学的な関数の評価とみなし、 状態や可変データを避けるプログラミングパラダイム」である。 言い換えると、関数型プログラミングは、 副作用が無く変数の値を変化させないコードを推奨する。

  • Ruby on Rails 3.X を教えるのに困るところ - yuumi3のお仕事日記

    EY-OfficeではRuby on Rails教育を行っています。Ruby on Rails はアグレッシブにバージョンアップしていきますが、教育を行う際には毎回、最新のバージョンで教育させて頂いています。 Rails3.0では大幅な内部構造の変更、3.1ではアセットパイプラインなどの追加、3.2では遅くなった開発コマンドの高速化・・・ と改良されて行くのはRailsを使うプログラマーとしては嬉しいのですが、教育で新たにRuby on Railsを学ぶ人に教えるには困った事があります。 それは、リファレンスマニュアル(API document) が使いにくくなったことです。 リファレンスマニュアルには、2つの使い方があると思います メソッド(API)の詳細な動作、オプション等を知る Railsの各クラス、モジュールにどのようなメソッド(API,機能)が在るのかを知る 1. の方は、最近

  • RubyのWWW::Mechanizeを解説してみる古い版 - きたももんががきたん。

    【ギリシャ&トルコ】旅行記 3月の8泊9日 一人旅プラン(2025.3) 3月に、ギリシャとトルコを9日間一人旅してきました。色々プラン変更があり、ちょっと大変でしたが、過ぎてしまえばそれも楽しい思い出に。個別の内容はまた改めて書くとして、まずは記憶が消えないうちにざっと全日程の振り返りをしたいと思います。 ギリシャ&トルコ…

    RubyのWWW::Mechanizeを解説してみる古い版 - きたももんががきたん。
  • 大江戸Ruby会議01で発表してきました

    昨日は大江戸Ruby会議という名のasakusa.rbの生活発表会があったので、普段の生活で考えてることを発表してきた。ちなみに実はasakusa.rbの参加回数はそんなに多くなかったりする。当日のスライドと動画はこちら。KaigiFreaksは仕事がはやくてすごい。いつもありがとうございます! 大江戸Ruby会議01 on Vimeo この発表について何か僕にもの申したい人がいたら@ukstudioかy.akamatsu[at]ukstudio.jpまで頂けるとありがたいです。 発表内容についてちょこっとだけ書いておこうかな。パブリックスピーカーの告白で言う「講演家がこう話せばよかったと思うスピーチ」にあたる部分。 タイトルに戦略ってあるけど、正直そもそもそういったものがあるのかよくわからない。CIとかは環境の話だし、TDDとかリファクタリングとかはスキルだしでそれらが「戦略」かと言われ

  • 最速配信研究会(@yamaz)

    ミスリードを誘うタイトルでお送りしております。 トラブル対応は全く無駄だと思う。もちろん「トラブルが起きてるんだからトラブル対応しなきゃに決まってるだろ」といった話ではない。 いきなり話が変わるが、私の奥さんは看護師で、結婚当初私が風邪を引くと優しくしてくれるのかな?と思ってたけど、毎回どえらく怒られていた。曰く 風邪は基的に予防できる病気 なのに風邪を引くのは怠慢な証拠 風邪を引くと会社休まないとだし、お金も時間も浪費するので当に意味がない いや、全くごもっともでぐうの音も出ない正論としかいいようがない。 さて翻って、みなさん自身がおもりするシステムの健康をちゃんと見てるだろうか? 上記の言葉をシステムトラブルに置き換えてみよう。 トラブルは基的には予防し得る なのにトラブルを起こしてしまうのは怠慢な証拠 トラブルを起こしたら対応にかかるエンジニア工数や顧客対応の工数はドブに捨てて

    最速配信研究会(@yamaz)
  • codepad

    codepad is an online compiler/interpreter, and a simple collaboration tool. Paste your code below, and codepad will run it and give you a short URL you can use to share it in chat or email. Language: C C++ D Haskell Lua OCaml PHP Perl Plain Text Python Ruby Scheme Tcl

  • Javaの未来、RubyとJavaScriptの台頭

    オープンソースによるJavaのフレームワークである「Seasar2」の作者にして、著名なJavaプログラマのひとりとして知られるひがやすを氏が「Javaに未来はないかなと。(略)個人的には少しずつJavaから離れていっています。」という発言をパネルディスカッションでしました。昨日の記事で紹介したので、お読みになった方も多いと思います。 Javaはエンタープライズ分野に限られるようになるか Javaの将来像について、米調査会社ForresterのアナリストJohn Rymer氏とJeffrey Hammond氏が、同社のブログに「The Future Of Java」というエントリを先週末ポストしています。 彼らは、オラクルの戦略が次のようにJavaのエコシステムを変化させるだろうとしています。 Oracle’s strategy for Java will change the Java

    Javaの未来、RubyとJavaScriptの台頭
  • David Pollak氏 lift と Scala を語る

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    David Pollak氏 lift と Scala を語る
  • Lift と JRuby の統合 - Ruby と Scala 間を橋渡し

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Lift と JRuby の統合 - Ruby と Scala 間を橋渡し
  • Ruby on Railsの「えせMVC」の弊害

    先日のエントリーでも少し触れたが、Ruby on Railsの最大の問題点は、それが持つ「一見そのフレームワークがMVCの形をとりながら、MVCの最も大切なところを外している『えせMVC』である」点にある。MVC(Model View Controller)がなぜ必要かを根底の部分でちゃんとと意識せずにRailsアプリケーションを作ると、後々ひどい目に会うので注意が必要である。 その意味では「RailsでMVCを学ぶ」などもっての他だし、「JavaにもRailsと同じようなフレームワークを作って業務用アプリの開発を効率化しよう」などという発想もとても危険である。 ということで、今日はまずはMVCの解説から。 MVCの発想の根底には、「モジュール化と情報の隠蔽により、プログラムがスパゲッティ化するの(コード間の相互依存関係が複雑に入り込んでしまってにっちもさっちも行かない状態になること)を避

  • Express on railway

    Node JS* * JavaScript — prototype-based object-oriented scripting language I would like to present the result of my Christmas holidays work: super-tiny addon for Express framework, that adds some features from Ruby-On-Rails: controllers, helpers, routes, generators. Now it's on beta stage, but it is better than nothing. So, let's roll on! Installation It is fine to pull from github (less bugs, I h

  • 記号プログラミングで学ぶRuby1.9の仕様変更?? - Articles Advent Calendar 2010 Sym

    またまた再登場のid:TAKESAKOです。 今日はRuby1.8で学ぶ、簡単?!記号プログラミングから発展した話題「記号プログラミングで学ぶRuby1.9の仕様変更??」についてお話ししたいと思います。 Ruby 1.8 と 1.9 の非互換 Ruby1.8以前では ?a は'a'のASCIIコードの数値97が返されていましたが、 Ruby1.9からは長さ1の文字列"a"を返すように仕様変更されました。 これはRuby1.9からの多言語対応のためで、文字列をバイト列ではなく文字単位で扱うようになったためです。 ruby1.9> p ?a "a" ruby1.8> p ?a 97 したがって、?? は Ruby1.9では文字列"?"のことですが、Ruby1.8以前では'?'のアスキーコードである63の数値を返すことになります。 ruby1.9> p ?? "?" ruby1.8> p ??

    記号プログラミングで学ぶRuby1.9の仕様変更?? - Articles Advent Calendar 2010 Sym
  • Rails3でどう書けばいいかわからない時、参考になる7つのURL

    はじめに Rails3.0.0がリリースされて、2ヶ月(2010年10月末現在)。皆さんRails3ライフを満喫していますか? Rails3がはじめてという方、マニュアルやリファレンス探しに苦労されていませんか? Rails3でコードを書いていると、どうかけばいいのかな?ということもしばしばあって、自分なりに参照するサイトなどがまとまってきたので、今日は自分が参照する順番に、URLを晒していきます。少しでも参考になれば幸いです。 もくじ Rails Searchable API Doc Google – Search by date Rails 3 Ropes Course Railscasts – rails-3.0 episodes Ruby on Rails Guides Github – Search: rails3 example O’REILLY – Rails3 in a N

    Rails3でどう書けばいいかわからない時、参考になる7つのURL
  • 千里の道も1パッチから――コミッタライフ入門 - @IT自分戦略研究所

    今回は「コミッタに興味がある」という人のために、筆者のRubyコミッタとしての経験について紹介します。筆者はRubyプロジェクトを立ち上げたわけではないので、前者の「ほかのコミッタから認められ、推薦される」の方の紹介となります。 ■Ruby 1.9.0リリース時に「面白そう」と思ってコミット権をもらう 大学生だった2003年ごろ、わたしはCGIやテキスト処理など日々の雑務をこなすためのスクリプト言語としてRubyを覚えました。Perlと違って相性が良く、自然と身に付きました。 最初にパッチを送ったのは2005年。大学のSolarisでRubyが動かなかったときです。次は2007年。デバッグ出力用関数pを便利にする提案を行い、(Rubyプロジェクトのリーダーであるmatzさんの説得に半年かかりましたが)採用され、Rubyに思い入れがわくようになりました。 当時、Rubyは笹田耕一さんのYAR

  • プログラミング言語はLispに回帰しているんだろう - http://rubikitch.com/に移転しました

    Lispはいまだ一騎当千の最強言語の地位を不動のものにしている(と思う)が、考案されたのが50年も昔というのには驚かされる。古代の神秘という感じ。 歴史には詳しくないけど、初期のLispからlambda式やGCってあったよな?あと、Schemeも30年以上前に生まれたんだっけ。あのころからレキシカルクロージャーがあったんだよね。すごいよなあ。 RubyはLispの長所をたくさんとりいれた。Javaも最近になってクロージャーが導入されたっけ。GCは今な言語にはほぼ必ずといっていいほど備わっている。いろいろな言語がLispに近づこうとしているような。Lispの考え方からいろいろな言語が生まれて、進化の先はLispに回帰するということか… せっかく最強言語のLispがありながら、おれおれ言語がどんどん登場していくさまはおもしろい。括弧が嫌いなのかな。Lispの表現力の源はS式だというのに括弧を拒

    プログラミング言語はLispに回帰しているんだろう - http://rubikitch.com/に移転しました
  • プログラミングは人生だ――まつもとゆきひろ ― @IT

    私がプログラミングを始めたのは中学校3年生のときでした。父が買ってきたシャープのポケットコンピュータ(PC-1210)でBASICを使うようになったのです。わずか400ステップしか入力できない小さなコンピュータでしたが、それでも自分の命令したとおりに動作するポケコンを見ていると、自分にはなんでもできるようなそんな「万能感」を感じさせてくれました。 それから四半世紀以上たちましたが、私がプログラミングから感じる「わくわく」は少しも減ることはありません。むしろ、どんどん増えているように感じます。長いプログラム経験を踏まえて、いま、感じるのは、 プログラミングは人生だ ということです。プログラムには人生のあらゆる側面が詰め込まれています。文字どおり、人生そのものといってもいい過ぎではないでしょう。……うーん、やっぱり、いい過ぎかな。 プログラミングはスポーツだ 皆さんの多くは若いときにスポーツに

  • Heroku | Cloud Application Platform

    Products Discover Heroku’s AI PaaS (Platform as a Service), designed for effortless app deployment and scaling. Explore our cloud application platform features, reliable managed data services, and a robust ecosystem to power your modern applications.

    Heroku | Cloud Application Platform
  • Rubyの魔術 数々の“スペル”で高度なプログラミング − @IT

    2010/09/13 元JavaプログラマのPaolo Perrotta氏は、Rubyを使い始めた頃のことを振り返り、こう話す。 「私はJavaの世界からRubyに来た当初、とてもハッピーなプログラマでした。Rubyっていいね、かっこいいじゃん! と。ところが、最先端のイケてるライブラリの中を覗いてみたら、分からないところだらけだったんです……」。 RubyKaigi2010で「A Metaprogramming Spell Book」(あるメタプログラミング魔術の書)と題した講演を行ったイタリア人プログラマのPerrotta氏は、Ruby on Railsのソースコードを覗いてみたときの驚きをこう表現する。 「例えばalias_method_chainというメソッドは、一体どこにあるんだと探しました。どこにあるか分からないんです。こんなことJavaではあり得ません。結局、テキスト検索で発

  • 1.2.3で整えるPHP開発環境【STEP.2】 テキストエディタを決める | バシャログ。

    第2回目は、PHPでの開発に欠かせないテキストエディタのご紹介です。 メモ帳はダメなの? 普段Windowsをお使いの方に一番身近なテキストエディタといえば「メモ帳」 すでにあるのにあえて違うものをおすすめするのには理由があります。 メモ帳には文字コードは「EUC-JP」を認識できない。 メモ帳で文字コード「UTF-8」を保存するとBOMが付く。 メモ帳の改行コードは「CR+LF」に限定されている メモ帳の文字コードの判定や名前が適切でないときがある。 ※BOMとは…日国内でのみ、BOM (Byte Order Mark) がついているものをUTF-8、ついていないものをUTF-8Nとして区別することがあるが、国際的には認知されていない。 もともと8ビットを基とするUTF-8ではBOMを付与する必要はないが、UTF-8であることが識別できるようにデータストリームの先頭に EF BB B

    1.2.3で整えるPHP開発環境【STEP.2】 テキストエディタを決める | バシャログ。
  • Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)~Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」

    Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)~Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」 米サンタクララで行われていたWebサイトのパフォーマンスと運用に関するオライリーのイベント「Velocity 2010」の、Twitterのシステム運用について説明するセッション「In the Belly of the Whale: Operations at Twitter」(クジラの腹の中:Twitterでの運用)を紹介をしています。 この記事は「「Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)~ログの科学的な分析と、Twitterの「ダークモード」」の続きです。 Twitterのサブシステム「loony」「Murder」「memcached」 ここからはTwitterのサブシステムについて紹介しよう。 T

    Twitterの大規模システム運用技術、あるいはクジラの腹の中(後編)~Twitterのサブシステム「Unicorn」「Kestrel」「Flock DB」