随時更新していきます。 モダンなPerlの開発環境の構築方法 モダンなPHPの開発環境の構築方法 モダンなPythonの開発環境の構築方法 モダンなJavaの開発環境の構築方法 モダン(かもしれない)なEclipse環境(Java)の構築方法 モダンなC, C++の開発環境の構築方法 モダンなMySQLの開発環境の構築方法
最近発表されて、一部で話題を呼んでいるTwitterの新しいStreaming API「ChirpUserStreams」。 まだdeveloperへのpreviewリリースということでプロダクトに使うようなことはできないけど。 http://apiwiki.twitter.com/ChirpUserStreams 今までのStreaming APIでは基本的に public timelineから、指定したキーワードを含む発言を拾う 指定したユーザーの発言を拾う というものだった(はず)。検索系としては便利だけど、home_timelineのように自分がフォローしているユーザーの発言をStreamingで得ようとすると全idを繋げたものをリクエストパラメータとして送らないといけなかったりで、あまりカッコよくない形になってしまっていた。 ところが今回使えるようになった「ChirpUserSt
なにかと BK がつきまとう携帯サイト開発ですが、「これを入れると携帯対応ができます」的な単一の何かに乗っかった形ではなく、『各課題をそれぞれモジュールで解決する』という方向のサンプルサイトを作ってみました。 MobileCat 実はモバゲー、mixi はじめ Perl はそうとう携帯サイトの裏で動いていますが、いかんせん各社歴史が古いからかほとんどが独自の Web フレームワークで動いてるんですよね。そこをふまえ、今のところ一番一般的である Catalyst を使ってみています。 Mobile + Cat[alyst] なので MobileCat。名前から発想した後付けで、デザインをネコにしたり適当なネコ語になるようにしてみた。ネコは林くんに描いてもらった。 サイトは絵文字変換のテストが楽にできるよう twitter 的なもので、無駄に端末 ID 認証やメールで投稿できる機能が入ってたり
7月21日に開催された「PHPカンファレンス2008」では、午後のメインセッションに「激論! PHPの次に学ぶ言語はこれだ」と題したパネルディスカッションが開催された。パネラーとして登場したのは、PerlからShibuya.pmの竹迫良範氏、日本Rubyの会の高橋征義氏、日本Pythonユーザ会の柴田淳氏、JavaからはSeasarプロジェクトのひがやすを氏、そしてJavaScriptはあまちゃん(id:amachang)氏(Shibuya.js)という豪華な顔ぶれとなった。司会はPHPユーザ会の個々一番氏が担当した。 PHPは動的なウェブページ制作用のサーバサイド・スクリプト言語として歴史もあり、初心者から大規模開発を手がけるプロフェッショナルまで広い層に支持されてきた。しかし一方で、PHPユーザーにはPHPしか知らない(他のコンピュータ言語を利用したことがない)ひとが多いのではないかと
開発部・システム運用グループの長野です。5月15日・16日に東工大大岡山キャンパスで開催されたPerlのカンファレンス、YAPC::Asia 2008に参加してきました。2日目にはセッションの時間を2つ頂いて、発表をしてきたのでその資料を公開します。 ■memcached in mixi [pdf] memcachedはmixiのシステムでも重要なアプリケーションの1つになります。発表ではmemcachedの基本から、弊社でのmemcachedの事例、そして分散方法の改善、TokyoTyrantの活用事例について説明させて頂きました。発表の最後時間が足りなくなり説明できなかったスライドも含まれていますのでご覧下さい。 memcachedについては、研究開発グループのtmaesakaによる記事が、またTokyoTyrantの活用事例については、こちらの記事にもありますので参考にして頂けたら幸
Webサイトをケータイからのみアクセス可能にする方法 2008-01-09-4 [Tips] ケータイ(およびモバイル検索用クローラ)からのみ アクセス可能にする方法のメモ。 ケータイ用サイトにPCサイト用のクローラが来ると、 重複判定されがちで(そういうサイトなのです) SEO 的にアレなので、 ケータイ世界とPC世界をきっちり分断したい、遮断したい、 というのがモチベーション。 私のモバイルサイトでやっている方法ですので、 完璧なものではないし、完璧に近いものでもありません。 とはいえ、実はこのくらいで十分な気がします (モバイルまわりは良く分からないので根拠なしですが)。 ■ .htaccess SetEnvIf User-Agent "J-PHONE" jph SetEnvIf User-Agent "SoftBank" sb SetEnvIf User-Agent "Vodafo
前回は、Perlモジュールである「Web::Scraper」を使ったスクレイピングについて説明した。Webページ(HTML)は、「構造」と「デザイン」面で比較的分離が進んできたため、CSSセレクタによるスクレイピングが有効であることが分かったはずだ。 今回の最終回では、コンテンツの自動収集と統計手法について考えてみよう。 記事内で扱っていくのは、幾つかのコンテンツをたどって、「利用頻度の高い語句を集め、話題となっているキーワードを見つけよう」というものだ。 話題のキーワードを集める手法 近年ブログのポータル上などでは、話題となっているキーワードを「利用頻度に応じたフォントサイズ」で示し、クリックすると該当の記事一覧が表示されるという仕組みが実装されているものが多い。 オルタナティブ・ブログにも似たようなものとして「話題のキーワード」が見られる。キーワードをクリックすると、Googleによる
Shibuya Perl Mongers 2代目リーダーにして,ppencodeの作者。広島市立大学卒業後,大企業向けmod_perl製品の開発に従事。2005年よりサイボウズ・ラボ株式会社に入社。LL Ringに参戦。Namazu for Win32,Plagger,Ajajaのコミッターでもある。 CGIといえばPerl。そんな風にいわれていた時期もありました。レンタル・サーバーのCGIで手軽にPerlが使えたこともあり,ちょっとした掲示板のスクリプトやアクセス・カウンタなど,CGIプログラムの多くがPerlで書かれていました。このためPerlが爆発的に普及したのです。Perlは日本のインターネット黎明期を支えたプログラミング言語として,広くその名が知られています。 その半面,Perlで書かれたプログラムの保守性に悩む声も聞かれるようになりました。事実,Perlのプログラミング経験が少
携帯電話各キャリアは、そのゲートウェイのIPアドレス帯域を公開しています。 DoCoMo au SoftBank WILLCOM 携帯ブラウザからのアクセスの場合、このIPアドレスがソースアドレスとなるので、アクセス制御や判別のために使っている方は多いのではないかと思います。 今回は、このIPアドレス帯の更新を効率的に確認する方法についてのお話です。 更新されたかどうかの確認だけならアンテナ系のWebサービスを使えばよいのですが、それだけだと、 どのIPアドレス帯が追加・削除されたのかわかりづらい。 IPアドレス帯のコピペが面倒くさい。 といった不満点があります。 そこでNet::CIDR::MobileJPというPerlのモジュールの出番です。(作者はモバイルファクトリという会社の方のようです) このモジュールには与えたIPアドレスが携帯かどうかを判別する機能があるのですが、次のようにす
日記だけで4億件のデータ ミクシィが運営するSNS「mixi」は、2007年7月末段階でユーザー数が1110万人。人が12人集まれば、1人はmixiユーザーというわけだ。ユーザーのアクティブ率(ログイン間隔が3日以内)は約62%と高く、2007年4月から6月の月間平均ページビューは117.5億に達した。日記だけでも4億件以上に上るなど、蓄積するデータ量も莫大。2004年3月のサービス開始から、わずか3年半で現在の巨大コミュニティーへと発展したのだ。 ミクシィは、「LAMP(OSのLinux、WebサーバのApache、DBMSのMySQL、開発言語のPerl、PHP、Python)」と呼ばれるWebシステム向けの標準的なオープンソースソフトウェア(以下、OSS)でシステムを自社開発し、安価なPCサーバを1000台以上連ねる超分散構成でmixiのサービスを支えている(広告配信など周辺機能では
はじめに OpenIDは最近非常に注目が高まっている認証技術の一つです。ここでは、OpenIDを利用したPerlのサンプルを通じてOpenIDのメカニズムに触れていきたいと思います。必要な環境 Perl 5.8以上が動作する環境が良いと思います。基本動作の確認はMac OS Xを利用しましたサンプルの紹介 早速サンプルコードの「openid-test.cgi」を見ることにしましょう。このサンプルはOpenIDを利用した簡易ログインページです。 #!/usr/bin/perl use strict; use warnings; use CGI; use Net::OpenID::Consumer; #use LWPx::ParanoidAgent; use LWP::UserAgent; my $query = CGI->new; $query->charset('utf-8
久末です。宣伝とフォローです。 WebSiteExpertというWeb制作者向けの雑誌にPlaggerについての記事を書きました。 Web制作者向けということで、Plaggerそのものの説明、比較的簡単なPlaggerのインストール方法、 そして、Plaggerでクチコミを収集するサイトを自動生成するという3つの話題を扱っています。 Plaggerを知らない方、難しそうで敬遠していた方、インストールに失敗してあきらめてしまった方や、クチコミ情報をチェックしたい勤勉なWeb屋さんの助けになるようにできるだけ図を多く使って表現しました。 src=”http://g-ec2.images-amazon.com/images/I/31jfbcjnSpL.jpg” height=”160″ width=”113″ alt=”Web Site Expert #12″ title=”Web S
2007年05月21日04:00 カテゴリLightweight Languages そろそろPHPに関して一言いっとくか こんな記事まで出ていることだし。 [ThinkIT] 第1回:今だからこその「PHPのすすめ」 (1/3) プログラムをたしなまない方にご注意: こちらのPHPとはちょっと違います:-p finalventの日記 - そろそろPHPに関してもう一言いっとくか 各論 使うは天国、インストールは地獄 PHPが一旦インストールされたら、それを使うのは確かに簡単だ。普通にHTMLを書く感覚で <p>以下の環境変数が設定されています:</p> <pre> <?php while(list($k, $v) = each($_SERVER)){ echo "$k=$v\n"; } ?> </pre> とか書けばいい。しかし、PHPでいろいろやるためには、実際にはさまざまなライブラリ
Perl、PHPでGooglebotを一定の確率ではじく 2007-05-01-2 [Programming] 「動的生成ページへのGooglebot(Googleのクローラ)のアクセス数 が多すぎてサーバに負荷がかかりすぎる問題」に悩まされています。 robots.txt の Crawl-delay は効かないし[2007-03-21-1]、 Googleウェブマスターツールでクロール率を低く設定しても ある回数よりも下がらないしで困っていました。 アクセス禁止にすれば完全解決なのですが、 それにより検索されなくなるのはファインダビリティが下がって嫌なので、 とりあえずランダムで 503 を返すことで対処しました。 ときどき503が出ることにより、しばらくするとGooglebotが 「サーバが混んでいるんだな」と思ってくれるみたいで、 結果としてクローラのアクセス数が激減、かつ、検索結果
はじめに 携帯らしいかわいいサイトを構築するのにかかせない絵文字ですが、最近は携帯向けメールマガジンなどのメールにも絵文字が含まれるようになってきています。 本稿では、絵文字を含んだメールを送信する場合のキャリアごとの仕様の違いと、送信方法を紹介します。対象読者絵文字を含んだメールの送信を検討している方CPANモジュールを使用したことのある方 必要な環境 Perl 5.8以上が動作する環境。キャリアの仕様の違いと絵文字を埋め込む方法 絵文字を含むメールの送信は、基本的に絵文字のバイナリデータを本文に挿入することで可能となります。しかし、キャリアごとに絵文字の仕様が異なるため、その違いを吸収する必要があったり、そもそも絵文字に対応していない端末があるため、配信する端末を制限するなどの方法を検討しなければなりません。 そこで、絵文字を送信する上で各キャリアごとにどのようにすればよいのかをまとめ
shell のちょっとしたテクニック - odz buffer odzさんのところで単語の出現頻度を調べるためのワンライナーが紹介されている。 単語抽出についてはいくつかやり方があるので紹介する。 特に egrep -o は非常に実用的。 もちろん、この話はリンク先において主題ではない。 俺のただの自己満足。 tr -cs で単語抽出 $ tr -cs 'a-zA-Z' '\n' < ./.zshrc 上記コマンドで、a-zA-Zのみで構成される文字列を抽出できる。 -c オプションで、'a-zA-Z' の補集合(以外)を '\n' に変換し、 -s オプションで、最後の引数で指定される要素の重複を除去している。すなわち '\n' の連続を除去している。 grep -o で単語抽出 grepには、( -o、--only-matching ) オプションというのがある。 これは、指定された正
TWikiプロジェクトは16日(現地時間)、高機能なWikiクローンであるTWikiの最新版「TWiki 4.1.0」を公開した。TWikiはPerlで記述されたWikiクローンで、非常に豊富な機能を持ち、汎用性が極めて高いことで知られている。 TWikiは主に次のような機能を備えている。 シンプルな機構のため多くのWebブラウザに対応 キーワードやURLの自動リンク 高機能なテキストフォーマット ページ内の全文検索が可能 ページの変更をE-mailで通知 ファイルのアップロード/ダウンロード グループやユーザによるアクセスコントロール 豊富な内部変数によってページをカスタマイズ テンプレートやスキンによるカスタマイズ ページやユーザなどの管理機能 最新情報のRSS配信 プラグインモジュールによる拡張が可能 TWikiを利用すれば、どんな規模のサイトでも容易に構築することが可能であり、しか
はじめに Webアプリケーションを作成する上で避けて通れない機能の一つにセッション管理があります。ユーザーが入力画面で入力した情報を、確認画面でセッションに保存し、完了画面を出力する前にセッションから復元してDBなどのストレージに格納する、というフローなどで使用されます。 PC用のWebアプリケーションならば、クッキーを用いることでこのセッション管理を行うことができますが、現在の携帯の多くはクッキーを利用できないため、同様の処理を行うことはできません。 そこで本稿では、携帯でのセッション管理の実装方法について解説していきます。 対象読者 CPANモジュールのインストールができる方。 PC用のWebアプリケーションでのセッション管理を理解している方。 必要な環境 Perl 5.8以上が動作するサーバ(筆者環境ではPerl 5.8.8)。 Apache 1.3系、2.x系が動
過去のWebサイトを丸ごとローカルへ復元するWarrick スポンサード リンク InternetArchiveには過去のWebのアーカイブが保存されている。私が90年代に運営していたaccess.or.jpというWebサイトを見たければ、 http://web.archive.org/web/*/http://www.access.or.jp から日付選択でその日の姿のWebを表示させることができる。 とても便利なアーカイブサービスだが、バックアップされたサイト全体をダウンロードするのは面倒である。Warrickを使うと一行の指示でその作業を自動で行ってくれる。 ・Warrick - Tool for Reconstructing a Website http://www.cs.odu.edu/~fmccown/research/lazy/warrick.html 動作にはPerlが必要
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く