タグ

ブックマーク / inside.pixiv.blog (20)

  • ピクシブでのNotionのつかいかた - pixiv inside

    こんにちは、pixivのリクエスト機能を開発するチーム(以下、リクエストチーム)でプロダクトマネージャーをしているgeta6です。 ピクシブでは、社内ドキュメンテーションツールとしてNotionを採用しています。Notionでうまいことドキュメンテーションが機能し、継続できるよう、使い方やルールを各メンバー・各チームみんなで考えています。 日はそんなNotionで実際にやってみて得られた気づきや知見をシェアします。もし参考になることがあれば、取り入れたり取り入れなかったりしていただければ幸いです。 背景 リクエストチームは立ち上げ当初より一貫してフルリモート体制で働いています。お互いにそれほど顔馴染みのないメンバー同士でしたが、第1回目の緊急事態宣言が出る前後からこちら、ほぼ物理的に顔を合わせることなく仕事をしています。 基的にメンバーはDiscordに常駐しており、朝会・定例・雑談・

    ピクシブでのNotionのつかいかた - pixiv inside
    invent
    invent 2021/05/20
  • Google Play Billing Library v3に対応した話 - pixiv inside

    みなさんはじめまして。初めてじゃない方はお久しぶりです。pixivコミックAndroidアプリ担当のconsommeです。好きなウマ娘はトウカイテイオーとマヤノトップガンです。 Androidアプリにおいて、アプリ内で使えるアイテムやサービスの有料会員登録などを行う上で必要になるのが Google Play Billing Library(以下PBL)です。こちらの最新版が2021年3月時点でバージョン3なのですが、2021年8月以降は新規アプリで、同年11月以降はすべてのアプリにおいてバージョン3の使用が必須になります。そう、既存のアプリでも猶予はあと半年ほどしかないのです。 android-developers-jp.googleblog.com とは言え、アプリ内購入周りはお金が絡む部分のため、対応するにも慎重にならざるを得ません。もし不具合が発生したら…というのを考えると、なかなか

    Google Play Billing Library v3に対応した話 - pixiv inside
    invent
    invent 2021/03/26
  • Herokuから ECSに 移行した - pixiv inside

    こんにちは、インフラ部の id:sue445 です。私事ですが先日GCPの Professional Cloud Architect を取得しました。 そういうわけで今日はGCPではなくAWSの話をします。 tl;dr; 劇的ビフォーアフター 構成 移行のモチベーション パフォーマンス向上 コスト圧縮 アーキテクチャの採択理由 やったこと 1. DB作成 2. MySQL 5.7 -> 8.0 MySQL 8.0でハマったこと MySQL 8.0からデフォルトの認証がcaching_sha2_passwordになった RDSのMySQL 8.0からMariaDB 監査プラグインがなくなった 3. 番用のDockerイメージを作成 困ったこと:CodeIgniterがログの標準出力に対応していなかった 4. ECS + Fargate + CodePipeline構築 5. CDN作成 6

    Herokuから ECSに 移行した - pixiv inside
    invent
    invent 2021/03/17
  • ピクシブの全員が共通で使ってるSaaSの紹介 - pixiv inside

    この記事では2020年5月時点でピクシブの社員全員が使っている主なSaaSを紹介します。 ピクシブとSaaS ピクシブはpixiv、BOOTHなどクリエイターを支援する様々なサービスを提供していますが、これらは基的に内製しています。 業務を支えるシステムは最近ではもっぱらSaaSを選ぶことで、社内の開発・運用力をユーザ向けにフォーカスするようにしています。 そんなピクシブでは、かつてはチームごとにバラバラにSaaSを選んで使うことを基にしてきました。 現在はチームが違えどピクシブのプロダクト全体を皆で支えているという意識が高まり、チーム間での共通言語化をすること、利用ノウハウを高めることの重要さが上がってきました。 そういう変化を背景として、徐々に使うSaaSを全員で同じものを使うようになってきています。 なお今でも新しいサービスの利用が必要になったら、どの社員でも申請することができま

    ピクシブの全員が共通で使ってるSaaSの紹介 - pixiv inside
    invent
    invent 2020/05/20
  • pixivに脆弱なパスワードで登録できないようにしました - pixiv inside

    図1: 脆弱なパスワードを入力した場合のエラー画面 こんにちは、pixiv開発支援チームのmipsparcです。 パスワード、もしかして使いまわしていますか? 複数のサービスで同じパスワードを利用していると、「パスワードリスト型攻撃」によって不正アクセスの被害を受けてしまうかもしれません。 パスワードリスト型攻撃の被害にあわないためには、ブラウザやパスワード管理ツールで自動生成された安全なパスワードを利用するのが好ましいです。 しかし、実際には多くの人が「使いまわしたパスワード」や「簡単なパスワード」(以下、脆弱なパスワード)を利用していますし、啓蒙活動にも限界があります。 pixivではサイバー攻撃への対策を複数とっていますが、根的な対策のひとつとして、脆弱なパスワードを新しく設定できないようにしました。 脆弱なパスワードの判定方法 脆弱なパスワードの利用はどのように防ぐことができるで

    pixivに脆弱なパスワードで登録できないようにしました - pixiv inside
    invent
    invent 2020/01/23
  • Rails + Contentful で LP のコーディングをゼロにする - pixiv inside

    こんにちは、@f_subal です。 pixivFACTORY というサービスで普段はフロントエンドをやっています。 今回は Rails のサービスに Headless CMS の Contentful を導入し、ワークフローを改善した話をします。 ランディングページ、あるいはマスターデータの詳細について pixivFACTORY はグッズおよび同人誌がブラウザ上で簡単に作れるサービスです。 取り扱っているグッズは 60 種類以上あり、各グッズごとに仕様が大きく異なります。 グッズにはそれぞれ、仕様や出来上がりの写真を載せたページ(以下、product 詳細とも呼びます)が存在します。 要するに、以下の状況を想定してください。 運営が管理する静的なドメインモデル(ここでいう「作れるグッズの仕様」)が存在する モデルの各内容について説明するページが存在する 各ページの内容は DB の内容から

    Rails + Contentful で LP のコーディングをゼロにする - pixiv inside
    invent
    invent 2020/01/16
  • Rails Developers Meetup 2019で2名登壇しました - pixiv inside

    こんにちは、福岡に戻って来てほっと一息ついているtawachanです。 2019年3月22日(金)〜3月23日(土)に開催されましたRails Developers Meetup 2019(以下Rails DM)にて、ピクシブから2名登壇しましたので、今回の記事ではその紹介をしたいと思います。 イベントについて Rails DMは、3トラック並行で全69セッションにも及ぶRuby on Railsのカンファレンスです。Railsの作者であるDHHのKEYNOTEから始まり、とても盛り上がりのある2日間でした。 発表内容について ピクシブから発表した内容を簡単に紹介します。 少人数でサービスをすばやく開発するためのRails活用事例 by tawachan 私tawachanの発表ですが、ピクシブでのプロダクト開発の知見をベースにした事例の紹介でした。 当日は、福岡の話もさせていただきました

    Rails Developers Meetup 2019で2名登壇しました - pixiv inside
    invent
    invent 2019/03/28
  • モバイルアプリのCIをBitriseにして1年が経ちました - pixiv inside

    こんにちは。ピクシブでiOS・Androidアプリ開発をしているkwzrです。 ピクシブでは2018年1月からモバイルアプリのCIをBitriseに切り替えて、約1年間運用してきました。この記事ではピクシブでのBitriseの使用状況を紹介していきます。 Bitriseとは Bitriseはモバイル向けのCIサービスです。ネイティブのiOS、Androidはもちろん、XamarinReact Native、Flutterなどクロスプラットフォームのプロジェクトにも対応しています。 ビルドの流れ(ワークフロー)やビルドトリガーをGUIで設定できたり、モバイル向けの機能が充実しています。 Bitrise導入以前 Bitriseを使う前は、macmini 3台を使ってJenkinsでCIを走らせていました。 その時の記事はこちら → Mac mini増殖中!iOSアプリのビルドをマスター・スレ

    モバイルアプリのCIをBitriseにして1年が経ちました - pixiv inside
    invent
    invent 2019/01/08
  • ピクシブSlackの「今日のアニメボット」 - pixiv inside

    こんにちは、 @sue445 です。 今期の推しアニメは HUGっと!プリキュア と キラッとプリ☆チャン と サザエさん です。 ピクシブでは今までは業務に直接関係ないチャンネル(いわゆる雑談など)は作成しないルールが採用されていました。しかし、ドメイン知識を高めるために業務に直接関係ないこと(たとえばアニメ、ゲーム、ラノベなど)でも情報共有したいという意見があり今年の10月頃にそのルールが緩和されました。 その一環でアニメについて語るチャンネルができたのですが、前職のチャットにあったとあるボットがほしくて作りました。 下のスクショがボット作成直後の同僚の喜びの声です。 見ての通り、これから放映されるアニメの一覧を教えてくれるボットです。 上記は初期バージョンなので色々古いですが、最新だとこんな感じです。 しょぼいカレンダーのAPI では新番組や再放送などの情報も取れるので、新聞の番組欄

    ピクシブSlackの「今日のアニメボット」 - pixiv inside
    invent
    invent 2018/12/04
  • 毎秒1万リクエストの負荷試験をした話 - pixiv inside

    はじめまして。ピクシブで広告関連のプロダクトを開発しているeastです。今回は、社内で運用している広告配信サーバーの負荷テストを実施したので、その話をしたいと思います。 経緯 ピクシブの広告配信サーバーは、pixiv体を中心に複数のサービスに対して広告配信を行なっています。現在私はこの広告配信サーバーの大規模改修を行なっているのですが、先日ついに広告配信サーバーの改修がほぼ完了したので、試しに負荷試験を行なってみたいと思い立ちました。 目標は毎秒1万リクエスト ピクシブの広告配信サーバーへのリクエスト数はDailyで 4〜6億req もあり、これは毎秒平均に直すと約 5,000RPS(Request Per Second) になります。さらに、ピークタイムである休日の深夜帯には 12,000RPS にも達します。つまり新しい広告配信サーバーにも、毎秒12,000のリクエストを捌く性能が必

    毎秒1万リクエストの負荷試験をした話 - pixiv inside
    invent
    invent 2018/10/19
  • 失われた2人日をiMac Proで取り戻し、開発体験を向上するまでの軌跡 - pixiv inside

    お初です。2017年10月入社の @kobaken です。iOSアプリ開発を生業にしております。 最近はすっかりスタァライトされてしまい、舞台創造科の一員になってしまいました。 普段は声優のことを考える傍ら、pixivpixiv SketchのiOSアプリの開発をしています。 ところで、iOSアプリ開発をされている皆さんの中に、このような現象に頭を悩まされている方はいるでしょうか? なかなか終わらないビルド……侵されるCPUリソース……固まるIDE…… わかります。自分も以前までは上記の症例に頭を悩まされ、【精神破壊(メンタルブレイク)】される寸前でした。 どうにかして作業効率を上げないと僕が病んじゃう!そうすると開発の手が止まって、新しい価値をユーザに届けられなくなっちゃう!私これからどうすればいいの〜〜〜!……そんなとき僕たちの目の前に現れたのが「iMac Pro」でした。 iMa

    失われた2人日をiMac Proで取り戻し、開発体験を向上するまでの軌跡 - pixiv inside
    invent
    invent 2018/09/10
  • 永久保存版Railsアップデートガイド - pixiv inside

    はじめまして、2018年7月入社の sue445です。自称「フルスタックキュアエンジニア」です。最近はpixiv PAYのチームでRailsを書いたり社内gemを作ったりしています。 好きなプリキュアはキュアピースです。 前置き 先日Rails 5.2.1がリリースされました https://weblog.rubyonrails.org/2018/8/7/Rails-5-2-1-has-been-released/ pixiv PAYでもその対応を行っていて、先日番環境にRails 5.2.1を投入しました 💪 ググると特定のバージョンでのアップデート方法はいろいろ見つかるのですが、どのバージョンでも使える汎用的な方法が意外になかったので紹介しようと思います。 Rails 4.1系以降はだいたいこの方法でアップデートしてきたのでそれなりに実績のある手法だと思います。 筆者スペック 初め

    永久保存版Railsアップデートガイド - pixiv inside
    invent
    invent 2018/08/21
  • BOOTH iOSアプリはどうやって有料ダウンロード商品の販売を解禁したか? #booth_pm #booth - pixiv inside

    2020/12/25 編注:この記事は2018年当時のエピソードです。現在はこの方法では審査に通らなくなりました。 おばんです、給料日であることをいいことに、にじさんじくじに課金しまくったBOOTH iOSエンジニアの @danbo-tanaka です。 平素よりBOOTH iOSアプリをご贔屓いただき、ありがとうございます。 みなさんもうアプリをアップデートしていただけましたでしょうか? 8月16日(木)にリリースしたv2.12.0では、これまで要望の多かった有料ダウンロード商品の販売を実装しました!🎉 これまでiOSアプリにおいて、デジタルコンテンツの購入に対応したアプリは多くありませんでした。それはAppleが用意したアプリ内課金(通称Apple税。手数料として30%をAppleに支払う必要がある支払い方法)を通さなければ、基的にデジタルコンテンツの取り扱いが許されなかったという

    BOOTH iOSアプリはどうやって有料ダウンロード商品の販売を解禁したか? #booth_pm #booth - pixiv inside
    invent
    invent 2018/08/20
  • 3/28に公開されたRubyの脆弱性情報についてのポエム的解説 - pixiv inside

    こんにちは。Rubyコミッターのusaです。 なんかRuby の 最新 リリースと一緒に、脆弱性 情報 が いっぱい 公開 されましたね。うわー、なんかよくわかんないけど、やばそうですね!正味のところ、こいつら結局どれくらい危なそうなのか、それらの脆弱性の記事を書いた人がたまたまピクシブにいましたので、率直に音を語っていこうと思います。 CVE-2017-17742: WEBrick における HTTP レスポンス偽装の脆弱性について うまく利用するのは難しいとは思いますが、使いようによっては利用者(WEBrickで作って公開したサイトを訪問した人)をひどいめにあわせることができるかもしれない脆弱性です。 でも、WEBrickで作ったサイトをプロダクションで公開してる人なんているわけないよねははは。 CVE-2018-8777: WEBrick における巨大リクエストにともなう DoS

    3/28に公開されたRubyの脆弱性情報についてのポエム的解説 - pixiv inside
    invent
    invent 2018/03/30
  • 熟練のRubyコアコミッター、ピクシブに立つ - pixiv inside

    「プログラミング言語Rubyのコアコミッター・中村宇作氏を採用しRuby開発とImageFlux開発を加速します」のニュースで既報の通り、Rubyのコアコミッターを務められているusaこと中村宇作が入社しました。 聞き手はニュースの写真にも登場している、bashこと執行役員 技術マネジメント室長 小芝です。 プロフィール 1973年生まれ、富山県出身。 2000年よりRubyの開発に携わり、現在は主にWindows版の開発および安定版の保守を担当。Ruby公式サイトに世界で一番多く記事を書いている人。 RubyKaigi2013スピーカー、大江戸Ruby会議05キーノート。 TRICK 2013、TRICK 2015 入賞者。 好きなメソッド: Enumerable#map 座右の銘: ケセラセラ GitHubTwitter ID: @unak 自己紹介 まずは自己紹介をお願いします。

    熟練のRubyコアコミッター、ピクシブに立つ - pixiv inside
    invent
    invent 2018/03/20
  • 「おまえは今までレビューしたプルリクの数をおぼえているのか?」 - pixiv inside

    こんにちは、kanaです。社内ではpixivというサービスでPHPTypeScriptVim scriptを書く仕事をしています。今日はpixivの開発におけるコードレビューの話をします。 問題 pixivは昨年でサービス開始から10周年を迎えました。サービス開始当初と比較すると山のように新しい機能や画面が増えています。なのでpixivのコードベースは巨大です。PHPファイルだけでも5000個以上あります。 kana@pixiv ~/pixiv (2) [master] ^-^)/> git ls-files '*.php' | wc -l 5555 これだけの数のファイルを全て把握するのは無理です。なので、各々の開発者が自由にコードを書いて混沌にならないよう、設計方針を始めとして各種コーディング規約が整備されており、秩序を保っています。 とはいえ誰もが常に完璧なコードを書けるわけでは

    「おまえは今までレビューしたプルリクの数をおぼえているのか?」 - pixiv inside
    invent
    invent 2018/03/06
  • 放置しがちな社内システムこそ式年遷宮していこう - pixiv inside

    こんにちは、CTO兼福岡オフィスマネージャーの@edvakfです。最近はとあるC++のコードをRustに逐語訳しながらRustを勉強中です。 今回はピクシブで使っているデプロイ管理画面のpployをgo-pployにリプレースした話を書きます。 まずは結論から メンテナビリティの向上 を目指して社内システムをリプレースした 小規模であっても新規開発から得られる学びはとても大きい その気になれば式年遷宮できるシステム規模を心がけましょう そもそもpployとは? pployとは、「デプロイ管理画面」という類の小さなウェブアプリケーションです。 ピクシブで開発しているウェブアプリケーションのデプロイは基的にはすべて 「デプロイ中」状態になる masterにpushする staging等にデプロイして確認する productionにデプロイする 問題無ければ「デプロイ中」状態を解く という手順

    放置しがちな社内システムこそ式年遷宮していこう - pixiv inside
    invent
    invent 2018/03/02
  • pixivの新しいターゲティング広告とその目指す世界 - pixiv inside

    こんにちは!メディア事業部のyattyoです。 今回はpixivが新しい広告商材「pixiv Audience Targeting Ads」をリリースしたということで、部署の先輩であるkamonabeとyousanに新商材の内容や開発の経緯について聞いていきたいと思います! 日はよろしくお願いします。まず、自己紹介からお願いします! kamonabe: メディア事業部のkamonabeです。純広告やタイアップ商材の営業・販売・管理を行っています。 yousan: 同じくメディア事業部のyousanです。広告プロダクトの開発ディレクションを行っています。 今回リリースした「pixiv Audience Targeting Ads」とはどのような広告商材なのでしょうか? kamonabe: 広告の掲載場所となる“プレイスメント”を担保した上で、配信対象ユーザーである”オーディエンス”をベース

    pixivの新しいターゲティング広告とその目指す世界 - pixiv inside
    invent
    invent 2018/02/23
  • 創作コミュニティを育てたい ― pixiv chatstory開発者インタビュー - pixiv inside

    こんにちは、10月からピクシブに新卒入社して働いているkameikeです。僕は8月からピクシブ福岡オフィスでアルバイトしています。 今回は、僕も福岡オフィスで一緒に作り、先週リリースしたアプリ「pixiv chatstory」について、福岡オフィスの開発者、edvakfとsxoの2人にインタビューしてみたいと思います。 クリエイターへの尊敬が心地よい まずはedvakfさんの自己紹介をお願いします。 edvakf:はい。ピクシブでCTO兼福岡オフィスで開発担当を務めております、高山です。僕はCTOとして、これまでにいくつかのプロジェクトの立ち上げに関わってきたのですが、福岡オフィスの立ち上げにも関わってみたいと思って志願し、今年6月から福岡で働いています。 CTOが新拠点立ち上げっておもしろいですよね。 edvakf:「CTOが一番好きなことやってるのがロールモデルってカッコイイね」って言

    創作コミュニティを育てたい ― pixiv chatstory開発者インタビュー - pixiv inside
    invent
    invent 2017/10/28
  • pixivを常時HTTPS化するまでの道のり(前編) - pixiv inside

    ピクシブ株式会社で開発基盤チームとして働いている @catatsuy です。主にpixiv技術的な改善をしていますが、広告チームも兼任しているので広告周りの開発もしています。 今回pixivの常時HTTPS化を担当したのでやったことを紹介します。 pixivをHTTPS化した理由 現在のインターネット全体の流れとして常時HTTPS化が進んでいます。エドワード・スノーデン - Wikipediaが暴露したNSAの事件発覚や 公衆無線LANの利用拡大により、通信経路上でユーザーの個人情報を保護することがインターネット全体として非常に重要になってきました。Googleが行っている調査によると、HTTPSページの閲覧時間はウェブ全体の利用時間の3分の2にも及びます。 それだけではありません。ブラウザに新しく追加されるAPIや機能(HTTP2/WebRTC/ServiceWorkerなど)はHTT

    pixivを常時HTTPS化するまでの道のり(前編) - pixiv inside
    invent
    invent 2017/06/13
  • 1