タグ

programmingに関するkitoneのブックマーク (103)

  • 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で書き出す、というものです。検索エンジン

  • Comet/Ajaxの上を行く技術 - Blog by Sadayuki Furuhashi

    上を行くかどうかは知りませんが :-p Ajaxはクライアントの都合でサーバーに通信を仕掛けるpull型の通信ができ、Cometはサーバーが好きなタイミングでクライアントへデータを送りつけるpush型の通信ができるわけですが、新たに双方向の通信ができる技術を開発しました。 具体的には、JavaScriptとサーバーの間で双方向のRPCができます。すなわち、サーバーからクライアント側のJavaScriptのメソッドが呼べるし、逆にクライアント側からサーバー側のメソッドを呼ぶこともできます。 サーバー側で call("addMessage", "Hello!") とやると、JavaScript側の function addMessage(msg) { ... } という関数が呼ばれたりします。 この技術を使って、試しにチャットシステムを作ってみました > デモ (ソースコード)*1 リアルタイ

    Comet/Ajaxの上を行く技術 - Blog by Sadayuki Furuhashi
  • Google App Engine詳解:さっそくHello Worldから作ってみた - builder by ZDNet Japan

    エッジ市場の活性化へ 高まるIoTを中心としたエッジ分野への期待 OSS活用が新しい時代のビジネスを拓く 50年の経験を持つアイネットが提供 ユーザー企業の使いやすさを第一に考えた ワンストップで使えるマネージドクラウド リモートワークを成功させる方法 必須となるセキュリティをどう強化するか 必要な対策5つを紹介 Kubernetes活用の最適解とは? 今、注目のコンテナを活用した柔軟なIT基盤 運用、管理の課題を解決しメリットを最大化 オリジナルコンテンツが満載! 意外と知らないNutanix HCI の情報を集約 読めばわかる!いまHCIが注目される理由 電話営業・インサイドセールの革新 AIによる自動文字起こし・会話分析が 音声コミュニケーションの可能性を拓く ビジネスの推進には必須! ZDNet×マイクロソフトが贈る特別企画 今、必要な戦略的セキュリティとガバナンス AWSとAzu

    Google App Engine詳解:さっそくHello Worldから作ってみた - builder by ZDNet Japan
  • 連載:検索エンジンを作る|gihyo.jp … 技術評論社

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

    連載:検索エンジンを作る|gihyo.jp … 技術評論社
  • プログラミングファースト開発 - ひがやすを技術ブログ

    プログラミングファースト開発とは、ドキュメントを書いてからソースコードを書くのではなく、動くソースコードを書いてユーザに実際に触ってもらうということを何度も繰り返して、仕様を固める開発手法です。ドキュメントは仕様が固まった後に書きます。 テストサミットでは、極力ユニットテストを書かずに品質を確保する方法ということで、テストに重点を置いて話をしたのですが、今回のクロスコミュニティカンファレンスでは、「プログラミングファースト開発」そのものについて、会場の方々と一緒にディスカッションしました。 熱い(暑い?)ディスカッションになったので、思わず途中で泡のあるスポーツドリンクを飲まないといけなくなったほどです(笑)。 プログラミングファースト開発の開発手順は次のようになります。 実装してユーザに使ってもらうということを仕様が固まるまで繰り返す レビューの結果はその場で反映させる 仕様を決めながら

    プログラミングファースト開発 - ひがやすを技術ブログ
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • 理学部数学科卒の僕が思う、プログラマが数学をちゃんと勉強べきであるたった1つの理由 - *「ふっかつのじゅもんがちがいます。」withぬこ

    高校3年生までの範囲でいいから数学がきちんと分かってると、SICPの1〜3章をすごく楽しく読めますよ。いやほんとに。このためだけに12年間算数〜数学を勉強したのだとしても、プログラマにとっては惜しくないと思います。 このご利益は範囲は限定的だけどものすごく現実的で分かりやすいと思うけどどうだろうか、とか思います。 いや、実際数学がどんな風に役に立つのか、なかなか説明が難しいんですよね*1。正直学校で習う5教科のなかで一番役に立ってると個人的には思うんですけどね。 とか↓の記事を読んで思いました。 でも、今の職場*2に行って当に実感したことですが、「数学は役に立たない」なんて嘘っぱちなんですよね。 けれども、それが嘘っぱちであることが、よりによって当の数学者たち(特に学部生や大学院生)になかなか伝わらない。 *1:それはきっと数学って、あとプログラムも、分かっちゃった人には自明に思えるけど

    理学部数学科卒の僕が思う、プログラマが数学をちゃんと勉強べきであるたった1つの理由 - *「ふっかつのじゅもんがちがいます。」withぬこ
  • JavaScriptist - javascript/ajax/サンプル/入門/リファレンス/ライブラリ

    サイト更新情報 2006/12/06 よく使われているページを検索窓から簡単に辿れるようにしました。(検索窓に「prototype」と入力) 2006/11/27 JavaScript入門/応用サイトJavaScriptistオープン! 2006/11/23 試して確認できるJavaScriptオンラインエディタを公開 2006/11/20 JavaScriptリファレンス、逆引きサンプル集を公開 2006/11/19 JavaScriptライブラリ活用ページ公開 2006/11/15 JavaScriptistベース機能の構築完了 過去のサイト更新情報

  • DOMの基本。正しいHTMLとドキュメントツリーを理解しよう

    DOMを介してHTMLを操作する方法を理解しよう。そのためには、正しいHTMLの概念とドキュメントツリーを知る必要がある。 旧来のDHTMLの手法では、JavaScriptから操作できるHTML要素には限りがありましたが、DOMでは、HTML上のありとあらゆる要素を自由自在に読み取ったり、書き換えることができるようになります。連載では、おもにDOM Level 1で規定されている手法を使って、JavaScriptを使ってどのようにHTML上の要素へアクセスするのか、そして、それをどうやって書き換えるのかを詳しく解説していきます。JavaScriptからHTML要素を手に取るように操れるようになります。 ドキュメントツリーとは DOMスクリプティングでは、HTMLに関する正しい知識が求められます。まずは正しいHTMLとはなんなのかを理解していただきます。そして、DOMスクリプティングでは欠

    DOMの基本。正しいHTMLとドキュメントツリーを理解しよう
  • CやPerl、Python、Rubyをブラウザ上で実行できる「codepad」:phpspot開発日誌

    codepad CやPerlPythonRubyをブラウザ上で実行できる「codepad」。 テキストエリアにコードを入力して実行すれば、選択した言語での実行結果が出力されます。 C、C++、D、Haskell、OCaml、Perl、Plain Text、PythonRuby、Scheme、Tclに対応している。 学習用や動作確認の際に使えそうですね。 関連エントリ オンラインでソースをコンパイル

  • Flickrで使われているあのクールなドロップダウンメニューを実装してみよう:phpspot開発日誌

    woork: Flickr like horizontal menu This tutorial explains how to implement an horizontal menu Flickr-like using CSS and Javascript to show/hide sub-menu: Flickrで使われているあのクールなドロップダウンメニューを実装してみよう! 次のようなクールなドロップダウンメニューを実装してみましょう。 紹介元で、HTMLと画像のサンプルが配布されています。 実装自体は次のように関数が定義されていて、 <script language="javascript"> function showMenu(id_menu){ var my_menu = document.getElementById(id_menu); if(my_menu.style.

  • Webアプリのセッション管理はデスクトップアプリのメモリ管理と同じ - プログラマの思索

    小川 明彦, 阪井 誠 : チケット駆動開発 日のソフトウェア開発の現場で生み出された「チケット駆動開発」という概念を、数多くの実例を元にモデル化・体系化を試みた最初の。 小川 明彦, 阪井 誠 : Redmineによるタスクマネジメント実践技法 Redmineによるチケット駆動開発の実践技法に関する最初のアジャイルなソフトウェア開発への適用方法、TestLinkによるテスト管理手法についても言及。 清水 吉男: 「派生開発」を成功させるプロセス改善の技術と極意 組込システム開発をベースとして、ソフトウェア開発特有のスタイルである派生開発、特にXDDPについて解説した世界でも稀な。既存製品を保守するのではなく継続的に機能追加していく昨今の開発では、派生開発特有の問題を意識しなければならない。XDDPはプロセス論だけでなく、要件定義などの上流工程の品質改善にも役立つので注意。 Le

    Webアプリのセッション管理はデスクトップアプリのメモリ管理と同じ - プログラマの思索
  • マッシュアップに必須!PHPで複数APIを同時に叩いて超高速化するサンプル:phpspot開発日誌

    phpied.com Blog Archive Simultaneuos HTTP requests in PHP with cURL The basic idea of a Web 2.0-style "mashup" is that you consume data from several services, often from different providers and combine them in interesting ways. マッシュアップに必須!PHPで複数APIを同時に叩いて超高速化するサンプル。 通常、PHPAPIにアクセスする場合、例えば、Yahoo!検索APIはてなブックマークのRSSを取得してマッシュアップする場合は次の図のようになります。 ただ、この方式だと、Yahoo!検索APIにリクエストし、その結果を待ちます。 そして、そこからはてなブック

  • 「図書系職員のためのアプリケーション開発講習会」成果

    「図書系職員のためのアプリケーション開発講習会」は、東京大学情報基盤センターが主催する東京大学の図書系職員向けの講習会です このページでは、講習会の受講生が開発したアプリケーションを公開しています。 利用者向けサービス 全国大学図書館員向けツール 業務担当者向けツール(学内アクセス限定) 開発中のツール サービスを休止したツール <<講習会資料へのリンク>> 1.利用者向けサービス 東京大学OPACの書誌詳細表示画面から、東京大学生協在庫検索の確認をシームレスに行なえるツールです。これは、東大図書館の所蔵資料で自分用に欲しいを、キャンパス内の生協で即購入したいという利用者のニーズに対応するものです。IE7やFireFoxブラウザでのご利用が可能です。なお、和書限定になりますので、その点はご了解ください サービス名及びリンク解説開発者新OPAC対応

  • ブラウザでRails開発が完了する衝撃の簡単さ - builder by ZDNet Japan

    時代はサーバ仮想化からコンテナへ あらためて整理したい企業ITにおける コンテナ活用の基礎と採用メリットを紹介 クラウドネイティブの実現 モダンインフラの構築・運用の課題解決へ コンテナの可能性を広げるVMware Tanzu RPAによる自動化を年30万で実現 小さな投資が目に見える大きな効果に! デジタル化によるわかりやすい業務効率向上 サーバースペシャリストへの道 PCサポートとサーバ管理の共通項 ひとり情シスのためのスキル向上のコツ データ活用は次のステージへ トラディショナルからモダンへ進化するBI 未来への挑戦の成功はデータとともにある セキュリティモデルは変わった! クラウド活用、リモートワークはあたりまえ いま求められるゼロトラスト実現のために 身近な改善の第一歩! ニューノーマルな働き方を前提にした これからの時代のWi-Fi環境構築のポイント オープンソース活用はあたり

  • 「圧縮新聞」「訃報ドットコム」始めて半年で数々のサービスを生み出す、自称“ニート”──phaさん

    「圧縮新聞」「訃報ドットコム」始めて半年で数々のサービスを生み出す、自称“ニート”──phaさん:田口元の「ひとりで作るネットサービス」探訪 「ニートだけど別荘を買った」というブログで知られるphaさんは、数々のWebサービスを生み出す開発者でもある。プログラミングを始めたのは2007年の2月。どのようにして学び、サービスを作り出していったのだろうか。 ひとりで作るネットサービス──第19回目はその日の最新ニュースをまとめて表示する「圧縮新聞」や、訃報情報を自動でまとめる「訃報ドットコム」など、多数のWebサービスをひとりで開発しているphaさん(28)にお話を伺った。プログラミングを始めたのは2007年2月からというphaさん。短期間でプログラミングを習得し、サービスを開発できるようになった背景にはどういった仕事術があったのだろうか。 憧れのプログラミング──2007年2月に思い立って始

    「圧縮新聞」「訃報ドットコム」始めて半年で数々のサービスを生み出す、自称“ニート”──phaさん
  • 【リクナビNEXT】で転職!

    現在、あなたがお使いのブラウザは、Cookie(クッキー)をブロックする設定になっています。 リクナビNEXTでは、個人情報保護と利便性の観点からクッキーの使用をお願いしています(個人情報収集等の目的では使用しておりません)。お手数ですが、ブラウザの設定を変更してください。

    kitone
    kitone 2007/10/31
    分散技術
  • XMLが嫌われている?:ITpro

    「XMLが“やっかいもの”になっている」──最近,そう感じることが何度かあった。インターネットの普及を促進した立役者の一つであるXMLが,今やある領域では問題児になっているのだ。 すでにご存じの通り,データ構造を自由に定義できるXML(eXtensible Markup Language)の登場は,インターネットの利用形態に大きな変革をもたらした。人間が閲覧するだけでなく,プログラム間でのデータ処理が可能になったからだ。現在では,SOAP,SaaS,Ajaxなどを使ったWebアプリケーションは言うに及ばず,デスクトップで利用するOfficeアプリケーションなどもデータ形式としてXMLを利用している。 しかし,プログラムを作る開発者にとっては,あまりにも多いXMLの活用がやっかいごとになっているという。2007年9月に開催された開発者向けイベント「X-over Development Con

    XMLが嫌われている?:ITpro
    kitone
    kitone 2007/10/12
    XML地獄ね.なるほど
  • Pythonチュートリアル

    TOPICS 発行年月日 2007年09月 PRINT LENGTH 200 ISBN 978-4-87311-340-1 FORMAT プログラミング言語Python(パイソン)の作者Guido氏が書き下ろしたPython入門者のための手引き書。Pythonの言語とシステムの基的な機能やコンセプトを紹介する―「このチュートリアルは、個々の機能を取り上げた包括的なものを目指しておらず、よく使う機能すらすべてはカバーしていない。むしろ特徴的な機能を数多く紹介することで、言語の雰囲気とスタイルを掴んでもらおうとするものなのだ。これさえ読めば、Pythonのモジュールやプログラムは読み書きできるようになるし、ライブラリリファレンスで解説されるさまざまなモジュールについて、詳しく学ぶ準備が整うのである。」(書「概要」より) 関連ファイル 訳者によるサポートサイト 正誤表 書籍発行後に気づいた誤

    Pythonチュートリアル
  • RubyCocoa 入門

    RubyCocoa とは? RubyCocoa は、Mac OS X アプリケーションを開発するためのフレームワークです。 RubyCocoa によって、 OS X アプリケーションを作ること Ruby から拡張ライブラリとして Cocoa を利用すること ができるようになります。 RubyCocoa のインストール Tiger の場合、以下の URL から最新版の dmg をダウンロードして、インストールしてください。 http://sourceforge.net/project/showfiles.php?group_id=44114 Leopard では、RubyCocoa は OS に標準添付されているので、インストールの必要はありません。 はじめての Mac OS X アプリケーション では、さっそくアプリケーションを作ってみましょう。 まず、Xcode を立ち上げます。(/De