タグ

ブックマーク / yamitzky.hatenablog.com (4)

  • 通信系テストのためのサイトのススメ:example.com、httpbin.org、badssl.com - 病みつきエンジニアブログ

    HTTP通信の機能を持ったプログラムをテストするときに、どこにアクセスするか、迷うことがある。(モックが使えるならそれがいいけど) そんなときにおすすめな、example.comとhttpbinとbadssl.comを紹介してみる。 example.com 名前がそのままだが、example.com はちゃんと動くサイトである。よくサンプル文字列として(例えばメールアドレスとかで)仕込んでたのだが、最近まで当に生きたサイトだとは知らなかった。 亜種に example.org とか example.netもある。RFC 2606に定義されているそうで、第三者に悪影響が及ばないことを保障することができるとある。Wikipediaにも記事がある。 ただ、あくまで普通のウェブサイトであり、「403をテストしたい」といった特殊なテストには合わない。そんな人にhttpbinをおすすめしたい。 htt

    通信系テストのためのサイトのススメ:example.com、httpbin.org、badssl.com - 病みつきエンジニアブログ
  • Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ

    今まで何度もスクレイピングとかクローリングをしてきたので、マエショリストの端くれとしてコツを公開すべきかなあ、と思い、公開します。 今日の題材は、CNET Newsです。私はウェブ文書にタグ付けをするという研究をしているのですが、そのための教師データとしてクローリングをします。 photo by Sean MacEntee 要件定義 CNET Newsから全ニュースを保存し、その文をデータベースに保存します。これは、次のようなフローに書き下すことができます。 全URLを取得し、データベースに保存 データベースにある全URLをダウンロードする 保存した全ページを解析して、文をデータベースに保存する という流れです。これらは独立していますから、それぞれどの言語で解析しても構いません。しかし後述しますが、「あとから追いやすくする」「適材適所」といったあたりを気をつけて、言語選択をするべきだと

    Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ
  • もっともっと良いコーディングをするための勘所8つ - 病みつきエンジニアブログ

    先日とあるコードレビューを拝見することがあったのですが、それにインスパイアされて記事を書いてみます。レビュワーの方が言ったことも含んでいますが、それと必ずしも一致するものでもありません。 Objective-Cのコードで書いていることが多いですが、わりと一般論だと思います。 photo by Hugo-photography 命名規則は言語の「普通」に任せる 例えば、Objective-Cだと変数にはcamelCaseを使うことが多いです。逆にRubyではsnake_caseを使ったりします。もしくは、略語を使うとか使わないとか、そういう違いもあります。 変数名に対してどういう書き方をするかというのは、個人の好みではなく、言語の慣習に任せるのがいいのではないかと思います。 言語の慣習の調べ方は、Githubで「stars:>100」と検索して、言語を絞るといいでしょう。(参考:Rubyの例

    もっともっと良いコーディングをするための勘所8つ - 病みつきエンジニアブログ
  • middlemanを使ったフロントエンド開発 - 病みつきエンジニアブログ

    middlemanというものが、静的なサイト(html/css/jsだけのサイト)を作るのに、かなーり便利です (これを使って性的なサイトを作りました) 何が便利かというと 開発用サーバーになる テンプレートエンジン(erb) coffee scriptやscssなどを自動で変換 もちろんコンパイルもできる 画像の圧縮とかもできるみたい などなど。イメージとしては、Ruby on Railsから、ウェブアプリ的機能を抜いたものというか、 静的なサイト用の機能を抜き出したものというか、ざっくりとテンプレートエンジンみたいな感じ(正確にはSinatraと言ったほうがいいのだけど)。 ようするに、coffee scriptとかsass使うなら超便利よ!みたいな感じ。 静的なサイトを対象としているので、基的にはRubyプログラマーである必要はないです。 基的には 404 Not Found

    middlemanを使ったフロントエンド開発 - 病みつきエンジニアブログ
  • 1