タグ

ブックマーク / devpixiv.hatenablog.com (32)

  • ピクシブとさくら共同開発のクラウド画像変換サービス、なぜImageFluxは生まれたのか - pixiv inside [archive]

    こんにちは、子育てと仕事の両立に苦慮している@harukasanです。 このたび新しいプロダクトである、画像配信・変換に特化したクラウドサービス、ImageFluxをリリースしました。 このサービスはさくらインターネットさんと共同で行わせて頂くサービスになっております。 今回は、なぜImageFluxをつくったかという話をしようと思います。 ImageFluxが解決する問題 Webにおいて画像はなくてはならない要素です。 ユーザのアイコンやプロフィール画像、デザインの背景、ヘッダー画像…… さまざまな画像がPC、アプリ、さまざまなデバイスにいろんなサイズで表示されます。 画像がメインコンテンツでないサービスであったとしても、いろいろな形で画像を扱わなければなりません。 配信されるサイズについてデザイナーと議論し、 フォーマットや転送量をモバイルアプリエンジニアと確認し、 インフラチームに負

    ピクシブとさくら共同開発のクラウド画像変換サービス、なぜImageFluxは生まれたのか - pixiv inside [archive]
  • ピクシブの新執行役員に直撃!CTO&CCO就任記念インタビュー - pixiv inside [archive]

    pixiv Advent Calendarが今年も始まりました! この12月、ピクシブ株式会社に新しい執行役員が2人誕生しました。今回はCTO(最高技術責任者)の高山とCCO(最高文化責任者)の川田に、今後の抱負などをうかがってみました。 (※ 左: CCO 川田 寛、右: CTO 高山 温) ――まずはお二人の自己紹介をお願いします。まずは高山CTOから。 高山 このたびピクシブ株式会社CTOに就任しました、高山(@edvakf)です。僕はpixivに入る前はイギリスとカナダで物理を学んでいて、26歳で大学院中退という、かなり異色な経歴でした。当時は大学をサボってJavaScriptばかり書いていまして、Webプログラミングを仕事にしようと思い、2012年3月に入社しました。 ――入社してからはどんなことを担当されていたのでしょうか。 高山 入社後はpixiv体のPHPを書いたり、「p

    ピクシブの新執行役員に直撃!CTO&CCO就任記念インタビュー - pixiv inside [archive]
  • 大量接続に耐えるWebSocketアプリケーションサーバ構築のコツ - pixiv inside [archive]

    WebSocketの扱うサービスでは、長時間のコネクション、再接続処理、プロキシ、ロードバランサなど、インフラの面で多くの問題を抱えがちです。弊社のサービス「pixiv」の9周年企画でも、この問題に直面しました。 実際にそこで構築したインフラの事例をもとに、運用に使えるWebSocketサーバの構成について、pixivインフラ部の南川からご紹介します。 * 9周年企画 “黒歴史”をロケットで宇宙に飛ばす pixiv歴史 そもそも WebSocket とは? WebSocketはTCP上で動く双方向通信のための通信規格です。 Webページの読み込みで行われているような、クライアントがサーバにデータを要求し、サーバはクライアントにレスポンスを返すというHTTPの通信ルールとは違います。サーバと長時間コネクションを確立し、Socketのようにデータのやり取りを行います。そして、コネクションを

    大量接続に耐えるWebSocketアプリケーションサーバ構築のコツ - pixiv inside [archive]
  • ISUCON6裏話Nightで気になったツイート集―そして来年の出題は…? - pixiv inside [archive]

    12月からCTOになることになりました、ISUCON6選出題担当の@edvakfです。 11月22日に開催されたISUCON6裏話Nightで、ようやく自分の中でのISUCON6が終了しました。 当日の発表では試行錯誤したけどボツになったネタなども盛り込めたので、良い供養になりました。そのスライドを公開しつつ、当日のツイートのいくつかにコメントしていきます。 edvakfの発表スライド ISUCON6選の裏話 @ ISUCON6裏話Night // Speaker Deck catatsuyの発表スライド ISUCON6選のベンチマークでconsulを使用してクラスタを構築した話 / isucon6-night // Speaker Deck 気になったツイート 運営は大変なので小言を言わず優しくしてあげてね TLの小言は堪える。ほんと #isucon— fujiwara (@fuj

    ISUCON6裏話Nightで気になったツイート集―そして来年の出題は…? - pixiv inside [archive]
  • Slackを一句BOTで風流に - pixiv inside [archive]

    おはようございます。プログラマーのhakatashiです。 普段はpixivコミックやpixivノベルの開発を手伝っています。が、今回はそれとは全く関係ないSlackの話をします。 一句BOTとは みなさんSlackは使っているでしょうか。普段から業務にプライベートにと幅広くSlackを使っていると、メンバーの何気ない一言に“一句”を感じることがあります。 風流ですね。 pixivにはこのような日常に潜む和の心を大切にする風雅なエンジニアが多いので、平安貴族よろしく日常会話や業務連絡に5・7・5の形の川柳を混ぜて会話します。とても優雅ですね。 ですが、上の画像のような完全に日常に溶け込んだ野生のステルス一句は、誰にも気づかれずにログの彼方へ流れていってしまうことも多いようです。そこで、Slackのメッセージから自動で一句を検出してReactionをつけるBOT、slack-ikkuを(1時

    Slackを一句BOTで風流に - pixiv inside [archive]
  • ISUCON6出題チームが社内ISUCONを開催!AMIも公開!! - pixiv inside [archive]

    ISUCON6の出題者の1人の@catatsuyです。 GW直前の4/28、年度入社の新卒エンジニア全員と社内のエンジニアほぼ全員が参加するイベントとして社内ISUCONを開催しました。 同じく出題者の1人である@edvakfの記事でも書いたように、今年のISUCON6では株式会社はてなさんと弊社で共同出題する予定です。 inside.pixiv.net 今回は弊社のISUCON6出題チームの4人で開催した社内ISUCONの様子を紹介します。 社内ISUCON 時間は12:30から19:00まで行いました。営業日に会社のエンジニアのほとんどが参加するイベントなので、午後を割り当てる形にするぐらいが良いのではないでしょうか。今回は新卒研修の一環としての側面があったので、新卒エンジニアにはISUCON事前ハンズオンとしてこのような内容の講義を行いました。 初期実装 初期実装の言語は『Ruby

    ISUCON6出題チームが社内ISUCONを開催!AMIも公開!! - pixiv inside [archive]
  • 永和システムマネジメントさんと「社会人交換留学」をしてきました - pixiv inside [archive]

    こんにちは!ヽ(・∀・ )ノ pixivで2015年新卒エンジニアをしているいっくんです。 僕は創作を通じてユーザーに楽しんでもらうことを仕事にしています。 ものづくりがもっと楽しくなるグッズ制作サービス pixivFACTORYを立ち上げから面倒を見ていたり、ネット音楽マーケットイベント APOLLOのメインエンジニアをしたりしています。 ちょっと日が経ってしまいましたが、2016年に入ってから永和システムマネジメントさんと社会人交換留学を行いましたのでご報告します。 あわせて読みたい 社会人交換留学とは? 交換留学は互いの会社の文化の差を学ぶことを目的として、両社から他社の現場で1週間常駐して仕事をし合う取り組みです。 社会人交換留学についてもっと詳しい経緯を知りたい方は、前回の交換留学の記事をご覧ください。 ピクシブさんに「社会人交換留学」してきました - onk ドリコムさんに「社

    永和システムマネジメントさんと「社会人交換留学」をしてきました - pixiv inside [archive]
  • 秒間50kリクエストを捌くノウハウがこの1冊に!nginx実践入門 - pixiv inside [archive]

    こんにちは、@harukasanです。ピクシブでは3年以上にわたってHTTPサーバにnginxを採用しています。これらのノウハウが詰まった「nginx実践入門」が1/16(土)、技術評論社から発売されることになりました。 この記事では書からピクシブで良く使われているnginxのテクニックについてかいつまんで紹介します。 すべてのリクエストを受け止めるnginx ピクシブのたくさんあるサービス(pixivpixiv Spotlight、pixivコミック、ピクシブ百科事典……)のどこかにHTTPリクエストを投げると、複数台あるフロントサーバのどれかに届きます。実際にアプリケーションを処理するのはフロントサーバの裏側にいるアプリケーションサーバです。これらのサーバにはPHPだったり、Ruby on RailsだったりPlay/Scalaだったりいろんなアプリケーションがデプロイされています

    秒間50kリクエストを捌くノウハウがこの1冊に!nginx実践入門 - pixiv inside [archive]
  • Vimとgitで俺たちの開発速度はさらに加速した - pixiv inside [archive]

    gitという、とっても便利なツールをご存知だろうか。 git とはソフトウェア開発に特化したバージョン管理ツールである。もはや、git 無しで僕らの開発は立ち行かないし、GitHubを中心としたエコシステムに僕らは支えられている。 日々の開発では、毎日数え切れないgitコマンドを打ち続けてプロダクトの歴史をアップデートしている。 この記事を見ているエンジニアの皆さんもきっとそうだろう。 いや? ちょっと待ってくれ。 そういえば、僕はしばらくgitコマンドをコンソールで叩いた記憶がない。 そうだ! vimをカスタマイズしてからというもの、gitを直接たたくより遥かに便利な開発環境になったんだった! Vimmerはunite-gitiなしでは生きられない unite-gitiというプラグインがある。 これがすこぶる便利なのだ。 github.com サヨナラ git add git statu

    Vimとgitで俺たちの開発速度はさらに加速した - pixiv inside [archive]
  • 広告運用でRTB優先配信を行う際に気をつけたい3つのこと - pixiv inside [archive]

    初めまして、マーケティング部マネージャーとして広告事業を担当しているdrillです。 アドネットワークやSSP等の配信広告運用や広告売上の管理を主な業務としてやっています。 私からは「広告運用でRTB優先配信を行う際に気をつけたい3つのこと」をテーマにしてお届けします。 【1】 適切なフロア設定について 【2】 フィラーへの影響について 【3】 定期的な見直しについて と、その前にまず前提のRTB優先配信の説明から。 前提:「RTBの優先配信」とは? RTB(Real-Time Bidding)とはユーザーのアクセスが発生するごとに各々の配信広告システム側で広告掲載の競争入札を行い、最も高い入札の案件を配信する方式のことです。高価値なユーザーのアクセスを高単価で買付けする仕組みのことですね。 このRTB配信に優先的に広告リクエストを飛ばし、あらかじめ設定しておいた最低価格(floor pr

    広告運用でRTB優先配信を行う際に気をつけたい3つのこと - pixiv inside [archive]
  • PHPで高速に動作するURLルーティングを自作してみた - pixiv inside [archive]

    この記事は ピクシブ株式会社 Advent Calendar 2015 13日目の記事です。 qiita.com こんにちは、おはようございます、こんばんは、エンジニアのneo-nanikakaです。 最近、業務でURLルーティングの処理が必要になりました。 社内の他のPHPプロジェクトでは Teto Routing というライブラリを使っているのを知っていたので、こちらを使ってみることにしました。 見事にURLルーティング処理は実現され、他の処理の実装に入ることができました。 完 っと思っていた時期が私にもありました。 Teto Routingは、実行時間がルーティング数に依存する 実装になっています。 ここでいう実行時間とは、Teto RoutingにリクエストURL文字列を渡してから結果が返ってくるまでの時間のことです。 実際、Teto Routingは表1のような時間がかかります。

    PHPで高速に動作するURLルーティングを自作してみた - pixiv inside [archive]
  • HTMLで日本語を書きたいプログラマーの永遠の悩みを解決するCSS3のSegment Break Transformation Rules - pixiv inside [archive]

    この記事はピクシブ株式会社 Advent Calendar 2015 の9日目の記事です。 qiita.com こんにちは。アルバイトのhakatashiです。以前の小説縦書き機能についてのpostではたくさんの拡散を頂きありがとうございました。おかげで褒賞のAmazonギフト券3000円を入手できました。ウハウハ。そして拡散に協力してくれた後輩へのおごり代に消えました。どうやら世の中は上手くできているようです。 今回は、pixivにはあまり関係ないですが、普段携わっている小説関係の業務にかこつけて、CSS3のあまり知られていない新機能、Segment Break Transformation Rules と、それを今すぐ使うための自作ライブラリを紹介します。前回と違ってがっつりエンジニア向けの内容となっているので、まったりと書いていきます。 HTMLで日語を書きたい人間の一般的ストーリ

    HTMLで日本語を書きたいプログラマーの永遠の悩みを解決するCSS3のSegment Break Transformation Rules - pixiv inside [archive]
  • エンジニアだけど、プロダクトの成長のために何でも屋になった(pixivマンガ編) - pixiv inside [archive]

    ピクシブ株式会社 Advent Calendar 2015の6日目の記事です。 qiita.com こんにちは。スマートフォンアプリケーションエンジニアのるーく(@rooandqoo)と申します。ここ数ヶ月、Android StudioとXcodeを行き来する生活を送っています。 業務では「pixivマンガ」というアプリに関わっております。日はこのアプリの裏側についてお話しします。 「pixivマンガ」とは 「pixiv漫画を盛り上げる」というミッションのもとにスタートしたプロジェクトの中で生まれたアプリケーションです。 「pixivマンガ編集部」が、pixivに投稿されるオリジナル漫画を日々チェックして、その中から選りすぐりの漫画をほぼ毎日紹介する「編集部オススメ」と、Web漫画サービス「pixivコミック」からいくつかの作品が読める「公式連載」の2つがメインのコンテンツです。 毎日

    エンジニアだけど、プロダクトの成長のために何でも屋になった(pixivマンガ編) - pixiv inside [archive]
  • PHP初心者が仕事で躓いた4つの罠 - pixiv inside [archive]

    こちらはピクシブ株式会社 Advent Calendar 2015の2日目の記事です。 こんにちは。Vimエンジニアの kana です。 さて、皆さんもご存知の通り、WebサービスpixivにはPHPが使用されています: PHPについては様々な噂を聞き及んでいた為、 これまでPHPとは関わらないように注意して過ごしてきましたが、 pixiv.netの開発ではPHPを避けて通ることは出来ません。 仕方なくPHPを使うことになる訳ですが、 実際に使ってみると……これが予想していた以上に様々な方向から毎日新鮮な驚きを届けてくれます。 今回は実際に遭遇したPHP初心者が躓くポイントを幾つか紹介しようと思います。 switch の中で continue したら switch の直後に飛ぶ 大量のデータをループでぶん回して処理するのはよくある話です。 その中で特定の種類のデータについては処理をスキッ

    PHP初心者が仕事で躓いた4つの罠 - pixiv inside [archive]
  • なぜクラウドを使わないのか(あるいは、なぜクラウドを使うのか) - pixiv inside [archive]

    こんにちは、はるかさんです。 今日からはじまるピクシブ株式会社Advent Calendar 2015、1日目を担当することになりました。 先日娘に物のアドベントカレンダーを買ってあげた訳ですが、意外と高いので来年は使い回せるように丁寧に使わせようと思っています。 さて、ピクシブ株式会社では現在10を越えるサービスが運用されており、それらを支える様々な社内ツールが存在します。 アドベントカレンダー初日の今日はこれらのシステムがどういったところで動いているか、簡単に紹介しようと思います。 クラウドサービスの利用 面接の際によく聞かれる質問の1つが「ピクシブはなぜクラウドを使ってないんですか?」という質問です。 今年だけでも10回くらいは回答しましたが、結論から言えばピクシブでは所謂クラウドサービスをいくつも利用しています。 いくつかの例を見てみましょう。 Google Analyticsと

    なぜクラウドを使わないのか(あるいは、なぜクラウドを使うのか) - pixiv inside [archive]
  • 二次元から三次元を作る方法 — サーバ内でBlenderを動かしてみたら意外にもイケていたという話 - pixiv inside [archive]

    こんにちは、エンジニアのみどです。 ピクシブは、イラスト1枚で簡単にオリジナルグッズが作れるサービス pixivFACTORY を開発しています。 そのpixivFACTORYのプレビューに焦点を絞った勉強会を社内で行いました。 今回は、その勉強会の内容を公開したいと思います。 プレビューとは pixivFACTORYでは、グッズの仕上がりのイメージを確認する機能を提供しています。 この機能は、チーム内でプレビューと呼ばれていて、pixivFACTORYの売りのひとつになっています。 今回の勉強会では、ピクシブのエンジニアがこのプレビューに関する技術やノウハウについて発表を行いました。 pixivFACTORYのプレビューを支える技術 まず、私がアプリケーションサーバ側の処理について発表しました。 ImageMagickやBlenderといったソフトウェアをどのように使い分けているかが見所

    二次元から三次元を作る方法 — サーバ内でBlenderを動かしてみたら意外にもイケていたという話 - pixiv inside [archive]
  • チームにとってのリーダブルコード - pixiv inside [archive]

    株式会社クリアコードさんにご協力いただき「リーダブルコードワークショップ」が行われました。 ピクシブ株式会社からは7名、永和システムマネジメントさんからは1名が参加した合同ワークショップです。 このワークショップを通して、 通常のレビューでは良くない部分ばかり見てるけど、良い部分も共有しよう。 コミットメールを受信して、push式でコードを読む習慣をつけよう。 といった、チームにとって読みやすいコードを書くための方法を実践形式で学びました。 その詳細についてご紹介します。 ワークショップ開催までの経緯 SEゼミにてクリアコード須藤さんから弊社リードエンジニアedvakfにワークショップについてのお話をいただき、人数や構成などが対象として適しているチームが弊社にあったため話が進んでいきました。 そのチーム(BOOTH&pixivFACTORYチーム)では 開発メンバーの入れ替わりによってベテ

    チームにとってのリーダブルコード - pixiv inside [archive]
  • pixiv小説縦書き機能 開発の裏側 ~横のものを縦にする~ - pixiv inside [archive]

    はじめましてこんにちは。pixivでアルバイトをしているhakatashiです。 さる6月10日、パソコン版pixiv小説にて縦書き表示機能がリリースされました。この開発のあらかたを担当したので、今回の縦書き機能開発における裏側を紹介いたします。 構想 縦書き機能開発にあたり、設計段階からその大部分を一任されました。小説機能開発において自分の中に絶えず理念として存在していたのは、ユーザーに最高の読書体験を提供することです。縦書きによって得られる利益を最大化し、快適な閲覧を支援するために、以下のような構想を置きました。 縦書き横書きの組版の差異における違和感を可能な限り軽減すること。 スクロールとページングを融合した、柔軟で快適な閲覧インターフェイスを提供すること。 この2点について詳しく解説します。 縦組版 まず、ウェブブラウザで縦書き表示を実現するにあたり、どのような手法をとるかという問

    pixiv小説縦書き機能 開発の裏側 ~横のものを縦にする~ - pixiv inside [archive]
  • ドリコムさんに「社会人交換留学」してきました - pixiv inside [archive]

    こんにちは。4月からリードエンジニアという肩書になり、会社の技術選択などに一定の責任を持つことになったedvakfです。 少々前のことになりますが、4月に株式会社ドリコムさんへ「社会人交換留学」として1週間行ってきました。さらにその後ドリコムさんからスーパーRailsエンジニアのonkさんを1週間迎えてピクシブの業務に携わってもらいました。 面白いけどあまりない試みで手探り状態でしたが、やってみると案の定大成功と言えるものとなったと思っています。「社会人交換留学」の事例がもっと増えるように、何が良かったのかを書いてみます。 発端と目的 常に新しい技術を学びたい意欲はエンジニアなら誰でも持っていると思いますが、常に刺激を得られるような取り組みとして社内で短期間だけ別のチームにインターンのような形で行くことを頻繁にやっていけたら、という話を弊社マネージャーのbashさんとしていたところ、bas

    ドリコムさんに「社会人交換留学」してきました - pixiv inside [archive]
  • 『アプリの企画、プロトタイプからリリースに至るまで』DroidKaigiで発表してきました - pixiv inside [archive]

    モバイルアプリエンジニアの@__chocomelonです。 DroidKaigiで発表してきました。 先週DroidKaigiという、エンジニアが主役のAndroidカンファレンスが行われました。 DroidKaigi、当にためになる発表ばかりで、楽しかったです。発表資料のまとめやToggeterのまとめを見るだけでも良い知見が得られるかと思います。 私も『アプリの企画、プロトタイプからリリースに至るまで』というタイトルで発表させていただきました。詳しい内容はspeakerdeckの資料になります。 資料 speakerdeck.com 概要 ピクシブでは最近pixivマンガというアプリを公開しました。ピクシブでは新しいアプリを作る機会が多くはなかったので、良い所、悪い所含めて企画からリリースに至るまでに得られた知見を共有します。 ブレインストーミング エンジニア2人とディレクター1人の

    『アプリの企画、プロトタイプからリリースに至るまで』DroidKaigiで発表してきました - pixiv inside [archive]