タグ

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

  • たった一言でエンジニアを怒らせる方法 10 おまけ付き - KAYAC engineers' blog

    この記事は、Tech KAYAC Advent Calendar 2020 の17日目の記事になります。 こんにちは。はじめまして。クライアントワーク事業部でコピーライターをしている合田ピエール陽太郎と申します。 www.kayac.com コピーライターとは 普段は、広告を見る人に向けて、どんな言葉を言えば振り向いてくれるか、商品を手に取ってもらえるかを考え続けて全精力を捧げている人間です。いわゆる短い言葉で、人を惹きつけるにはどうすればいいかを常日頃から考えています。たとえば、YouTubeの『好きなことで生きていく』、日産の『やっちゃえ日産』などは一度は目にしたことがあるのではないでしょうか。そういった言葉をディレクターから依頼されて考えることが多いです。 書こうと思ったきっかけ 僕がこれまで数社を渡り歩いてきた中でエンジニアと他の職能の人とが言葉のやりとりで上手くいかずに憤慨してい

    たった一言でエンジニアを怒らせる方法 10 おまけ付き - KAYAC engineers' blog
    wozozo
    wozozo 2020/12/17
  • 徹底比較!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
    wozozo
    wozozo 2018/12/09
  • #16 「moshは確かにイノベーション」 tech.kayac.com Advent Calendar 2012 - KAYAC engineers' blog

    初めまして。HTMLファイ部兼ダーツ部のkubota(@kubosho_)です。 最近はAndroidブラウザーのレンダリングエンジンの気持ちになりながら仕事をしています。 このエントリーはtech.kayac.com Advent Calendar 2012 16日目の記事です。 Vimまじイノベーション さて、テーマが「私の中のマイイノベーション 2012」ということで、今年はいろいろとイノベーションがあったのですが、その中でもイノベーションだったのが「Vim」でした。 元々Emacs派だったのですが、弊社HTMLファイ部の部長である@edo_m18に「Vimいいよいいよ」と洗脳おすすめされた結果、Vimを使い出して今では8:2くらいの割合でVimを多く使っています。 しかし、それよりももっとイノベーションを起こしたものが昨日できました。 それがmoshです。 moshまじイノベーショ

    #16 「moshは確かにイノベーション」 tech.kayac.com Advent Calendar 2012 - KAYAC engineers' blog
    wozozo
    wozozo 2012/12/17
  • #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
    wozozo
    wozozo 2012/12/08
  • そこそこ規模が大きくても何とかなる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
  • nginxのHttpLimitReqModuleを試してみる - KAYAC engineers' blog

    ※この記事はnginxの現時点での最新stable 0.8.54を使っています。 2回目の投稿になります、sugyanです こんにちは。 最近、jsdo.itでちょっとしたAPIを作ってみているのですが、連続で大量のリクエストが来るのはちょっと困るので、防御策としてnginxのリクエスト制御モジュール"HttpLimitReqModule"を導入してみることにしました。 http://wiki.nginx.org/HttpLimitReqModule 何も設定しない場合 まずは普通のnginx設定でhttpサーバを立ち上げて、動かしてみます。 worker_processes 1; error_log logs/error.log info; events { worker_connections 256; } http { log_format test '$remote_addr -

    nginxのHttpLimitReqModuleを試してみる - KAYAC engineers' blog
    wozozo
    wozozo 2011/03/26
  • 今日から始める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
  • jQuery.stopのjumpToEnd引数が便利すぎてやばい(JavaScript Advent Calendar 2010 5日目) - KAYAC engineers' blog

    JavaScript Advent Calendar 20105日目のago(@kyo_ago)です。 jQueryのソースを眺めててjQuery.stopに引数があることに気づいたので調べてみました。 まず、簡単なスライドダウンメニューを作ってみたいと思います。 jQuery.stop 1 - jsdo.it - share JavaScript, HTML5 and CSS JS部分は以下の通りです。 $(function () { $('div').hover(function () { $(this).find('ul').slideDown(); }, function () { $(this).find('ul').slideUp(); }); }); 少し触ると分かると思いますが、マウスがmenuから外れた後も何度も.slideDown、.slideUpが実行されるため非常に

    jQuery.stopのjumpToEnd引数が便利すぎてやばい(JavaScript Advent Calendar 2010 5日目) - 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
  • Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC engineers' blog

    羊毛布団を洗濯機にかけられないことを知りました。ago(@kyo_ago)です。 意外と知られていない機能が多い!?Firebugの使い方を見て、プログラマ向けも欲しくなったので書いてみました。 1. ショートカット一覧 以下のページでFirebugのショートカット一覧が公開されています。 http://getfirebug.com/wiki/index.php/Keyboard_and_Mouse_Shortcuts 取り合えず以下の二つだけでも覚えておくと効率的かもしれません。 F12でFirebugの有効、無効の切り替え 広いコマンドラインモード時にCtrl+Enterでコードを実行 また、以下のメニューからショートカットの変更も行えるので、他の拡張等とショートカットがかぶった場合でも別のキーで使用することが出来ます。 2. Firefox体のツールバーに「要素を調査」ボタン Fi

    Firebugの意外と知られていない機能紹介(プログラマ向け) - KAYAC engineers' blog
  • 誰も興味が無いnanoの基礎の基礎 - nanoはpicoの千倍なの! - - KAYAC engineers' blog

    タイトルを見てドン引きした人とはむしろお友達になれそうな気がします。 初めまして、新人の瀬戸と言います。 ネタが無いうえに先輩社員からの前振りがあったので、自分が使用しているエディタについて語りたいと思います。 この記事を見ている人は「エディタ」と聞いて何を思い浮かべるでしょうか。 vimemacs、サクラエディタ、TeraPad、EmEditorなどを思い浮かべるのでしょうか。 「メモ帳で十分だろ常識的に考えて…」 と言う人や、 「純正viしか認めない!」 と言う人や、 「Eclipse使ってないの?プークスクス(笑) …え? IDEの話はしていない?」 と言う人や、 「漢なら黙ってcatとパイプ」 と言う人も居るのかもしれませんね まあ、何にしても人それぞれ好みのエディタがあって、それを使用している事でしょう。 (環境や言語などによって使い分けるということは往々にしてあると思います

    誰も興味が無いnanoの基礎の基礎 - nanoはpicoの千倍なの! - - KAYAC engineers' blog
    wozozo
    wozozo 2010/05/11
  • ジョブキューサーバ Gearmand を PHP から使ってみた - KAYAC engineers' blog

    もうすぐ子供が生まれます。春菜です。 今やってるプロジェクトで新機能追加を検討していて、Perl で有名な「TheSchwartz のようなジョブキューシステムとか試してみたいなぁ。」 なんて話してたらちょうど弊社 村瀬 が社内 TIPS 会で Gearmand について話してたので使ってみました。 Gearmandって何? 元々は Perl で書かれたジョブキューシステムで、つい最近 C でリライトされたようです。 クライアントライブラリとして CPAN はもちろんのこと、PHPPython などたくさん用意されていて活発的に活動されているみたいです。(期待大!!) PHP では PECL と PEAR のクライアントライブラリが利用でき、家サイトでも PHP のサンプルが多く紹介されていてそのまま試す事ができて楽チンです。 インストールと起動 ローカルの Mac にインストール

    ジョブキューサーバ Gearmand を PHP から使ってみた - KAYAC engineers' blog
    wozozo
    wozozo 2009/11/09
  • 「入門 GIT」が神本である件。 git 利用者だけでなくすべての開発者が読むべき本 - KAYAC engineers' blog

    ども。自分のサイトを復旧させるのが面倒なため会社のブログにのレビューまで乗せようという魂胆の村瀬です。 週末に「入門GIT」を読んだのですがこのは git ユーザーはもちろんのことその他すべての開発者が必読のだなぁと感じたので紹介しておきます。 このです。 このは現在の git の開発者でありメンテナーである濱野氏によって書かれた git の入門です。 ただの入門にあらず しかし入門だから最初はよくあるようなチュートリアルのような記事からはじまるのだろうと思っていると最初から面らいます。 最初に書かれているのは git がどのようにデータを記録し、どのように履歴をたどれるようになっているかというまさに git 自体の基が書かれているのです。 僕個人は二年近く git を使用してきているため自分の知識の確認のような感じで読み進められましたが、初めての方はすこしむずかしいか

    「入門 GIT」が神本である件。 git 利用者だけでなくすべての開発者が読むべき本 - KAYAC engineers' blog
    wozozo
    wozozo 2009/10/28
  • 高速にWeb開発をするために便利ないくつかのTIPS - KAYAC engineers' blog

    outputz でいまだに1位になれたことがない村瀬です。 社内で開発をスムーズにするための tips 集を紹介したので、まとめておきます。 記事ではデモができないので便利さが伝わらない物も多いですが参考になれば幸いです。 screenとかzshとか便利だよ!と言う話は社内ではさんざんしているのでありません。 また、OSX 限定の内容もあります。 でははじめましょう。 keychain keychain と言っても OSX の KeyChain ではなく、コマンドラインのツールです。 これは ssh-agent をより便利にするためのラッパーです。これを使用すると ssh の秘密鍵のパスワードを一度入力するとあとはパスワードなしで ssh 接続できるようになります。 「同じこと二回も言わせんな!」といつも切れているような人は導入すると良いでしょう。 使い方は $ keychain ~/.s

    高速にWeb開発をするために便利ないくつかのTIPS - KAYAC engineers' blog
    wozozo
    wozozo 2009/10/03
    接続 共有
  • jQueryを読むために知っておきたい6つの知識 : tech.kayac.com - KAYAC engineers' blog

    夏休みはタイ古式マッサージセミナーに参加してきました。agoです。 先週日曜日若手IT勉強会に参加させていただき、jQueryのコードリーディングを行ってきました。 そこでjQueryのコードを読むときの基礎知識に関して簡単にまとめてみたいと思います。 1 変数の複数同時宣言と代入 まず、JSでは変数の宣言は以下のような形式で行います。 var hoge; この場合は単一の変数の宣言ですが、以下のような記述を行うと複数の変数を同時に宣言することが可能です。 var hoge, huga; また、変数宣言と同時に値の代入を行うことも可能で、その場合以下のような記述になります。 var hoge = 'test'; さらに複数の変数宣言と、値の代入は同時に行うことが可能で、その場合以下のような記述になります。 var hoge = 'test1', huga = 'test2'; jQuery

    jQueryを読むために知っておきたい6つの知識 : tech.kayac.com - KAYAC engineers' blog
  • 細かすぎて伝わらないjQueryの機能5選 - KAYAC engineers' blog

    実は技術部ではなく、演出部所属のagoです。 先日jQuery 1.3.2のソースを読む機会があり、そのときいくつか気づいたことがあったのでまとめてみました。 1 .addClass, removeClassはスペース区切りで複数のclassを渡せる .addClass, removeClassにはスペース区切りで複数のclass nameが渡せます。 //classの順番は保持します。 //<div class="hoge gege">があった場合、<div class="hoge gege huga">になります。 $('div').addClass('hoge huga'); //<div class="hoge gege huga">があった場合、<div class="gege">になります。 $('div').removeClass('hoge huga'); ただし、hasC

    細かすぎて伝わらないjQueryの機能5選 - 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.ime_external Pluginを作成しました。 - KAYAC engineers' blog

    Microsoft Trackball Opticalの復活を切に希望中のagoです。 今年旅する支社として行ったイタリアで、Flash経由でJSからIMEを操作するプラグインを作成したのでjQuery.ime_externalとして公開したいと思います。 同種のJSは過去にもいくつかあったんですが、検証的な内容のものが多く、jQuery Pluginとして作成されたものも無いようなので作成してみました。 使い方はswfをサーバへアップロードした後、jQueryと一緒にpluginを読み込み、要素に対して以下のmethodを呼び出してください。 $(function () { $(/* or selector */).ime_external(); }); これで、該当要素にfocusしたときに自動的にimeが全角モードになります。 これだけだと既存のものとあまり変わらないのですが、ime

    jQuery.ime_external Pluginを作成しました。 - KAYAC engineers' blog
  • jQuery Pluginの書き方 - KAYAC engineers' blog

    最近いくつかjQueryPluginを書く機会があったのでちょっとまとめてみようと思います。 (function($) { //このPluginの名前 var name_space = 'basePlugin'; $.fn[name_space] = function(options) { //いったん退避 var elements = this; //設定情報の構築 var settings = $.extend({ //optionの初期値を設定 'param' : 'value' }, options); //内部用method var inner_method = function () { //内部の共通処理の記述 }; //要素を一個ずつ処理 elements.each(function() { $(this) //イベント等の設定 .keyup(inner_method) ;

    jQuery Pluginの書き方 - KAYAC engineers' blog
  • 1