タグ

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

  • 一流のフロントエンドエンジニアが引っ越しの達人である理由 - KAYAC engineers' blog

    このエントリーは tech.kayac.com Advent Calendar 2015 の3日目のエントリーです。 こんにちは。ここ5年で6回引っ越している @ki_230 です。 普段は引っ越しの傍ら、ウェブサイトのマークアップに勤しんでおります。 今回は出力結果よりも出力結果を導き出すルールが重要!という話をしたいと思います。 まずは引っ越しの話からはじめましょう。 ※ できることであればPCChromeでご閲覧ください。 例えば、あなたが友達に引っ越しを頼まれたとしましょう。 いまの家がこんな感じなんですけど、新しい家におんなじ感じで家具を配置して欲しいんですよね。 ※ マウスオンで家具の名前がわかります。 合点承知の助! でもって、家具を運び入いれる際、新居の広さが以前のものと全く変わらなければ問題は起こりません。 ※ マウスオンで家具の名前がわかります。 完璧だ。 完璧ですね

    一流のフロントエンドエンジニアが引っ越しの達人である理由 - KAYAC engineers' blog
    Ashizawa
    Ashizawa 2015/12/03
  • #14 「2012年 私の中のマイイノベーション」tech.kayac.com Advent Calendar 2012 - KAYAC Engineers' Blog

    @kenjiskywalker 氏に「2012年 私の中のマイイノベーション」について記事を書けと脅されながらこのエントリを書いております。 振り返ってみると今年もいろいろイノベーティブな出来事があったので思い出せる範囲でまとめてみようかとおもいます。 GNU screen から tmux に移行した screenとくらべるとtmuxはなかなかベンリでイノベってますね。 tmux + irssi + canything で Anything 風チャンネル切り替えする tmux で pbcopy みたい記事を書いてたみたいです。意外ととあんまり書いてなかったですね! mosh を使い始めた ssh のかわりにいくつかの環境で mosh を利用し始めました。 僕は MacBook Air 一つでいろいろなところで作業をするのですが、ssh だと移動するたびに接続し直しになって面倒だし、 とくに

    #14 「2012年 私の中のマイイノベーション」tech.kayac.com Advent Calendar 2012 - KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/12/16
  • #12 チームでgitを使い始めてよかった! - KAYAC Engineers' Blog

    こんばんわ、1年ぶりの投稿になります。せい(@shin1rosei)です。 キライな言葉は「面白法人なんだから面白いことしろよ」と言われることです。 自分は真面目一で生きてきて大して面白い人間ではないので辛くなります。 このエントリはtech.kayac.com Advent Calendar 2012 12日目の記事になります. テーマは「私の中のマイイノベーション2012」ということで、 今年を色々振り返ってみってみて、かなり地味な内容になりますが、一番効果が高かったなーと感じる「チームでgitを使い始めたこと」をお話したいと思います。 使い始めるまで 今まで自分が関わっていたプロジェクトは(小学生と言われるの覚悟で)subersionを使うのが一般的で、 gitの恩恵にあやかりたいプログラマは"git-svn"を使っていました。 ただ、次のような問題点がありました。 project

    Ashizawa
    Ashizawa 2012/12/13
    @typesterにdisられてチームのモチベがダウンしてツライ >@typesterにdisられてチームのモチベがダウンしてツライ
  • #10 2012年に作ったものを振り返りつつProcletマジ便利 - KAYAC Engineers' Blog

    2012年も残すところあと20日ほどとなりましたが皆様いかがお過ごしでしょうか。@fujiwara です。 このエントリは tech.kayac.com Advent Calendar 2012 10日目の記事です。 テーマが「私の中のマイイノベーション 2012」ということで、まずこの1年に作ったものを自分の blog エントリから振り返ってみますと… Perl から Fluentd にログ出力 - Fluent::Logger リリース 今年一番話題になったミドルウェアといえば fluentd でしょうか。その fluentd に Perl からログを出力するためのモジュールです Parallel::Benchmark というモジュールを書きました 並列にプロセスを起動して負荷を掛けるベンチマークを簡単に作るためのフレームワークです。弊社の主にソーシャルゲーム案件で、リリース前の負荷テ

    #10 2012年に作ったものを振り返りつつProcletマジ便利 - KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/12/11
    on Readability
  • #8 「iOSのバージョン間の溝を埋めるテクニック」 tech.kayac.com Advent Calendar 2012 - KAYAC Engineers' Blog

    こんにちは、iOSプログラマーの_ishkawaです。 このエントリは tech.kayac.com Advent Calendar 2012 8日目の記事です。 テーマは「私の中のマイイノベーション 2012」です。 12月。恋人たちが心の溝を埋めていく中、僕はiOSバージョンの溝を埋めております。 今日はそのテクニックを紹介したいと思います。 それと、紹介するテクニックを使ったマイイノベーションも紹介します。 基中の基 iOSでは、バージョンによってクラス/メソッドの有無やプロトコルへの適合状況が異なります。 これらの状況の違いは以下の方法で判別することができます。 メソッドが存在するかどうか: respondsToSelector: クラスが存在するかどうか: [Class class] プロトコルに適合しているか: conformsToProtocol: これらの条件を以下のよ

    #8 「iOSのバージョン間の溝を埋めるテクニック」 tech.kayac.com Advent Calendar 2012 - KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/12/10
  • KAYAC Engineers' Blog

    SREチームの長田です。 今回は、カヤックのメンバーが業務で使うために開発・公開しているOSSなプロダクトをまとめて紹介しようという企画です。 KAYAC organization以下にあるものだけでなく、在籍中のメンバーが作ったものもひっくるめて、実際に業務で使用しているものを中心に 紹介しています。 以下の3つのカテゴリに分けて記載しています。 各カテゴリ内はアルファベット順です。 ツール編 人間が手動で実行するもの アプリケーション編 どこかに常駐して、イベントを受け取ると動作するもの ライブラリ編 ツールやアプリケーションから参照されるもの 集めてみたらそこそこの量になったので、記事では詳細な説明は省いています。 GitHubリポジトリのURLや関連記事のリンクを併記していますので、より詳しく知りたい場合はそちらを参照ください。 (...) 内はそのプロダクトで使用している主なプ

    KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/12/03
  • #3 「あまりApplication cache(cache manifest)のことを甘く見ない方がいい」 Advent Calendar 2012 - KAYAC Engineers' Blog

    最近色々あってAndroidと心を通わせられるようになってきたago(@kyo_ago)です。 このエントリは tech.kayac.com Advent Calendar 2012 3日目の記事です。 Application cache(cache manifest)とは WHATWGやW3で議論されているHTML5 Offline Web Applicationの仕様の一部です。 細かい仕様等に関しては最後に参考URLをつけたのでそちらをご覧ください。 ここでは色々誤解の多いApplication cacheの使い方をご紹介したいと思います。 使い方 .appcacheの拡張子に対してtext/cache-manifestのMIMEタイプを設定してください。 .appcacheファイルは以下の形式で作成してください。 CACHE MANIFEST: #更新用ID(日付+連番等) キャッ

    #3 「あまりApplication cache(cache manifest)のことを甘く見ない方がいい」 Advent Calendar 2012 - KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/12/03
  • 今日から始めるCoffeeScript - KAYAC Engineers' Blog

    こんにちは。毎年花粉症になりかけている飯塚です。 最近のNode.jsの普及などによってサーバサイドJavaScript界隈が盛り上がっています。 そんなホットなJavaScriptをラクにかつエレガントに書くためのCoffeeScriptという言語をチュートリアル風に紹介します。 何かしらのライブラリを自分で書く程度にJavaScriptで開発している人は絶対に使ったほうがいいと思います。 JavaScriptを知っていれば1-2時間程度で十分駆使できるようになります。 (2011/6/28:@m_satyr様にご指摘頂いた箇所を修正しました。) 目次 CoffeeScriptとは? インストール Hello World 構文 関数 変数展開 Objectの生成 ループ 存在チェック ヒアドキュメント thisのバインド クラス 無名関数 {var} Tips ?の使い分け 存在チェック

    今日から始めるCoffeeScript - KAYAC Engineers' Blog
    Ashizawa
    Ashizawa 2012/01/19
  • Google Mapのデザインを変更する方法(StyledMapの使い方) - KAYAC Engineers' Blog

    豚を丸焼きにするイベントで日焼けしました。ago(@kyo_ago)です。 すでにだいぶ時間がたってますが、7/7に弊社コーポレートサイトのリニューアルを行いました。 その際会社までの道順を紹介するページでGoogle Mapのデザインを変更したのでその方法をご紹介したいと思います。 StyledMapType Google Map Ver3以降はStyledMapTypeというAPIが追加されており、このStyledMapTypeを使うことで地図上の指定された要素に対して独自の色情報を設定することができます。 色の変更方法 色を変更するにはStyledMapType API経由で以下のようにJavaScriptのObjectを渡すことで実現できます。 var styles = [ { // 色を変更する対象の指定(document参照) featureType: "road.local"

    Google Mapのデザインを変更する方法(StyledMapの使い方) - KAYAC Engineers' Blog
  • SWF on iPhone!「FlashForward」 - KAYAC engineers' blog

    Chrome文エリアをスクロールするとエラーになるそうです。ごめんなさい! こんにちは!1年間自転車通勤を続けた結果、健康診断で「おっ!」と言われて大満足のaragaです! SWFをiPhone上のSafariで動かすプロジェクト「FlashForward」をgithubで公開しました。 プロジェクト名 FlashForward ライセンス MIT FlashForwardとはなにか? まずは、社内勉強会で発表した資料をご覧ください。 非常に操作性が悪くてすいません。が、実はこの資料はおそらく世界初の試みで作られています。 なんとSWF,SVG,Canvasの3種類のフォーマットで見る事が出来ます。 SWF SVG Canvas ※ Safari推奨 これらはFlashForwardを使ってFlashLite1.1で作ったSWFのスライドを変換しました。 このほかのサンプルはギャラリ

  • そこそこ規模が大きくても何とかなるjavascriptの設計(URL dispatcherの薦め) | tech.kayac.com - KAYAC engineers' blog

    弁当生活始めました。agoです。 以前のjavascriptの開発はサーバサイドと同じPGが開発することが多く、機能をファイル単位で分割してそのページで必要なファイルのみを読み込むと言うことが行われていました。 ただ、最近はサーバサイドとクライアントサイドの分業が進んだことや表示速度の兼ね合いもあり、単一ファイルに全体を記述しサーバサイドでは全ページでその一ファイルのみを読み込むような形になることが多いです。 単一ファイルの利点としてはサーバサイドの実装に依存せずに任意の機能を追加できることがありますが、欠点として機能毎の切り分けが難しくなると言う点があります。 jQueryを使用して$('.selector')で切り出す方法もありますが、マークアップの全体像を正確に把握できていないと不要なページで間違って実行されてしまう危険性もあります。 そこで、以下のようなJSを先に読み込み、各URL

    そこそこ規模が大きくても何とかなるjavascriptの設計(URL dispatcherの薦め) | tech.kayac.com - KAYAC engineers' blog
  • PHPで携帯位置情報を扱うライブラリを僕も作りました - KAYAC Engineers' Blog

    どうも、カヤックモバイル$のaragaです。 PHPで携帯の位置情報を簡単に取り扱うことができるライブラリを作りました。 巷で話題沸騰中の先日リリースした「おひらきNAVI」で作ったものですが、ウノウさんが同様のネタ「PHPで携帯位置情報を扱うライブラリ「Geomobilejp_Converter」を作りました 」で沢山ブックマークされていたので、便乗して公開することにしました。 GPSに関することはウノウ中村さんの「携帯GPSの基礎知識たち」が非常に解りやすくまとまっているので参考にしていただけると良いかと思います。 位置情報からエリア情報の取得は、「SimpleAPIの最寄り駅Webサービス」を使用させていただきました。 使い方の紹介 ※ キャリア情報にNet_UserAgent_Mobileを使用しています。 各キャリアのGPS取得用タグを作成する createFormTag(lin

    PHPで携帯位置情報を扱うライブラリを僕も作りました - KAYAC Engineers' Blog
  • smartchr.el を使って生産性を上げる - KAYAC Engineers' Blog

    人生初めての萌え神社メイドカフェ体験で、「なむなむ、にゃんにゃん、ラブ込め〜」という呪文(唱えた人の味覚を鋭敏にし、ケーキの味を引き立たせる効果があるらしいです)をテレビ取材で唱えさせられそうになったので、丁重に断りました。今年1年の中でも3の指に入るほどの真面目に人と話した場面だったのではないかと思います。 そんな事があったのが、six days ago! agoではありません、IMAKADOです。 さて、皆さんはプログラム中に = を書くとき、両端にスペースを入れているでしょうか? 私は、入れています。入れないより入れた方が、プログラムがずっと読みやすくなるからです。 ですが、前後にスペースを入れない時と比べて、2回タイプ数が増えてしまうという問題があります。 そういった問題を解決する smartchr.el というemacs拡張をリリースしました。 smartchr.elを使う事で

    smartchr.el を使って生産性を上げる - KAYAC Engineers' Blog
  • lighttpd 1.4.x で X-Reproxy をできるようにする mod_fastcgi_reproxy - KAYAC Engineers' Blog

    追記@2009-10-20: もっとちゃんとした reproxy モジュールを書きました。こちらの新しい記事を参照ください。 lighttpd 大好きっ子な村瀬です。 突然ですが、perlbal というロードバランサーをご存じでしょうか。この perlbal には reproxy という機能があります。 これは、このロードバランサー下のWebサーバーが X-Reproxy-Url: http://example.com/ などというヘッダを返すと、perlbal がその URL の内容を取得し、コンテンツボディをその URL の内容に置き換えてくれるという物です。 MogileFS や Amazon S3 との相性のいい機能ですね。 これを lighttpd でもやりたくなったのでがんばってみました。 mod_fastcgi_reproxy 既存の mod_fastcgi に reprox

    lighttpd 1.4.x で X-Reproxy をできるようにする mod_fastcgi_reproxy - KAYAC Engineers' Blog
  • jQueryを使うときに気をつけるべき8のポイント : tech.kayac.com - KAYAC engineers' blog

    DAHONのBoardwalkを修理しようとしておもいっきり壊してしまいました。agoです。 普段はjQueryをメインで使用しているのですが、使っていていくつか注意すべき点があったのでまとめてみました。 (一部jQueryではなく、DOMの仕様上の制限も含まれています) 1 $().filterにstring以外のものを渡すとエラー 1.4系では修正されていました $().findや$().notは大丈夫ですが、$().filterの場合引数にjQuery objectや配列、html elementなどを渡すとエラーになります。 (たとえばjQuery objectを渡した場合、Firefoxでは「TypeError: t.substring is not a function」というエラーが発生します) 確認する ちなみに、$().findや$().notはstring以外も渡せるた

    jQueryを使うときに気をつけるべき8のポイント : tech.kayac.com - KAYAC engineers' blog
  • jQuery.autouploader Pluginを作成しました。 : tech.kayac.com - KAYAC engineers' blog

    AutoHotKeyの設定ファイルが意味不明で困ってます。agoです。 このたび弊社ではにおい部 - においフェチに捧げるコミュニティとして、におい部をOPENしました。 今回はこのサイトで使用している、ファイル選択時の自動プレビューjavascriptをjQuery.autouploaderとしてjQuery Plugin化したので公開したいと思います。 使い方はjQueryと一緒にpluginを読み込むだけ。 <script type="text/javascript"jquery.autouploader.js"></script> これで<form enctype="multipart/form-data">の中にある、<input type="file">に対して自動的にプレビュー機能が追加されます。 サーバサイドはアップロードされたファイルを保存し、そのURIを返すAPIを作成

    jQuery.autouploader Pluginを作成しました。 : tech.kayac.com - KAYAC engineers' blog
    Ashizawa
    Ashizawa 2008/12/13
  • deliciousの本家Helpに書かれていないAPIの使いかた - KAYAC engineers' blog

    今回は南国高知からお伝えしています。agoです。 前回の記事でもちょっと紹介したのですが、deliciousにはいくつか家のHelpに記載されていないAPIがあるのでご紹介したいと思います。 ・情報を取得するときにURLで渡す。 deliciousは各URLのブックマーク数等を取得するとき基的にURLのmd5を渡しますが、以下の方法であれば直接URLを指定して情報を取得することができます。 http://badges.del.icio.us/feeds/json/url/blogbadge?url=http%3A%2F%2Ftech.kayac.com%2F また、返り値にはURLのmd5も含まれているので、URLのmd5がほしいときにも使えるかもしれません。 (deliciousへのアクセス以外でURLのmd5がほしい状況というのも思いつきませんが。。。) ・一度のアクセスで複数のU

    deliciousの本家Helpに書かれていないAPIの使いかた - KAYAC engineers' blog
    Ashizawa
    Ashizawa 2008/12/13
  • SymfonyでIP制限するフィルター作りました - KAYAC engineers' blog

    こんにちは。カヤックモバイル$のアラガです。 諸事情により.htaccessによるIP制限ができなかったので、symfonyでIP制限するフィルタを作りました。 携帯サイトのキャリア判別は、おなじみのNet_UserAgent_Mobileを使うと簡単ですが、ユーザーエージェントだけでは簡単に偽装できてしまうので、公式サイト等の場合は望ましくないです。 そこで、各キャリアから公開されているIPでも制限をかけます。.htaccessで良ければMobile IP htaccess Makerを使うのが簡単です。 しかし、リバースプロキシを使っていると、IPが経由サーバーのIPになってしまい、元のIPがX-Forwarded-Forに入ってしまいこの方法だとうまくいきません。(ということに気づきました) そこで制限したいIPを正規表現で書いて SetEnvIf X-Forwarded-For "

    SymfonyでIP制限するフィルター作りました - KAYAC engineers' blog
    Ashizawa
    Ashizawa 2008/12/13
  • Catalyst で簡単 Flash Remoting サーバーサイド開発 - KAYAC engineers' blog

    perl のイベントで空気を読まず Flash についての発表をしたり、Ajax のテーマの原稿で空気を読まず Flash について書いたりしている村瀬です。こんにちは。 先日 adobe が AMF (Action Message Format) の仕様を公開してくれたので、それではと perl で AMF パーサーを書いてみました。 Data::AMF この中の Data::AMF が AMF のデータ部分のみをパースするモジュール。Data::AMF::Packet が Flash Remoting などでつかわれる AMF パケットをパースするモジュールとなっています。 ということで、Data::AMF::Packet を使用すれば Flash Remoting のサーバーサイドを開発することはできるのですが、AMF パケットを素で扱うと若干面倒な実装をする必要があります。そこで、

    Catalyst で簡単 Flash Remoting サーバーサイド開発 - KAYAC engineers' blog
    Ashizawa
    Ashizawa 2008/12/13
  • 1