http://amarettotonic.hatenablog.com/entry/20140105/1388908133
スマートフォンやタブレットなどのモバイルデバイスは、PCのキーボードに比べて文字入力がしづらいと感じる場合があるため、モバイルデバイス用のキーボードでは、巻き取り式のものや、紙に印刷して使えるキーボードなど多くのソフトウェアキーボードではない物理キーボードがあれこれと考案されています。そんな物理キーボードで、人間工学に基づいた画期的なデザインかつ、QWERTY配列の操作感で使える物理キーボードが「TREWGrip」です。以前にKickstarterで出資を募集していたものの、資金が集まらずプロジェクトは頓挫したかのように見えていたのですが、見事に自力で製品化直前まで到達しています。 TREWGrip Mobile QWERTY http://www.trewgrip.com/ TREWGripの表側はこんな感じ。真ん中がモバイルデバイスのマウントスペースで、キーボードは右と左に分かれたデザ
pplog は Twitter ログインからメールアドレスログインに移行します pplogをすでにご利用中でメールアドレス未設定の方は、ログイン後「設定」→「メールアドレス設定」からメールアドレスを登録してください。 引き続き pplog を安心してご利用いただくために、お早めの登録をお願いいたします。 詳しくは、 ログイン方法の変更と今後の方針について をご確認下さい。 pplogでは、いろんなことができません。 つながれない ともだちや好きな人のポエムを購読することができます。でも誰に読まれているかはポエムの持ち主にはわからないので、気軽に好きな人のポエムだけ読めます。 のこせない 自分のポエムページには最新の一件だけが出ます。過去のポエムは、自分しか読むことができません。ポエムごとのURLもありません。 しゃべれない コメント欄もありません。 ボタンであしあとをつけることができます。
Matthias Günther uses Leanpub to publish this book independently. You can too! Learn more or sign inview your profile. "Padrino - The Ruby Web Framework" Unpublished Getting started with the great Padrino framework for crafting web applications. by Matthias Günther Are you interested in this book, ? Encourage the author by stating how much you’d likely pay for the ebook when it’s published. Intere
続きを書きました。 Ruby Advent Calendar 22日目の記事です RroongaというRubyで使える全文検索エンジンがあって愛用しているのですが、使う前の準備でカラム指定やデータ型を指定したり、全文検索のためのインデックステーブルを作るのが少し大変でした(大規模なアプリケーションの時はしっかり定義出来るので便利なのですが)。 普段使いで全文検索するために、実験的にRubyのArrayのように使えるようにしてみました。 インストール Rroongaを使うにはgemのインストールが必要です。他の全文検索エンジンと違ってそれ以外のソフトウェアのインストールが不要なのがいい所です。Windowsでも問題なく動きます。 $ gem install rroonga 今回書いたコードは以下にまとめてあります。 ongaeshi/grn_array - GitHub $ git clon
昨年末に株式会社はてなを退職しました。2008年の京都移転直後のインターンに参加し、2009年に新卒入社したので、5年くらいはてなに関わっていたことになります。 このエントリでは、自分がはてなでやったことと、エンジニアとしてのロールモデルを持つことができたこと、コミュニティ活動ついて、そして今後について書きます。 はてなでやったこと 最近ではスマートフォン系の仕事が多かったのですが、入社当初は運用を担当していました。たくさんのサービスを担当しているチームで、ここで様々なコードに触れた経験が今振り返ってみるとすごく良かったと思います。とにかくコードをたくさん読みました。 同期入社には既に実績がある人が何人もいて焦る一方、自分はテストを書いているつもりがDBのデータを消していたり、社内のメールを止めたりとひどいミスを連発していて、今思い出しても冷や汗が出ます。 その後 はてなキーワードフィーチ
3年ほど前に、Ruby製のクローラー"anemone"を紹介しました。その当時から完成度が高く、Rubyでクローラーを使う場合はanemoneを利用してきました。最近、他に新しくて良いのがないか調べましたが、機能面の網羅性という意味でanemoneを超えるものは見つけられませんでした。そこで改めてanemoneのソースを読んでみたところ、クローラーが必要とする機能を必要最小限で実装され、やはり中々良い出来です。冬休みの宿題ではないですが、勉強の意味を兼ねてソースを追っていくことにします。 Anemoneが利用しているライブラリ一覧 anemoneが利用しているライブラリは、4種類に分類できます。 Ruby標準or一般的なライブラリ データ取得で利用しているライブラリ データ解析で利用しているライブラリ データ保存で利用しているライブラリ この分類別に構造をみるとわかりやすいので、順番に追っ
ちょっと前に試そうと思って、そのまま放置していたruby製のクローラー「Masque」を試してみました。ruby製のクローラーは、他にはAnemoneという優秀なものがあります。その上で何故というと、Anemoneにはない特性があるからです。 MasqueはCapybaraのDSLで記述出来るWebクローラーです。つまりCapybaraを動かす為のものなので、JavaScriptも解釈が出来るということです。また場合によっては、レスポンシブルデザインのサイトの確認も出来ます。一方で、Anemoneはあくまで個別個別のHTMLを取得する為のクローラーなので、JavaScriptを多用しているサイトでの情報取得に向きません。どちらが優れているという訳ではないので、用途に応じて使いこなせばよいでしょう。 Masqueのインストール $ gem install masque Fetching: h
Webサイトの調査をしようと思い、サイトクローラーが必要になりました。 各言語ごとに色々あるので何を使うか悩むところですが、Rubyでお手軽にということでAnemoneを採用しました。 ちなみに他の言語だと、下記のうちのどれかが良いのではないでしょうか? Java:Nutch、S2Robot Perl:Gungho 余談ですが日本語で検索する場合、WEBクローラーで検索するかWEBスパイダーで検索するか悩みます。英語だとWeb SpiderかWeb Crawlerです。どちらかといえばWeb Spiderが一般的のようです。日本だとWEBクローラーの方が目的のものに辿り着きやすいような気がします。うーん、悩ましい。 Anemoneのインストール手順 Anemoneは、nokogiriを使います。 nokogiriが入っていれば、すんなりインストールも出来ると思います。 ちなみにnokogi
最近のRubyのクローラーは、EventMachineを使って並列化するのが流行のようです。EventMachineは、非同期処理をお手軽に実装できるフレームワークです。Rubyのスレッド機能との違いは、Reactorパターンを使いシングルスレッドで実装している点です。こちらのブログが詳しいので参考になります。 「見えないチカラ: 【翻訳】EventMachine入門」 EventMachineを使うと、イベント・ドリブンの処理を簡単に実装出来ます。使い方は簡単ですが、通常の同期処理やスレッドをつかった処理に比べると、どうしてもコードの記述量は多くなります。今回の例である並列化してクローラーを走らせるという用途であれば、短時間で多くのサイトにアクセスするのが目的です。イベント・ドリブンで並列化処理を実装するのが目的ではないはずです。その辺りの面倒くさい処理を実装したライブラリがcosmic
I’m Joel Spolsky, a software developer in New York City. More about me. Read the archives in dead-tree format! Many of these articles have been collected into four books, available at your favorite bookstore. It’s an excellent way to read the site in the bath, or throw it at your boss. Ready to level up? Stack Overflow Jobs is the job site that puts the needs of developers first. Whether you want
JavaScriptでリアクティブっぽくとにかく短くシンプルにビューが書けるライブラリを作った。 mizchi/horn.js https://github.com/mizchi/horn.js 名前は背骨とか角とかっぽければ何でもよかった。 方針 Angularっぽいユーザー定義のdirective Knockout.js っぽいデータバインド Backbone風の軽量なAPI 依存はjQueryのみ とにかく短くビューのコンポーネントの塊を書けるのを目的とした。UnityとかFlashのコンポーネントに影響を受けている気がする。 HTMLのテンプレートによって、ビューがどういう属性を持つか決定される。それをJavaScriptから使う。 インストール bower install horn 使い方 こんな感じでテンプレートを用意する <div data-template-name="st
あけましておめでとうございます。NAVERまとめのフロントエンドを担当している縣です。初詣で引いた大吉のおみくじを握りしめながら今年も張り切っていこうと思います。 今回はJavaScriptの遅延ロードの仕組みをNAVERまとめに導入した際のお話を紹介します。 遅延ロードの検討 昨年NAVERまとめのまとめ閲覧ページや、まとめ編集ページでのJavaScriptファイルの読み込みを遅延ロード化する作業をしました。元々はページ読み込み時に全て読み込ませていましたが、JavaScriptファイルが巨大になってきてパース・実行に時間がかかるようになったことから遅延ロードを検討することになりました。 遅延ロードの利点というとJavaScriptファイルの読み込み・実行によるブラウザのレンダリング停止を防ぐのはもちろんですが、どのファイルがいつどこで必要になるかを明確にすることもでき、依存関係を動的
Rails 3.1 以降で良く使われるようになった therubyracer ですが、最近、これを含む bundle install がやたらと時間がかかったり、あるいはそもそも失敗してしまう、という事象が多数報告されています。 解決方法 以下の三つの方法が基本的な解決方法です。 その0 (※ 2013/1/11 追記) Gemfile にて、libv8 3.11 系を使用することを明記します*1 *2 gem 'therubyracer', '0.11.1' gem 'libv8', '~> 3.11.8.13' その1 Gemfile にて、 therubyracer のバージョンを 0.11.0beta8 に戻します gem 'therubyracer', '0.11.0beta8' gem 'libv8' その2 Gemfile にて、 therubyracer のバージョンを 0
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く