ふりかえりカンファレンス
オフェンシブセキュリティ部の山崎です。サーバサイドレンダリング(SSR)の導入によってSSRFが発生する問題を見つける機会があったため、本記事では実例を交えながら紹介したいと思います。 サーバサイドレンダリング(SSR)とは? 本記事で扱うSSRとは「サーバ上でHTMLを出力すること」を指しています。ただしerbやjspのようなテンプレートからHTMLを出力するのとは異なり、一般的には以下のようにクライアントサイドレンダリング(CSR)の文脈で使われることが主です。 近年のVue.jsやReactを代表するようなWebフロントエンドフレームワークはブラウザ上で動的にDOMツリーを構築して画面を描画(CSR)するのが主流となっています。これによってページ遷移を挟まずユーザ体験のよいシングルページアプリケーション(SPA)が作ることができるというメリットがあります。 ただ、単純なSPAにはデメ
と思うのは、とてもいいこと。 前置き もし行いたいテストが外的振る舞いを示すものであれば(少なくともテストにより観測できる見通しがなければ「テストしたい」とは思わないだろうから、何かしら外から観測可能なものではある可能性は高い)、それがprivateに閉じていていいものではないと言う気づきのきっかけになる。 と言うのは教科書的回答だけど、外には見せたくないけれど複雑なロジックを包含していて、入念かつ局所的にテストしたいと思うこともある。 この動機はすごく自然。きっとそこはテストしなかったらバグってるし。テストしてもバグが見つからないと言うのもよくあるんだけど。 この手のがどうあるのがいいのかはチーム体制も含めたプロダクトによると思っている。 綺麗な考え方は、独立したコンポーネントとして関心ごとや複雑性を閉じ込め、テストしたいと思った内容にもっと高い格を与える。「格」なんて表現は他で使ったこ
なにか話すことはないかと Hacker News をみていたら(ろくでもない)、 Youtube や Gmail など Google のサービスが一時間落ちていたというニュースで 盛り上がっていた。担当者の想像するだけで胃が痛い。 森田はクライアントサイドで仕事をしているので、この手の outage は起きない。 けれど自分のところに担当したくないイヤなバグが回ってくることはたまにある。 そういうのを精神衛生を害さない程度で思い出してみたい。 A Ship Blocker 何年か前にカメラアプリのチームに入った直後、ハカソンでカメラのビューファインダに OpenGL のシェーダで簡単なエフェクトをかけるコードを書いた。 ハカソン最終日のデモで成果を紹介すると、より洗練されたリアルタイムエフェクトを近隣のアルゴリズムチームが長いこと構想していたことがわかった。 そこで彼らが開発していたエフェ
どのような事前準備をしているか 有事の際は想定外のことが発生しやすく、事前準備をしていないと冷静な対応が難しくなります。 いきなりしっかりした事前準備をすることは難しいので、徐々に成熟度を上げていきます。 本章では以下の観点で、事前準備についてご紹介します。 手順書 自動化 訓練 手順書 フローやチェックリストを含む手順書を準備しています。 手順書の内容は後述します。 分かりやすい手順書を準備することも重要ですが、その手順書への導線づくりも大切にしています。 運用周りのドキュメントは数が多く、目的のドキュメントが埋もれてしまい他のメンバーが見つけられない場合があるからです。 周知に加えて、ドキュメントの階層を見直したり、特定チャンネルに手順書の URL をピン留めしておくなど、手順書に辿り着きやすくする工夫をしています。 分かりやすい手順書の書き方については、以下のブログが参考になります。
Show navigation Generally, references to objects are strongly held in JavaScript, meaning that as long you have a reference to the object, it won’t be garbage-collected. const ref = { x: 42, y: 51 }; // As long as you have access to `ref` (or any other reference to the // same object), the object won’t be garbage-collected.Currently, WeakMaps and WeakSets are the only way to kind-of-weakly referen
create-validator-tsというTypeScriptの型定義からJSON Schemaを使ったバリデーションコードを生成するツールを書きました。 モチベーション expressなどでAPIを書くときに、Request/Responseが意図したものかどうかをバリデーションする必要があります。 特にreq.queryなどはStringが入ると予想しますが、オブジェクトが入ってくることもあります。 これは、expressの内部で使っているqsというURLクエリのパーサが、オブジェクトや配列へ展開する機能を持っているためです。 expressを使ってるサイトは ?q=text があるときに req.query.q には オブジェクトが入る可能性をちゃんと考慮しないといけない。 ?q[a]=text で req.query.q ; // { a: "text" } になる — azu
社内でLTしたネタ。去年からサポートしているチーム作りのお話。 1週間スプリント 最初は短いサイクルで試行錯誤したいから1週間スプリントでやることにした。 スプリントの終了と開始 金曜日にスプリントレビューとレトロスペクティブとプランニング。 プランニングは2部制にして 第1部では次のスプリントでやりたいことの認識合わせを全員で 第2部では細かいタスクの話をエンジニア中心で やってる。 ストーリーポイントと理想時間を併用してみてる これはだいぶあとの方の話。 最初の頃はチケットのサイズを見積もるのにストーリーポイントだけを使ってたんだけど、半年くらいした頃にストーリーポイントに加えて理想時間の見積もりも併用することにした。 最初の頃に理想時間を導入しちゃうと、頭では分かってても「時間」に引っ張られてしまうので、ポイントだけで始めることにした。で、半年くらいしたころには新しいやり方にも慣れて
今まで使っていなかった Git コマンドを学んでいく.今回は git sparse-checkout を試す. git-scm.com git sparse-checkout とは? コマンド名にある sparse は「わずかな」という意味で,Git リポジトリの「一部」を取得できる.git clone --depth を使ってコミットを刈り取るのではなく,指定したディレクトリを取得する.モノリポ(モノレポ)構成のときに効果的に使える.git sparse-checkout は歴史的な変化もあり,今年になって改善されている.記事を検索すると Git 2.25 より前の git sparse-checkout を紹介した記事が多いように感じたため,今回は Git 2.26.2 を使って試した. Git 1.7 2010年2月 リリース git sparse-checkout 導入 Git 2
3/8に庵野監督のシン・エヴァンゲリオンをみた。 まず最初に断っておくと、この映画について内容という意味でのネタバレをする事は難しい。 ストーリーにキチンとした骨子のようなものはなく、またそれについて色々聞かされた所で特に視聴の妨げにはならない。 だが、この映画は事前情報無しでできれば見たほうがいい。 なぜならこの映画は小難しい前衛芸術のようなもので、見る人によって本当に見える風景が変わるからだ。 というわけで以下に僕が映画をみた感想を書くが、未視聴の方はできれば視聴後に読んで欲しい。 僕のものの見方に影響されてこの映画を見てしまうのは、物凄く損だと思う。 何でもそうなのだけど、最後までやりきるのって凄いよね とても正直な事をいうと、視聴後5分ぐらいで帰りたくなった。 なぜならあまりにも映画として面白くないからである。 誰が言ったか忘れたが、かつて「映画は最初の5分みてつまらないと思ったら
昭和5年に神戸市の摩耶山の中腹に建てられた施設で、使われなくなって荒れ果てたあともその外観の美しさから全国のファンに「廃虚の女王」とも呼ばれている「旧摩耶観光ホテル」が国の登録有形文化財に登録されることになりました。 国の登録有形文化財に登録されるのは神戸市灘区にある「旧摩耶観光ホテル」です。 標高702メートルの摩耶山の南斜面の中腹昭和5年、企業の福利厚生施設として建てられました。 ケーブルカーの駅のそばにあり、神戸の街を一望できる立地から多くの人でにぎわい、戦後は結婚式会場やレストランを備えた観光ホテルや学生向けの合宿所として平成5年まで利用されてきました。 鉄筋コンクリート造りの地上2階、地下2階建ての建物は、それぞれの階にめぐらしたひさしが曲面を強調し舞台や洋室にはアールデコ調の意匠を凝らしていて、摩耶山がリゾート地として栄えた歴史をうかがい知ることができる点などが評価されました。
No Bundle ツールの流行: vite / snowpack モダンブラウザは Native ESM を備えているので、開発時は高速な localhost アクセスを頼って直接 import する、外部ライブラリだけ事前にコンパイルしておく、という手法が流行ってきている。プロダクション用は今まで通りビルドする。 webpack はすべてを一つにバンドルするためにメモリ上にファイルの実体と依存グラフを持っているが、これによりメモリと CPU を圧迫する問題があった。特に巨大なリポジトリではそれが顕著になる。 No bundle ツールの実装として vite と snowpack がある。 https://github.com/vitejs/vite https://www.snowpack.dev/ vite は使ってみた限り、更新時の差分ビルドが爆速で、明らかに体感が良い。 Vue
2024年までに新卒採用に占める女性の割合を4〜5割にすると掲げて話題を呼んだ丸紅。トップ自らのメッセージとして発信した。 Reuters/Toru Hanai 大手総合商社の丸紅は2021年の年明け、2024年までに新卒総合職採用に占める女性の割合を4〜5割にすると掲げて話題を呼んだ。総合商社の総合職といえば「男性組織」で知られ、丸紅も女性社員比率は10%、女性管理職比率は6%台で雇用均等基本調査(2018)の女性管理職比率11.8%を下回る。 そんな商社の「新卒採用4〜5割を女性に」のアナウンスは驚きをもたらすと共に、SNS上では「むしろ逆差別では」「性別ではなく能力で選ぶべき」と、反発の声も上がった。 なぜ、数値目標を広く掲げる必要があったのか。「数合わせ」批判にはどう答えるか。2022年卒の就活も本格化する中、丸紅の採用担当者と識者への取材から、よくある疑問をひも解いてみたい。 Q
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く