Rubyの生みの親Matzことまつもとゆきひろさんの講演「20代エンジニアのためのプログラマー勉強法」に行ってきました。 supporterzcolab.com 6月にもMatzの「若手エンジニアの生存戦略」と言う講演を聴いてきました。扱うテーマは若干違いますが、そこに共通して現れている価値観は共通するものがたくさんありました。 2つの講演から「パターン認識」しながら聴いていました。 「若手エンジニアの生存戦略」に関する感想&メモはこちらからぜひご覧ください。 【まつもとゆきひろ氏特別講演】若手エンジニアの生存戦略 に行ってきた感想&講演内容メモ - kumatirablog 以下、講演中や後に感じた雑感と、取っていた講演メモをまとめます😃 感想 超超超超当たり前だけど、Matzのセッションはわかりやすかった。内容によって緩急がつけられていて、話の流れを聴衆に感じさせていた。抽象的でわ
4月16日、一般社団法人新経済連盟主催、経済産業省後援「新経済サミット2013」が開催された。新経済サミット2013は、産業界および政官界へ意識改革を促すためのアクションとして始動したイベント。既存の仕組みにとらわれない海外の企業やサービス動向を基に、日本における環境整備や教育の在り方がディスカッションされた。 セッション1では、Androidの生みの親 アンディ・ルービン(Andy Rubin)氏、Twitter共同創業者 ジャック・ドーシー(Jack Dorsey)氏、Skypeで世界をつないだ ニクラス・ゼンストローム(NiklasZennstrom)氏らがスピーカーとして登壇し、それぞれがイノベーションを起こすまでの歩みが語られた。 一方、セッション2では、海外のイノベーション事例と対比し「日本から破壊的なイノベーションを起こすには?」という観点からディスカッションが行われた。海
「気分やノリがソフトウェア開発には重要だ」と断言し、そこに注目して自らRubyを開発してきたまつもとゆきひろ氏は、どのようにしてプログラマに育ち、Rubyを生み出し、そして開発を続けてきたのでしょうか? 今や日本初のオープンソースソフトウェアとして100万人規模のユーザを持つRuby。数々の賞を受け、なおも変化と成長を見据えるまつもと氏が日本最大のゲーム開発者向けカンファレンス「CEDEC2011」にて、自らの若かりし日々から長いRubyの開発の歴史とそこで培われたコンセプト、そして未来への展望までを余すところなく披露してくれました。「Ruby開発が教えてくれたこと」と題されたこの講演の全内容は以下から。 まつもと: はじめまして、まつもとゆきひろです。 最近はRubyを開発した人ということで有名になりましたが、Ruby自体ゲームのソフトウェアというより、それを動かすサーバとして使用して頂
<< 2010/11/ 1 2 3 4 5 6 7 8 9 10 11 12 1. [Ruby]RubyConf 2010 キーノート(1) 13 1. [Ruby]RubyConf 2010 キーノート(2) 14 1. [Ruby]RubyConf 2010 キーノート(3) 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 >> _ [Ruby]RubyConf 2010 キーノート(1) New Orleansで開催されているRubyConf 2010に来ています(執筆時点では既に終了)。 で、今回のRubyConfはキーノートが3つもあるという豪華版でした。 ひとつは1日目最初のDave Thomasによるもの、 次は2日目最初のDavid Heinemeier Hanssenによるもの、 最後が2日目最後の私によるものです。
プログラムの高速化については本連載の第13回で紹介しています。プログラム中のどの部分を高速化すべきなのか,どのように効果を測定するのか,そもそも高速化が必要なのかを考察しました。今回は実際に高速化を試みます。 今回はプログラム高速化の実践編として,ある程度の大きさの具体的なプログラムを段階的に高速化しながら,実践的なテクニックを学ぶことにしましょう。 例題はマンデルブロ集合*1の計算プログラムです(図1)。マンデルブロ集合は非常に美しい集合ですから,本当はグラフィックス表示が好ましいでしょう*2。しかし,GUIを使うと,特定のGUIライブラリ(グラフィックス・ルーチン)に依存したコードが大量に必要です。今回のテーマは「高速化」ですから,直接関係のないGUIコードはできるだけ省くため,キャラクタ(英文字)で図形を表現することにしました。 1 require 'complex' 2 3 def
<< 2009/10/ 1 2 3 1. [言語] the 0.8 true language 4 1. ロンドン地下鉄 5 6 7 8 9 10 11 12 13 14 15 16 1. 日本経済新聞夕刊「拓くひと」 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >> _ 日本経済新聞夕刊「拓くひと」 16日の日経夕刊に(恥ずかしい写真と共に)私を扱った記事が掲載されている。 検閲と戦ってきた歴史を持つからか、新聞記者はけっして事前に記事を見せてくれることはない。 間違いが訂正できないんだけどなあ、と不満を持つこともあるが、 まあ、「言論の自由」のために払うべきコストなのかもしれない。 というわけで、補足と訂正。 「松江発」 ご存じのように、私は現在松江に住んでいますが、Rubyを作り始めた時には浜松、 最初に公開した時には名古屋に住んでました
Ruby onRailsをはじめとする最近のWebアプリケーション・フレームワークの多くは,MVCと呼ばれるデザイン・パターンを採用しています。今回は,このMVCパターンの「正体」について考えます。 MVCはGUIを備えたプログラムを設計する際の指針となるデザイン・パターン*1の一つです。「モデル」(Model),「ビュー」(View),「コントローラ」(Controller)という3つの構成要素の頭文字から命名されました。多くのデザイン・パターンはプログラムの一部のみの構成を決めています。しかし,MVCはアプリケーション全体の構成を決めることが多いため,「アーキテクチャ・パターン」と呼ばれることもあります。 MVCは,元々プログラミング言語Smalltalkにおいて,ウインドウ(GUI)を持つアプリケーションを構築する際の指針として誕生しました。 MVCを発明したのは,当時,米Xero
<< 2008/02/ 1 1. [言語] 「ハッカーと画家」の著者が新しいLisp系言語「Arc」を公開 | エンタープライズ | マイコミジャーナル 2. 「セキュリティ、なめんなよ!」 なめねこも一緒に情報セキュリティ強化宣言 | ネット | マイコミジャーナル 3. 「サイオステクノロジーはグルージェントの未来技術に期待し子会社化」:ITpro 2 1. [Ruby]Nimble Method: Garbage Collection is WhyRuby onRails is Slow: Patches to Improve Performance 5x; MemoryProfiling 2. [言語] LuaJIT roadmap 2008 3. [Ruby] What will Matz do? 4. [Ruby] EURUKO 2008 −EuropeanRuby
<< 2008/01/ 1 1. 年賀状 2. ゴビウス 3. [Ruby] ZSFA --Rails Is A Ghetto 2 1. 新年会 3 4 1. The Mythical 5% 5 6 7 8 1. [言語] Substroke Design Dump 2. [言語] Aprogramming language cannot be better without being unintuitive 3. [OSS] McAfee throws some FUD at the GPL - The INQUIRER 9 1. [言語] Well, I'm Back: String Theory 2. [言語] StringRepresentations - The Larceny Project - Trac 10 1. [Ruby] マルチVMでRubyを並列化、サンと東大が
2007/12/25 「そういえばあのretryの話、どう思う?」、「誰も使ってないから害悪が多いっていう話は説得力ありますよね」、「じゃあなくすか……、うん、なくしといて」、「あ、決まっちゃった(笑)」――。 まつもとゆきひろと、笹田耕一。いま、世界が注目するプログラミング言語「Ruby」の生みの親と、開発コアメンバーの2人は、こともなげにRubyの仕様を記者の目の前で変更してしまった。Rubyの開発はどのように行われ、どこへ向かおうとしているのか。現行のバージョン1.8系から大きく様変わりする次期開発版「Ruby 1.9」のリリースを12月25日に控えた2人に、師走の秋葉原で話を聞いた(文中、敬称略)。Rubyの仕様は密室で決まる!? 冒頭に紹介した2人の会話は、「retry」というRubyの文法の2種類ある使い方のうち、これまでほとんど使われた形跡がない方を文法仕様から取り除くかど
2007/11/26 2007年11月24日、「楽天テクノロジーカンファレンス2007」において、Ruby言語の開発者で楽天技術研究所フェローのまつもとゆきひろ氏は、開発中の大規模分散処理基盤「Roma」(ローマ)と「Fairy」(フェアリー)のコンセプトを語った。研究段階ではあるものの、米グーグルなど世界トップクラスのネット企業だけが持つ大規模分散処理技術に真っ向から挑戦する試みだ。 米グーグル、米ヤフー、米アマゾンなど世界トップクラスの大手ネット企業は、巨大なトラフィックに対処するため、大規模データセンターの信頼性、可用性、性能などを確保する大規模分散処理基盤の研究開発を進めている。最近では、こうした大規模分散処理基盤は“ウェブOS”と呼ばれることもあり、注目を集めている。つまり世界トップクラスのネット企業は“ウェブOS”を自社開発しているわけだが、楽天でも国産の“ウェブOS”が生まれ
LinuxのようなUNIX系OSでは,ファイルに対する操作と同様にネットワーク通信を行うために,「ソケット」と呼ばれる仕組みを使います。今回はソケットについて学びましょう。 コンピュータは「電子計算機」という和名が示す通り,本来は高速に計算するための機械でした。しかし,現在のコンピュータは,Webブラウジングや電子メールのやり取りなどに使われることが多く,ネットワークと切り離すことができません。最近は「コンピュータを使う」ことと「ネットワークを使うこと」がかなり同義になっているのではないでしょうか。 今回は,ネットワークを介した通信の基礎になっている「ソケット」という概念を紹介します。 ディスクリプタでアクセスが単純に ソケットはネットワーク通信に用いるファイル・ディスクリプタ(file descriptor)です。そこで,ソケットの説明に入る前に,より一般的なファイル・ディスクリプタにつ
プログラムの高速化はプログラマにとって永遠の課題です。しかし,そこには知られざる暗黒面が隠れています。そもそも高速化に意味があるのかを調べなければなりません。次に,どの部分をどの程度高速化するのかが重要です。アルゴリズムの効率にも目配りが必要です。 コンピュータの処理速度は驚くべき勢いで向上しています。現在私たちが使っているパソコンは一昔前のスーパーコンピュータをしのぐ性能を備えていますし,半世紀前に登場したばかりの計算機と比較すると数十万倍の性能に相当します。 このように高速なコンピュータを持っているにもかかわらず,人間の欲望は限りがないものです。プログラムの実行速度はプログラマにとっての永遠の課題のようです。プログラムを高速化していると,「そんなに急いでどこに行く」という気になることもあります。 今回は,プログラムの高速化にまつわるさまざまな「秘密」と「限界」,そして「戦略」について解
ネットワーク応用通信研究所 特別研究員。島根の田舎に住みながら国際的なオープンソース・ソフトウエアの開発に挑むプログラマ。家族6人で幸せな田舎暮らしを満喫している。バグと原稿の締め切りがなければもっと幸せなのに,と思いつつ,考えてみれば,それらがないならないで,別の困ったことがあるよなあと思う今日このごろ。 皆さんは「サピア・ウォーフ仮説」をご存じでしょうか。これは言語学における古典的な仮説の一つで,「人間の思考は使用する言語とそれに付随する文化に影響を受ける」というものです。もし仮に数字を3までしか持たない言語があったとすると,その言語を使用する文化に生まれ育った人間は3以上の数を認識できない,といったことです。言語学的にはこの仮説は否定されているようですが,日常生活の中では,この仮説が本当ではないかと感じる経験がたびたびあります。 例えば,私は年に数回海外に出張して講演をする機会があり
<< 2007/04/ 1 1. エープリルフール 2. [Ruby] オブジェクト指向機能を取り除いたRuby-- が登場!? 2 1. [教会] セミナリー1日目 2. LMLML 3. [Ruby] 最速配信研究会 - なんだかいろいろ申し訳ない気分になった話 4. [Ruby] Headius: ActiveRecord 100%, Performance Doubling,Java Support Improving 3 1. [Ruby] Bitwise Magazine:: What's Right WithRuby? 2. [OSS] オープンソースソフトウエアがビジネスの成長を加速 3. Passion For The Future: なぜ株式投資はもうからないのか 4 1. [Ruby]Rails 1.2と1.1、速いのはどっち? -Railsbenchによる
「ガーベジコレクション」「リフレクション」「アスペクト指向」「クロージャ」「イテレータ」「型推論」など、近年、プログラミング言語の世界に新しい概念が続々となだれ込んでいるように見えます。しかし、この背景には、実はあまり知られていない歴史が隠されているのです。 新潮流の実体 前回紹介したように、「知られざる言語」で熟成された機能が、メインストリームの言語に続々と取り込まれているのが「新潮流」の真実だったわけです。メインストリームの言語しか見ていなかった人にはまったく新しいものに見えますが、実際にはもう何年も何十年も使われてきた技術だったのですね。 ここにきてなぜ、新技術がメインストリームに取り込まれるようになったのか、はっきりとした理由は分かりません。しかし、おそらくは以下のような原因があるのではないでしょうか。 1.コンピュータの性能向上 ハードウェアの進歩による性能向上で、以前は受け入れ
近ごろプログラマーかいわいで、「関数型プログラミング言語」という言葉をよく耳にするようになった。本連載では、プログラミング言語を取り巻く状況をあらためて俯瞰し、プログラミング言語開発の現場で何が起こっているのかを解説する。 はじめに 「ガーベジコレクション」、「リフレクション」、「アスペクト指向」、「クロージャ」、「イテレータ」、「型推論」など、近年、プログラミング言語の世界に新しい概念が続々となだれ込んでいるように見えます。しかし、これら「プログラミング言語の新潮流」の背景には、実はあまり知られていない歴史が隠されているのです。 プログラミング言語のメインストリーム プログラミング言語はお互いに影響を与えながら成長しています。プログラミング言語の歴史において、主要な言語がどのように影響を与えたかを、概略図に示しましょう(図1)。スペースの関係上この図では非常に簡略化しています*が、実際に
インタビューは、松江駅すぐ近くにある「松江オープンソースラボ」で行った。ここは、オープンソースソフトウェアの研究・開発・交流の拠点として、2006年夏、松江市が開設。地域ブランドの創生を目指す「Ruby City MATSUE」プロジェクトを展開するために、企業、技術者、研究者、学生、ユーザーの交流の場として使われている Q そもそもどうしてプログラミング言語を作ろうと思ったのですか? 端的に言ってしまえば、プログラミング言語が好きだったからでしょうか。 若い頃から関心があって、高校生ぐらいの頃からいつか作りたいと思っていました。もともと、プログラム言語に限らず“ことば”に興味を持っていて、ずっと小さな頃には、いつか自分で自然言語みたいなものを作ってみたいと思っていたんです。 高校生ぐらいの頃にBASICなどを使うようになり、Pascalなどを本で勉強して、自分の考えていることをデザインし
第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基本と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く