タグ

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

タグの絞り込みを解除

*あとで読むに関するa20130517のブックマーク (73)

  • JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh

    Jenkins、いいですよね。オペレーションの自動化には美があります。前回の記事ではGitによるデプロイ自動化を行いましたが、その時点で既にユニットテストの自動化は想定していたので、今回はそれを実現してみます。 これによって、機能を実装してプッシュする度に自動でデプロイされ、その過程でテストが自動で行われるので、特に通知がなければ動作が保証されるようになります。実際に番環境への適用の際には、もう少ししっかりテストをする必要があるのかもしれませんが、開発環境レベルではテストを意識的に実施せずとも気兼ねなく開発を進めることができます。 ユニットテストにはおなじみのPHPUnitを使います。なお、前回のJenkins導入やデプロイ自動化の話はこちらの記事でまとめてありますのでよろしければどうぞ。 ユニットテストとテスト自動化 従来、プログラムのテストはミスの許されない商用プロダクトでは欠かせな

    JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh
  • 「無意識のウソ」を排除せよ――ユーザーの本音を引き出す定性調査の勘所

    「無意識のウソ」を排除せよ――ユーザーの音を引き出す定性調査の勘所:【連載】データと調査で“愛されWeb”を作る 第4回(1/2 ページ) アンケートに代表される定量調査が「仮説証明型」であるのに対して、「仮説発見型」の方法といえる定性調査。ユーザーの音を引き出すために、何に気を付けなくてはいけないのでしょうか。 前回、アンケート調査には質問者の仮説が含まれ、ユーザーをあらかじめ「枠にはめてしまうという」側面があることを述べました。これを避けるため、自由回答形式でデータを収集し、その中から何かを発見するという「定性調査」を用いるわけですが、自由回答だから自由に音を語ってくれるかというと、そう簡単にはいきません。 一例として、とある企業の商品サイトがリニューアルするに当たって実際にあった案件を紹介しましょう。ここでは、ユーザーがどのようにWebを使っているのかを調べるためにインタビュー

    「無意識のウソ」を排除せよ――ユーザーの本音を引き出す定性調査の勘所
  • 新サービス立ち上げ時の重要指標のデザイン - クックパッド開発者ブログ

    こんにちは、株式会社ビットジャーニーに出向中の出口 (@dex1t) です。ビットジャーニーでは、社内情報共有ツール Kibela*1のサービス設計やプロダクトマネジメントに責任を持ちつつ、エンジニアとして開発全般に携わっています。 今回は、新サービスの立ち上げ時にどのような考えで重要指標*2を設計し、それを実際の開発のなかでどう使っていくかという話をします。 なぜ検証をするのか そもそもなぜ新サービス立ち上げ時に、重要指標や検証といった考えが必要になるのでしょうか。それを考えるにあたって、クックパッド的なサービス開発の流れを改めて整理してみます。 企画と検証は表裏一体 サービス開発といえば、企画・開発・検証をぐるぐる回すというのが一般的だと思います。指標は検証段階で活用する道具です。企画で考えたことを確かめるのが検証段階であり、企画と検証は表裏一体です。 したがって、指標の設計をするにあ

    新サービス立ち上げ時の重要指標のデザイン - クックパッド開発者ブログ
  • リバースプロキシって何?触りだけ学んだサーバー/インフラ入門 - Qiita

    Goでリバースプロキシを作ったものの、そもそもリバースプロキシが何なのか、何で必要なのか分からなかったのでまとめてみた。 主に [24時間365日] サーバ/インフラを支える技術 ‾スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ) を勉強して、理解に必要そうなところだけ抽出した。 冗長化の必要性 冗長化とは、障害が発生しても予備の機材でシステムの機能を継続できるようにすること。 Webサービスでいえば、webサーバが1つ死んだり障害が発生したりしても、サービスには支障を出さずに運用を続行出来るようにすること。 システムを冗長化するとは、 障害を想定する 障害に備えて予備の機材を準備する 障害発生時に予備の機材に切り換えられる運用体勢を敷く ことをいう。 予備機材を導入して障害に備える 先の冗長化の方法にあるように、予備機材を導入する。 これでw

    リバースプロキシって何?触りだけ学んだサーバー/インフラ入門 - Qiita
  • Jenkinsを使った自動テスト環境を作る(前編) | さくらのナレッジ

    継続的インテグレーション(CI)ツールとして有名なJenkinsは、ソフトウェア開発におけるテストやビルドと言った作業を自動化するツールだ。記事ではJenkinsの最新版となるバージョン2系で正式に導入された、パイプライン機能を使ったビルド/テスト環境の構築を紹介する。 CIツールと「Jenkins」 ソフトウェア開発の現場において、そのテストはソフトウェアの設計やコーディングと同じくらい重要な過程である。近年のWebアプリケーションやスマートデバイス向けアプリケーション開発ではアプリケーションのリリース間隔が短くなっている傾向があり、そのためテストもより迅速かつ頻繁に行わなければならくなっている。そういった環境で有用なのが、継続的インテグレーション(CI)ツールだ。 CIは、元々は「ソフトウェアの開発コストを下げるためには開発の初期から頻繁にテストを行ってフィードバックを行うべき」とい

    Jenkinsを使った自動テスト環境を作る(前編) | さくらのナレッジ
  • サルでもわかる 逆引きデザインパターン 第2章 逆引きカタログ ロジック編 Factory/Factory Method(ファクトリ/ファクトリメソッド)

    イントロダクション オブジェクトを利用する側からすれば、使用する際にオブジェクトの詳細を意識したくはありませんよね。 たとえば、条件によってデータファイルの読み込みに使うオブジェクトが異なる場合、CSV形式であればCSVDataReaderオブジェクトを、XML形式であればXMLDataReaderオブジェクトを生成します。 通常はif、else、switchなどの条件分岐を使用して、条件ごとに生成するオブジェクトを変更します。 ここで新たなデータファイル形式への対応が必要になった場合は、新しいオブジェクト生成処理と、条件式を追加しなければいけません。 オブジェクトの使用者は、オブジェクトが使用できる状態で受け渡してもらい、オブジェクトは使うことだけに専念したいものです。 また、このようにオブジェクトの生成処理と使用処理が同じコードに書かれていた場合、オブジェクトの生成処理によってオブジェ

  • JavaScriptにフレームワークが必要な理由 - Qiita

    JavaScriptにはむしろもっと抽象化がもたらされるべき - Qiitaという記事で、もう少し踏み込んだ話を書いてみました。 某所でReact.js界隈の人に聞きたいというフレームが発生したのだが、はてなブックマークでコメントしたらIDコールされたので、反論をここに書くことにした。(最近は技術系記事はQiitaにしか書いてないので)。 あくまで僕が考えるなので、JavaScript界の人達が当はどう思っているかはわからない。そもそもJavaScript格的にさわり始めたのごく最近なので、JavaScript界では異端かもしれない。 元記事では論点(感情)が複数ごちゃまぜになっていたので僕は辛口のブコメを書いたのだが、論点をごちゃ混ぜにするのは意図的にやってるのならばただの詭弁だ。なので、まずは元の記事での論点を整理する。 jQuery (or フレームワーク?) 言語採用 Rea

    JavaScriptにフレームワークが必要な理由 - Qiita
  • SSL証明書の通信の仕組み・発行までの流れなどのまとめ - conf t

    SSL証明書の通信の仕組みや発行までの流れについて、 わかっていたようでわかっていなかったので、まとめました。 SSL証明書について、多少わかる人を想定して書きます。 目次 目次 SSL証明書を利用して行われるSSL通信の仕組み SSL証明書の発行までの流れ 証明書の信頼性を検証する方法 ルート証明書 中間証明書 クロスルート証明書 オレオレ証明書 SSL証明書を利用して行われるSSL通信の仕組み まずはSSL証明書でどのようにSSL通信が実施されるか見ていきましょう。 その中で出てくる共通鍵認証は同じ鍵じゃないとあかないよねってのでイメージしやすいのだが、 公開鍵認証はいつも流れ・イメージを忘れてしまう。 公開鍵認証は「一方通行」だと覚えている。 送信先の公開鍵で暗号化し、復号できるのは秘密鍵を持っている送信先の相手のみだから。 itpro.nikkeibp.co.jp viral-co

    SSL証明書の通信の仕組み・発行までの流れなどのまとめ - conf t
  • “使えない奴”を足切りする為の面接テクニックについて - シロクマの屑籠

    コンサルの面接で「74冊読みました」と言ったら「それは何がすごいの?」と返された - ミームの死骸を待ちながら リンク先の記事はコンサルタントの採用面接の体験談らしいが、巧い質問する面接官だなーと舌を巻いた。もし自分が面接官になったら、こういう意味深な質問を繰り出したいものだ。 就職面接であれ、受験面接であれ、面接官は限られた時間のなかで、対象者が合格に値する人物なのかをスクリーニングしなければならない。“モノになりそうな奴”を合格させ、“使えそうにない奴”を足切りするという重大な作業にかかわらず、与えられる時間はたった数十分。しかも、面接官に少しでも良い印象を与えるべく、対象者はなにがしかの嘘や誇張を交えてくるという前提で面接しなければならない*1。 このため、面接官がそれなりの信頼度でチェックできる情報というのは、意外と限られているし、そういう情報は「対象者が言葉に出して喋った内容その

    “使えない奴”を足切りする為の面接テクニックについて - シロクマの屑籠
  • 第9回 IPルーティング

    TCP/IPネットワークは、「ルータ」によって相互に接続されたネットワークの集合体である。各ネットワークにはIPアドレスが割り当てられたコンピュータが接続され、それらのネットワークがさらにルータ(正確にはIPルータ)によって相互に接続されて、より大きなネットワークとして機能している。今回は、このルータとIPルーティングについて解説する。 ルーティングとルータ TCP/IPにおける通信の基単位は「IPパケット」である。IPパケットの詳細は次回解説するが、IPパケットには、パケットを送信する相手を表す「あて先IPアドレス」と、送信元を表す「送信元IPアドレス」、そして送信するデータ(および制御用データ)が含まれている。TCP/IPでは、この「IPパケット」をルータ間で次々と中継することにより、ネットワーク上のすべてのノードが相互に通信できるようになっている。 ルータによって相互接続されたTC

    第9回 IPルーティング
  • http://creive.me/archives/5818/

    http://creive.me/archives/5818/
  • 間違いだらけの「かんたんログイン」実装法

    今回は、そのかんたんログインの問題点について説明します。 「契約者固有ID」を用いるかんたんログイン かんたんログインとは、携帯電話の「契約者固有ID」を用いたログイン手法です。 第1回で説明したように、携帯電話のブラウザのリクエストヘッダには契約者固有IDと呼ばれるIDを付けることができます。契約者固有IDは、携帯電話事業者によって詳細は異なりますが、すべての携帯電話事業者が対応しています。 図1は、NTTドコモの携帯電話がサポートしている契約者固有IDである「iモードID」がサーバに送信される様子です。この情報は、ユーザーがそれと意識することなく送信されます。携帯電話のかんたんログインとは、契約者固有IDのみを用いて認証を行い、ログイン機能を実現することです。 かんたんログインは、ベーシック認証のようにIDとパスワードを管理する必要もなく、Cookieのように対応する端末を考慮する手間

    間違いだらけの「かんたんログイン」実装法
  • ssh公開鍵認証を実装する - Qiita

    Enter file in which to save the keyと聞かれるので、 鍵の名前(今回はid_rsa)を入力します。 次にEnter passphrase (empty for no passphrase):と、 パスフレーズを聞かれるので入力します。 空にするとパスフレーズ無しで生成できます。 すると、カレントディレクトリに以下の2ファイルが生成されます。 id_rsa (秘密鍵) id_rsa.pub (公開鍵) 公開鍵の配置 まずは公開鍵を配置します。 FTPソフト等で サーバB に接続し、 id_rsa.pub を転送します。 ※id_rsa.pubをサーバBに転送したら、サーバAからは削除してしまって構いません。 その後、 id_rsa.pub をサーバBの/.ssh配下に設置

    ssh公開鍵認証を実装する - Qiita
  • 公開鍵暗号方式

    1976年、 ホイットフィールド・ディフィー (Whitfield Diffie) は 暗号の世界に革命を起こしました。 それまでの暗号は、 すべて 秘密鍵暗号方式 (private key encryption system) と呼ばれるものでした。 たとえば下図のように、 A は H に、 B は A に、 C は U に… というふうに文字を置き換えることにすると、 "I LOVE YOU" は "M TVNX SVK" になります。 これならこの手紙が誰かに盗まれたとしても、 何が書いてあるか分からないので安心です。 ところが、 相手がこの手紙を読めるようにするためには、 暗号化に使った 「鍵」 を別途送っておかなくてはなりません。 鍵が漏洩する恐れがあり、 安全とはいいきれません。 ディフィーが考えたのは、 鍵を二つ使うことです。 ひとつは公開鍵 (public key)。 「公

    公開鍵暗号方式
  • JavaScript Double Dollar Sign

  • 「技術が古いとエンジニアがやる気をなくす」、クラウドワークスCTOの大場氏 | 日経 xTECH(クロステック)

    最大級のクラウドソーシングサービスを手掛け、急成長しているのがクラウドワークスだ。サービスを開始した2012年3月以来、約2年でユーザー数は11万人を突破した。同サービスを使って仕事を発注した企業は、既に2万3000社に上る。 そのクラウドワークスに2014年1月、新しいCTOが誕生した。システムインテグレータ(SIer)とソーシャルゲーム会社を渡り歩いてきた大場光一郎氏である。「伸びる業界、成長するサービスを支えるのが、何より楽しい」と語る。 CTOの役目はエンジニアが働きやすい環境を作ることだと言い、そのためにも最新技術を使えるインフラ整備にはこだわるという。CTOの大場氏に話を聞いた。 大場さんは、SIerの伊藤忠テクノソリューションズ(CTC)からソーシャルゲーム会社のグリーに転職し、そして今のクラウドワークスに移ってCTOになりました。このキャリアについて聞かせてください。

    「技術が古いとエンジニアがやる気をなくす」、クラウドワークスCTOの大場氏 | 日経 xTECH(クロステック)
  • fork - Wikipedia

    fork(フォーク)とは、プロセスのコピーを生成するものである。UNIXおよびUnix系OSではシステムコールのひとつで、新たに作り出されたプロセスを子プロセス、fork()を呼び出したプロセスを親プロセスと呼び、fork()システムコールの戻り値によって親と子の処理を区別する。子プロセスではfork()の戻り値は0であり、親プロセスの戻り値は新たに生成された子プロセスのプロセス識別子、エラーが起きた場合は-1である。また、マルチスレッド環境でスレッドのコピーを作ることもforkと呼ぶことがある。 forkが呼び出されると、子プロセスのためのアドレス空間が新たに作成される。子プロセスのアドレス空間には親プロセスが持っていた全セグメントのコピーがあるが、コピーオンライト機能によって実際の物理メモリの確保は遅延される(すなわち、一時的に同じ物理メモリセグメント群を親子で共有する)。親プロセスと

  • https://qiita.com/kekekenta/items/8b1f9d2a17c4c6a6b638

    a20130517
    a20130517 2015/03/09
    A/Bのパターンを期間をずらして表示するのかと思ってた。こうやるのか。すごく勉強になった
  • コンテンツデリバリサービス 【CDS】

    概要 CDN(Content Delivery Network)とは、Web上で送受信されるコンテンツを効率的に配送するために構築されたネットワーク。また、これを利用して顧客企業のコンテンツを高速に配信するサービス(CDNサービス)。 CDN事業者はインターネットの様々な場所にコンテンツ配信用の「キャッシュサーバ」を設置しており、これらは大容量の回線で相互に接続されている。キャッシュサーバには配信元である顧客のWebサーバ(オリジンサーバ)から配信されるコンテンツの複製(キャッシュ)が保存され、全サーバがオリジン側の最新コンテンツと同じ内容になるよう常に同期している。 オリジンサーバへアクセス要求があると、アクセス元に地理的あるいはネットワーク的に近い位置にあるキャッシュサーバが代理応答し、キャッシュとして保存されている内容を送信する。多数のサーバで接続要求を負荷分散することができ、アクセ

    コンテンツデリバリサービス 【CDS】
  • CEDEC 2010「アジャイル開発手法スクラムの基礎とゲーム開発導入事例」 - ゲームの花園

    今回はゲームリパブリックさんのアジャイル開発手法のセッションまとめます。 このセッションは、アジャイルとはなんぞや?スクラムはどういうもの?という基的なところからの説明で非常に分かりやすい内容でした。今までアジャイルの基礎をすっ飛ばしてきた自分には最適です。 なので自分でも詳細を振り返りつつ、レポートしてみます。 概要 スクラムの基礎の紹介と、ゲーム開発に導入した時の成功・失敗談 スクラムの基礎 導入事例 まとめ 質疑応答 公式サイト CEDEC2010:アジャイル開発手法スクラムの基礎とゲーム開発導入事例 スクラムの基礎 参考にした資料 Agile Game Development with Scrum ゲーム開発向けにアレンジが入っており、家のスクラムとは若干違う手法になっている スクラムとは何か? スクラム = アジャイル開発手法の開発技法の一つ アジャイル開発手法とは何か? ア

    CEDEC 2010「アジャイル開発手法スクラムの基礎とゲーム開発導入事例」 - ゲームの花園