タグ

ブックマーク / techblog.kayac.com (11)

  • 人間の行動を操るために覚えておきたい科学 - KAYAC engineers' blog

    この記事はTech KAYAC Advent Calendar 2019の4日目の記事です。 こんにちは。技術部平山です。 この記事では、人の行動を操る、つまり、人の行動を予測したり、望みの行動を取らせるために役立つ科学について 軽く紹介いたします。プログラミングの話はございませんが、 プログラマに読みやすい味付けにはしておきました。 なお、「人を操る」とか言っていますが、実際それで思うように操れるのであれば、 私はもっと裕福だったでしょうし、高い地位を得ていたことでしょう。 理屈と実践は異なるということです。 ただ、これを知って気が楽になる方もいらっしゃるかもしれませんし、 もしかしたら、実際に何かを改善させられるかもしれません。 基的には与太話ですので、お暇な方のみお付き合いください。 予測に使える理論は、制御にも使えるかもしれない 何かしらの理論によって現象が予測できるのであれば、

    人間の行動を操るために覚えておきたい科学 - KAYAC engineers' blog
  • MongoDBであるメリットが無くなってしまったのでMySQLに移行したはなし - KAYAC engineers' blog

    SREチームの長田です。 この記事はTech Kayac Advent Calendar Migration Track 1日目の記事です。 今回はLobiで使用していたMongoDBMySQLに移行したはなしです。 MongoDBを何に使っていたか DAUなどのKPIレポートや、サービスの状況を把握するための各種集計結果を保存するために使っていました。 サービス開始直後はこれらの数字を色々と試行錯誤しながら追加したり、減らしたりしていました。 頻繁な追加削除があるデータ構造を保存するために、スキーマレスなデータベースであるMongoDBはちょうどよかったようです。 (当時スキーマレスデータベースが流行っていたというのもあるでしょう) なぜ移行したのか MongoDBに保存されたドキュメントは、スキーマ管理がされていませんでした。 スキーマレスであることをいいことに、その時時によって様々

    MongoDBであるメリットが無くなってしまったのでMySQLに移行したはなし - KAYAC engineers' blog
    braitom
    braitom 2019/12/01
    はい。“スキーマレスだからといってスキーマ管理を放棄すると後で痛い目にあうので気をつけましょう”
  • 徹底比較!Firebase vs Netlify (2018年版) - KAYAC engineers' blog

    みなさまこんにちは、のびーことfnobiです。今年ももうアドベントカレンダーの季節なんですね。はやいはやい。 さて個人的にアドベントカレンダーでは、振り返りの意味も込めて その年お世話になった技術に関する記事を書く、というルールにしてますので、今回は NetlifyとFirebaseの話 をします!! (ちなみにFirebaseの話は去年もしたかったのですが、時間が足りなかった&他の人も書いてたのでパスしました) この記事の目的 いまフロントエンドエンジニアに使ってほしいサービスの私的TOP2・NetlifyとFirebaseについて、様々な観点から比較して、 「なんかどちらも便利そうって聞くけれど、どちらを使えばいいのかわかんないな??」 という人をこの世からなくします! Netlifyってなんぞや? https://www.netlify.com/ githubと連携可能な静的Webホ

    徹底比較!Firebase vs Netlify (2018年版) - KAYAC engineers' blog
    braitom
    braitom 2018/12/08
    Webサイトのホスト先としてのFirebaseとNetlifyの比較。“データベース・ファイルストレージが使いたい場合はすべてFirebaseに乗せる・それ以外の場合はすべてNetlifyに乗せる くらいのイメージです”
  • 【お詫びと訂正】iOS11でついにSafariからカメラにアクセスできるようになりました。(コピペで動くサンプルコード付き) - KAYAC engineers' blog

    お詫びと訂正:(2017/06/08 23:32) 記事内に掲載しているスクリーンショットが、 Apple.Incの開発者利用規約(APPLE BETA SOFTWARE PROGRAM AGREEMENT APPLE INC.)に抵触しているというご指摘をいただきました。 Apple.Incの開発者利用規約から、掲載内容を不適切と判断し、該当箇所を削除させていただきました。 Apple.Inc及び読者の皆様に深くお詫び申し上げます。 追記:(2019/02/17) Navigator.getUserMediaが非推奨となったため、MediaDevices.getUserMediaを使うように修正しました。 Navigator.getUserMedia - Web API | MDN MediaDevices.getUserMedia() - Web API | MDN ざっくり1行でま

    【お詫びと訂正】iOS11でついにSafariからカメラにアクセスできるようになりました。(コピペで動くサンプルコード付き) - KAYAC engineers' blog
    braitom
    braitom 2017/06/07
    iOS11のSafariからカメラとマイクにアクセスできるようになった。`getUserMedia`のvideosにtrueを渡せばよい。フロントカメラ、リアカメラ両方にアクセス可能。
  • React Componentのスタイルガイドを自動生成してパーツの再利用をしやすくする - KAYAC engineers' blog

    こんにちは。カヤックのReactおじさんこと島津です。 最近はVue.jsにも浮気し始めましたが、Reactについての記事を書きます。 Reactのコンポーネントが増えてきて管理が大変 Reactを使うとコンポーネントの部品化が捗りますが、 開発規模が大きくなってくるとその数も増えてきて管理が大変になってきます。 スタイルガイドを導入 スタイルガイドとは、UIパーツの用例と実表示例をまとめたドキュメントのことです。 これがあるとパーツの再利用性が高まります。 例:Codepenのスタイルガイド 人力で手書きしていっても良いのですが、更新が追いつかなかったりするので自動生成する仕組み化ができるツールを使いましょう。 代表的なものとしては、CSSのコメントからドキュメントを自動生成してくれるkss-node などがあります。 今回はCSSだけではなく、Reactのコンポーネント単位でドキュメン

    React Componentのスタイルガイドを自動生成してパーツの再利用をしやすくする - KAYAC engineers' blog
  • DynamoDB + Lambda + SSM でテストサーバーをポコポコつくる仕組み - KAYAC engineers' blog

    はじめまして。カヤック技術部の杉山です。 主にクライアントワークでサービスを開発しています。 今回は、クライアントワークで運用している、テストサイトの仕組みに関して書きます。 「テストサイト」の概要 クライアントワークでは、日々たくさんの案件を開発しています。 それぞれの案件では、多くの場合、Webサイトもしくは、WebAPIを公開するためのサーバーが必要になります。 実際の公開時には、案件ごとに専用のクラウドコンピューティングサービスを契約し、セットアップすることになりますが、 利用して良いサービスの確認が必要であったり、サービスの契約まで時間がかかったりするため、すぐには決まらない場合があります。そのため、開発時や検証時には、カヤック側でテストサイトを用意し、確認やプレビューを行っています。 さらに以下のような要望にも対応する必要があります。 出来るだけ時間をかけず開発環境を用意したい

    DynamoDB + Lambda + SSM でテストサーバーをポコポコつくる仕組み - KAYAC engineers' blog
    braitom
    braitom 2017/03/23
    ほう。DynamoDB起点でLambdaキックするのか。
  • 【Unity】Protocol Buffers と JSON のパフォーマンス速度を比較した話 - KAYAC engineers' blog

    はじめに はめまして、カヤックのゲーム技研の Unity エンジニアのアフィフです。 カヤックで運用しているゲームタイトルでは、主に JSON フォーマットでデータを管理していましたが、最近ではゲームのデータ量がどんどん増えていく傾向にあり、データの読み込みがボトルネックになりつつあります。 JSON のデシリアライズは結構遅いので、もっと良いデータフォーマットがないかと探したところ、Protocol Buffers というデータフォーマットを見つけました。 今回は、プロジェクトに導入する前にパーフォマンスを検証した結果について書きます。 Protocol Buffersとは Protocol Buffers は Google により開発されているバイナリベースのデータフォーマットです。JSON 形式はテキストベースのデータフォーマットなので、オーバヘッドがあります。 例えば、この JSO

    【Unity】Protocol Buffers と JSON のパフォーマンス速度を比較した話 - KAYAC engineers' blog
    braitom
    braitom 2017/03/15
    Unityでのデータシリアライズフォーマットの比較。
  • はじめての Unity x HoloLens の巻 - KAYAC engineers' blog

    みなさんこんにちは。まだまだ寒い日が続き豆腐が美味しい季節になってきましたね。カヤック・オルタナティ部のカワナクションです。今回は、巷で話題のMicrosoft Hololensについてご紹介します。 1:Hololensってなんじゃ? Hololensは、ホログラフィックコンピューティングができるゴーグルデバイスです。ワイヤレスで、実空間にデジタル表現を重ねることができ、 指のジェスチャーなどで操作できるのです。まずは、映像をごらんください。 Microsoft HoloLens: Skype そんな、Hololensで簡単な制作過程を今回はご紹介いたします。早速いってみましょう! 2:Hololensの環境設定 今回は以下のように開発環境を設定しました。 Windows 10 Unity 5.5.0p2 Visual Studio 2015 HoloToolkit-Unity さっそく

    はじめての Unity x HoloLens の巻 - KAYAC engineers' blog
  • canvasをバイト単位で修正する方法(ImageDataの使い方) - KAYAC engineers' blog

    引っ越ししました。agoです。 思いっきりネタがかぶってますが、あまり気にせずcanvasネタを書いてみたいと思います。 今回はcanvasの中でもImageData関係をまとめて見ました。 ImageDataってなに? canvas内のバイト列を扱うためのObjectです。 canvas内の各バイト毎に赤、緑、青、透明度の情報を配列として保持しています。 何に使うの? canvas内をバイト単位で修正したい場合に使います。 canvas内に図形等を書く場合、通常提供されているlineTo等を使用することも出来ますが、こういった抽象メソッドは一回ごとの呼び出しコストが大きいため、細かい単位の操作には向きません。 その点、ImageDataであればバイト単位での操作しかできない代わりに呼び出し毎のコストが小さいため、細かい単位の操作も高速に行うことができます。 ただ、もちろん線を引く、丸を書

    canvasをバイト単位で修正する方法(ImageDataの使い方) - KAYAC engineers' blog
  • canvasでキラキラした背景を作る方法 - KAYAC Engineers' Blog

    tech.kayac.com、ささやかにリニューアルしました! tech.kayac.comをご覧の皆さん、はじめまして。意匠部ME課のfuchigamiといいます。 どうして技術部ブログに意匠部の野郎が?って感じですが、 技術部ブログのリニューアル記念ということで、ちゃっかりcanvasについて記事を書こうと思います。 最初なので、、、 簡単にぼくの属性を説明すると、html5とか好き、CSS3とか好き、canvasとか興味ある、非モテjavascriptはjQueryがなんとなくわかる程度、非リア充。こんな感じです。 今回のリニューアルではコーディング全般を担当しました。 特に、プログラミングに関してはド素人だ!ということを強調しておきます。 そんなぼくが、canvasを使ってキラキラした背景を作ってみました 「リニューアルするからには新しいことがやりたいよね。だったらhtml5とc

    canvasでキラキラした背景を作る方法 - KAYAC Engineers' Blog
  • 今更聞けないcanvasの基礎の基礎 - KAYAC Engineers' Blog

    はじめまして。新入りのnagataです。 入社式で自転車乗ってた野郎です。 先輩方から「ブログ、書いてね!」とのお達しがあったので、 日報で書いたらウケがよさげだったcanvasのことについて書いてみようと思います。 ※各種サンプルはMac上のSafari4.05、Firefox3.6.3、Chrome5.0で動作を確認しています。 canvasってなんぞ? 図を書き込めるhtml要素です。 OpenGLやDirectXのような面倒な設定を書くことなく、 手軽にグラフィック描画が行えます。 ブラウザだけでローカルアプリケーションのような グラフィカル(かつ動的な)表現が行えるわけです。 とりあえずつかってみる 早速何か描いてみましょう。 こういうことは実践あるのみです。 処理にはJavascriptを使います。 canvasに描画を行うときは、canvas要素からcontextを取得して、

    今更聞けないcanvasの基礎の基礎 - KAYAC Engineers' Blog
  • 1