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

  • 俺の管理画面 2023年冬 - KAYAC engineers' blog

    面白法人カヤック技術部の谷脇です。私は元気です。 この記事は面白法人グループ Advent Calendar 2023の5日目のエントリーです。 というわけでこの記事では、現環境(私が取り組んでいる業務のこと)ベストの管理画面の技術選択について考えたことを書き連ねていきます。 前提知識 管理画面の定義 ここで読者と私の目線を合わせるため、この記事上での管理画面の定義をしておきます。 管理画面はサービスの運営上必要な操作やデータの閲覧をまとめたWebアプリケーションです。また、このWebアプリケーションは一般ユーザーには開放されておらず、サービス運営者側のみ閲覧と操作が可能となっている、とします。 管理画面を作る動機 ここではTonamelの管理画面について、考えて導入したことを書きます。 tonamel.com Tonamelはゲーム大会やイベントを開催するためのプラットフォームです。We

    俺の管理画面 2023年冬 - KAYAC engineers' blog
    l08084
    l08084 2023/12/05
  • Webサービスの急激なアクセス数増加を予測して対処する方法と実践 - KAYAC engineers' blog

    どうも、ゲームコミュニティ事業部Tonamelのサーバサイド担当の谷脇です。 今回はTonamelのサービス特性上、どうしても発生する急激なアクセス数の増加(以下スパイクアクセス)をどのように対処しているかをお話します。 Tonamelのサービス内容については以前の記事に書いています。一言でいうと「誰でもeスポーツ大会の運営ができるサービス」です。 Tonamelの特徴 大会が開始したときに発生するスパイクアクセス スパイクアクセスの様子 上記は、あるゲーム大会が大会を開始した10:40ごろのリクエスト数の遷移です。Tonamelは大会の開始と同時にトーナメント表が公開されます。大会に参加している人はもちろん、観戦を行っている人もトーナメント表を見に来ます。観戦する人の同期としては、知人や推しの選手のトーナメント表上での位置や、相手を確認しに来ているようです。 Tonamelに限らず、We

    Webサービスの急激なアクセス数増加を予測して対処する方法と実践 - KAYAC engineers' blog
  • 完璧な結婚の挨拶をするために本気で準備をしていたら、いつの間にかマネキンにプロジェクションして仮お義父さんを作っていた話 - KAYAC engineers' blog

    こんにちは。カヤックOP事業部デザイナーのちゃんちーです。 ※右です 突然ですが皆さん、人生、やっていますか? かれこれ社会人5年目になり、 Instagramを開けば結婚、出産、子育て...、 Twitterを開けばご報告、ご報告、ご報告...、 これらを見るたびに、「みんな人生やってるなぁ.......」と思うわけです。 ……さて、そんな人生やっていきを感じる27歳の僕も、 ついに先日付き合っていた彼女と婚約し、 結婚までもうすぐというところまで人生をやっていきしている最中でございます。 ......しかし、そんな中で一つ心配なことがあります.....。 それがこちら…… 親への挨拶が怖い!!! ……そう、婚約をし、結婚をするには、親へ挨拶をしなければならないのです。 が、人見知りかつ、緊張しいな自分が、 無事に許しをもらうことができるのかどうかが不安で不安でたまりません。 怖くて怖く

    完璧な結婚の挨拶をするために本気で準備をしていたら、いつの間にかマネキンにプロジェクションして仮お義父さんを作っていた話 - KAYAC engineers' blog
    l08084
    l08084 2022/12/13
  • ボディビル3位になった話 - KAYAC engineers' blog

    こんにちは。長堂 @kzmsngd です。 今回はCalendar for KAYAC | Advent Calendar 2022 - Qiitaの初日の記事として、趣味のボディビルの話をします。 Flutterエンジニア兼ボディビルダーです 実はこのブログに登場するのは3度目です。毎回のようにボディビルに関することを書いています。 技術のことよりボディビルのことを語りたい人間です。 過去に書いた記事: techblog.kayac.com techblog.kayac.com 現在はちいき資主義事業部でまちのコインを開発しているFlutterエンジニアです。 格的に筋トレをやり始めて5年目、ボディビルコンテスト挑戦し始めて4年目です。コンテストの成績で言うとこれまでは予選も勝ち残れず結果を出せていませんでした。 「コンテストで結果出せないならそろそろ…」と、コンテスト出場は辞めよう

    ボディビル3位になった話 - KAYAC engineers' blog
    l08084
    l08084 2022/12/01
  • 2022年、カヤックは ISUCON 12の出題を担当しています - KAYAC engineers' blog

    みなさんこんにちは〜! 技術ブログではとてもお久しぶりの acidlemon です。 さて、今年もISUCONの季節がやってきましたね。 ISUCONは、ざっくりいうとLINEが主催する、Webアプリケーションのスピードアップコンテストです。「いい感じにスピードアップコンテスト」なので略してISUCONという感じです。詳しくは 公式サイトを読んでもらうのがよいですが、毎年カヤックもコンテストの参加者だったり出題者だったり優勝者だったりといった形で関わっております。 これまでの開催と、今年の開催はどのような感じになっているかというと… そういえば公開情報をまとめてみた。 過去11回まででISUCONに参加された方は延べ9207名、そのうち優勝経験者は21名。最多優勝は @sugyan @fujiwara の4回でタイ記録。 #ISUCON pic.twitter.com/jFFTtUXHn

    2022年、カヤックは ISUCON 12の出題を担当しています - KAYAC engineers' blog
  • すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 - KAYAC engineers' blog

    この記事は Tech KAYAC Advent Calendar 2021の14日目の記事です。 こんにちは!意匠部のおばらです。 今日は、知っていても役に立たないかもしれない、 WEBページでの画像の変な使い方をご紹介しようと思います。 題して「すき焼きの写真にすき焼きの3Dモデルを埋め込む方法」です。 すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 WEBページで読み込んでいるファイルは全部丸見え! ブラウザのデベロッパーツール、便利ですよね。 特に Network や Source タブ。 読み込んでいるファイルがぜ〜んぶ丸見えです。 いけてるWEBサイトを見つけたら どうやって作ってるんだろう? ふむふむ、3D部分はThree.jsで、モデルはglTFか〜 お、テクスチャはKTXを使ってる! みたいに調べちゃいますよね?? そう、デベロッパーツールは 覗く側としては、すご〜く勉

    すき焼きの写真にすき焼きの3Dモデルを埋め込む方法 - KAYAC engineers' blog
  • 2021年サーバーサイドのエンジニアが使ってよかったもの10選 - KAYAC engineers' blog

    こんにちは! Tech KAYAC Advent Calendar 2021 7日目を担当する荒賀(@ken39arg) です。 カヤックのエンジニアブログには2008年にPHPを使ったガラケー関連の記事を書いたのが最初になります。 それから10年以上たち、ガラケーも弊社でのPHPプロジェクトもほぼなくなり、メンバーもかなり入れ替わり、私自身も20代だったのがついに40歳になりました。そんな私にとってこのアドベントカレンダーは私は今でもここにいるよというPingのような役割になっているため、年に一度若者に混じってアドベントカレンダーに参加しております。 例年ですと、趣味のマラソンなどに関する実績も書いているのですが、昨年同様、今年も続くコロナ禍により多くの大会が中止となったためこちらに関しては特に特記すべき実績はありません。ただ2020年に走るはずだった東京マラソンは権利は移行を続けてお

    2021年サーバーサイドのエンジニアが使ってよかったもの10選 - KAYAC engineers' blog
  • DynamoDB から Redshift へデータ移送する話 (RedshiftのSUPER型の利用事例) - KAYAC engineers' blog

    こんにちは。技術部のSRE所属の池田です。 この記事では、昨年の2020年12月にPreviewが発表されたRedshiftの汎用データ型 SUPER の利用事例として、DynamoDBからRedshiftへデータ移送する話をします。 汎用データ型SUPERは、2020/12/9に 『Amazon Redshift が、ネイティブ JSON と半構造化データ処理のサポートを発表 (プレビュー) 』という記事が公開され、2021年04月時点でもPreview状態です。 このSUPER型は、ログやDynamoDBストリームに見られるJSONおよび半構造化データと非常に相性がよく、使い始めてみると【素晴らしい!】と言う感想を得るので、皆様も是非使ってみてください。 背景 2021年4月現在では、Tonamel という大会プラットフォームサービスのデータ基盤 構築業務・整備を行っております。 To

    DynamoDB から Redshift へデータ移送する話 (RedshiftのSUPER型の利用事例) - KAYAC engineers' blog
  • slackの反応がないと寂しいので、一気にたくさんリアクションできる「slack最高速でワイワイできるくん」を作った - KAYAC engineers' blog

    この記事は、「Tech KAYAC Advent Calendar 2020」の20日目の記事になります。 slackを返して仕事した気になっているみなさんこんにちは!!! slackに負けるな!!! いきなりごめんなさい。どうもこんにちは。 KAYACクライアントワーク事業部デザイナーのちゃんちーです。 クライアントワークとして、今や40万人以上が持ってるうんこミュージアムで配られるマイうんこという不思議なものを製造したり、 マイクロワーケーションという実験で、お客さんと川で仕事をしてみたり、 いろんなことをしながらいろんなものを作って暮らしています。 当はもっと真面目に仕事してます。 いや、当です。よろしくお願いします。 いきなりですが、slack、使っていますか? 弊社はというと、バリバリslackでやりとりをしていて、社内のコミュニケーションツールはslackにほぼ集約されてお

    slackの反応がないと寂しいので、一気にたくさんリアクションできる「slack最高速でワイワイできるくん」を作った - KAYAC engineers' blog
  • VSCodeのシンタックスハイライトの作り方 - KAYAC engineers' blog

    はじめに こんにちは。技術部の中山といいます。 社内の一部のプロジェクトでBaalというIDLが使われているのですが、 シンタックスハイライトがなくて書きにくいと言っている人がいたので、 VSCode用の拡張機能を作りました。 この記事では、VSCodeのシンタックスハイライトの作り方について紹介したいと思います。 なお、作った拡張機能GitHubで公開しています。 注意 細かい文法については、ブログやQiitaなどに記事を書いている方がいるのでここでは説明しません。 ここでは、ドキュメントを読んだり実際に手を動かさないとわからなかったことについてだけ説明します。 2日くらいでブワーーーっと勉強して実装しただけなので、記述に誤りがあるかもしれません。 準備 code.visualstudio.com ターミナルで npm i -g yo npm i -g vsce yo code と打っ

    VSCodeのシンタックスハイライトの作り方 - KAYAC engineers' blog
    l08084
    l08084 2020/08/25
  • 上司に怒られない勤怠時間の自動入力方法 - KAYAC engineers' blog

    この記事はTech KAYAC Advent Calendar 2019の21日目の記事です。 経緯 こんにちは、今サーバサイドで仕事をしてるUnityエンジニアの魏です。 入社した以来、いつもノートで出退社時間を書いて、金曜日か月曜日で勤怠管理システムでまとめて入力することをやっていました。 しかし年を取ってきて、仕事が忙しくなるなどの原因で、よく勤怠時間をメモし忘れています。毎日勤怠をつける習慣があれば問題ないけど、やはり忘れてしまうことがよくありました。その時、KPTシートで「出社退社時間を記録する仕組みを作る」というトライを書きました。 ネットで検索してみたら、自動で打刻してくれる勤怠システムがすでにたくさんあります。しかし、それらの対象は会社管理者で、会社がそのシステムを使わない限り、社員としては何も恩惠を受けません。 だからこの記事では、管理者じゃなく労働者の立場から、自己申告

    上司に怒られない勤怠時間の自動入力方法 - KAYAC engineers' blog
    l08084
    l08084 2019/12/22
  • ひたすらWebサイトを見るのが趣味な私が独断と偏見で選ぶ今年「良い!」と思ったWebサイト16選 - KAYAC engineers' blog

    どうもみなさまおはようございます。あるいはこんにちは。あるいはこんばんは。 KAYAC Advent Calendar 2019の18日目の記事を担当します、フロントエンドエンジニアのたがみです。普段はwebサイトを作ったり動かしたりぶっ飛んだものにしたりしなかったりしています。 去年は私のその時の推しライブラリだったVuetifyについてこのブログを通じて布教したのですが、今年も今の推しライブラリの話をするぜ!・・・と、意気込んでいたのですが。「というか日頃からWebサイト事例収集しまくってるから、今年の素敵だと感じたサイトを振り返るか」と思いついちゃいましたので今年は推しのWebサイトの話をしようと思います。 というのも、私は去年入社してからデザインや演出や作りが素敵なWebサイトを見つけては自分のツイッターに「このWebサイトが良い!」というのをひたすら垂れ流すというのを日常的にやっ

    ひたすらWebサイトを見るのが趣味な私が独断と偏見で選ぶ今年「良い!」と思ったWebサイト16選 - KAYAC engineers' blog
    l08084
    l08084 2019/12/19
  • カレーライスを綺麗に食べる方法 - KAYAC engineers' blog

    はじめに この記事はTech KAYAC Advent Calendar 2019の19日目の記事です。 こんにちは。 技術部の中山といいます。 普段は、ぼくポケチームで、 開発・運用をする上で必要な作業の自動化をしたり、効率化できる部分を改善するという仕事をしています。 要するに仕事の無駄をなくすということをしているのですが、そういう仕事をする中で、 大学3年生のときに学で「カレーを綺麗にべる方法」というのを 研究していたことを思い出したので紹介しようと思います。 仕事の効率化もカレーを綺麗にべるのも「無駄をなくす」という点では同じです。 べ物で遊んでいるように感じる方もいらっしゃるかもしれませんが、 ここで述べる方法は「美味しく綺麗にべる」というのを大事にしています。 決して遊んでいるわけではありません。 実際の写真 まずこの画像をご覧ください。 これは、弊社が手がけるまちの

    カレーライスを綺麗に食べる方法 - KAYAC engineers' blog
  • Unityで80年代風を表現してみる - KAYAC engineers' blog

    80年代風作例。ユニティちゃんモデル及びシェーダーを使っています。© UTJ/UCL こんにちは! CL事業部の原です。 この記事は Tech KAYAC Advent Calendar 2019 の13日目です。 今回はUnityで80年代風を表現するということにチャレンジしてみました。 80年代風と言っても、レトロゲームを再現するという意味ではありません。 80年代風イラストの雰囲気を表現したいと思います。 80年代リバイバルブームとは ここ数年、80年代リバイバルな表現がファッションやデザイン、映画などでブームになっていたことはこれを読んでいるみなさんにも思い当たるところがあると思います。しかし、この現象を包括的にまとめたような記事文献は見つけることができませんでした。なので、個人的体験から80年代リバイバルブームを追ってみます。 80年代リバイバル表現との出会い:tofubeats

    Unityで80年代風を表現してみる - KAYAC engineers' blog
    l08084
    l08084 2019/12/13
    この記事を読んで自分がビビッドな色づかいが好きなことがわかった。記事自体も面白い。いつかUnityやりたい
  • Firebase Realtime DatabaseとFirestoreを使い分けていこうなという話 - KAYAC engineers' blog

    こんにちは、今年もあっというまでしたね〜@fnobiです。この記事はTech KAYAC Advent Calendarの12日目になります。 毎年アドベントカレンダーでは、その時お世話になった技術の話をしているんですが、今回は去年に引き続きfirebaseで行かせていただきます。いちおう専門はWebフロントのはずなんですが、最近WebフロントエンジニアというよりはFirebaseエンジニアです。 Firebase Realtime DatabaseFirestore そもそもfirebaseとはなんぞや?という話は去年も書いたのでよろしければ読んでみてください。 さて現在Firebaseでは、データベースとしての機能がRealtime DatabaseFirestoreの2種類提供されています。いちおう公式でも並列に扱われていたり、比較を書いてくれたりしているんですが、全体を通してな

    Firebase Realtime DatabaseとFirestoreを使い分けていこうなという話 - KAYAC engineers' blog
    l08084
    l08084 2019/12/13
  • 40%キーボードに移行しようとして結局しなかったはなし - KAYAC engineers' blog

    SREチームの長田です。 Tech KAYAC Advent Calendar 2019 Migration Track の11日目です。 今日は仕事と直接は関係ないけど、でもないと仕事ができない、そう、キーボードの話です。 移行前 3年前ほど前からErgoDox EZを使っています。 techblog.kayac.com 配列をちょっといじっていて、dvorakをベースに日語やコードが打ちやすいように一部のキーを入れ替えています。 キーボードをいじろう! @YAPC::Asia 2012 LT-THON from Hiroaki Nagata www.slideshare.net configure.ergodox-ez.com 概ね快適に使っていたのですが、「数字キーがちょっと遠いな〜」というかすかな不満がありました。 40%キーボード 世の中には40%キーボードというものがあります

    40%キーボードに移行しようとして結局しなかったはなし - KAYAC engineers' blog
    l08084
    l08084 2019/12/11
  • エンジニアがすごく頑張ってサブスリーしたよって話 - KAYAC engineers' blog

    こんにちは! 技術部で市民ランナーの荒賀です。 この記事はTech KAYAC Advent Calendar 2019の11日目です! 例年筋肉について書いており、2016年、2017年と筋肉ネタを投下していましたが、 昨年の記事にて社内に自称ボディビルダーが爆誕したため筋肉ネタは卒業すると宣言していました。 しかし、今年ついに横浜マラソンでサブスリーを達成したため、一周回ってまたスポーツネタを書きたいと思います。 kotobank.jp サブスリー達成者は市民ランナーの3%、女性にいたっては0.4%と言われているほど結構な難易度で、自分で言うのもあれですがたいそうすごいことなんじゃないかと思っています。 グロス2:57:41でゴールした瞬間の神写真 で、サブスリーした人のこうしたら達成したぜって情報も世に溢れているので、自分が書いたところで今更感があるんですが、 達成までの軌跡には十人

    エンジニアがすごく頑張ってサブスリーしたよって話 - KAYAC engineers' blog
    l08084
    l08084 2019/12/11
  • 人間の行動を操るために覚えておきたい科学 - KAYAC engineers' blog

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

    人間の行動を操るために覚えておきたい科学 - KAYAC engineers' blog
    l08084
    l08084 2019/12/04
  • 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
    l08084
    l08084 2019/12/01
  • Dockerで開発環境構築を10倍楽にしたはなし - KAYAC engineers' blog

    Lobi事業部 サービス基盤チームの長田です。 最近プロジェクト内で使用する開発環境にDockerを利用するようになったので、その紹介をします。 Dockerにしたってどういうこと? 公開済みのWebサービスに変更を加えて動作確認をする場合、番環境でそれを行うわけにはいきません。 ほとんどの場合はローカルマシンでWebサービスの全体または一部のコピーを動かして動作確認を行うことでしょう。 その後ステージング環境などの他の開発メンバーも触ることができる環境で動作確認やQAを行い、 問題がなければ晴れて番環境に反映、という流れが一般的かと思います。 この「ローカルマシンでWebサービスのコピーを動かす」部分にDockerを利用している、ということです。 Dockerにしてどうなった? Before 開発環境構築に1〜2日かかっていた After 開発環境構築がランチに行っている間に終わるよ

    Dockerで開発環境構築を10倍楽にしたはなし - KAYAC engineers' blog
    l08084
    l08084 2019/03/03