タグ

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

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

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

    たった一言でエンジニアを怒らせる方法 10 おまけ付き - KAYAC engineers' blog
  • 分散環境でユニークなidを発番するGo製プロダクト「katsubushi」のご紹介 - KAYAC engineers' blog

    Lobiチームの長田です。 今回はkatsubushiというアプリケーションを紹介します。 https://github.com/kayac/go-katsubushi katsubushiはid発番を行うアプリケーションです。 水平分割されたデータベースに対してユニークなidを発番するために作られました。 なお、記事中の「データベース」はMySQLを指します。 katsubushiの特徴 Snowflakeと同様のアルゴリズムでid発番 SnowflakeはTwitter社がかつて公開していたid発番アプリケーションです。 https://github.com/twitter/snowflake/tree/master 既にメンテナンスされておらず、masterブランチにはその旨が書かれたREADMEしか残されていません。 タグが切られているので、ソースコード等はそちらで確認できます。

    分散環境でユニークなidを発番するGo製プロダクト「katsubushi」のご紹介 - KAYAC engineers' blog
  • #11 AlfredのWorkflowをgoで書くと捗る話 - KAYAC engineers' blog

    tech.kayac.com Advent Calendar 2014 11日目です。 今年の夏にカヤックはGo言語を積極的に推進していきます 宣言が出た影響で今年のAdvent Calenderはgoの話題多めとなっております。 去年辺りから周囲がにわかにgoづいてきた時に「仕事で使うようになったら勉強する(キリッ」 って言ってたらほんとに仕事で使うようになって現在勉強中の @handlenameがお送りします。 多分にもれずgo関連のはなしです。 Alfred便利 AlfredというMac用のアプリケーションがあります。 検索して候補を絞り込んで対応するアクションを実行する、というのが主な機能で、 Webで検索したり他のアプリを起動したりが素早く行えます。 基的な機能は無料で使えるのですが、 有料のPowerpackを購入すると Workflowという拡張機能が追加ができるようになり

    #11 AlfredのWorkflowをgoで書くと捗る話 - KAYAC engineers' blog
  • #10 Consulと連携するpull型デプロイツール stretcher - KAYAC engineers' blog

    tech.kayac.com Advent Calendar 2014 10日目担当の @fujiwara です。 最近書いている stretcher というデプロイツールの紹介をしたいと思います。 長いので3行で push型デプロイはホスト台数が増減しやすい環境に適さない 各種問題を解決するpull型デプロイツールを書いた Consul と連携するよ 中央ホスト配布(push)型デプロイの問題点 カヤックの自社サービスでは久しく Archer というツールを利用し、中央ホストから各デプロイ対象ホストrsync でファイルを配布する形のデプロイを行っていました。ここではこれを push 型と呼びます。 push型のデプロイは、ホスト台数が頻繁に増減する環境で以下のような問題があります。 新しくホストが起動してきた場合に、中央ホストからデプロイを行ったあとでないと (古い状態で起動してい

    #10 Consulと連携するpull型デプロイツール stretcher - KAYAC engineers' blog
  • Golang 製の Android 向けテストアプリ配信ツール「alphawing」を公開しました - KAYAC engineers' blog

    昨年の Advent Calender ぶりの登場です。@m0t0k1ch1 です。 表題の件につきまして、実は 7/31 に公開された こちらの記事 の実績一覧の一番上に載せていただいてもいたのですが、改めてこちらで報告させていただきたいと思います。 alphawing とは https://github.com/kayac/alphawing TestFlight が 2014/3/21 をもって Android のサポートを終了 してしまったので、それを代替するためのツールとして開発したのが、この alphawing です。簡単に表現すると、「Android 用の TestFlight」です。表題の通り、サーバーサイドは Golang で記述されています。 アプリケーションの詳しい起動方法などについては README をご参照ください。 アプリケーションの概要 アプリケーションにひも

    Golang 製の Android 向けテストアプリ配信ツール「alphawing」を公開しました - KAYAC engineers' blog
  • #16 Leap Motionでおっぱいを揉む - KAYAC engineers' blog

    どうも。退職者です。@damele0nです。 teck.kayac.com Advent Calender 2013 15日目のエントリです。 前日は、まったく恨んではいないのですが僕のプライベートな情報を社内でリークした @handlename 先輩の #15 SublimeTextでも使い捨てファイルを開きたい でした。まったく恨んではいないのですが。 さて、去年は「JavaScriptでおっぱいを動かす」というエントリでtech.kayac.com Advent Calendar 2012の2日目から世間様に苦言を呈されたという事態を踏まえつつ そもそも退職者という身分でありかつ、渋谷のディストピアこと闇リエで勤務しているということをわきまえながら Leap Motionでおっぱいを揉みたいと思います。 Leap Motionって? もはや説明不要でしょうか。 [公式サイト] 今年(

    #16 Leap Motionでおっぱいを揉む - KAYAC engineers' blog
    heavenshell
    heavenshell 2013/12/17
    ヤバい未来を感じる。
  • #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
  • #5「GitDDLまじイノベーティブ」 tech.kayac.com Advent Calendar 2012 - KAYAC engineers' blog

    好きな IPA は志賀高原ビールの @soh335 です。 早くビール飲みたいのですが書かないと怒られるので今日は、隣の発明家が作った GitDDL というモジュールについて説明しますね。 (隣の発明家に任せると「GitDDLまじイノベーティブ(完)」としか説明してくれないので) なにするものなの 名前を見て通り、Gitdatabase の schema 管理をするものです。それ以前は、DBIx::Class::Schema::Versioned とかを使っていたようです。 仕組み まず、Git で管理されている schema ファイルを指し示すコミットのハッシュを database 上で管理します。 schema に変更があった場合、このコミットのハッシュが databse 上のものとで差異が生まれます。よって database 上の schema は期待する schema ではな

    #5「GitDDLまじイノベーティブ」 tech.kayac.com Advent Calendar 2012 - KAYAC engineers' blog
  • 今日から始める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
  • モテるJS系女子力を磨くための4つの心得 - KAYAC engineers' blog

    1. あえてECMAScript3.0以前の実行環境を使う あえてECMAScript3.0の実行環境を使うようにしましょう。そしてATNDで好みの男がいたらLT参加を告知し、わざとらしく発表準備段階でコンソールを出していじってみましょう。そして「あ~ん! この実行環境当にマジでチョームカつくんですけどぉぉお~!」と言って、男に「どうしたの?」と言わせましょう。言わせたらもう大成功。「ECMAScriptとか詳しくなくてぇ~! ずっとコレ使ってるんですけどぉ~! Object.keysが使えないんですぅ~! ぷんぷくり~ん(怒)」と言いましょう。だいたいの男は新しい実行環境を持ちたがる習性があるので、ECMAScript5の実行環境を使っているはずです。 そこで男が「新しい実行環境にしないの?」と言ってくるはず(Object.prototypeの拡張を勧める男はその時点でガン無視OK)。

    モテるJS系女子力を磨くための4つの心得 - KAYAC engineers' blog
    heavenshell
    heavenshell 2011/05/10
    "アイコンを震わせてつぶやくのです。" ww
  • 初心者による初心者のためのdoctrine : tech.kayac.com - KAYAC engineers' blog

    初めまして。社内にいるほとんどのプログラマーがpropelの中いきなりdoctrineを学んだピチピチ平成生まれ(20歳)、新卒のitaniです。 symfonyを学んだときに、こんな記事があったらいいなぁと思ったので書くことにしました。 というわけで、symfonyを触ってまだ間もない僕が、今回はdoctrineを使ってDBの基操作を紹介します。 ※symfonyのversionは1.4を使用します。 DBの準備 まずはDBの準備をします。 symfonyを使ってDBを作るにはまずスキーマを作らなければいけません。 スキーマを作る方法は2つあります。 1、自分でschema.ymlを書く config/doctrine/schema.ymlにテーブルの構造をYAMLフォーマットで書きます。 //今回使うDBのschema.yml User: columns: name: { type:

    初心者による初心者のためのdoctrine : tech.kayac.com - KAYAC engineers' blog
  • mixi app framework mist.jsを開発しました : tech.kayac.com - KAYAC engineers' blog

    KAYACモバゲー参入に伴いAmazon Web Serviceと格闘中のagoです。 弊社ではPC版mixiアプリもいくつか作成しておりますが、今回そこで得られたノウハウを集めてmixiアプリ フレームワークを公開しました。 ソースコード github opensocialに関しては過去にjquery.opensocial-simple.jsを公開しておりますが、社内からも「JSなしでmixi appを作りたい」と言う要望もあり、今回frameworkの形で公開いたしました。 コンセプト JSを書かなくてもそこそこリッチなmixi appが作れるフレームワーク 機能 OWNER、VIEWER情報の取得 マイミク情報の取得 指定mixi IDユーザ情報の取得 画面遷移の制御 表示領域の自動調整 「日記に書く」リンクの自動設定 アクティビティの発行 「友達を誘う」機能の追加 詳細はgithu

    mixi app framework mist.jsを開発しました : tech.kayac.com - KAYAC engineers' blog
  • vimに欠かせない3つのプラグイン - KAYAC engineers' blog

    Ark Advent Calendar で、今回こそPerlデビューをもくろんでいるアルバイトの北原です。 僕は普段エディタにvimを利用しています。巷では高まるvim熱のはずなのですが、社内ではEmacs派の方々が大半で、さらにvimを使っているともてないという話まで出てきています。この悲しい現実を打破すべく普段vimを使っている方にも、使ってない方にも、これから使おうと思っている方にもオススメできる3つのプラグインを紹介したいと思います。 1. quickrun.vim quickrun は編集中のファイルの全体もしくは一部を実行する Vim プラグインです。 実行するためのコマンド |:QuickRun| が提供されます。 quickrun.vim help 概要より引用 quickrun.vimはthinca氏によるプラグインです。同名のプラグインをujihisa氏が以前から公開さ

  • ジョブキューサーバ Gearmand を PHP から使ってみた - KAYAC engineers' blog

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

    ジョブキューサーバ Gearmand を PHP から使ってみた - KAYAC engineers' blog
  • jQueryを使い始めたときに感じる13の疑問 : tech.kayac.com - KAYAC engineers' blog

    来週は私が夏休みなので更新はない予定です。agoです。 最近、人にjQueryを解説する機会があったので、昔を思い出してjQueryを使い始めた頃に感じる疑問を書いてみたいと思います。 1 そもそも何で使うの?いまでも困ってないよ 作成する内容にもよりますが、慣れると使用しない場合に比べて記述するコード量が3分の1程度まで減ります。 また、変数、条件分岐、繰り返しが減るのでバグが発生しにくくなります。 2 何か特殊なことができる? 結局できることは変わりません。 jQuery自体JSで書かれてますし、記述の自由度もJSの制約に制限されます。 3 何が難しいの? 文法がややjQuery的になります。 参考 jQuery言語入門 jQuery自体のコード量は少ないのですが、独特の記述法が多く慣れるまで多少時間がかかるかもしれません。 また、CSS Selectorの知識はほぼ必須です。 特にマ

    jQueryを使い始めたときに感じる13の疑問 : tech.kayac.com - KAYAC engineers' blog
  • javascript libraryを作るときに便利な3つのfunction : tech.kayac.com - KAYAC engineers' blog

    社内で唯一(?)の8 tab派。agoです。 suzunari.js、sisso.jsと、最近いくつかJSのライブラリを公開する機会があったので、そのとき使ったライブラリを作るときに便利なコードを紹介したいと思います。 1 script tagからのパラメータ読み込み 外部からの指定によりライブラリ内の動作が変わる場合、script tagから値を指定できると設定のための記述要素を減らすことができます。 (ファイル名を静的に指定している理由に関しては「最後のscript tagの取得方法」をご覧ください) <script type="text/javascript"http://example.com/path/script_file_name.js#param1=value1&param2=value2"></script> var param = (function (file_nam

    javascript libraryを作るときに便利な3つのfunction : tech.kayac.com - KAYAC engineers' blog
  • EmacsにPHPの補完を実装するマイナーモード、php-completion.elをリリースしました。 - KAYAC engineers' blog

    anything.elのインターフェイスを使い、EmacsにPHPの補完を実装するマイナーモード php-completion.el をリリースしました。 インストール・設定・補完のスクリーンキャストは以下です。 php-completion.el DEMO from imakado on Vimeo. 出来る事 visual studioやEclipseライクなポップアップ補完 anything.elのインターフェイスを使った補完 GNU Globalの作ったTAGSファイルから補完候補を自動収得 etags,ctagsで生成したTAGSファイルから補完候補を収得 php.netでのドキュメントの検索 インストール方法 php-completion.elのインストール方法を書きます。 スクリーンキャストと併せてご覧ください。 以下のElispが動作に必要です。anything.el,au

    EmacsにPHPの補完を実装するマイナーモード、php-completion.elをリリースしました。 - KAYAC engineers' blog
  • 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
  • 1