プログラミングやマークアップなど、コーディング作業のときにソースコードを表示する目的で開発されたフォント「Source Code Pro」を米アドビがオープンソースとして無料公開しました。24日(日本時間24日深夜)に開催された同社のイベントCreate the Webで発表されました。
![ソースコードを表示するためのフォント「Source Code Pro」をアドビがオープンソースで無料公開 - Publickey](https://cdn-ak-scissors.b.st-hatena.com/image/square/ca0810e4b6b3ead24b6451d312016131bc72a4ae/height=288;version=1;width=512/https%3A%2F%2Fwww.publickey1.jp%2Ffbico_pblky.png)
グーグルでは、社内のプログラマによって作り出される大量のコードの品質を保つため、チェックイン前にユニットテストとコードレビューが行われているそうです。しかし、コードが大量になってくると、ユニットテストやレビューをすり抜けるバグも少なからず発生します。 そこでコードの品質をさらに高めるために、グーグルでは「バグ予測アルゴリズム」を採用。バグがありそうな部分をレビュアーにアドバイスする仕組みを採用したとのこと。 そのバグ予測アルゴリズムとはどんなものなのか。Google Engineering Toolsブログに投稿されたエントリ「Bug Prediction at Google」(グーグルにおけるバグ予測)で説明されています。 ソースコードの修正履歴を基に予測 コードの中にバグがありそうな箇所を分析する手法としては、「ソフトウェアメトリクス」がよく用いられます。これはコードを静的に分析して、
アンドリュー・タネンバウム教授といえば、「MINIX」というUNIXに似た学習目的のOSの開発者の一人で、このMINIXとタネンバウム教授の著書「オペレーティングシステム 設計と実装」に刺激を受けて、リーナス・トーバルズ氏がLinuxを開発し始めたと言われています。 そのタネンバウム教授へのインタビューが、フランスのWebサイト「LinuxFR.org」に掲載されていました。MINIXの最新動向、なぜLinuxがこれだけ普及したのか、そしてトーバルズ氏と論争になったといわれているマイクロカーネルについて、興味深い答えが引き出されています。一部を訳してみました。 MINIXではNetBSD互換に取り組んでいる MINIXはもともとOSの構造などを学ぶための教育目的に、コンパクトでソースコードがすべて公開されたソフトウェアとして開発されました。コンパクトな作りやマイクロカーネルといった特徴は維
グーグルは同社のクラウドでリレーショナルデータベース機能を利用できるサービス「Google Cloud SQL」を公開しました。Google Labsの扱いで、限定プレビューとなっています。 グーグルはGoogle Cloud SQLを次のように紹介しています。 By offering the capabilities of a MySQL database, the service enables you to easily move your data, applications, and services into and out of the cloud. (略) To ensure that your critical applications and services are always running, Google Cloud SQL replicates data to
DotCloudの最大の特徴は、PHPやPerl、Ruby、Java、Python、Node.jsなど複数の言語と、MySQL、PostgreSQL、Cassandra、MongoDB、CouchDB、Redisなど複数のデータベースやMemcached、RabbitMQ、Hadoopなどのさまざまなソフトウェアを開発者が自由に組み合わせてプラットフォームを構成することができ、それがクラウド上のPaaSとして提供されるという点です。 構成されたPaaSの運用は当然ながらDotCloudが行います。モニタリングや動的なスケーリング、フェイルオーバー、耐障害性向上のため自動的に3つのデータセンターへの分散などが行われ、基本的に開発者は運用を気にする必要はありません。 新しい世代のPaaS これまでの代表的なPaaS、例えばグーグルのGoogle App Engine、セールスフォース・ドットコ
JSONの発見者でJavScript界の重鎮であるYahoo!のダグラス・クロックフォード(Douglas Crockford)氏。米オライリーが主催するイベント「Velocity 2011」で、セッション「JavaScript & Metaperformance」を行いました。 いまWebブラウザ間でJavaScriptエンジンの性能競争が行われていますが、その影響とこの先の展望について語っています。JavaScriptプログラマなら必見の内容を、公開されたビデオを基に紹介しましょう。 JavaScript & Metaperformance これから、JavaScriptと性能についての本当の話をしよう。 JavaScriptはみなさんご存じかな? いまや世界で最もポピュラーになったプログラミング言語だ。 JavaScriptは、Javaからシンタックスを、Schemeからファーストク
LevelDBはSQLをサポートせず、クライアント/サーバ型でもなく、シングルプロセスからアクセスされることを想定したいわゆるNoSQLの高速なキーバリュー型データストアを実現するためのライトウェイトなライブラリだと説明されています。 ChromeブラウザでHTML5の仕様として策定中のIndexedDBを実装するものとして開発されたようです(ドキュメントに明記されていないのですが)。 LevelDBを開発した理由 LevelDBのWebサイトによると、LevelDBは以下の主な機能を備えています。 基本的な操作は、Put(key,value), Get(key), Delete(key) 1つのトランザクションとして複数の変更操作が可能 データは自動的に圧縮し保存される Hacker Newsの記事によると、当初はLevelDBを開発する代わりに平林幹雄氏が開発したTokyo Cabin
これまで同社は仮想化から発展したvSphere製品群を中心にIaaS(Infrastructure as a Service)を提供するクラウドベンダでした。今回の発表で、Windows AzureやGoogle App Engineなどと競合するPaaS市場への本格参入を宣言したことになります。 主な発表内容は2つ。同社自身が運営し提供するPaaSの「CloudFoundry.com」の開始と、PaaSを構成するソフトウェア「Cloud Foundry」をオープンソースとして公開するWebサイト「CloudFoundry.org」の公開です。 PaaSでJava、Ruby、Node.js、MySQLなどをサポート CloudFoundry.comは、VMwareが運営するPaaS。同社はオープンなテクノロジをサポートする「Open PaaS」を掲げており、既存のPaaSによるロックインに
このところHTML5関連のモバイルアプリケーション開発について調べていて、先週の水曜日にはSwapSkills主催のイベント「jQueryモバイルで簡単! スマートフォンサイト作成」に参加してjQuery Mobileについて勉強してきました。 jQuery Mobileとは、jQueryのプラグインとして利用するモバイルアプリケーション用のライブラリです。そしてその驚異的なまでの簡単さは、これから業務用のモバイルアプリケーションの作り方を一変させてしまう可能性を感じさせます。 jQuery Mobileの大きな特徴は次の3つです。 1)HTMLを書くだけでモバイルアプリケーションができてしまう 2)モバイルのユーザーインターフェイス対応の部品が多く揃っている 3)iOS、Android、WebOS、Windows Moblie、Symbianなどクロスプラットフォーム対応である 具体的な
(本記事は、ゲストブロガーのITジャーナリスト 星暁雄氏による投稿です) 2010年12月6日、米GoogleはAndroidの新バージョンであるAndroid2.3、コード名「Gingerbread」と、この新OSを搭載したAndroidスマートフォン「Nexus S」を発表した(Google Official Blogのエントリ)。Nexus Sの発表から読み取れる事を書き留めておきたい。 トラフィックの主流はいずれモバイルになる グーグルにとってモバイル分野は重要なテーマだ。この2010年2月にスペイン・バルセロナで開催された2010 Mobile World Congressの基調講演で、グーグルCEOのEric Schmidtは「Mobiile First」というスローガンを紹介した。モバイル向けを優先してグーグルのサービス群を提供していくとの意思表示だ。 トラフィックの増加とい
「Moving Away from NoSQL」(NoSQLからは離脱する)というブログをポストしたのは、CouchDBの開発元、CouchOneのエンジニアMikeal Rogers氏。 「Apache CouchDB」は、NoSQLの1つとして知られていたオープンソースのデータベース。ドキュメント指向で、JSONによるデータの入出力を行うのが特徴です(参考:“動物図鑑”で知るCouchDBの特徴 - @IT)。 なぜCouchOneは「NoSQL」から離脱する、というのでしょうか? NoSQLはすべてをひとかたまりに表してしまう その理由として、NoSQLがあまりにも包括的なこと、そしてBigDataと結びつき始めていることをあげています。 The term “NoSQL” continues to lump all the companies together and drowns
Facebookが15日に発表した新しいサービス「Facebook Messages」は、チャットやつぶやき、そして電子メールなど、自分宛のテキストやメッセージをすべて1つのインボックスで管理できると発表されました。 同社が15カ月かけて開発してきたこの新サービスのバックエンドデータベースは、これまで同社が大規模運用してきたMySQLでも、同社が開発したNoSQLデータベースのCassandraでもなく、グーグルのBigTableをモデルとしてオープンソースで開発された分散データベース「HBase」でした。 Facebookのソフトウェアエンジニア、Kannan Muthukkaruppan氏がFacebookにポストした記事「The Underlying Technology of Messages」で、その技術的背景が紹介されています。 MySQLとCassandraが落選した理由 H
モバゲーで知られるDeNAは、バックエンドデータベースにNoSQLを使っていません。なぜか? それはMySQL/InnoDB 5.1の環境で秒間75万クエリという、多くのNoSQLでも実現できないような高性能を実現しているから。DeNAの松信嘉範(まつのぶよしのり)氏は、自身のブログにこんな内容のエントリ「Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server」(英語)をボストしています。 Yoshinori Matsunobu's blog: Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server 松信氏が指摘するように、大規模なネットサービスを提供している企業の多くは分散環境で
「Google JavaScript Style Guide」に沿ってチェックしてくれる、グーグル製JavaScript文法チェッカー グーグルはJavaScriptコードのスタイルガイド「Google JavaScript Style Guide」を公開しており、同社自身もこのスタイルに従って開発を行っているとされています(スタイルガイドの日本語訳の例)。 このスタイルガイドに従った開発を支援してくれるツールがグーグルからオープンソースとして公開されました。同社のClosure Tools Blogのエントリ「Introducing Closure Linter」で紹介された文法チェックツールのClosure Linterです。 Closure LinterはPythonで書かれたツールで、コマンドラインから利用します。上記のエントリによると、次のようなJavaScriptをチェックに書
いまさらJava対.NETはちょっとテーマとして古くないかな? とは思うものの、とても面白いビデオが公開されたので紹介します。「Java 4-ever」という映画のトレーラー、という設定のおもしろビデオ。 9月8日にノルウェイのオスロで開催されるイベント「JavaZone 2010」の宣伝のために作られたようです。こんなストーリー。 Java 4-ever Trailer 父親は寝る前に息子にマイクロソフトテクノロジーのすばらしさをおとぎ話のように語る。その父に子どもは無邪気に問いかける。「パパ、どうしていつも.NETなの?」 父親の顔色が変わる。「さあ、もう寝る時間だ」 少年は青年となり、禁じられた技術をこっそり友人と試すようになる。「こいつはスゲー、ロバストで、セキュアで、ポータブルで、スケーラブルじゃんか!」 そこへ父親の監視の目が光る「お前たち、Javaやオープンソースを使ってたり
本のページをめくるように、どんなWebページも素早く表示できるようにする。グーグルは以前からWebの高速化に取り組んできました。 6月22日から、米サンタクララで行われていたWebサイトのパフォーマンスと運用に関するオライリーのイベント「Velocity 2010」では、グーグルのUrs Hölzle氏がWebの高速化技術について「Speed Matters」(スピードの重要性)というセッションで紹介ています。 Webを高速化するためにどのような技術があり、あるいはどのような技術が検討されているのか、このセッションの内容を紹介しましょう。 スピードは重要だ 私が話そうとしているのは、「Speed matters」(スピードの重要性)についてだ。Webは空飛ぶジャガイモより速くなれるだろうか? どのくらい速くなれるだろうか? (参考:オペラがやってくれた! グーグルの空飛ぶジャガイモに対抗)
データベース研究者の大御所、マイケル・ストーンブレイカー氏が開発し、NoSQLデータベースをも上回る性能を発揮するリレーショナルデータベース「VoltDB」。前回の記事では、その特徴と、NoSQLデータベースのCassandraとのベンチマーク比較を紹介しました。 今回はVoltDBのアーキテクチャについて調べたことをご紹介しようと思います。基本的にはVoltDBのWebサイトやリンク先の内容を基にしています。また、ブログ「独り言v6」のエントリ「VoltDB登場 – RDBMSのようでRDBMSではない新システム」も参考にさせていただきました。 シェアドナッシングな分散インメモリデータベース VoltDBのアーキテクチャは、FAQのページで以下のように説明されています(英語を訳したものを引用しています。以下同じです)。 VoltDBは、シェアドナッシングなサーバ群から構成されるスケーラブ
「数兆件のデータも対話的に、高速に分析できる」。グーグルは5月19日にこのような表現で新しいサービス「BigQuery」の登場を紹介するエントリを、ブログにポストしています。 グーグルが公開したBigQueryは、Hadoopやデータウェアハウスなどを用いて多くの企業が行おうとしている大規模データ(いわゆる「Big Data」)の分析を、グーグルのクラウドで可能にします。利用者はGoogle Storage経由で大規模データを転送し、SQLライクな命令によって抽出や分析を行います。 まるでグーグルが大規模データ処理のMapReduceをホスティングし、その機能をサービスとして提供するようなものがBigQueryといえます(ただし公開された「BigQuery」の説明には、内部でMapReduceを利用しているのかどうかの記述はないのため、MapReduce「的」なサービスと表現すべきかもしれ
SSD専用に設計された「ReThinkDB」、ロックもログも使わない新しいリレーショナルデータベースのアーキテクチャ SSDがHDDに代わるストレージとして普及しようとしていることを背景に、SSDに特化したまったく新しいアーキテクチャを備えたリレーショナルデータベースを開発しようとしている企業があります。「ReThinkDB」です。 昨年7月に、PublickeyではReThinkDBの概要を記事「SSDに最適化したデータベース「RethinkDB」、ロックもログも使わずにトランザクション実現」で伝えました。 その記事の中では、ReThinkDBがロックを使わずにトランザクションを実現し、データベース利用中でもスナップショットがとれ、また異常終了しても容易に復帰できる機能を備えている、といったことを紹介しました。 4月に米サンタクララでに行われた「MySQL Conference & Ex
モジラが、JavaScriptをGPUのパワーを借りて高速化する試みを行っています。FirefoxのJetpackプロジェクトに協力しているメンバーがブログにポストしたエントリ「Elevating JavaScript Performance Through GPU Power」で、その可能性と方法について触れています。また1つ、JavaScriptの可能性が広がるかもしれません。 Mozilla Labs » jetpack » Blog Archive » Elevating JavaScript Performance Through GPU Power Webでは高精細な動画や音声などがやり取りされるようになり、またセカンドライフのような3次元表示など、Webブラウザ上で行われる情報処理は高度化しています。 今後はさらに動画の加工や音声認識のような高度なアプリケーション、あるいはW
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く