2021年度リクルート エンジニアコース新人研修の講義資料です
2021年度リクルート エンジニアコース新人研修の講義資料です
Your shopping website is not an SPA. I repeat: your shopping website is not an SPA. Stop trying to sculpt David with a JS chainsaw and get yourself an HTML/CSS chisel.— Alex Russell (@slightlylate) 2021年8月10日 この主張、界隈(少なくとも自分の観測範囲)では割とよく見かけるし、なんか定期的に話題になるトピックなのかなーと。 まあ持論としてもコレには概ね同意しており、会社のスタンスとも相まって、常日頃からぼんやり考えてたりすることでもある。 で、そんな折にこのツイートを発見して、さらにそれに言及してる人々を見て、ふと自分でも現状を整理しておきたいなーという気持ちになったので筆を執った次第。
Webアプリケーションを実装していると高確率で CORS の問題にぶつかります。CORSがどのようなものかはリンクしたMDNなど既存の解説を読むのが手っ取り早いと思いますが、「なぜそのように設計されたのか」という観点での説明はあまり見ないため、昔の資料の記述や現在の仕様からの推測をもとに整理してみました。 CORSとは 現代のWebはドメイン名をもとにした オリジン (Origin) という概念 (RFC 6454) をもとに権限管理とアクセス制御を行っています。その基本となるのが以下のルールです。 Same-origin policy (同一生成元ポリシー): 同じオリジンに由来するリソースだけを制御できる。 上記Wikipedia記事によるとSOPの概念は1995年のNetscape 2.02に導入されたのが最初のようです。当時のドキュメンテーションを読む限り、これはウインドウ越しに別
フロントエンド連載の5記事目です。 HTML5が2021年の1月に廃止されました。 Webエンジニアとしてバリバリ活躍されてる方やエグゼクティブテックリードのような肩書きを持つ方にとっては「何をいまさら」という話題かと思います。 しかしながら、今年も新人さん入ってきてくださったので、プログラミングを学習中にHTML5という文字列に悩まされないように、そもそもHTML5とは何かや、廃止された経緯をまとめてみます。 HTML5とはWebサイトを作るときに必ず書くことになるHTML。Webサイトのコンテンツ、つまり中身や構造を作るために使うマークアップ言語です。 そして、その最近版として10年ほど前に登場したHTML5。当時は Webニュースなどで盛んに特集が組まれていましたが、このHTML5がついこないだ、2021年1月28日に廃止されました。 広義のHTML5 / 狭義のHTML5HTML5
ウェブブラウザはネットワークから様々なリソースを集め、それらを処理して組み合わせてウェブページをレンダリングします。リソースが揃わないとレンダリングできないので、この一連の処理のどこかが遅れるとページの表示も遅くなります。レンダリングをすみやかに開始できるようにウェブブラウザはリソースの取得やその処理を最適化するための API を提供しています。本記事ではそれらを網羅的に紹介し、ウェブアプリの性能改善を図る上でどのようなブラウザ機能が使えるのかを知ってもらうことを目的としています。各機能の具体的な適用事例については他の記事に委ねます。 本記事の内容は記事公開時点での情報に基づいており、閲覧時点では既に古くなっている可能性があります。最新の正確な情報は一次情報源を参照してください。また特定のブラウザ実装について言及する場合は、断りがない限り Chrome を想定しています。誤りや補足、質問な
入った会社はWebサービスをやっていた。アクセスカウンターとかレンタル掲示板みたいな、そういうプリミティブな感じのウェッブ。今でも化石みたいに残っているとこがあるよね。teacupとか。もうないか。 当時はそういうことをしている会社をASP(Application Service Provider)と呼んでいて、「うちはASP事業やってるんです」と言うと通りが良かった。 名刺代わりっていうのかな、何が出来るのか、うちはこんなに技術力あります、ってのをさ、運営しているWebサービスで表現するわけ。同業者が集まったらさ、世間話している風で、自分とこのサービス自慢しまくるんだよね。なんかこう、いやあ負荷高くて、この前もサーバー落ちてぇとか、うちのユーザーは中学生が多いんでぇとか、今で言うマウントの取り合いだよね。どこも流行ってないからさ、意味のわからないとこで競ってるんだよ。 プログラマ的にはA
表題の通り、お恥ずかしい限りではありますが、人生ではじめて警察(神奈川県警!)のお世話になる運びとなりました。 罪状としては「不正指令電磁的記録 取得・保管罪」、通称ウイルス罪とのことで、まさに青天の霹靂の思いです。 以下ではこの度起こったことを可能な範囲でありのまま共有できればと思います。 この記事の目的まず、この記事を公開した目的は「他のクリエイターの人に同じ経験をして欲しくない」という一点に尽きます。 手前味噌ではありますが、私はこれまで多くの尊敬するクリエイターの方々と同じように「良いクリエイターであろう」と腐心し、できうるかぎりの努力をしてきたつもりです。 今回の件に関しても決して私利私欲のためではなく、あくまでユーザーのためにできることを、と模索した結果でした。 それがこのような形で取り沙汰されることとなり、残念という他ありません。 忸怩たる思いではありますが、この件から何かし
【変更履歴 2018年2月15日】当初の記事タイトルは「いまなぜHTTPS化なのか? 技術者が知っておきたいSEOよりずっと大切なこと ― TLSの歴史と技術背景」でしたが、現行のものに変更しました。現在GoogleではWebサイトのHTTPS対応と検索結果の関係を強調しておらず、本記事の趣旨の一つにも本来は独立した問題であるSEOとHTTPS化を関連付けるという根強い誤解を解くことがありますが、当初のタイトルではかえってSEOとHTTPSを関連付けて読まれるおそれがあり、また同様の指摘もいただいたことから変更いたしました。 HTTPとHTTPSは、共にTCP通信上で動作します。したがって、いずれもTCPハンドシェイクで通信を開始します。 HTTP通信の場合には、このTCPハンドシェイク直後に、HTTPリクエストとレスポンスのやり取りが始まります。このHTTPのやり取りは平文通信であり、途
皆さん、プライベートで何か開発していますか?「何か作りたい」という気持ちはあるものの、いまひとつ何から始めたらいいのか分からず、動けないままの人も多いと思います。 そんな皆さんのために、仕事以外にも休日に個人で気軽に何かを作ってみよう! という企画をスタートします。今回は、OSをインストールしたてのクラウドサーバを、プログラムが実行できるWebサーバとして動かすまでの手順を解説します。 個人で開発するときの実行環境を選ぶ 個人開発ならばクラウドがおすすめ IaaS(Infrastructure as a Service) PaaS(Platform as a Service) SaaS(Software as a Service) クラウドサービスの選び方 IaaSのサービスを選んで、サーバを構築しよう サービスを選ぶ際にチェックしたいポイント IaaSを提供しているサービスの例 アカウン
Codaは終売しました。 サポートやプラグインのご入手などはライブラリをご参照ください。 他社製のCodaはこちら。 ...まったく新しい、Macにネイティブなウェブコードエディタの誕生です!
Shibuya.XSS テクニカルトーク#1 : ATND に参加してきたので、その時のメモ。 Shibuya.XSS Shibuya.XSSまとめ – Togetter DOM Based XSSの傾向と対策 – mala Shibuya.XSSで発表してきました – 金利0無利息キャッシング – キャッシングできます – subtech 機械的なスキャンで見つけづらいXSS location.hash経由で発火が多い、 サーバ側にアクセスログが残りづらい ビーコンでlocation.hashを記録する事も可能だけど、実行順序で潰される事がある location.hashでの問題 XHR2 どんな時に見つけにくい パラメーターをパースして利用してる場合 ソースを読まないと見つけにくい。 難読化されてるとしんどい レガシーコード どうするのがいいのだろうか バリデーション? バリデーション
- WinMirror - 任意のアプリケーションのウィンドウやデスクトップをミラーリングして表示できます。 解説: オンサイトでの登壇で返しのモニターがなくてもデモをやりやすくするツールを作った - SSTエンジニアブログ - 音声字幕機能付きのWebカメラ - Web Audio APIを使ってマイク入力をスピーカーから出力 - LTタイマー - JavaScriptセキュリティの基礎知識:連載|gihyo.jp … 技術評論社 - HTML5時代の「新しいセキュリティ・エチケット」- @IT - 教科書に載らないWebアプリケーションセキュリティ - @IT - 連載:本当は怖い文字コードの話|gihyo.jp … 技術評論社 - JSF*ck - encode JavaScript with only 6 letters - []()!+ (broken) JSF*ck demo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く