サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「#文学」
devpixiv.hatenablog.com
ピクシブ株式会社 Advent Calendar の@3日目です。今日はスマホアプリエンジニアの chocomelon がお送りします。 最近、弊社のプロジェクトではネイティブアプリのプッシュ通知に Firebase を使っています。導入方法は色々な方々が紹介しているので今さら感はありますが、弊社ではこんな感じで使っていますという事例を絡めて紹介できればと思います。 記事の内容的には Firebase で送るプッシュ通知の概要は知っていて、これから導入を検討している方や、Firebase を使ったプッシュ通知が実際どんな形で使われているか興味がある方にオススメです。 Firebase Notification と Firebase Cloud Messaging Firebase で送る通知は、Firebase Notification を使ってGUIから送る方法と Firebase Cl
ISUCON6本選の出題を担当した @catatsuy です。 ISUCON6はMicrosoft様にスポンサーになってもらい、Azureを提供してもらいました。その縁でAzure本の献本をいただきましたので、私が読んで感じたことを書いてみたいと思います。 Azureテクノロジ入門2016 (マイクロソフト関連書) 作者: 日本マイクロソフト株式会社出版社/メーカー: 日経BP社発売日: 2016/11/12メディア: 単行本この商品を含むブログ (2件) を見る Azure本ほしいと書いたらISUCON出題者枠で特別に送っていただいた。第三章「データベースと分析計サービス」と第四章「高速開発のためのAzure App ServiceとAzure Functions」だけで全体の半分以上あっておもしろそう。 pic.twitter.com/vH0d9xInyx— edvakf (@edva
わかりやすさを追求したらマンガになりました。 マンガでわかる「配信広告の運用でマネタイズを行う際にeCPMを過信してはいけない理由」の紹介です。 マーケティング部にて広告事業を担当しているdrillです。社内ではアドネットワーク・SSP等の配信広告の運用によるマネタイズを主な業務として行っています。 配信広告の収益性を判断するために、1,000impあたりのコスト(メディアサイドでは収益)である「eCPM」を指標とすることは多いと思いますが、各配信広告サービス管理画面のeCPMだけにとらわれると正確な収益の比較・検証が行えない場合があるので気をつけましょう、という内容の記事です。 (eCPM=1,000impあたりのコスト、メディアサイドでは1,000impあたりの収益) リクエスト送信数に対するimp数の乖離 メディア側が広告のJSタグを呼び出したり、アプリから広告SDKにcallを送っ
新CTOの@edvakfです。 今年のピクシブ株式会社アドベントカレンダーも無事最終日を迎えることができました。 http://qiita.com/advent-calendar/2016/pixiv 脆弱性報奨金というものがありまして、日本だとCybozuさんとかLINEさんの事例が有名です。 今回はピクシブで脆弱性報奨金の導入事例を元に、脆弱性報奨金とどう付き合っていくのが良いかを考えていきます。 忙しい人向けのまとめ BugBounty.jpを利用して脆弱性報奨金制度を導入した セキュリティ部署を作らなくてもミニマルに始められて良い 会社の規模に合わせて報告件数をコントロールしながら報奨金額を設定しよう BugBounty.jp CybozuさんやLINEさんは自前で脆弱性報奨金の窓口を運営されていますが、ピクシブではBugBounty.jpというサービスを利用しています。(pixi
この記事は ピクシブ株式会社 Advent Calendar 2016、24日目の記事です。 こんにちは、 @FromAtom です。pixiv SketchとpixivコミックのiOSアプリ開発を担当しています。 さて、世間はクリスマスだなんだと浮かれていますが、我々エンジニアにとっては年末調整とSwift3対応の季節です。みなさんはSwift3ですか? 今回はpixivコミックアプリのSwift3対応をした際のあれこれについて、書いていきたいと思います。 pixivコミック - 無料で漫画読み放題! / マンガを読むならピクシブコミック pixiv Inc.ブック無料 Swift3対応を始める前に Swift3対応を開始する日を決めておきましょう。Swift3対応のブランチが切られてからは、メインのブランチには致命的なクラッシュ対応以外はマージしないほうが良いです。既存のコードをSwi
ピクシブ株式会社 Advent Calendar 2016、23日目の記事です。 こんにちは、新卒エンジニアのrokurokuです。 普段はpixivコミックのアプリを開発しています。 今日は、去年リリースされた小説PDF化機能について、PDF内のテキストへのアクセシビリティを中心にお話しします。 小説PDF化機能ってなに? 小説PDF化機能は、pixiv小説に投稿した自分の作品をPDFに変換する機能です(非公開作品でも変換できます)。 投稿した小説を手軽にいい感じのPDFに変換できて、それを印刷できるというコンセプトをもって開発されました。 詳しくは小説PDF化機能をリリースしたときの記事をご覧いただければと思います。 なお現在のPDF化はAmazon Lambdaを利用して行われています。 詳細は弊社CTOの記事をどうぞ。 「吾輩は猫である」の一部抜粋 私が作ったのは、入力として(テキ
気になるけど全部読んでるヒマが無い!そんなあなたのために各記事をザックリとご紹介します。 ピクシブの新執行役員に直撃!CTO&CCO就任記念インタビュー 今月からCTO(最高技術責任者)になった高山と、CCO(最高文化責任者)になった川田がそれぞれ抱負を語っています。 こんな人にオススメ ・CCOってなんじゃいと思ってる人 ・31歳の執行役員がどんな人達か気になる人 ・いずれ経営者の視点で会社を支えたいと考えているエンジニア・学生さん Railsのアップグレードでもう苦しまない ある程度コストのかかるRailsアップグレードも、事前の心がけや普段からの工夫で簡単にしていけるんですね。 こんな人にオススメ ・Railsのアップグレードでヒィヒィ言わされた経験がある人 ・YAGNIってなんだろうと思ってる人 ・日本酒が好きな人 Firebase Cloud Messaging (FCM) を利
こちらは「ピクシブ株式会社 Advent Calendar 2016」20日目の記事です。 qiita.com 16卒エンジニアの pawa です。社内では「pixivコミック」「pixivノベル」の開発に携わっています。趣味では「青空文庫」のイベントや草野球チームに参加しています。 私は野球に恋をしているので、就活時は 「エンジニアになっても野球ができるのか」 というのが、とても気がかりでした! 今回は、エンジニアの私が、いかにしてコードを書いて草野球チームの運営ノウハウを学び、ピクシブとニジエの連合草野球チームの運営に関わるに至ったのかについて、キーボードを打鍵してみようと思います。 野球を通じて受けた恩を返そうとした結果、コードを書くことになった 草野球チームのWebサイトを作る専用のサービスがある 熱意に負けた 草野球チームの運営に適した機能とデザインについて再考した あえてPer
この記事は ピクシブ株式会社 Advent Calendar 2016 の21日目の記事です。 みなさん初めまして。初めてじゃない方はお久しぶりです。ピクシブ株式会社でAndroidアプリを担当しております @consomme72です。 ピクシブでは、エンジニアが勝手にいろんなものを作って、いつの間にかそれが社内で広く使われているといったケースが多くあります。特にSlackのBOTは毎週のように新しいものが追加されていて、ある日突然チャットに登場してビックリすることも少なくありません。 今年のAdvent Calendarでも、LINE BOTでpixivコミックをおすすめしてくれる司書の話が紹介されました。 そしてスマートフォンアプリでも、エンジニアが勝手に作って社内で公開しているプロダクトがいくつかあります。今回は、その中からいくつかの事例を紹介したいと思います。 pixiv Spot
この記事は、ピクシブ株式会社 Advent Calendar 2016 の19日目の記事です。 qiita.com こんにちは、2代目社内旅行エンジニアこと@ikです。 普段は社内サービスで利用する決済システムを主に開発しています。今回の記事では、Google Apps Scriptを使用して、スプレッドシートの自動更新や、自動でのメール送信、Slackへの定期投稿などを行い、業務を効率化させる話をします。 Google Apps Script とは GASで出来ること スプレッドシートのデータを読み書きする メールを読み込む、送信する 外部サーバにGET, POSTする なぜGASが良いの? 実際に業務に使えるスクリプトを作る 毎日の日直をSlackに投稿する スプレッドシートが更新されたらSlackに投稿する 変更があるたびに投稿する 1時間に1度、更新を確認して、更新されていたら投稿
こんにちは、子育てと仕事の両立に苦慮している@harukasanです。 このたび新しいプロダクトである、画像配信・変換に特化したクラウドサービス、ImageFluxをリリースしました。 このサービスはさくらインターネットさんと共同で行わせて頂くサービスになっております。 今回は、なぜImageFluxをつくったかという話をしようと思います。 ImageFluxが解決する問題 Webにおいて画像はなくてはならない要素です。 ユーザのアイコンやプロフィール画像、デザインの背景、ヘッダー画像…… さまざまな画像がPC、アプリ、さまざまなデバイスにいろんなサイズで表示されます。 画像がメインコンテンツでないサービスであったとしても、いろいろな形で画像を扱わなければなりません。 配信されるサイズについてデザイナーと議論し、 フォーマットや転送量をモバイルアプリエンジニアと確認し、 インフラチームに負
ピクシブ株式会社 Advent Calendar 2016、18日目の記事です。 こんにちは、エンジニアの@uchienneoです。2015年に小説PDF化機能の記事を書いた時にはpixiv本体の機能開発をメインにやっていたのですが、2016年夏に弊社メディアサイトwww.pixivision.netをリニューアルしてからはそちらの開発に携わっています。 pixivやpixivisionのソースコードの管理には自社ホストのGitLabが使われています。(どのようにGitLabが運用されているのかの詳細は16日の@catatsuyさんの記事をご覧ください) inside.pixiv.net GitLabにはタスク管理の機能があります。こちらの機能もどんどんアップデートを続けていて、そろそろ来年くらいにはGitLabだけでタスク管理するのも夢じゃないのでは…と思っています。 今回は実際のプロジ
この記事は、ピクシブ株式会社 Advent Calendar 2016 の17日目の記事です。 qiita.com おはようございます。プログラマーのhakatashiです。普段はpixivコミックの開発をひっそりと手伝っていますが、今回もそれとは全く関係ない話をします。 前回の記事では、pixivに投稿された小説のデータを使用して機械学習を行いました。今回は引き続いて、最近発表されたpix2pixというライブラリで軽く遊んでみたので、簡単に紹介します。 pix2pixとは pix2pixとは、11月下旬に発表された論文「Image-to-Image Translation with Conditional Adversarial Networks」で提案された機械学習のモデル、および論文と同時に発表された実装の名称です。論文を発表した Phillip Isola らはUCバークレーの人工
ピクシブ株式会社 Advent Calendar 2016の時間です。今回はピクシブ株式会社でエンジニアをしている @catatsuy が担当します。今回は意外と書いてなかったのでGitLabを社内でどう運用しているかの話を書こうと思います。 GitLabとGitHub ピクシブ社内では以下の2つの方法でソースコードを管理しています。 自社でホストしているGitLab GitHub Organization それぞれ以下の特徴があります。 GitLabのメリット 自社でホストしているため、アメリカにサーバーがあるGitHubよりもgit cloneでリポジトリをダウンロードする場合などは速い オープンソースのプロジェクトのため、社内のサーバーにインストールするだけで使える ソースコードを読めば内部でやっていることが分かる ユーザー数やリポジトリ数などで料金がかからないため、気軽に使える G
qiita.com ピクシブ株式会社 Advent Calendar 2016の14日目担当のsyoichiです。 今年の2月に入社しました。現在はプレミアムチームに所属し、主にPHP/JavaScript/CSSで開発しています。個人ではブラウザの拡張機能やUser Script/User Styleをよく弄っています。 さて、私は入社する前まではプログラミングに関わるチャットサービスとしてはGitterぐらいしかまともに触ったことがなかったのですが、入社直後は社内でIdobataを主に利用し、数週間後には社内全体でSlackに移行と、一気にチャットサービスを常用することになりました。当時のSlackに対しては巷で話題のイケてるサービスという印象だったので、移行の時はワクワクしたものでした。それから数ヶ月経ち、すっかりSlack漬けの生活になっています。 フィードリーダーとしても活用でき
こちらは ピクシブ株式会社 Advent Calendar 2016、13日目の記事です。 こんにちは!4月からピクシブに入社したエンジニアの@_ragg_です✨ メンテナンスチーム・pixivFACTORYチーム・pixivFANBOXチームを旅して、デザインをかじったりフロントエンドを触ったりしています、3代目社内旅行エンジニアですね! さて、今回はHTML5 Canvasに実装されつつあるOffscreenCanvasと、Web Workerについてお話しします。まだ日本語文献の少ないアツアツのネタです🔥🔥 OffscreenCanvas #とは OffscreenCanvasは、「画面に表示されないCanvas」です。 かつて CanvasProxy と呼ばれていたのをご存じの方もいると思います、まさにそれです。 「画面に表示されないCanvas」は、「表示前に何段階か画像の加
(ピクシブ株式会社 Advent Calendar 2016 12日目の記事です) qiita.com こんにちは、エンジニアの id:geta6 です。普段は主にpixiv Sketchの開発などに携わっています。 さて、先日ISUCON6の本選が開催され、ISUketchというReactを使ったお絵かきサービスが話題になったかと思います。 この問題で採用されたアーキテクチャは『pixiv Sketch』のアーキテクチャを参考にしたものとなっています。 パフォーマンス等に関しましては本選の感想として良質な記事がいくつも執筆されていますのでそちらに譲るとして、今回はこのアーキテクチャの設計意図や利点について話します(2年前のリリース当初からずっとこの構成なので今さら感はありますが)。 どういうアーキテクチャか pixiv SketchのWeb版は、2つのサーバーから構成されています。 1つ
こんにちは、今年もピクシブ株式会社 Advent Calendar 2016です。 最近は社内にPhpStormを浸透させようと暗躍*1してますうさみ @tadsanです ヾ(〃><)ノ゙ 今年は.emacs Advent Calendar 2016も書いてます! 2014年はEmacsでpixiv-novel-modeを作ったを書きましたが、今回は私がどうやってEmacsで仕事をするのか、そしてどのようにPHP開発環境を効率化するかについて書きます。 ちなみに昨日はkanaによるpixiv開発を支えるVim (タグジャンプ編)なので、Vimをご利用の型はこちらも読んでみてください。 なんとかStormに負けたくない気持ち 今回の内容の要約は、今年3月にPHPの知見などを共有するLT会・PHP BLT #3で発表したので、長い文章を読むのがだるいひとは見といてください。 SSHとTRAMP
こんにちは、 ピクシブ株式会社 Advent Calendar 2016 の10日目の記事を担当します、エンジニアのkanaです。弊社は様々なサービスを開発・運営していますが、私はその中でもイラストコミュニケーションサービスのpixivの開発に携わっています。 今回は日々の開発の中で気になったちょっとしたVimの話をします。 発端 コードを読み書きしてると「この便利メソッドが中でやってる処理がどうにも臭うぞ……」という場面にしばしば遭遇します。そういう時はタグジャンプを使います。 universal-ctagsをインストールする プロジェクトのルートディレクトリで ctags -R を実行して tags ファイルを生成する という前準備を済ませたら、後は <C-]> で定義に飛ぶ <C-t> で元の位置に戻る というキーバインドを覚えるだけでコードツリーを高速で飛び回る事ができます。これで
ピクシブ株式会社 Advent Calendar 2016 @8日目の記事です。 こんにちは、エンジニアのdo7beです。pixivFANBOXの開発などに携わっています。 さて、今回は新規開発プロジェクトに「割れ窓理論」を導入してサービスのクオリティ向上に繋がった話をご紹介したいと思います。 割れ窓理論とは 「割れ窓理論」とは、アメリカの犯罪学者ジョージ・ケリング氏が提唱した「建物の窓ガラスが割れたまま放置されると住民もゴミを捨てるようになり、治安が悪化し、より重大な犯罪が発生してしまう」という理論です。 つまり軽犯罪を取り締まることこそが、重大な犯罪を防ぐために重要であることを指しています。 私たちのチームではこれをWebサービスの新規開発プロジェクトに取り入れています。 WEBサービスにおける割れ窓は「軽度のデザイン崩れ」や「表記ゆれ」に、重大な犯罪は「バグ」や「全体のクオリティ低下
ピクシブ株式会社 Advent Calendar 2016 - 7日目 本日は新卒エンジニアのhayaがインターネットにつながってなくてもできるお話をします。 具体的には、PythonでBlenderを操作し、入力データにしたがって3Dモデルを生成したり変形したりすることで、任意形状オブジェクトのレンダリングをGUIなしで実行します。 もちろんインターネットにつながっているとなお良く、ものづくりがもっと楽しくなるアイテム制作サービス - pixivFACTORYでは、Blenderと画像変換を駆使して、様々なオリジナルグッスの仕上がりイメージをユーザーに提供しています。 コードで3Dオブジェクトをつくる 基本的に、BlenderのUIで操作できることは後述のPythonコンソールからでも同様の操作を行うことができます。 レンダリング画像の見栄えを良くするために必要な要素はたくさんありますが
pixiv Advent Calendar 2日目(つ∀-) Ruby on Railsは世界中のプロジェクトで採用されている最も有名なWebフレームワークのひとつである。 これほど有名なフレームワークでありながら、約1年ごとに訪れるアップグレードでは皆揃って頭を抱えることになる。 そう。 Ruby on Railsを使うプロジェクトにとって、アップグレードはひとつの鬼門である。 一定以上の規模のプロジェクトになると 専任のエンジニアがブランチを作って、つきっきりでアップグレード作業をすることになる。(あなたの会社もそうじゃない?) あんな退屈で辛い作業はない... 負債を減らすにはコツがいる どうすればRailsのアップグレードを楽にできるか。 アップグレードに時間がかかるのは「最新バージョンとの差分」が大きいことが原因なので、 差分が少なければ、それだけアップグレードが楽になる。 今回
pixiv Advent Calendarが今年も始まりました! この12月、ピクシブ株式会社に新しい執行役員が2人誕生しました。今回はCTO(最高技術責任者)の高山とCCO(最高文化責任者)の川田に、今後の抱負などをうかがってみました。 (※ 左: CCO 川田 寛、右: CTO 高山 温) ――まずはお二人の自己紹介をお願いします。まずは高山CTOから。 高山 このたびピクシブ株式会社CTOに就任しました、高山(@edvakf)です。僕はpixivに入る前はイギリスとカナダで物理を学んでいて、26歳で大学院中退という、かなり異色な経歴でした。当時は大学をサボってJavaScriptばかり書いていまして、Webプログラミングを仕事にしようと思い、2012年3月に入社しました。 ――入社してからはどんなことを担当されていたのでしょうか。 高山 入社後はpixiv本体のPHPを書いたり、「p
弊社のサービスであるイラスト投稿SNS「pixiv」には、パブリックなAPIが提供されていないため、サードパーティのアプリを開発することができません。pixivの投稿は作品だったりするので気軽にAPIを公開するわけにもいかなかったりします。 …とはいえ、pixivには現在6,500万を超える作品が登録されています。これだけのイラストが投稿されているサービスが、この世界のどこにあるでしょう。そしてこれらの作品が、今のpixivとは違う別の形で表現されたらどうなるでしょう。想像したことはありませんか? もっと違う、イラストのコミュニケーション方法があればどうなるだろうか? 機械学習の力を借りて、新しい体験を与えることができればどうなるだろうか? モバイルだからこそ、もっと違う投稿体験を作り出せるとすればどんな形になるだろうか? 「CODE HAMMER#02」は、そんな想像を形にして競い合う大
WebSocketの扱うサービスでは、長時間のコネクション、再接続処理、プロキシ、ロードバランサなど、インフラの面で多くの問題を抱えがちです。弊社のサービス「pixiv」の9周年企画でも、この問題に直面しました。 実際にそこで構築したインフラの事例をもとに、本運用に使えるWebSocketサーバの構成について、pixivインフラ部の南川からご紹介します。 * 9周年企画 “黒歴史”をロケットで宇宙に飛ばす pixiv黒歴史 そもそも WebSocket とは? WebSocketはTCP上で動く双方向通信のための通信規格です。 Webページの読み込みで行われているような、クライアントがサーバにデータを要求し、サーバはクライアントにレスポンスを返すというHTTPの通信ルールとは違います。サーバと長時間コネクションを確立し、Socketのようにデータのやり取りを行います。そして、コネクションを
チームでiOSアプリの開発をしていると、ビルドのコストが肥大化しがちです。ピクシブでは、ビルドとテストをMac mini上に構築したJenkinsで行っているのですが、ビルドキューが詰まり、開発速度が上がりにくくなっていました。 これを改善するため、最近、iOSチームのビルドサーバーを、Mac mini 1台から3台に増やし、マスター・スレーブ環境でビルドできるようにしました。今回、そのための設定について、エンジニアの @anchan から紹介します! ビルドサーバーの環境設定は、GitHubに公開しています! モチベーション Xcodeは1台のマシンでビルドを並列化できません。チームメンバーとアプリの数が増えるにつれ、それに比例してJenkinsのビルドキューが詰まるようになりました。 Mac mini 1台では厳しくなってきたので、Mac mini 3台でJenkinsのマスター・スレ
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
こんにちは、今年4月に入社した新卒エンジニアのyasuです。pixivのメンテナンスチームでPHPを書いています。好きな言語はLispです。 本記事では、最近大流行中の人工知能を利用したチャットボットの開発について紹介します。 チャットボットが作れるAPIをLINEが提供 開発した簡単なチャットボットとの会話 LINE Botを作るために必要なもの Google Apps Script(GAS)でサーバーレスな開発 超簡単なウェブサーバを作ってみる さっそくチャットボットを作ってみる LINE Messaging APIとGASの連携 チャットボットの基礎:オウム返しをさせてみる チャットボットとオウム返しを楽しんでみる チャットボットともっと楽しく会話するために、いろんな機能を追加してみる 簡単に扱える全自動会話APIを使って雑談してみる チャットボットを少し便利に!Wikpedia検索
こんにちは、pixivでPHPをやってるうさみです。健全なコードベースは黙っても降ってこないので、チーム全体で開発効率を高めるような改善をするのがお仕事です。 テキストエディタはmicro推しです ヾ(〃><)ノ゙☆ さる11月3日に大田区産業プラザ PiOで開催されたPHPカンファレンス 2016にて大怪獣に蹂躙されながらPhanについて30分のセッション発表をいたしましたので、その内容を紹介します! Phanとは PhanはPHPの静的解析ツールです。開発元はハンドメイドのマーケットサービスを運営し、現在PHP作者のRasmus Lerdorf氏する米Etsy社です。もちろんRasmus Lerdorf氏も開発に参加してます。 Phanは以下のような項目を検出できます。 関数・クラス・定数・変数などがすべて定義済か、アクセスできるか 関数の型と引数の数が合ってるか PHP5とPHP7の
次のページ
このページを最初にブックマークしてみませんか?
『pixiv inside [archive]』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く