タグ

ブックマーク / blog.livedoor.jp/techblog (15)

  • livedoor Techブログ : 本当はもっと速いImlib2: Imlib2でもImageMagickと同じ仕組みでサムネイル画像生成を速くする方法

    こんにちは!こんにちは! 開発部のやましーです。 今回はSmallLightの中でやっている細かいことについてです。 SmallLightとは SmallLightとは、2010年末にlivedoor labs EDGEにてリリースした画像サムネイル生成用Apacheモジュールです。 JPEG画像の読み込み処理の最適化 JPEG画像は、その圧縮アルゴリズムの特性で読み込み時に1/2、1/4、1/8にダウンスケーリングすることができます。libjpegでは画像読み込み時にjpeg_decompress_struct構造体のscale_denomにダウンスケーリング指数を指定します。 SmallLightではこれをJPEGヒントオプションとして実装しています。パターン文字列に jpeghint=y を付与することで有効になります。(SmallLightの README の100行目) JPEG

  • livedoor Techブログ : wikipediaのデータや顔文字辞書からmecabのユーザ辞書を作成するフレームワーク

    突然ですが,mecabの辞書 (mecab-ipadic) をデフォルトのまま使って,mecab意外と使えねぇとか文句言ってる悪い子はおらんかね? mecab-ipadic は比較的お行儀のよい日語をベースに作られているので,そのままでは web上の口語文体のテキストはうまく扱えないことがあります。来は教師データを用意し,学習させるといった手法を使うのが正攻法だと思いますが,とりあえず名詞を充実させるだけでも実用度はだいぶ上がるでしょう。 人間の話す言語には,動詞の語幹や名詞には日々新しく語彙が増えるけど,助詞や活用のルールは簡単には変化しない,という特性があります。特に「いま最もつぶやかれている単語ランキング」といった集計をするような場合は,名詞の範囲の切り出しさえ間違えなければそれなりの結果を出せることも多いのです。 ただ,辞書への単語追加はここにある通り簡単にできるのですが,単語

  • livedoor Techブログ : デザイナーに聞かれがちなAndroid UIの仕様

    開発部の井上(@inonb)です。12月に位置情報サービス・ロケタッチのAndroidアプリをリリースしました。ぜひお試しください。 さて、今回はAndroidアプリのUIまわりについて書いてみたいと思います。 iPhoneアプリに比べて、AndroidアプリのUI仕様は、わりとWebに近いところがあります。Webの仕事の経験があるデザイナーさんは入りやすいところもあるのですが、マルチディスプレイ対応など面倒なところもあります。 デザイナーさんに聞かれた質問について簡単にまとめてみたいと思います。 1. iPhoneアプリのデザインって流用できますか? 流用はできるだけ避けたいです。 たとえばTwitterやFacebookのアプリなど、両プラットフォームに多くのユーザーを持つアプリを見ても、iPhoneAndroidではデザインが変わっているのが分かると思います。 Androidのデザ

  • livedoor Techブログ : 社内のスマフォ開発用ライブラリの管理方法を公開しちゃいます!

    こんにちは!こんにちは! 最近JavaやObjective-Cで開発をしていて、やっぱりPerlって使いやすい言語なんだなぁと改めて感じている栗原です。 #と言いつつもJavaもObjective-Cも好きだったりします。 今回は「スマフォのライブラリなどの管理をどげんかせんといかん」とCTOに言われたために考えた、弊社のスマフォ開発チームが行なっているAndroidiPhoneそれぞれの社内用ライブラリやスニペットの管理方法についてご紹介したいと思います。 ソースの管理方法 まずソースの管理についてですが、現在弊社のスマートフォン系のアプリはGitを使って管理しています。 通常のアプリも含めて「android」と「iphone」というプロジェクトを作成し、その中でそれぞれのプラットフォーム毎にリポジトリを作成しています。 以下のようなイメージですね。 git://example.com

  • livedoor Techブログ : Eclipse初心者がAndroid開発する際に押さえるべきこと

    こんにちは! iPhone/Androidエンジニアのgaoohです! 好きなExceptionはUnsupportedOperationExceptionです! みなさん、Android開発ではエディタは何をつかってますか? やっぱJavaといえばEclipseですよね! 個人的にはEclipseが大好きっ子です。好きすぎてEclipseでPerlを書いてたらまわりから変な目でみられたけど、それにもめげずに今日もワークスペースを開きます。 そんなEclipse好きなので、Androidで開発するときに抑えておくべきことをまとめてYo! とリーダーにいわれたので、まとめてみました。 これだけはいれとけ! 必須plugin ADT 当たり前ですが、これをいれないと話になりません。 http://developer.android.com/sdk/eclipse-adt.html EGit G

  • livedoor Techブログ : ライブドア流自作サーバ

    livedoorポータルサイト等のインフラを担当している片野です。 今回は若干いまさら感がありますが、弊社にて運用している自作サーバをご紹介します。 (検証機以外は弊社内で組み立ててないので、正確には自作してないんですがw) ■背景 去年は特に自作サーバが盛り上がっていましたし、早い段階で「うちも作るか!」という展開はあったんですが、弊社では以下のような事情もあり、着手していませんでした。 ・自社データセンタでの運用なため、その他顧客と運用が大きく変わるようなサーバを投入すると運用が煩雑になる。 ・ポータルのサービスだけでも3000台近いサーバがあり、規模的にも運用に手がかかるサーバを入れるのは非現実的。 ・ボリュームメリットが出せるため、コスト面での自作メリットはそれほど大きくない。 ・そもそも自作で間に合う台数じゃないw (人的な)運用コストや調達コスト面ではあまりメリットがないのです

  • livedoor Techブログ : やれば出来るJavaScript

    こんにちは、情報環境技術研究室のsyuuと申します。 GoogleMapsなどのサービスでFlashを使わずにHTMLJavaScriptだけでここまで出来るのだ、という事を実証してみせ、Ajaxという言葉が流行ったのも一昔前、今ではすっかり定着した感がありますが、実際の所、ブラウザ上のJavaScriptでどこまでのプログラミングが可能なのでしょうか。 この記事では、私はまだまだJavaScriptを甘く見ていた、シバキ倒せばもっと色々出来るんだ!と感じさせてくれた幾つかのJavaScriptプログラムをご紹介したいと思います。 ■Concurrent.Thread - 標準的なJavaScriptだけで書かれたスレッドライブラリ まずは、「Concurrent.Thread(http://jsthread.sourceforge.net/cgi-bin/wiki/wiki.cgi?

  • livedoor Techブログ : Arduinoで事業部長を監視しCiao!

    こんにちは、最近はモバイル向け新規サービスの開発を担当している栗原です。 今回のTechブログではMAKE系の話をご紹介したいと思います。 フィジカルコンピューティングとは 皆さんは『フィジカルコンピューティング』という言葉を御存知でしょうか。フィジカルコンピューティングとは、既存のパーソナル・コンピュータのグラフィカル・ユーザー・インターフェイス(ウインドウ,マウス,アイコンなど)を超えて、私たちの生活環境によりそった身体的なコンピュータのあり方を模索する研究の動向のことを言い(出典:はてなキーワード)、最近ではそれらの研究や実験を簡単に実現するための便利なハードウェアがいくつも存在します。 代表的なハードウェアとしては、ArduinoやGainerやFunnelなどがあります。これらは単純な入出力を供えた拡張可能な基板となっており、適当な電子部品をつなげることにより様々なことを実現でき

  • livedoor Techブログ : 変な CAPTCHA だっていいじゃないか にほんじんだもの

    こんにちは。開発のシニアスペシャリストをやっております、通称「にぽたん」こと谷口公一です。 私たちが日頃使っているネット上のサービスで、web 上のフォームの最後等に「ここに書かれている文字を入力してください」のように、絵に描かれた文字を目で読み取って入力するよう求められる場合があります。 言うまでもありませんが、これは通称「キャプチャ (CAPTCHA)」と呼ばれているもので、画像データは、人間ならそれを肉眼で認識して入力が行なえますが、機械には少し難しくなるため、フォームに文字を入力しているのが、機械ではないことを判定するためにこういう仕組みが存在します。 世の中にある CAPTCHA は、やたらと字がグチャグチャで読み取るのが非常に困難なケースもあります。 これは当然、安易に、白地に黒い文字を書いたような単純な画像を CAPTCHA に用いれば、それを解読するシステムは簡単に開発出来

  • livedoor Techブログ : アドオンした事がない人が15分間でFirefoxアドオン開発

    こんにちは。ライブドアの駒井です。 つい先日、友人に誘われて半ば強制的に「Firefox Developers Conference 2009」に参加してきました。誘ってきた友人が、当日の急用で北海道に帰る事になり、何故か私1人で不慣れな場に参加してきました。当日優しくしてくれた皆さんありがとうございました。いただいたFirefoxのTシャツも大事にします。 自分の予想に反してとっても有意義な時間となりました。筆者は普段、JavaScriptを全く書きません。C++JAVAがメインです。そんな私でも気軽に楽しめてしまうのがFirefoxアドオンでした。ということで、Firefoxアドオンを作成するための最低構成で、簡易的なアドオンを15分程度で実験的に作ってみたいと思います。 題材を模索中に自社営業部の人から次のようなアドオンがあったらありがたいと聞きました。営業訪問に際して必ず行う下記

  • livedoor Techブログ : jTemplatesでHTMLを書くときに知っておきたい8つのこと

    こんにちは、(主に)LDサービスのインターフェース部分に携わらせてもらっている油井です。 現在ホットな JavaScript-library の一つとして「jQuery」の名をあげることができますが、このライブラリのプラグインとして動作するjTemplatesというHTMLテンプレートエンジンにも、(個人的にはですが)注目しています。 http://jtemplates.tpython.com/ そこで、以下、私がjTemplatesを触ることにより知り得た『jTemplatesでHTMLを書くときに知っておきたい8つのこと』について言及していきたいと思います。 ※ 今回の記事では「jQuery1.2.1-非圧縮版」そして「jTemplates0.5.0-非圧縮版」を使用することを想定しています。 1, (特殊変数である)$Qの正体 jTemplatesには$Tと$Pそして$Qという特殊変

  • livedoor Techブログ : ウェブサービスのサーバ増設の基本(1台構成から仮想化まで)

    お疲れ様です、スエヒロです。 先日発売されました、弊社技術陣が執筆した「4Gbpsを超えるWebサービス構築術」、お手に取って頂けたでしょうか? ウェブサービスの負荷対策、分散技術など、実用的な話が盛りだくさんの書ですが、日は実際に稼働しているサービスのサーバスケールアウト方法を、弊社サービス「livedoor ニュース」を例にしてご紹介したいとおもいます。 0. 問題点の把握 2003年オープンしました「livedoor ニュース」ですが、当時はアクセス数、データ量も少なかったため、サーバ1台で運用していました。 静的な画像やcssjavascriptへのリクエストを処理するapache(80ポート)と、動的コンテンツへのリクエストを処理するmodperl組み込みのapache(8080ポート)を切り分け、mod_rewriteでリバースプロキシし、リクエストをながしています。リバ

  • livedoor Techブログ : YAPC::Asia 2008 で発表してきました

    こんにちは。nabokov7 です。YAPC::Asia 2008で発表してきましたので、その資料を公開します。 ライブドアでは、各サービスで共通に使える内部サービスをいくつか独自開発しています。そのうちのひとつが、今回紹介した共通スパムフィルタ「スパムちゃんぷるー」です。ライブドアブログやライブドアwiki、したらば掲示板などのスパム書き込みのフィルタリングを共通化するために開発したものです。 これにより、スパム判定のロジックが一元化され、統計情報、ブラックリスト、ホワイトリストなどが共有できるようになります。また、過去の判定結果から学習する機能もあります。 スパム判定の基準は各サービス、あるいはユーザ毎の設定によっても変わってくるので、判定ロジックはプラグイン形式になっており、判定時にはこれらのプラグインが並列で動作する仕組みになっています。リクエスト時に必要なプラグインを指定し、任意

  • livedoor Developers Blog:Windows でマルチモニタ - livedoor Blog(ブログ)

    こんにちは。ライブドア開発部 _ です。 皆さんのPC環境ではいくつのモニタを使っていますか? 昨今、液晶パネルの低価格化が進み、すっかりPC用モニタはCRTから液晶へシフトしました。20/21インチの製品も数年前の17インチ程度の価格になり、液晶モニタを複数導入することはそれほど敷居の高いことではなくなっています。 4年ほど前、初めて17インチCRT+17インチ液晶でデュアルモニタを体験した時はその便利さに感動しました。月日は流れ、現在は20インチ3枚+17インチ1枚という構成で稼動しています。 とても快適な開発環境を堪能していますが、一部同僚には変態扱いされています…。 さて、マルチモニタには大きく2つの形態があります。 全てのモニタが1台の PC に繋がっている キーボード/マウス共有ソフト(Synergy やSチェンジャーなど)経由で複数のPCを使うさらに 1 は一般に、 モニタ毎

  • Technologies for UI

    Technologies for UI List view Topics copyright livedoor 上下カーソルキーでスライドを切り替えられます。 表示されない場合はこちらから

  • 1