第0回 あらためてRuby入門 まつもとゆきひろ氏自身による「Ruby入門」をお届けします。日経Linuxの連載開始前の特別企画(2005年4月号)として,Rubyが他のスクリプト言語やオブジェクト指向言語とどこが違うのか,なぜ便利なのかを中心に解説してもらったものです。 ● 基本と他言語との違い ● 実装とRuby誕生の秘密 第1回 プログラミングとオブジェクト指向の関係 プログラマを目指す人々の中にも,「オブジェクト指向は難しい」とか,「なかなか分からない」という印象を持つ方が多いようです。そこで,Rubyを題材にオブジェクト指向という考え方について説明していきます。 ● その1 ● その2 ● その3 第2回 抽象データと継承 オブジェクト指向プログラミングを構成する3原則のうち,前回は「ポリモーフィズム」を学びました。今回はオブジェクト指向の歴史を復習した後,残りの「データ抽象」と
12月にさくさくテキストマイニングで発表したpure Rubyによる形態素解析エンジンをgem化しました。 まだ発展途上で機能が少なかったりパフォーマンスが悪かったりしますが、いちおう動くレベル*1になったので公開します。 注意事項 バージョン0.0.xのうちは、インタフェースや辞書フォーマットは頻繁に変更される予定です。 ある程度安定したら0.1.0出します。 今のところ、Ruby1.9系専用です。 取得 gem install okuraでインストールできます。 ソースは https://github.com/todesking/okura 使い方 MeCabフォーマットの辞書データを使用します。 動作確認はMeCab用NAIST辞書で行いました。 最初にokura compileコマンドで辞書をコンパイルします $ okura compile mecab-naist-jdic-0.6
そもそも、マルコフ連鎖とは何なのか?全く聞いたこともなかった。そして、文章を要約するのはとっても高度なことだと思っていて、自分のレベルではその方法を、今まで思い付きもしなかった。 しかし、以下のようなシンプルなRubyコードでそれが出来てしまうと知った時、目から鱗である...。一体、何がどうなっているのだ?コードを追いながら、マルコフ連鎖を利用するという発想の素晴らしさを知った! 作業環境 MacBook OSX 10.5.7 ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0] mecab utf8環境でインストール済み マルコフ連鎖に出逢う rssを流し読みしていると、以下の日記に目が止まった。(素晴らしい情報に感謝です!) MeCabを使ってマルコフ連鎖 一体何が出来るコードなのか、日記を読んだだけではピンと来なかっ
WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 一歩進んだ Web アプリケーション活用術 ほんの数年前まではお世辞にも使いやすいとは言えなかった Web アプリケーションですが、現在ではブロードバンド回線の普及や Ajax 技術の確立などで、デスクトップアプリケーションに勝るユーザビリティーを獲得しつつあります。このような Web アプリケーションの発展は、 WebOS 実現への重要な一歩と言えます。同時に、
自作Webアプリケーションのデプロイ先として Rackhub というのが新たな定番になると思っているので、このたび Kyoto.pm *1 で布教してきました。スライド: http://speakerdeck.com/u/cside_/p/vpsdotcloudrackhubRackhub: http://rackhub.net/Rackhubとは一言でいうと「環境構築済みのVPS」です。その何が新しいのか、何が嬉しいのか、など詳しいことは資料の方へ盛り込んだので、ぜひお読みいただければと思います。 ここからは参加しての個人的な感想になります。皆それぞれに問題意識を持っていて、それを解決するためにがっつり一人の時間を取るようにしているのだなぁと改めて感じました。僕は週5フルタイムでバイトしていたときは業務終了後や週末はぶっちゃけ結構だらけてしまっていたけど、今日紹介されてたライブラリやサー
Twitterのタイムラインが面白すぎて、ついうっかり言語を擬人化して脳内で言語女子会なるものを開いてしまいました。なお、登場人物と実在の人物は1対1に対応しません。 undefinedとnullの両方必要なの? とあるプログラミング言語が集う女子会にて: Perl: そういえばさ、なんでJavaScriptちゃんってundefinedとnullの両方もってるの? JavaScript: えっ、未定義の変数にアクセスした時undefined返したいじゃない? Python: 例外投げて死ねばいいじゃん Ruby: 例外投げて死ねばいいよね Python & Ruby: ねー♡ Java: いやそこは参照型ならnull、数値型なら0で初期化すべきでしょ C: これだから最近の若い子は…初期化にだってコストが掛かるんだからね!デフォルトで初期化するなんて無駄遣いよ!必要な人だけが責任をもって初
衝撃を受けたできごと 最近Rubyを勉強しています。 JavaやC#でオブジェクト指向プログラミングの基本はマスターしてるから、Rubyもそのあたりは楽勝〜!・・・と思っていたら、JavaやC#の常識が全く通用しない振る舞いに遭遇してかなり衝撃を受けました。それは、 privateメソッドはサブクラスからも呼び出せる ・・・ということです!!がーん。 たとえば、JavaやC#だと自分のクラス内でprivateメソッドが使われていない場合、不要なメソッドとして削除できます。(リフレクションを使って呼び出される可能性はここでは無視ね) しかし、Rubyでは誰かがサブクラスを作って呼び出している可能性があるので、privateメソッドを削除する場合は注意が必要です。メソッド名を変更する場合も同様ですね。 また、知らずに親クラスと同名のprivateメソッドを定義すると、予期せず親クラスの実装をオ
Elixir の読み方は多分「エリクサー」。RPGゲームのアイテムにありそうな名前だ。 個人的には「エリクシール」と読みたいところだが多分「エリクサー」で良いだろう。 Elixir は最近になって開発が活発化しており、公式サイトも最近立ち上げられたようだ。 http://elixir-lang.org/ つい先週のことだが Github でも公式にサポートされている。 Elixir is officially supported on Github! Including file identification and syntax highlight: github.com/languages/Elix… — Elixir Lang (@elixirlang) March 5, 2012 ここにきて盛り上がってきた感があるので、作者である José Valim が約1年前に書いた Why
[追記]本エントリは2012年のものです 2019年1月現在おすすめの学ぶ方法は Ruby on Rails チュートリアル:実例を使って Rails を学ぼう をやることです。こちらは有志によって作成・翻訳されている素晴らしい教材で、RailsだけでなくGitやテストといったことも学べます。盛りだくさんですのでおすすめは最初はGitやテストについては無視して1周やってみて、わかったらそれらも含めて2周目をやるという方法です 以下オリジナル記事 前回のエントリは僕が新しく請求書管理サービスmisocaを手伝ってくれる人にRailsを教えたときに思ったことだ。(追記:その人はプログラミングは十分わかってる人だ) 一応アンサーエントリとして、次に教えるならこうするというのをメモしておく 準備 Windowsで開発しない(Windowsの人はVMWareなどでUbuntuとかのLinux環境をい
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
a side-by-side reference sheet sheet one: version | grammar and execution | variables and expressions | arithmetic and logic | strings | regexes | dates and time | arrays | dictionaries | functions | execution control | exceptions | threads sheet two: streams | asynchronous events | files | file formats | directories | processes and environment | option parsing | libraries and namespaces | objects
ここ数日 ruby をやってるんですけど、ruby といえばテストらしいので Test::Unit やら RSpec やらを調べてました。しかし僕はこれまでまともな TDD をやってこなかったので、先にテストとは何ぞや?TDD とは何ぞや?ってのを調べたりしていました。 この記事は、ずぶの TDD 素人がテストについて知り始めたまとめです。 1. きっかけは RSpec のドキュメント そもそも RSpec の↓紹介文の冒頭から意味不明に感じたんです。 FAQ:「RSpec って、要は Test::Unit でやっていることを別の書き方にしただけでは?」 この FAQ への短い答えはイエスです。 『スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)』 Rubyist Magazine えっ... じゃあ要らんやろソレ。いちいち手作業でチェック
Railsでアプリを作ったら公開したくなるのが人情ですよね。 だけど、安いホスティングサーバとかだと、使える環境が限られていたり、セットアップが面倒だったり・・・必死こいてセットアップしても、本気で運用するとなると、そんな環境だと不安だらけだし・・・かといって、AmazonEC2で運用するだけの気合いもない。GAE/Jを使って、JRubyってのもな〜・・・ 私もそんな感じでしたが、そんな折に、mat_akiに、Heroku(ハーオークーと読むらしい)を教えてもらいました。 実は、Herokuって、ずいぶん昔に話題になって、知っていたんですが、その時は、「WebブラウザでRailsアプリが開発できる〜」みたいな感じだったんですよね。それだとEmacsで良いよ。と思ってスルーしていたんですが・・・どうやら、サービスの定義?内容?が変ったようです。 今までのWebブラウザRails開発環境は、”
Github に脆弱性。やった人は Rails に有りがちな脆弱性を issue に挙げていたが相手にされず、実際にそれを突いてきた。一見 childish だが、それだけ簡単に脆弱な実装がなされてしまうということだ。週明けの今日、Rubyist はまず関連情報に一読を。 — Yuki Nishijima (@yuki24) March 4, 2012 気になって調べたのでメモ。自分も気をつけないとなー。 Public Key Security Vulnerability and Mitigation - github.com/blog/ github に脆弱性があってそれが突かれたらしい。 Rails アプリにありがちな脆弱性の一つ、Mass assignment とかいうタイプの脆弱性である。 mass assignment 脆弱性とは mass assignment 脆弱性とは何か、
みなさんがmacを買う理由の1つにherokuを使ってRailsの開発がしたいというのがあると思います。そこで、今回はmacを買ってきてherokuにdeployするまでの手順を書いてみました。念のため、手元のマシンでLionをクリーンインストールしてからの手順を記述しています。 買う もしmacを持っていなければ、今すぐ近くのmacが売っていそうなお店(そこらをぶらついているときにmacを売っているのを見たことありますよね!そこに行くんです!)で買ってきて下さい。ネットで買うといますぐこの記事に書いてあることを試すことができません。しかし、もうすぐ新しいmacとか出そうだから落ち着いた方がいい感もあるので、その辺は自己責任で判断しましょう。 ソフトウェアアップデート これしないと不安。しましょう。(アップデート後に再起動を促されることも多いと思います。) iTerm2 iterm2を入れ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く