松江発のプログラミング言語「Ruby(ルビー)」を開発した、まつもとゆきひろ氏が新しいバージョンとなる「ルビー3.0」の開発に着手した。12日に松江市で開幕した「Rubyワールドカンファレンス」の基調講演で、IT(情報技術)環境の高度化・複雑化にルビーを対応させる実験を進めていると述べた。1993年に開発を始めたルビーは、設計仕様を公開する「オープンソース」として多数の技術者が改良に参加してい
電子書籍、全文検索、Webアプリケーションといった現代技術を組み合わせる(無いものは自分でソフトウェアを書いた)ことで理想の読書システムを構築することができた気がしたので紹介します。 1. 購入 コンピュータ関連の書籍は Gihyo、オライリー、達人出版会などほとんどがDRMフリー(mobi, epub, pdf)で購入できる。後で検索できるようにしたいので、できるだけpdfがついてくるものを買う。 洋書はThe Pragmatic Bookshelfを定期的にチェックしている。PayPalのアカウントを持っているとあまり知らない出版社から購入するときでも安心。 電子版がないけどPCで読みたいもの、最初はどうしても紙で読みたいものは自炊する。 2. 読む 本当は紙の本で読みたいのだが、ペーパーバック+電子書籍で安く買えるプランがあまりないので電子書籍で買ってKindleで読むことが多い。S
はじめに 9月4日(金)の夜から6日(日)にかけて、積読消化合宿というのをやりました。積読合宿とは、技術書なり小説なり、買ったことに満足して読み終わっていない本、いわゆる積読を消化することを目的に温泉旅館に篭って本を読むことです。 場所 温泉で有名な熱海にしました。理由は色々とあるのですが、 温泉があること 金曜日の夜に移動しても十分早い時間に到着すること 料理が美味しそうなところ といった感じで適当にネットで引っかかった場所を選択して、泊まることにしました。今回は湯宿一番地さんにお世話になることにしました。 www.yuyado-ichibanchi.jp いわゆる開発合宿ですと、 無線LANが整備されていること 机と椅子があること って言ったこともポイントになるのですが、各人思い思いの本を読むだけでしたらそういう点は考えなくてOK。普通に旅行気分で行きました。 本 今回、読もうと思って
マルチスレッドでgetaddrinfo(3)するとたまにTemporary failure in name resolution (EAI_AGAIN) で失敗します。 自分は↓な環境で確認しました。 CentOS 6.5 glibc-2.12-1.149.el6_6.5 こういうコードで再現します。(ruby 2.1.4で確認) なお、便宜的にrubyで再現コードを書いていますが、該当環境であれば言語問わずマルチスレッド+getaddrinfo(3)の組み合わせで発現する問題です。 対処法は、 glibc glibc-common glibc-devel glibc-headers nscd のrpmをCentOS 6 Updatesにあるバージョン 2.12-1.149.el6_6.9 のに上げればOKです。 ちなみに自分は、Chef実行時にたまにberksのAPIサーバーの名前が引け
イタリア・ローマ中心街の自宅に到着し、支持者に手を振るイタリアのシルビオ・ベルルスコーニ元首相(中央、2015年3月11日撮影)。(c)AFP/FILIPPO MONTEFORTE 【3月12日 AFP】未成年買春と職権乱用の罪で起訴され、最高裁で無罪が確定したイタリアのシルビオ・ベルルスコーニ(Silvio Berlusconi)元首相(78)が、無罪確定から24時間もたたないうちに「みんなにブンガブンガを!」と約束し、政治家としての復活をアピールした。 政界復帰は困難と主張する専門家もいるが、ローマ(Rome)の別邸に到着したベルルスコーニ氏は、熱狂的な支持者数十人の歓迎を受けた。伊メディアによるとベルルスコーニ氏は「私はこの記憶を心に永久に持ち続ける」と語り、さらに贈り物に対するジョークとしてこう続けたという「だが、今は感動はこれで十分だ。みんなにブンガブンガを!」 ベルルスコーニ氏
RailsがMySQLのcollationをサーバー側のデフォルトのutf8_general_ciからutf8_unicode_ciにわざわざ変えてるのどうせ大した理由じゃないだろと思って掘ってみたらやっぱり大した理由じゃなかった… https://t.co/6NeetGhTF0— Ryuta Kamizono (@kamipo) April 18, 2014 Railsでcollationとしてutf8_unicode_ci(RailsのDEFAULT_COLLATION)が採用されるのはcharsetが未指定もしくはutf8(RailsのDEFAULT_CHARSET)のときだけで、utf8mb4にすることとかは全く考慮されてない。— Ryuta Kamizono (@kamipo) April 19, 2014 @frsyuki MySQLのcharset utf8のときのデフォルト
一見Emailアドレスにマッチする正規表現を組み立てるのは簡単そうに思えますが、RFC 5322に厳密に準拠した正規表現を創りだそうとするととんでも無い努力が必要となるようです。 「Email Address Regular Expression That 99.9% Works」は、様々なプログラミング言語ごとに、Emailアドレスに99%マッチする正規表現を掲載したサイトで、例えばPerl 5.10より前のバージョンのPerl用として、掲載されている長大な正規表現を見れば、その難易度の高さを確認することができます。 正規表現にはなんの解説もなくどのような意図をもって作られたのか説明はありません(よって99%マッチするかどうかは本当のところは不明)。ちなみに日本語で読める貴重な情報「Perlメモ」では、「perl5.6.0以前の perl ではメールアドレスの正規表現を正確に記述すること
まつもと ゆきひろ1965年大阪府生まれで、4歳の頃から鳥取県米子市で育つ。筑波大学卒業後、数社を経て(株)ネットワーク応用通信研究所に入社。プログラミング言語「Ruby」の生みの親として知られる。島根県松江市在住で、Ruby開発の功績から同市の名誉市民にも選ばれた。 まつもとさんのブログ『Matzにっき』twitter 世界中に大勢のユーザーを抱える、日本産プログラミング言語 Ruby。その開発者である まつもとゆきひろ さんに、Ruby 開発の裏側と成功までの道のり、そして未来を生き抜くエンジニアさんへのアドバイスを伺いました。 プログラミングとの出会いは、父が買ってきたポケコンのBASICー プログラミング言語に興味を持ったキッカケはなんですか? 私が子供の頃は、コンピュータって全然一般的ではなかったんですよ。ものすごく尖った人だけが、NECのPC-8001 や SHARP の MZ
https://twitter.com/ccc_privacy_bot 作った経緯 Tカードが個人情報を提携企業に提供開始 個人情報提供の停止 手続きガイド|CCC カルチュア・コンビニエンス・クラブ株式会社 ツタヤTカード、勝手に個人情報を第三者へ提供?規約改定炎上騒動の真相 CCCに聞く | ビジネスジャーナル 個人情報提供の中止はいつでもできるが、「提供先企業は随時増える」「提供先企業が増えてもCCCからは通知は来ない」「新規企業は何もしないとデフォルトで個人情報提供する設定」というユーザフレンドリーじゃない仕様 毎日PDFをチェックしにいくほど暇じゃないのでボット作るか という感じ ボット自体は半月くらい前にはできてたのですが、2回目以降のCCCの更新が取得できるまで公開を控えていました。 【追記】「個人情報」について 語弊あったようなので捕捉 「個人情報」とは言っても、個人情報そ
皆さんの得意なプログラミング言語はなんでしょうか? 「弘法筆を選ばず」というように、優秀なエンジニアになればなるほど特定言語に対するこだわりはなくなるように思いますが、やはり一番書きやすい言語や自分に合う言語というのもはあるものだと思います。 今回はそんなプログラミング言語の人気ランキングを、サーバサイド中心に希望者数、経験者数、求人票登場数、利用者数、優秀者数、世界的な人気などの、6つ角度で調べてみました。 ※paizaのデータについては今回サーバサイドを中心としているのでJavaScriptは省いています。また選択肢として最近paizaで追加した言語も省いています。 ■転職時に希望する言語ランキング paiza登録エンジニアが「どのような開発言語の求人を希望するか」のランキングです。今後経験を深めたい言語ランキングとも言えるので、今後のシェアに近いかもしれません。 ※paizaのプロフ
技術的負債をなくすには http://apps.wiki.fc2.com/wiki/%E6%8A%80%E8%A1%93%E7%9A%84%E8%B2%A0%E5%82%B5%E3%82%92%E3%81%AA%E3%81%8F%E3%81%99%E3%81%AB%E3%81%AF C# Objctive-cだけ使う VisualStudio Xcodeだけ使う VisualStudio Xcodeを機能をフル活用する WindowsServerを使う 一定のシェアを獲得したDBを使う デザパタを覚える コミュニケーションはOffice 365やredMine,イラレGit Svnを使う 社会的に技術的負債をなくすには 動的言語は使わない。 動的本をすべて捨てる(人の手に渡るような捨て方はしない ちり紙交換がよい) 動的DBは使わない。リレーションのない動的DBは使わない(mongoDBや
とにかく小さくて安いのに、ほぼArduinoとして使える。 そしてズボンのコインポケットに入れて持ち歩けるので電車内hackに便利。 Digispark購入ページ DigiSpark wiki ソースコードはここに置いておいた。 デジタル出力・アナログ出力・アナログ入力・Mac上のRubyとのUSB通信を試した。 https://github.com/shokai/digispark-study 「webサービスと連動したちょっとしたハードウェア」にはArduinoはオーバースペックだと思うので、DigiSparkちょうどいいと思う。 普通のArduinoとの違い 詳しくは digispark:tutorials:basics [Digistump Wiki] 多少制限はある。 IOピン数が6本、PCとUSB通信する場合は4本しか無い プログラムを書き込めるメモリ領域が6Kbyteしかない
正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlやPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/
■ HTTPでHashやArrayを送る手法に仕様は存在しない……の? jQueryでこんなふうに書くと: $.post('/', { hash: { foo: 'hoge', bar: 'fuga'}, array: ['baz', 'piyo'] }); サーバ側でこんなふうに受け取れて(これはSinatra): post '/' do params.each do |key, val| puts "#{key}: #{val} as #{val.class}" end end ちゃんとHashやArrayとしてアクセスできる: hash: {"foo"=>"hoge", "bar"=>"fuga"} as Hash array: ["baz", "piyo"] as Array ああこりゃ便利だね、で済ましてもいいんだけど、HTTP POSTの中身なんてただのバイト列なんだから型の情
Vagrant と Chef Solo ってとてもベンリそうに見えてたのですが、ネット上にあるのは断片的な情報が多かったり、そもそもいろんなやり方があって混乱してたので、サックリ始めるためのチュートリアルを書きました。これをきっかけにベンリな Vagrant ライフを堪能して頂ければ幸いです。 [追記10/10/2013] Window 上の Vagrant でも問題なく動きました。ただ1点注意があって、UAC のポップアップに反応しないと、Vagrant か VirtualBox 側でタイムアウトになってしまうので、ポップアップを見張るか、放置したいなら一時的に無効にしておくとよいです。 [/追記終わり] [追記 10/23/2013] VirtualBox 4.3 だとまだうまく動かないようです(私も host-only adapter の作成で VirtualBox 側のエラーになり
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く