タグ

関連タグで絞り込む (575)

タグの絞り込みを解除

programmingとProgrammingに関するHeavyFeatherのブックマーク (1,313)

  • PHP コード最適化 Best Practices 63+ - カタコト日記

    みたいなタイトルの記事を Digg 経由で発見。チートシート代わりにと思い超訳。*1 A Software Architect PHP 最適化 ベストプラクティス! 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo '文','字'; (カンマ区切り)の方が、'文'.'字' (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09

    PHP コード最適化 Best Practices 63+ - カタコト日記
  • MOONGIFT: » GoogleのソースレビューシステムMondrianのオープンソース版「Rietveld」:オープンソースを毎日紹介

    ※ 一部の画面はデモより Googleの高度なエンジニアリングを支える技術の一つにソースコードレビューがある。ソースの修正点について、レビューし、議論することでさらに良いコードができあがっていく。世界中にいるエンジニアのために、議論はネットを介して行うことになる。 ソースコードの行ごとにコメントが書ける そのためのシステムがMondrianだ。これを作ったのはGuido van Rossum氏、Python開発者でもある方だ。そしてこのMondrianをなんとかオープンソースとして公開したいと願ってきたRossum氏が実現させたのがこのソフトウェアだ。 今回紹介するオープンソース・ソフトウェアはRietveld、Google App Engineで作られたソースコードレビューシステムだ。 Rietveldは任意のリポジトリに対して、古い版と新しい版のソースの差分を表示し、レビューを行うこと

    MOONGIFT: » GoogleのソースレビューシステムMondrianのオープンソース版「Rietveld」:オープンソースを毎日紹介
  • Adobe - デベロッパーセンター : こくばん.in:リアルな書き味と消し味を実現するテクニック

    「こくばん.in」とは 「こくばん.in」は、“黒板に落書き”という学生の頃に誰もが体験したことをWeb上で味わうことのできるお絵かきサービスです。絵に自信がない人でも気軽に落書きを楽しめる場所として、2008年2月末にサービスインしました。 使い方は、まさに黒板と同じです。画面下部に並ぶ6色のチョークのいずれかを選択し、黒板上をクリック&ドラッグするだけで自由に線を書くことができます。線を書く際に、上下カーソルキーあるいはマウスホイールを使えば、線の太さが変わります。また、画面右下には黒板消しがあり、クリック&ドラッグすることで書いた線を消すことができます。 図1:チョークを勢いよく動かすと線がかすれた感じになったり、黒板消しでこすると線がぼやけた感じになったりと、実際のチョークの書き味と消し味を再現しています 落書きが完成したら、画面右下の投稿ボタン使って「みんなのらくがき」コーナー

  • 教科書として書かれた一冊- 書評 - 例解Unixプログラミング教室 : 404 Blog Not Found

    2008年05月18日11:00 カテゴリ書評/画評/品評iTech 教科書として書かれた一冊- 書評 - 例解Unixプログラミング教室 著者より献御礼。 例解Unixプログラミング教室 冨永和人 / 権藤克彦 内容が「Unix/Linuxプログラミング 理論と実践」のだけど、こちらはこちらで良著。「Unix/Linuxプログラミング 理論と実践」がクックブック的なら、こちらは「リャマ」的な一冊となっている。 書「例解Unixプログラミング教室」は、UnixプログラムをCで書くための教科書を目指して書かれた一冊。 目次 - 例解UNIXプログラミング教室 - 書籍紹介【和書】 Pearson Education Japanより。 第1章 C の復習(1):マニュアルの読み方,エラー処理,構造体,共用体 第2章 C の復習(2):ポインタ,バイトオーダ,複雑な型 第3章 低水準入出力

    教科書として書かれた一冊- 書評 - 例解Unixプログラミング教室 : 404 Blog Not Found
  • 本気でやるなら黙読は避けて朗読すべき: Days on the Moon

    読書百遍義自ら見る」という言葉があります。難解な書物であっても 100 回も読めば自然と意味がわかるようになるという、熟読の大切さを説いた句です。しかし、これは当のことなのでしょうか? 2000 年もたてば社会も常識もまったく変わってきます。昔の人の言ったことが今も正しいとは限りません。 疑問があれば解明したくなるのが人の性というもの。実際に「読書百遍義自ら見る」は正しいか、確かめて紀要にまとめてくださった方がいます。それによると、女子大生にデカルトの「方法序説」を 30 回読んでもらったところ、ほとんどが内容を理解するにいたったとのこと。この言葉の正しさが見事に証明されたのです。 ただし、一点注意することがあり、それは黙読ではなく朗読するということ。人間は活字を使いだしたのはたかだかこの5千年程度のことであるが、音声を使った情報のやりとりは動物の時代から行ってきたことであるという由緒

  • JavaScriptのイベントハンドラ説明

    気でやるならonclick属性は避けてライブラリを活用すべき - 帰ってきたHolyGrailとHoryGrailの区別がつかない日記 を読んで,思うところあって書いてみました(決してカウンターアーティクルではない)。 むかしむかし JavaScript を触っていた むかしむかしに書かれた JavaScriptで勉強している/した 人向けに。大元記事(そろそろ気で学びませんか? | Think IT(シンクイット))の想定読者に近いかなと思います。よって以下は JavaScript の初学者にはまったくおすすめできない(余計な知識がついてしまう)です。 Step 1: はじめのいっぽ ボタンを押したらメッセージボックスが出現する HTML を書いてみます。 <html><body> <script type="text/javascript"> function ShowMes

    JavaScriptのイベントハンドラ説明
  • UK STUDIO - 初心者向けJavaScript勉強会の資料公開と補足

    とある理由で僕主催の初心者向けのJavaScript勉強会 を14日行いました。とある理由はforestkさんのエントリーを参照ください(UK 主催の初心者向け Javascript 勉強会が生まれた経緯) 会場は株式会社ノッキングオン様にご提供いただきました。借りたい人ははてなキーワードのノッキングオンの会議室使いたい!を利用するといいと思います。東麻布でプロジェクター & ネット環境あり(優先ですがアクセスポイントを持参すれば無線も利用可能みたいです)の好環境ですのでかなりおすすめの物件となっております:-P 資料を公開しますので参考になれば幸いです。といっても、ほとんど入門書に書いてあるようなことですがwしかもif文とかの説明すげー適当だしね! 資料URL : http://www.slideshare.net/ukstudio/javascript/11 質問されたり、資料が半端な

  • せっかちな人のための git 入門 - git をインストールし、共同で開発できる環境を整えるまで - 僕は発展途上技術者

    subversion に代わる新しいソース管理システムということで git が注目されているようだ。 » Git - Fast Version Control System subversion と大きく違うところは、分散されたレポジトリがローカルマシンに置かれている点。これは、ネットにつながっていなくてもソースをコミットできるということで、最近は電車のなかでもコードを書いたりする僕にはうってつけ。 マニュアルやチュートリアルは充実しているのだが、僕はとりあえず最初にツールを触ってみて、ざっと全体像をつかみ、それから細部を調べたい質なので、もっとてっとり早く体験できるガイドを探したところ、あまり適切なものが見つからなかった。 そこで、レポジトリを作り、それをリモートにあるサーバーに置いたあと、subversion で言えば svn commit や svn update などにあたるコマン

  • 本気でやるならonclick属性は避けてライブラリを活用すべき - id:HolyGrailとid:HoryGrailの区別がつかない日記

    第1回 そろそろ気で学びませんか? | Think IT これ、今この記事書いてる時点で650以上ものブクマがされているんだけれども、あまり内容がよろしくない。 というのも、解説はとても丁寧ですごくよい内容なのだけど、サンプルコードの書き方がどうも古くさい。 onclick属性とか、今時のフロントエンドエンジニアはそんな書き方はしない(と思う)。 なぜonclickをあまり推奨しないのか やっぱり、エンジニアとデザイナーorマークアッパーとの分業の点でHTMLの属性にスクリプトを書いちゃうのはあんまりよろしくない。 たとえばの話だけど関数の名前を変えたかったり、だとか、HTMLを変更したり、っていうときにミスが起こりやすくなってしまう。 これは分業していなくてもどちらにしろ発生してしまうことだと思う。 他にも前に書いたのだけど、aタグとかでonclickしちゃうとhrefにreturn

    本気でやるならonclick属性は避けてライブラリを活用すべき - id:HolyGrailとid:HoryGrailの区別がつかない日記
  • Ruby on Rails用 統合開発環境(IDE) 比較レポート:CodeZine

    1. はじめに1.1. 背景 近年、スクリプト言語「Ruby」と、Rubyで書かれたWebアプリケーションフレームワーク「Ruby on Rails(以下、RoR)」が注目を集めています。 Ruby/RoRの開発はテキストエディタとコマンドラインツールがあればすぐに始めることができます。一方、Ruby/RoRの普及に合わせてテキストエディタとしての機能の他にデバッガ、WebサーバやDBサーバとの連携、バージョン管理などの機能を備えた統合開発環境(以下、IDE)が複数登場しています。 Ruby/RoR対応のIDEはJavaなど他言語のIDEと比較すると機能面や安定性にやや物足りなさがありますが、各IDEは活発に開発が行われており、実際の開発をサポートするレベルまで着実にバージョンアップを重ねています。1.2. 稿の目的 Ruby/RoR対応のIDEを使用する場合、NetBeans、Ecli

  • 1日で作る全文検索エンジン - Building a full-text search engine in "ONE" day - - とあるはてな社員の日記

    最近、「Introduction to Information Retrieval」というStanfordの大学院向け教科書のドラフトを読んでいます。id:naoyaあたりが勉強会で読んでいる教科書です。この教科書には、効率のいい全文検索システムを作るにはどうすればいいか、という(まさに)教科書的手法が網羅的に書いてあり、そのあたりに興味がある人には、非常に興味深く読めるお勧めのです。 ただ、面白い面白いと言っているだけでは、エンジニアとしては価値半減ですので、GW中にrubyで一日かけて実装してみました。 さすがに実装は、一日で作ったものですから、非常に素朴です。マルチバイト文字はbi-gramで、シングルバイトはスペースなどの区切り記号で認識しています。インデックスは、rubyの処理系のHashやArrayで保持しており、外部にMarshallで書き出す、というものです。検索エンジン

  • Ruby on Rails 2.0入門:Flickerベースのアプリケーションの作成:CodeZine

    はじめに 2004年に初めてリリースされたRails Webアプリケーションフレームワークは、Ruby言語のキラーアプリケーションになり、CRUD(Create、Read、Update、Delete)パターンに基づくWebアプリケーションを短時間で作成できる非常に強力なツールとして急速に普及しました。そして2007年末、今やすっかり有名になったこのWebアプリケーションフレームワークのバージョン2.0がリリースされました。最初のリリースのときほどの驚きはありませんが、Rails 2.0はやはり多くのイノベーションを実現し、開発をより効率的で楽しいものにしています。 稿では、Rails 2.0の概要と、最も重要な新しい機能を説明し、それらを使ってシンプルでも目を引くWebアプリケーションを作成する方法を紹介します。よくある「15分でブログを作る」というような例ではなく、ここで紹介するアプリ

  • Processing.jsで魚の群れシミュレーション - p4lifeのメモ

    Mozilla の John Resig さんが作った Processing.js をさっそく試してみました.プログラムのネタは今ホッテントリになっている「ほぼ日刊イトイ新聞 - がんばれ森川くんの遺伝子くん」の「群れの知能」に書いてある Boid(birdoid, Bird android)です. Boid は鳥や魚の群れの振る舞いを再現するアルゴリズムで,次の基的なルールからなります.◆ルール1:近くの鳥たちと飛ぶスピードや方向を合わせようとすること◆ルール2:鳥たちが多くいる方へ向かって飛ぶこと◆ルール3:近くの鳥や物体に近づきすぎたら、ぶつからないように離れることhttp://www.1101.com/morikawa/2001-06-25.html群れの中の各個体をこのような単純なルールに従わせるだけで,一見複雑な動きを簡単にそれらしく再現することができます. 「群れの知能」を

  • GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ
  • Webアプリ開発環境としてのSafariを知ってますか?

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部) シェア競争に挑まないWebブラウザ「Safari」の登場 2008年3月、iPhoneの日登場に先駆けて、Windows版Safari 3.1が登場しました(参考「AppleWindowsにも正式対応の「Safari 3.1」リリース」)。 WebブラウザのシェアはFirefoxが健闘しつつも、いまだInternet Explorer(以下、IE)が大半を占め、多くのWebアプリケーションサービスにとって、IEへの対応が必須であると思われてきました。そんなWebブラウザのシェア競争の中へSafariが登場したことは、最初はとても異質なことに感じられました(参考「新しいWebブラウザ

    Webアプリ開発環境としてのSafariを知ってますか?
  • OLL: オンライン機械学習ライブラリをリリースしました。 - DO++

    様々なオンライン学習手法をサポートしたライブラリ「OLL (Online-Learning Library)」をリリースしました。 プロジェクトページ 日語詳細ページ 学習、推定を行なう単体プログラムと、C++ライブラリからなります。(C++ライブラリ解説はまだ)。 New BSDライセンス上で自由に使えます。使った場合は感想や苦情などいただけると幸いです。 オンライン学習とは、一つずつ訓練データを見てパラメータを更新していく手法で、訓練データをまとめて見てから学習するバッチ学習(SVMs, 最大エントロピー法)と比べて非常に効率良く学習を行なうことができます。それでいながらSVMs, やMEsに匹敵する精度が出ます。 学習するデータの性質にもよりますが、例えば、英語の文書分類タスクで、15000訓練例、130万種類の素性の訓練データに対する学習が1秒未満で終わります(SVMsだと実装に

    OLL: オンライン機械学習ライブラリをリリースしました。 - DO++
  • MapReduce - naoyaのはてなダイアリー

    "MapReduce" は Google のバックエンドで利用されている並列計算システムです。検索エンジンのインデックス作成をはじめとする、大規模な入力データに対するバッチ処理を想定して作られたシステムです。 MapReduce の面白いところは、map() と reduce() という二つの関数の組み合わせを定義するだけで、大規模データに対する様々な計算問題を解決することができる点です。 MapReduce の計算モデル map() にはその計算問題のデータとしての key-value ペアが次々に渡ってきます。map() では key-value 値のペアを異なる複数の key-value ペアに変換します。reduce() には、map() で作った key-value ペアを同一の key で束ねたものが順番に渡ってきます。その key-values ペアを任意の形式に変換すること

    MapReduce - naoyaのはてなダイアリー
  • 404 Blog Not Found:perl - There's more than one way to die

    2008年05月10日15:00 カテゴリLightweight Languages perl - There's more than one way to die いよいよ来週はYAPC::Asia::2008ですが、Hotel DANは日から開業。我が家では日から20日までが「YAPC旬間」です。 というわけで、その間は少なくとも一つはperlがらみのentryにしていく所存です。 で、第一回はいきなりdieの話題です。 開発日誌 pp-perl: Perlのエラー処理プログラムを停止して、メッセージ(LIST)をSTRERRに出力します。 間違っていませんが正しいとは言えません。 die = throw die()とは何か? まずは、以下のコードをご覧下さい。 [Run via codepad] eval { my $zero = 0; my $dead = 1 / $zero;

    404 Blog Not Found:perl - There's more than one way to die
  • 「Cクックブック」 - 書評 - Unix/Linuxプログラミング 理論と実践 : 404 Blog Not Found

    2008年05月09日22:00 カテゴリ書評/画評/品評Lightweight Languages 「Cクックブック」 - 書評 - Unix/Linuxプログラミング 理論と実践 アスキー改めアスキーメディアワークスの鈴木様より献御礼。 Unix/Linuxプログラミング 理論と実践 Bruce Molay / 長尾高弘訳 C言語を通してUnix/Linuxの仕組みを学べる良著。Perl/Python/Rubyクックブックのレシピを、レシピを並べる(遅延学習的)のではなく、レシピの難易度順に並べ直して、実践を通して理論を学ぶことが出来るように仕立ててある。 書「Unix/Linuxプログラミング理論と実践」では、以下の目次のとおり、実際のUnixコマンドを「再発明」することで仕組みを学んでいく。 目次 - Unix/Linuxプログラミング 理論と実践にないのでBooksデータベー

    「Cクックブック」 - 書評 - Unix/Linuxプログラミング 理論と実践 : 404 Blog Not Found
  • Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))

    Ruby 1.8.7ではRuby 1.9からのbackportがとても多い。つまり、Ruby 1.9のあのメソッドがRuby 1.8でも使えるようになったということだ!! これがすごいという機能がもりだくさん、ちょっと大人になったRuby 1.8をお楽しみに。 Enumeratorは組み込みになり、eachなどのイテレータメソッドはブロックをつけないとEnumerable::Enumeratorを返すようになった。おかげでブロック付きメソッドの柔軟性が飛躍的にアップ! expectationsテスティングフレームワークによるテストで書いているので「gem install expectations」してから実行してみよう。手軽にユニットテストが書けるからおすすめ。書式は…見ればわかるよねw ChangeLogで現在からRuby 1.8.6リリースまでを読んだので、ほとんどカバーしていると思わ

    Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))