タグ

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

  • 第1回 Hubotとは何か | gihyo.jp

    連載では、GitHub社が開発したチャットbot開発・実行フレームワークである「Hubot」を使用して、チャットツールにオリジナルのbotを住まわせ、開発フローに組み込むことで開発を楽にする方法について解説していきます。 botとはなにか 開発の現場で、開発チーム内のコミュニケーションのためにIRCなどのチャットツールを導入することは、よく見る光景だと思います。そんなチャットツールに常駐してチャット経由でコマンドを待ち受けて実行したり、決められた条件に従ってチャットに発言してチャットの参加者に通知したりするようなプログラムのことをbotと呼びます。 Skype、HipChatやChatWorkなどコミュニケーションツールが多様化した現代においても、それぞれのチャットツールに対応したbotが開発されており、botを開発するためのフレームワークも様々な形で提供されています。botを導入するこ

    第1回 Hubotとは何か | gihyo.jp
    kwy
    kwy 2014/05/29
  • 第1回 ハックガールズがGitを教えちゃいます! | gihyo.jp

    皆さん初めまして!私たち、エンジニアアイドル「ハックガールズ」の堤沙也と濱ヶ崎美季です! 今回からgihyo.jpさんで連載を受け持たせて頂く事になりました!よろしくお願いします☆ ハックガールズとは ハックガールズは、エンジニア女子2人によるアイドルユニットです。 ハックガールズ、さやみん(左)とはまー(右⁠)⁠。 これからよろしくお願いいたします☆ 母体は「リアル脱出ゲーム」などの参加型イベントの企画・運営を行う「SCRAP」がプロデュースするアイドルユニット「パズルガールズ⁠」⁠。そのメンバーのうち、Webエンジニアをしている堤沙也(さやみん)と、SIer企業で働いていた濱ヶ崎美季(はまー)が内部ユニットとして立ち上げたのが、ハックガールズです。 実は、私たちが普段取り扱っている「謎解き」「⁠パズル」といったものは、エンジニアとの親和性がとても高いと思っていて。もちろん、謎解きやパズ

    第1回 ハックガールズがGitを教えちゃいます! | gihyo.jp
    kwy
    kwy 2014/05/25
  • 第7回 リクルート式Hadoopの使い方 | gihyo.jp

    前回は、リクルートグループでのHadoopを利用したサービス活用事例を紹介しました。今回は、Hadoop Conference Japan 2013 Winterで弊社の石川信行が講演した「リクルート式Hadoopの使い方 2nd Edition」の紹介をします。 図1 Hadoop Conference Japan 2013 Winterでの講演の様子 ビックデータを扱う体制と環境の進化 リクルートで、ビックデータに挑むアナリストは2種類います。 コンサル型データアナリスト コンサル型データアナリストは、事業の抱える課題解決に向けた仮説を立て、具体的な解決案の提案を行います。分析力、論理的思考力、統計などの数学的知識が必要とされます。 エンジニア型データアナリスト エンジニア型データアナリストは、データマイニングやマシンラーニング(機械学習)などを行い、その結果を元に一定の規則性を見つけ

    第7回 リクルート式Hadoopの使い方 | gihyo.jp
  • 第6回 クラウドサービスの比較:AWS、Windows Azure、さくらのクラウド | gihyo.jp

    今回でこの連載も最終回です。これまでAmazon Web Services、さくらのクラウド、Windows Azure、Google App Engineについて触れてきました。最終回ということでこれらのベンチマークを比較してみたいと思います。 unixbenchで比較 Amazon Web Services(AWS⁠)⁠、さくらのクラウド(以降さくら⁠)⁠、Windows Azure(以降Azure)は、IaaS(仮想サーバ)がありますが、Google App EngineはPaaSなので単純な比較はできません。まずは前者の3つについて、比較をしてみましょう。 今回はパフォーマンス計測の定番、unixbenchで比較をしてみました。 https://code.google.com/p/byte-unixbench/ 計測対象は下記の通りです。 ディスクについては、AWSではProvis

    第6回 クラウドサービスの比較:AWS、Windows Azure、さくらのクラウド | gihyo.jp
  • 本日12月1日より、プログラマ有志による2012年の技術系Advent Calendarが各所ではじまる | gihyo.jp

    日12月1日より、プログラマ有志による2012年の技術系Advent Calendarが各所ではじまる 日12月1日より、プログラマ有志による2012年の各技術系Advent Calendarが一日目を担当する人のblogではじまっている。定番化したと言っていいほどの、師走の風物詩になっている。 昨年は技術系Advent Calendarが多方面で行われたが、今年は昨年を超える技術系Advent Calendarが12月1日より行われそうだ。 一般的なAdvent Calendarは、12月25日のクリスマスを楽しみに待つために、12月1日から24日までのカレンダーの日付の部分(扉だったりする)を開けるようになっており、1日ずつその日の日付の部分を開くと天使や動物の絵などが見えるという仕組み(もちろん、様々なバリエーションがある⁠)⁠。 これに発想をえて、技術系Advent Calen

    本日12月1日より、プログラマ有志による2012年の技術系Advent Calendarが各所ではじまる | gihyo.jp
  • 第18回 ロジスティック回帰:機械学習 はじめよう|gihyo.jp … 技術評論社

    前回までに、分類問題のモデルの一つ「パーセプトロン」を紹介して、その実装を行いました。 パーセプトロンはとてもシンプルでわかりやすいモデルでしたが、「⁠線形分離可能」なデータにしか適用できないという難点がありましたね。 今回は線形分離できないデータにも適用できる分類モデルとして、「⁠ロジスティック回帰」を紹介します。 予測の信頼度 分類器を使って、実際の問題を解くときのことを考えてみます。例えば「メールのスパムフィルタ」などが想像しやすいでしょう。 一般的にスパムフィルタでは、データであるメールを「スパム(迷惑メール⁠)⁠」と「スパムではない(通常のメール⁠)⁠」のどちらかに分類します。そこで、ちょうどパーセプトロンのような2値分類器を使えば無事解決……とは、なかなかいきません。 スパムフィルタを通り抜けてしまった迷惑メールを一つ一つ消す、反対に必要なメールが間違ってスパムと判定されてしま

    第18回 ロジスティック回帰:機械学習 はじめよう|gihyo.jp … 技術評論社
  • 第4回 大規模データ処理におけるCPUの2大ボトルネックとは | gihyo.jp

    「特定CPUコアでのボトルネック」と「リソースの奪い合い」が2大ボトルネック 第2回、第3回ではディスクI/Oボトルネックについて説明しました。レスポンスとスループットの関係を正しく理解し、I/Oスループットを最大化するようチューニングすれば、ほとんどの大規模処理は速くなります。ユーザもハッピー、皆さんもハッピー、さて家に帰りましょう。 ……しかし、次はだれかからこう聞かれることでしょう。 「CPUの使用率が異様に低いままなんだけど……?」 「CPUの使用率がずっと100%で張り付いているんだけど……?」 どっちやねん!と思うでしょうが、どちらも大規模データを処理するときに特に起こりえる問題です。 ボトルネックは、1つが解消すると、新たなポイントが明らかになるものです。そして多くのケースにおいて、ディスクI/Oボトルネックが解消した場合、次に詰まるのはCPUなのです。 CPUボトルネックは

    第4回 大規模データ処理におけるCPUの2大ボトルネックとは | gihyo.jp
    kwy
    kwy 2013/02/04
  • エンジニアはどうすればブレークできるのか?─スタートアップ デイティング「エンジニアブレークスルー」 | gihyo.jp

    エンジニアはどうすればブレークできるのか?─スタートアップ デイティング「エンジニアブレークスルー」 10月7日、東京、麹町のKDDIウェブコミュニケーションズ(⁠株⁠)にて、3回目となる「スタートアップ デイティング」が開催された。今回のメインセッションは「エンジニアブレークスルー」と題したパネルディスカッション。現在第一線で活躍中の気鋭のエンジニアが集まり、エンジニア不足と言われる現状や、エンジニアの成長とは何かといったテーマについて議論が展開された。 会場の模様 モデレータを務めるのは、gihyo.jpの連載「達人が語る、インフラエンジニアの心得」などでエンジニアのスキルやマインドについての発言も多い山崎徳之氏(株式会社ゼロスタートコミュニケーションズ⁠)⁠。今回のパネルの発起人でもある。山崎氏の呼びかけに9名のエンジニアが集まった。 米林正明 氏(株式会社Abby) 閑歳孝子 氏(

    エンジニアはどうすればブレークできるのか?─スタートアップ デイティング「エンジニアブレークスルー」 | gihyo.jp
  • SQL緊急救命室 記事一覧 | gihyo.jp

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

    SQL緊急救命室 記事一覧 | gihyo.jp
    kwy
    kwy 2011/11/26
  • 第2回 レコメンドシステムの実装と課題 | gihyo.jp

    今回はレコメンドシステムの実装の問題と、その解決策として利用するHadoopについて説明します。 今回のポイントは以下の通りです。 スケールアップの限界 分散処理フレームワークの民主化 Hadoop Map Reduceの概要 増え続けるデータをどう扱うか レコメンドシステムを協調フィルタリングのうち、ユーザベース方式により実装することを考えます。このシステムでは次のような映画の評価履歴を使い、「⁠この映画を評価した人はこの映画も評価しています」という映画の推薦を行います。 駄右衛門、ザスーラ、5、2009/12/21、・・・・ 駄右衛門、ジュマンジ、5、2009/12/28、・・・・ 菊之助、ブルースブラザーズ、5、2009/12/29、・・・・ 利平、ザスーラ、4、2010/01/01、・・・・ 十三、ハングオーバー、4、2010/01/01、・・・・ 利平、ジュマンジ、4、2010/

    第2回 レコメンドシステムの実装と課題 | gihyo.jp
  • 第19回 パフォーマンスチューニングとは | gihyo.jp

    今回は、パフォーマンスチューニングについて考えてみます。 ハードウェアは進化しているのに、なぜパフォーマンスチューニングを続けるのか インフラエンジニアは10年前に比べて、格段にパフォーマンスチューニングのスキルを要求されるようになっています。CPUが高速になりストレージも高速になり、メモリの単価も安くなっているにもかかわらず、です。これはひとえに、ネットの、というかWebのサービスの傾向によるものに他なりません。 いまやWebはネットのかなりの部分のトラフィックを締めており、そのWebがどんどん双方向化しています。ここでいう双方向化というのは、大多数のユーザも情報を発信するようになっている、ということとほぼ同義です。 インターネットは双方向(通信)というのはかなり以前から言われていますが、そうは言ってもたとえば2000年のころWebは双方向だったか? というとそんなことはないと思います。

    第19回 パフォーマンスチューニングとは | gihyo.jp
  • 第6回 UNIXプログラミングの勘所(2) | gihyo.jp

    forkとファイルハンドル UNIX系のOSでは、複数のプログラムが、それぞれプロセスという単位で動作しています。forkというシステムコール[1]が呼び出されると呼び出したプロセスの複製がOSによって作成され、複製されたプロセス(子プロセス)がexecveというシステムコールを使って別のプログラムにすり替わる、というしくみでさまざまな処理を実行するようになっています。 「複製」と言っても、全部の情報が複製されるわけではありません。プロセスのメモリイメージが複製される[2]一方で、プロセスが開いている「オープンファイル記述」(⁠open file description)(⁠注3)は複製されません。forkのあとは、親プロセスと子プロセスの両者が、単一のオープンファイル記述を指す「ファイル記述子」(⁠file descriptor)(⁠注4)を持つことになります(図2⁠)⁠。 図2 for

    第6回 UNIXプログラミングの勘所(2) | gihyo.jp
  • 第17回 プロトコルを覚えよう[その1] | gihyo.jp

    今回はプロトコルについて話してみます。 インフラエンジニアをやっていると、「⁠プロトコルを知っているかどうか」というのが他のエンジニアと差がつく部分のひとつになります。 そこで知っておきたいのが、まずtelnetについてです。 「手動でプロトコルを送る道具」としてのtelnet ssh以前はコンピュータに接続するにはtelnetが多かったわけですが(rloginとかrshとかもありましたけど⁠)⁠、telnet自体はtelnetサーバ(telnetdなど)とやりとりしてコンピュータと接続する(ログインする)ためのコマンドであると同時に、平文を無手順で送受信できるため、平文のプロトコルであれば手入力で再現することができる道具でもあります。 telnetのsyntaxは $ telnet [option] [host [port]] です。hostがないとportが書けないので[host] [

    第17回 プロトコルを覚えよう[その1] | gihyo.jp
    kwy
    kwy 2011/03/30
  • 第6回 エンジニアとしての人生を楽しむには | gihyo.jp

    エンジニアという職業を楽しめていない人へ これまでこのコラムでいろいろなことを書いてきたが、結局のところ一番伝えたいのは、ソフトウェアエンジニアという職業がこれからますます重要になること、そしてそんな時代にソフトウェアエンジニアという職を選んだのだから、もっともっと仕事を、そして人生を楽しんで欲しい、ということである。 しかし、この業界で働くことを満喫している私のようなエンジニアがいる一方で、この業界のことを「きつい、帰れない、給料が安い」と嘆く人たちもたくさんいるのも事実。そこで今回は、そんな人たちのためにメッセージを贈る。 現状を把握する 何よりも最初にすべきは、自分の現在の立場をきちんと把握すること。「⁠仕事がきつい、上司が悪い」などと嘆いている暇があったら、その原因がどこにあるのかを理解し、自分の置かれた立場をきちんと理解することに時間をかけるべきである。 具体的には、次に列挙した

    第6回 エンジニアとしての人生を楽しむには | gihyo.jp
  • 第1回 Pacemakerの歴史を見てみよう!:Pacemakerでかんたんクラスタリング体験してみよう!|gihyo.jp … 技術評論社

    はじめに Pacemakerというと、心臓ペースメーカーやマラソンペースメーカー、某DJガジェットという印象があるかもしれませんが、それだけではありません! この連載ではオープンソースで作られているHAクラスタソフト「Pacemaker」を概要から構築、保守運用にいたるまでLinux-HA Japanのプロジェクトメンバーで紹介します。HAクラスタは敷居が高いと考える人は多いでしょうが、この連載で身近なソフトウェアと思っていただければ幸いです。記念すべき連載第1回目では、Pacemakerの概要、歴史を紹介します。 HAクラスタって? まずクラスタとは何か説明しましょう。クラスタとはもともと果実や花の房という意味で、同じようにまとまっているものの事を言います。 複数のコンピュータをつなげ、全体で1つのコンピュータのように振る舞わせる技術で、大きく分けて信頼性向上を目的とした「高可用性(Hi

    第1回 Pacemakerの歴史を見てみよう!:Pacemakerでかんたんクラスタリング体験してみよう!|gihyo.jp … 技術評論社
  • 優れたPerlプログラマを見分ける27の質問 | gihyo.jp

    海外のブログ「Modern Perl Books, a Modern Perl Blog」からの記事です。「⁠なぜ優れたPerlプログラマを雇うのが難しいのか?」という記事からの続きで、新たにPerlプログラマを雇いたいときに、試験や面接にてどうやって見分けたらいいのかについて、実践的なPerl 5に関する質問を計27個挙げています。次に一部を抜粋します。 Perl 5で変数を表す記号には何がある? 配列の要素にアクセスする方法で$items[$index]と@items[$index]の違いは何? ==とeqの違いは何? CPANモジュールのテストコードはどこにある? Perl 5ではどうやって例外を捕捉する? ハッシュの値だけにアクセスする方法は? 難しくトリッキーな問題は少なく、普段からPerlプログラムを書いている人であればかなりの割合で答えられるのではないでしょうか。記事では、「

    優れたPerlプログラマを見分ける27の質問 | gihyo.jp
  • 第3回 なぜ日本のソフトウェアが世界で通用しないのか | gihyo.jp

    日米で異なるソフトウェアの作り方 私がシアトルに来たのは1989年なので、こちらに来てもう20年以上になる。最初の10年をMicrosoftのソフトウェアエンジニアとして過ごし、後半の10年は起業家としてソフトウェアベンチャーを3つほど立ち上げている。こうやって1年の大半を米国西海岸で過ごしながらも、日には毎年数回仕事で帰国しているし、日語でブログや記事を書いてもいて、ある意味で「日のソフトウェアビジネスを、一歩離れてちょうどよい距離で見る」ことができる立場にいる。 そんな私が常々感じているのは、日でのソフトウェアの作り方が米国のそれと大きく違っていること。そして、日のソフトウェアエンジニアの境遇が悪すぎること―そして、それが「日のソフトウェアが世界で通用しない」一番の原因になっていることである。 そもそもの成り立ちが違う日米のソフトウェア業界 日米のソフトウェアの「作り方」の

    第3回 なぜ日本のソフトウェアが世界で通用しないのか | gihyo.jp
  • 第1回 上流工程で「テストの考え方」を使おう | gihyo.jp

    タイトルを見て「何か面白そう」と思ってもらえた方。あるいは「当り前じゃないか」と思われた方、そして、何で上流工程なのに「テスト」なんだ? と思われた方。ぜひ、少しの間お付き合いいただければ幸いです。 テスト担当者の仕事の中で、実はあまり知られていないことのひとつに「仕様を考えること」があります。あれ? それは開発者の仕事じゃないの? もちろんそれはそうなのです。しかし、「⁠完璧な仕様書」などこの世の中には存在しないもの。むしろ「足りない仕様書」が少なくないのが現場の現状です。テスト担当者は、テストを設計する際に、仕様の空白に行き当たって、そもそもこれはどういう仕様であるべきか、それを考えていることがよくあります。 たとえば、同時動作テストにおいて、機能Aが作動しているときに、機能Bを割り込ませると、どのような処理がなされればOKなのか。テストケースを作ろうにも、その「期待値」が仕様書に書い

    第1回 上流工程で「テストの考え方」を使おう | gihyo.jp
  • RubyKaigi2009 スペシャルレポート:Ruby会議2009 3日目レポート[随時更新]|gihyo.jp … 技術評論社

    東京都千代田区の学術総合センターにて3日間にわたって、RubyKaigi2009が開催されています。ページでは、3日目のレポートを随時掲載していきます! 世界各地からRubyistが集まっているイベントも最終日です。 ※今回のレポートは、一橋記念講堂でのセッションを中心にお送りします(全セッションを回れておりません。ご了承ください⁠)⁠。 メトロー ジョンさん「Edo Cabinet」 メトロー ジョンさんは、日語で発表してくれました!発表内容は、平林幹雄さんが開発したTokyoCabinetとTokyoTyrantをRubyから簡単に操作するRufus::TokyoとRufus::Edoの紹介です。 TokyoCabinetは平林さんがRubyバインディングを作成していますが、Cライクな書き方しかできませんでした。Rufus::TokyoはRuby FFI(Foreign Func

    RubyKaigi2009 スペシャルレポート:Ruby会議2009 3日目レポート[随時更新]|gihyo.jp … 技術評論社
  • 第5回 大規模データを扱うためのHBaseとCassandra | gihyo.jp

    どんなところに使える? HBaseやCassandraはどちらもRDBMSで扱いきれないような大規模なデータの扱いに力を発揮します。強力なスケーラビリティも備えているため、データが増えても処理速度はそれほど低下しません。また、列指向データベースの強みを活かして、大量のデータを更新するようなバッチ処理のストレージとして利用しても有用でしょう。 具体的な利用シーン 大規模なデータをスケーラブルに処理する必要がある場合 大量データをバッチ処理する際のストレージとしての利用 HBaseのインストール 稿では、実際にHBaseを使ってみましょう[1]⁠。 まずは1台のサーバ上で環境を整えます。わかりにくかもしれないので、以下の手順を参考にしてください。JDK6およびHadoopのインストールが必要です。 プロンプト1 HBaseのインストール&起動の手順 # http://java.sun.com

    第5回 大規模データを扱うためのHBaseとCassandra | gihyo.jp