タグ

ブックマーク / gihyo.jp (20)

  • 第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp

    あのWebサービスもJVMを利用している 「Javaは大規模なエンタープライズシステムにしか使われない」 それが常識だと思っていませんか? たしかに、これまでJava Virtual Machine(JVM)は、他の言語を実行すると遅く、Javaのプログラムを実行する環境にすぎないものでした。ところが、Java 7から実装されたInvokeDynamicにより、JVM上で、RubyPHPなどさまざまなコンピュータ言語で記述されたプログラムをより高速に実行できるようになりました。 これにより、今までエンタープライズでJava言語で記述されたプログラムを実行するだけの環境であったJVMが、汎用的な実行環境になったと言えます。また、これまでJavaの実行環境として使用されていたノウハウが、他の言語で記述されたプログラムを実行する際にも利用できます。 最近では、TwitterがJVMをアプリケー

    第1回 JVMはどのようにメモリ空間を利用するのか | gihyo.jp
    RedCap97
    RedCap97 2013/01/16
  • 2012年12月28日 Linus怒髪天!─カーネルメンテナーに投げつけた連発F*CK、そのワケは…? | gihyo.jp

    Linux Daily Topics 2012年12月28日Linus怒髪天!─カーネルメンテナーに投げつけた連発F*CK、そのワケは…? SHUT THE FUCK UP! だまりやがれ、この野郎! お前何年カーネルメンテナーやってんだよ!! ─⁠─我らがLinus Torvaldsは怒りのボルテージが上がると、相手が誰であろうとF*CKという言葉のつぶてを容赦なく投げつける。だが、今回のLinusの怒りようは尋常ではない。同じF*CKで相手を罵倒するにしても、NVIDIAに中指立てたとき、あるいは米大統領選の最中のロムニー氏を小馬鹿にしたときに比べて、その怒りの度合いははるかに大きい。そしてだからこそ、Linuxユーザは改めて彼を強く尊敬することになる。 まずは英語が得意ではない方でも、以下のリンクを開いてざっと目を通してみてほしい。Linusの怒りのほどがひしひしと伝わってくるはずだ

    2012年12月28日 Linus怒髪天!─カーネルメンテナーに投げつけた連発F*CK、そのワケは…? | gihyo.jp
  • 第231回 ownCloudで自分専用クラウドストレージ | gihyo.jp

    ownCloudはWebDAVを使ったファイル共有サービスを立ち上げるための、FLOSSなサーバーアプリケーションです。2012年5月24日にリリースされた4.0は、非常に多くの新機能が追加され、既存の有料サービスにも引けを取らない完成度に仕上がってきました。そこで今回はこのownCloudをUbuntu上で試します。 ownCloudとは ownCloudはKDEやSUSEの開発者が開発したオープンソースのファイル共有サーバーアプリケーションです。そのソースコードはAGPLv3でライセンスされており、現在はownCloudコミュニティで無償のコミュニティ版を開発し、それをサポートするownCloud社が商用サポートを提供するという開発体制をとっています。コミュニティ版と有償版の違いは主にサポートの有無とライセンスの違いであり、コミュニティ版でもほぼ全機能を使うことが可能です。 図1 ブラ

    第231回 ownCloudで自分専用クラウドストレージ | gihyo.jp
    RedCap97
    RedCap97 2012/07/13
  • 第21回 Railsアプリの受け入れテストをCucumberで書こう | gihyo.jp

    はじめに Cucumberとは受け入れテストのためのテスティングフレームワークです。CucumberはRuby on Railsに依存しているライブラリではないため、例えば同じRuby制のフレームワークであるSinatraはもちろん、PHPなどで書かれたアプリケーションでも使用することができます。 Sinatraやフレームワークを使用していない素のRubyスクリプトなどをベースにCucumberの解説をすることも可能ですが、今回は仕事で使っている人が多く、また筆者自身もRailsを使って開発をしていることもあって、Railsをベースに解説させていただきます。 なぜCucumberなのか 筆者が勤めている株式会社RAWHIDE.では、Railsアプリを作成する場合、原則的にCucumberでテストを書くようにしています。Cucumber採用当時は、社内にナレッジが少ない、不慣れなど、なかなか

    第21回 Railsアプリの受け入れテストをCucumberで書こう | gihyo.jp
  • 第212回 Git/Bazaarブラウザあれこれ | gihyo.jp

    明日から3月です。春です。春といえば出会いと別れの季節。「⁠出会い(merge)」と「別れ(branch)」を初心者でも効率よく行うために、グラフィカルなインターフェースを備えたGit/Bazaarクライアントをいくつかご紹介します。 Gitクライアント Gitは世界でもっとも使われている分散型バージョン管理システムです。Recipeの読者であれば、LinuxカーネルやGitHubなんかでお世話になっている人も多いことでしょう。Ubuntuでもgitパッケージをインストールすることで簡単に導入できます。 ちなみに、Gitは初期状態だと日語などのマルチバイトのファイル名を数値表現で表示します。git-gui/gitk以外のクライアントはこれを数値のまま表示してしまうため、日語ファイル名を含む差分を見るときに不便です。以下のコマンドで、数値表現に変更せずそのまま表示するように設定を変更して

    第212回 Git/Bazaarブラウザあれこれ | gihyo.jp
    RedCap97
    RedCap97 2012/02/29
  • C/C++プログラマのためのDTrace入門 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    C/C++プログラマのためのDTrace入門 記事一覧 | gihyo.jp
  • 第185回 Taskwarriorでターミナルからタスクを管理する(2) | gihyo.jp

    第182回で紹介したTaskwarriorは、ターミナル上で動作する、BTSやチケットシステムに似たタスク管理ツールです。テキストベースのデータ構造とコマンドにより、非常に柔軟なカスタマイズが行えるのがポイントです。今回はそうした、Taskwarriorをより「使いこなす」ためのテクニックを紹介します。 Dropbox/Ubuntu Oneと連携する Taskwarriorのようなタスク管理ツールを利用する場合、もっとも重要なのは「利用するためのコストを下げる」ことです。こうしたタスク管理を行うには、「⁠何か思いついたら即座にタスク登録、手持ちぶさたになったらタスク一覧の確認、一日の仕事の始めと終わりにタスクを確認……」と、とにかくこまめにタスクを確認する必要がありますから、確認のための操作はできるだけ手軽である必要があります。 一方で、Taskwarriorのデータディレクトリは、原則と

    第185回 Taskwarriorでターミナルからタスクを管理する(2) | gihyo.jp
  • 日本Ruby会議2011 1日目レポート[更新終了] | gihyo.jp

    日7月16日(土)から18日(月)までの3日間にわたり、練馬文化センターにて日Ruby会議2011(略称:RubyKaigi2011)が開催されます。ページでは、1日目の模様を随時レポートしていきます。 スタッフの皆さんは朝から集まり、当日準備が行われました。 スタッフの方は、専用のTシャツ、STAFF腕章をつけていますので、もし会場で困ったことなどがあれば相談してみましょう。 オープニング 実行委員長、高橋征義さんの挨拶 イベントの実行委員長である高橋征義さんからオープニングの挨拶があり、そのなかで「RubyKaigiは2006年から数えて6回目で、集大成かつ一つの区切りとなる最後にして最高の日Ruby会議を楽しんでいってほしい」と述べました。 笹田耕一さん「日Ruby会議2011[+α]プログラムについて⁠」⁠ 続いて、プログラム委員長である笹田耕一さんから、これまでのRu

    日本Ruby会議2011 1日目レポート[更新終了] | gihyo.jp
  • KVMで始めるプライベート・クラウドへの第一歩 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    KVMで始めるプライベート・クラウドへの第一歩 記事一覧 | gihyo.jp
  • 2011年4月26日 xz(1)圧縮ツールの利用拡大、.txzの作成可能 | gihyo.jp

    2010Q4 FreeBSD Status Reportが公開されました。報告されている中から興味深い話題を紹介します。 xz Compression for Packages and Log Files Martin Matuska氏がxz(1)圧縮を利用したパッケージの作成および利用を可能にする変更を9-CURRENTおよび8-STABLEに追加したことを伝えています。 /etc/make.confに「PKG_SUFX=.txz」を指定すると、「⁠.txz」の拡張子を持ったパッケージが作成されるようになります(tar(1)でまとめてxz(1)で圧縮したファイルという拡張子)。pkg_create(1)、pkg_add(1)、bsdtar(1)がすでにxz(1)圧縮をサポートしています。 xz(1)はすでに9-CURRENTのベースシステムにマージされています。xz(1)は高圧縮率を実現

    2011年4月26日 xz(1)圧縮ツールの利用拡大、.txzの作成可能 | gihyo.jp
  • 並行実行を制御できない言語は実システムには向かない | gihyo.jp

    国立情報学研究所(NII)の佐藤一郎先生の日記から抜粋したものです。元ページにはパーマリンクがなく、2010年2月26日~28日の日記に該当します。 昨今の計算機のマルチコア化に伴い、並行処理について注目が集まってきています。そしてここ数年でErlangやScalaといったプログラミング言語が話題になり、並行処理を実現するために採用しているActorモデルについて、佐藤先生は「リバイバルを見るような感じ」と感想を述べています。そもそもActorモデル自体は1970年代に登場したもので、1990年前後に並行処理用オブジェクト指向言語の研究が盛んに行われていたそうです。また学生時代にErlangに触れたことがあったことから、これらについて「新しいプログラミング言語というよりも、昔のプログラミング言語で書いているという感覚」を受けるようです。 そしてActorモデルのようなシングルスレッド実行モ

    並行実行を制御できない言語は実システムには向かない | gihyo.jp
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
  • 将棋をモチーフにしたプログラミング言語「ModanShogi」が公開! | gihyo.jp

    はじめに コンピュータ将棋の分野では、年々ソフトウェアの棋力が向上しており、10年以内にソフトウェアが平手でプロ棋士を破る日が来るのではないかと予想されている。 しかしその一方で、人間の「直観」による高度かつ高速な計算力は、未だその詳細が明らかになっていない。 人間の意図を計算機に伝えるためのプログラミング言語の世界においても、脳の直観を最大限に活かすには、現代のプログラミング言語はいずれも単純すぎると言えるだろう。 しかし最近では、これを逆手に取って、人間同士が戦うボードゲームのルールや戦略を抽象化し、プログラミング言語の世界にフィードバックする試みが実用化され始めている。有名なところでは、Google社のプログラマの手による囲碁をモチーフにしたプログラミング言語が一般公開されたのも記憶に新しい。 ModanShogiはこのようなトレンドをいち早くキャッチし、日のポピュラーなボードゲー

    将棋をモチーフにしたプログラミング言語「ModanShogi」が公開! | gihyo.jp
  • 第9回 SQLでループ! 相関サブクエリの使い方~切れ過ぎるナイフにご用心~ (1)サブクエリ | gihyo.jp

    SQLアタマアカデミー 第9回SQLでループ! 相関サブクエリの使い方~切れ過ぎるナイフにご用心~ (1)サブクエリ はじめに SQLを使い始めたとき、多くのプログラマが例外なく難儀するのが、SQLで制御構造をうまく書けないことです。ここで言う制御構造とは、平たく言えば条件分岐とループです。といっても別に、SQLに制御構造を書くための機能が備わっていないとか、貧弱というわけではありません。SQLでも、通常の手続き型言語と同等の制御構造を記述することができます。ただ、そのやり方が一風変わっているので、うまく「SQLアタマ」に切り替えられないと戸惑ってしまうのです。 そういう「普通の」プログラマやSEの違和感を軽減するための橋渡しをするのが、連載の目的の1つでもあるので、これまでにもSQLで制御構造を記述する方法については折に触れて取り上げてきました。しかし、条件分岐のためのCASE式に対し

    第9回 SQLでループ! 相関サブクエリの使い方~切れ過ぎるナイフにご用心~ (1)サブクエリ | gihyo.jp
  • 2010年3月3日 スクラッチからLinux ─Linux From Scratchがバージョン6.6に | gihyo.jp

    Linux Daily Topics 2010年3月3日スクラッチからLinuxLinux From Scratchがバージョン6.6に Linux From ScratchコミュニティのMatthew Burgess氏は3月1日(現地時間⁠)⁠、Linux From Scratch(LFS⁠)⁠ 6.6のリリースを発表した。LFSはその名の通り、Linuxをソースコードからコンパイルして作り上げるパッケージ、LinuxカーネルやGNUのユーティリティソフトウェアが含まれる。 LFS 6.6に含まれる主なソフトウェア(ソースコード)は以下の通り。 Linuxカーネル 2.6.32.8 GCC 4.4.3 glibc 2.11.1 GRUB 1.97.2 Autoconf 2.65 Bash 4.1 Make 3.81 Vim 7.2 Perl 5.10.1 その他、多くのセキュリティ

    2010年3月3日 スクラッチからLinux ─Linux From Scratchがバージョン6.6に | gihyo.jp
  • 第13回 モジュラーなWebアプリケーションフレームワーク、Merb | gihyo.jp

    はじめに MerbはRubyで記述されたWebアプリケーションフレームワークです。2006年の10月18日にEzra Zygmuntowicz氏によって最初のリリースが発表されました。 RubyでWebアプリケーションフレームワークといえばRuby on Rails(以下Rails)が有名ですが、Merbは以下のような特長を備えています。 ActiveRecord, DataMapper, SequelなどのORMを自由に選べる jQuery, PrototypeなどのJavaScriptライブラリを自由に選べる HAML, ERBなどのテンプレートエンジンを自由に選べる 単一の機能を実現するために作られた再利用しやすいプラグイン群がある 軽量でシンプルなコア プラグイン機構としてRubyGemsを使っている ControllerとViewのコンテクストが同じ シンプルで強力なルーティング

    第13回 モジュラーなWebアプリケーションフレームワーク、Merb | gihyo.jp
  • 第31回 RubyistのためのMongoDB入門(1) | gihyo.jp

    はじめに ここ最近、NoSQLというキーワードが注目を集めています。 リレーショナルデータベースは、一般的にスケールアウト(サーバの台数を増やして性能向上を図る手法)が難しく、特に大規模サービスにおいてパフォーマンス上のボトルネックとなりえます。また、タグやグラフ構造のようなデータは関係モデルに馴染みにくいため、それらを扱う際にはアプリケーションコードもぎこちないものになりがちです。 これらの問題を背景に、何にでもリレーショナルデータベースを使うのではなく、用途に応じてKVSなど他のデータストアを選択する流れが広まりつつあります。このムーブメントがNoSQL(Not Only SQL)と呼ばれているものです。 今回は、NoSQLなデータベースの1つであるMongoDBをご紹介します。 MongoDBとは MongoDBは高いパフォーマンスとスケーラビリティを特徴とするドキュメント指向型デー

    第31回 RubyistのためのMongoDB入門(1) | gihyo.jp
  • 続・先取り! Google Chrome Extensions 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    続・先取り! Google Chrome Extensions 記事一覧 | gihyo.jp
  • 2010年のJavaScript:「これまで」と「これから」 | gihyo.jp

    2010年のJavaScriptと題しまして、JavaScript周辺の「これまで」と「これから」についてまとめてみたいと思います。 2009年までのJavaScript JavaScriptは各ブラウザベンダなどが個別に実装するという特殊性から、ブラウザ(実装)ごとの非互換性の問題に悩まされ続けてきた言語です。まず、そのJavaScript歴史を簡単に振り返ってみます。 ECMA-262 3rd editionとスピードコンテスト JavaScriptNetscape社によってLiveScriptという名前で誕生し、その後ECMAScriptとして標準化が進みました。1999年12月にECMA-262 3rd editionが策定されてから、Internet ExplorerのJScript、MozillaのSpiderMonkey(TraceMonkey⁠)⁠、SafariのJav

    2010年のJavaScript:「これまで」と「これから」 | gihyo.jp
    RedCap97
    RedCap97 2010/01/04
    HTML 5関係のAPIのサポート状況がまとめられている
  • 第4回 絵文字を取り扱う | gihyo.jp

    絵文字を扱う上で考えること 携帯サイトを作る上で必ず通るのが「絵文字」です。絵文字は1文字(2バイト幅)で表現され、キャリアによって仕様が異なります。絵文字の個数や種類なども統一されていないため、キャリアごとに独自の絵文字が採用されています。またキャリアによって対応している絵文字数が違うだけでなく、端末によっても対応している絵文字が異なったりといったことがあります。 docomo

    第4回 絵文字を取り扱う | gihyo.jp
  • 1