並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1169件

新着順 人気順

JavaScriptの検索結果1 - 40 件 / 1169件

  • Webサービス公開前のチェックリスト

    個人的に「Webサービスの公開前チェックリスト」を作っていたのですが、けっこう育ってきたので公開します。このリストは、過去に自分がミスしたときや、情報収集する中で「明日は我が身…」と思ったときなどに個人的にメモしてきたものをまとめた内容になります。 セキュリティ 認証に関わるCookieの属性 HttpOnly属性が設定されていること XSSの緩和策 SameSite属性がLaxもしくはStrictになっていること 主にCSRF対策のため。Laxの場合、GETリクエストで更新処理を行っているエンドポイントがないか合わせて確認 Secure属性が設定されていること HTTPS通信でのみCookieが送られるように Domain属性が適切に設定されていること サブドメインにもCookieが送られる設定の場合、他のサブドメインのサイトに脆弱性があるとそこからインシデントに繋がるリスクを理解してお

      Webサービス公開前のチェックリスト
    • 知っておくと仕事が捗る便利ツール17選 - Qiita

      はじめに 知っておくと仕事が捗るブラウザ上で動く超便利なツールを17個集めました。 Squoosh Googleが開発した画像変換・圧縮用のWebサービス。 プレビュー画面で変換前後の画質をリアルタイムで確認しながら圧縮設定を調整することができる。 Documatic Documaticは、プロジェクトドキュメントの開発プロセスを削減するためのツール。API リファレンスからユーザー ガイドまで、コード ベースを簡単に文書化できる柔軟なテンプレートとユーザーフレンドリーな編集ツールを提供する。 transform jsonからyamlの形式に変換したい等、あらゆるデータ形式から別の形式に変換するサービス。 jsonからyml、htmxからjsxへの変形、jsonやGraphQLのIDLからTypeScriptのinterfaceまでも、ブラウザ上で生成することができる。 Roadmap.s

        知っておくと仕事が捗る便利ツール17選 - Qiita
      • 徳丸さん、こんにちは。 読売のような大手メディアのサイトでもサポート詐欺の偽警告が表示されるようになってしまいましたし、今の時代は広告ブロッカーが必須と考えたほうが安全なのでしょうか? | mond

        徳丸さん、こんにちは。 読売のような大手メディアのサイトでもサポート詐欺の偽警告が表示されるようになってしまいましたし、今の時代は広告ブロッカーが必須と考えたほうが安全なのでしょうか? 徳丸が書いていないことを質問いただくことが時々ありますが、私が書いてないのは書きたくない理由があるから(単にめんどうくさいも含む)です。ですが、せっかく質問いただいたので、思うところを書いてみようと思います。 まず、私自身は広告ブロッカーを使っていないです。その理由は、広告ブロッカーには危険なものがある(原理的にあり得るし、過去にあった)からです。過去には、広告ブロッカーが元の開発者から売却され、マルウェア化した例が複数あります。具体例は示しませんが、検索するとすぐに見つけられると思います。 広告ブロッカーがマルウェア化すると、これらはブラウザアドオンの形で動くため、非常に強い権限があり、すべてのサイトの情

          徳丸さん、こんにちは。 読売のような大手メディアのサイトでもサポート詐欺の偽警告が表示されるようになってしまいましたし、今の時代は広告ブロッカーが必須と考えたほうが安全なのでしょうか? | mond
        • ブラウザ開発者ツールのネットワークタブに表示されない情報送信手法 - Qiita

          はじめに はじめまして、セキュリティエンジニアのSatoki (@satoki00) です。今回はブラウザの開発者ツールのネットワークタブから隠れて、Webサイト内の情報を送信する手法をまとめます。所謂Exfiltrationというやつです。中にはCSPの制限をBypassするために用いられるテクニックもあります。CTFなどで安全に使ってください。 前提 発端はWeb上でテキストの文字数をカウントできるサイトが閉鎖する際の話です。カウント対象のテキストデータがサイト運営 (やサイトを改竄した攻撃者) に盗み取られていないかという議論が巻き起こっていました。「盗み取られていない」側の主張は、ブラウザの開発者ツールのネットワークタブにリクエストを送信した形跡がないというものでした。ここで ブラウザの開発者ツールのネットワークタブに表示がなければ外部へデータを送信していないのか? といった疑問が

            ブラウザ開発者ツールのネットワークタブに表示されない情報送信手法 - Qiita
          • しょーもない事務作業を快適にするためのツールを作りたいとき 〜セキュア意識の高い会社編〜 - Qiita

            Pythonインストールできないんだけど! なんかいつもこれ同じ作業してるよな、自動化出来ないかな…よしやったる! ↓ みんなー!こんなツール作ったよー、使ってみてー! ↓ そして起こる「ちょっと、俺、.pyとかいう拡張子使えないんだけど」の声。 会社のPCって外部のアクセス禁止だったり新規ソフトウェアのインストール制限があったりと、色々制約がありますよね。この制約のせいで、作ったはいいが使えなかった、みたいな理不尽なハマり方したり、一方で試してみたら意外とこれ動いちゃうんだ!?みたいなこともあったりするので、ここではそんなずる賢い業務改善を必死に考える社員のみんなに、どれでやれば利用可能なツールづくりができるのか、その選択肢を載せていくよ。 Python + exe化ツール(Pyinstaller) やっぱ中身含めてファイル操作系でちょこちょこやるならPythonが楽だよね。ただ、Pyt

              しょーもない事務作業を快適にするためのツールを作りたいとき 〜セキュア意識の高い会社編〜 - Qiita
            • 唐突に使っているChrome拡張を紹介 - laiso

              ページ閲覧 AutoPagerize chromewebstore.google.com ページネーションされたウェブページを自動で読み込み続けます。無かったら違和感あるレベルで日常になっています。 daily.dev chromewebstore.google.com 開発者向けニュースを空タブに表示します。 タブを開くときに自然に視界に入るのに加えて、検索で「過去話題になったもの」から探したりします(はてなブックマークやHacker Newsも似た用途で使います) ホームタブとは別です。ホームはperplexity.aiにしてます。 Google Scholar PDF Reader chromewebstore.google.com 標準のPDFビュワーを科学論文を読みやすく強化します。参考文献の追跡や引用、ジャンプ機能を提供します。ついでに官庁資料やクリプト系のホワイトペーパーなど

                唐突に使っているChrome拡張を紹介 - laiso
              • 「GitHub難しい!!」を30分で解決するサイトを共同開発しました🚀|kazzyfrog

                はじめに先日、初心者でも簡単に参加できる GitHub チュートリアル 『First Contributions JA』を共同開発しました! 振り返りも兼ねて、プロジェクトの背景や使用技術について、紹介していきます。 ▼ GitHub のリンク: なぜ First Contributions JA を構築したのか?さて、First Contributions JA には、次のような特徴があります: - React/ Next.js で構築されたWebサイト - 初心者向けのGitHubチュートリアル - オープンソースのプロジェクト 上記を踏まえて、プロジェクトの経緯は、主に2つあります。 (技術スタックは、後で詳しく説明します) 1. JavaScript/ React 学習コミュニティで、共同開発を提案した!以前、 「JavaScript/ React を学習するコミュニティを、期間限

                  「GitHub難しい!!」を30分で解決するサイトを共同開発しました🚀|kazzyfrog
                • 生成AIに疑似コードで指示すると自然言語よりも効率的にプログラムが生成できるというアイデアから生まれた、生成AI用の疑似言語「SudoLang」

                  生成AIに疑似コードで指示すると自然言語よりも効率的にプログラムが生成できるというアイデアから生まれた、生成AI用の疑似言語「SudoLang」 ChatGPTやCopilotなどの生成AIを用いてコードを生成しようとすると、多くの場合プロンプトを自然言語で書くことになるでしょう。 しかし自然言語で的確にプログラムの内容を表現するのは、ときに面倒だったり、あいまいさを排除することが難しかったりします。 一方で、プログラマが自分でコードを書こうとするとき、あるいは他のプログラマとコードの内容を議論するときに、自然言語をプログラミング言語のような構文で書く、いわゆる「擬似コード」を使うことがよくあります。 例えばこんな風に自然言語をコードっぽくホワイトボードに書いたことのあるプログラマの方は多いのではないでしょうか? 入力値を処理するための関数(A、B){ Aは数字かどうか確認する Bは日付か

                    生成AIに疑似コードで指示すると自然言語よりも効率的にプログラムが生成できるというアイデアから生まれた、生成AI用の疑似言語「SudoLang」
                  • 【2024年最新版】0からReactを勉強するならこのロードマップに従え! - Qiita

                    はじめに こんにちは@Sicut_study (Watanabe Jin)です。 去年の10月頃にReactのロードマップを投稿しておかげさまで1000いいねもすぐそこになりました そこから私自身も状況がかなり変わり、大好きなReactを使ってプログラミングを教えるスクールを運営しております。 エンジニアになりたい完全未経験の方や、すでにエンジニアだけどもっと自由にプログラミングができるようになりたい人をたくさん教えてきました。 👇メンバーの記事はこちらにあります その中である程度この流れで学習をすすめていけば1-2ヶ月程度でReactで自由にサービスを作れるレベルに再現性をもってレベルアップすることができると確信がもてたので、 実際にやっているカリキュラム(React部分)をすべて紹介します ロードマップは完全未経験でもできるようなものになっていますのでわかる箇所は飛ばしてもOKです。

                      【2024年最新版】0からReactを勉強するならこのロードマップに従え! - Qiita
                    • 【怖い】経緯を読んだらガチの国際クライムサスペンスだった→フリーのエンジニアを狙ったサイバー攻撃が増加中

                      🍪🍺 @unplannedsleep 国際犯罪の被害に遭いかけたので注意喚起です! 海外サイト(WeWorkRemotely)で良さげな案件を探していて、出会ったクライアントとビデオ通話した後「早速今の実装見てみてほしい」という話になりました。もう遅いし明日にして今日は飲むか〜と思っていたら「すぐチェックしてほしい」という連絡が pic.twitter.com/bRhXJkFEGX 🍪🍺 @unplannedsleep しょうがないにゃあ…と思いつつまずは親の顔より見た setupTest.js を見るとそこには変わり果てた姿が…… 偶然昼までMarkdown書き物をしてたためVSCodeの折り返しを有効にしていたので気づきましたが、普段無効にしてるときだったらこんなふうに見えるので気づくのは難しそう pic.twitter.com/fbk3og3Dml

                        【怖い】経緯を読んだらガチの国際クライムサスペンスだった→フリーのエンジニアを狙ったサイバー攻撃が増加中
                      • トロイの木馬化された「jQuery」がnpmやGitHubで拡散

                        海外のセキュリティ企業「Phylum」はトロイの木馬化された「jQuery」がnpmやGitHub、jsDelivr のCDNホストで拡散している事を指摘しました。 「jQuery」を悪用したサプライチェーン攻撃の概要 Phylumは 2024 年 5 月 26 日以来、トロイの木馬化された jQuery のバージョンを悪用する執拗なサプライ チェーン攻撃者を監視しており、最初に npm でこのjQuery を悪用する亜種を発見しました。 そこでは、1 か月にわたって数十のパッケージで侵害されたバージョンが公開されていました。 調査の結果、GitHubや、jsDelivr の CDN ホスト リソースでも、トロイの木馬化された jQuery のインスタンスを発見しました。 なお、今回解説されている内容は正規の「jQuery」へ今回のトロイの木馬が紛れ込んでいるのではなく、 悪意のあるユーザ

                          トロイの木馬化された「jQuery」がnpmやGitHubで拡散
                        • Poku

                          🐷 What's Poku?A cross-platform test runner that brings the JavaScript essence back to testing. ⚡️ Quick Tutorials

                            Poku
                          • OAuthの仕組みを説明してHonoで実装してみる

                            はじめに はじめまして!レバテック開発部でレバテックプラットフォーム開発チームに所属している塚原です。 直近に認証・認可周りの改修を予定しているため、チーム内で認証・認可の基礎からOAuth・OpenID Connectの仕組みを学ぶ勉強会を実施しました。今回はそこで学んだことのうち、認証・認可の基礎とOAuthの仕組みをまとめます。また、WebフレームワークとしてHono、JavaScriptランタイムとしてBunを使って、OAuthクライアントを実装してみます。 対象読者 認証と認可の違いってなんだっけ...?という人 Basic認証やDigest認証てなんだっけ...?という人 OAuthはライブラリ使って実装してるから仕組みよくわかっていない...という人 OAuthのクライアントの実装って何をすればいいんだっけ...?という人 認証・認可の基礎 2024/7/18 追記 こちらで

                              OAuthの仕組みを説明してHonoで実装してみる
                            • Webエンジニアの学習ロードマップが知れるサイト - Qiita

                              エンジニアのみなさま、日々の学習本当にお疲れ様です! また本記事まで足を運んでいただき本当に感謝です。 約2分程度で読めるので最後まで読んでもらえると幸いです。 はじめに 「Webエンジニアを目指したいが、何から手をつけていいか分からない」 「いろんな人が学習ロードマップの情報提供をしているが、どれに手をつけるか判断に迷う」 こんな悩みを抱えている方の一助になれば幸いです...! 結論 こちらのサイトになります。 自分が学習したい分野を選択すると、その分野のロードマップが書かれています。 最近では「言語専用」のロードマップも書かれているため、かなり充実したサイトになってきた印象です。 それでは、試しに「Backend」のロードマップを見てみましょう。 学習ロードマップ|Backend こんな感じです。 黄色塗りのフォームが「仕組み」や「概念」が書かれたもので必ずチェックしたい内容になります

                                Webエンジニアの学習ロードマップが知れるサイト - Qiita
                              • 2024年のRailsと自由について考える

                                えにしテック15周年記念カンファレンスの発表資料です。 https://enishi-tech-15th-anniv-conf.peatix.com/ 資料中で参照しているURLは以下です: https://github.com/rails/rails/milestone/87 https:…

                                  2024年のRailsと自由について考える
                                • CSSのclass名やJavaScriptの関数名を付けるときに役立つ単語リストのまとめ -Classnames

                                  CSSのclass名やJavaScriptの関数名を付けるときに悩んだり、ネタ切れになったことはありませんか? BEM, OOCSS, SMACSSで命名する場合はそれを使用すればよいのですが、特定のテーマ別にグループ化された単語のリストが必要になるときもあります。そんなときに役立つ単語リストをまとめたClassnamesを紹介します。 Classnames Classnamesは、CSSのclass名やJavaScriptの関数名を付けるときに便利な単語をリスト化したものです。MITライセンスで、商用プロジェクトでも無料で利用できます。

                                    CSSのclass名やJavaScriptの関数名を付けるときに役立つ単語リストのまとめ -Classnames
                                  • JavaScriptライブラリ「Polyfill.io」にマルウェアが混入され10万以上のサイトに影響

                                    ウェブブラウザのバージョン間の違いを無効化するJavaScriptライブラリ「Polyfill.io」が、2024年2月のプロジェクトオーナー変更後、マルウェアが混入されてサプライチェーン攻撃に利用され、10万以上のサイトに影響が出ています。 Polyfill supply chain attack hits 100K+ sites https://sansec.io/research/polyfill-supply-chain-attack 「Polyfill.io(polyfill.js)」はアンドリュー・ベッツ氏が開発したJavaScriptライブラリです。ウェブブラウザのバージョン間で機能の違いがあると開発時に苦労しますが、Polyfill.ioを利用すれば、新しいバージョンにしかない機能を古いバージョンで利用できるようになるため、バージョンの違いを気にすることなく開発を進めること

                                      JavaScriptライブラリ「Polyfill.io」にマルウェアが混入され10万以上のサイトに影響
                                    • 結局 useEffect はいつ使えばいいのか

                                      useEffectはReactの中でも扱いの難しいフックとして知られています。Reactで開発を行う中でuseEffectを検討するタイミングや適切な使い方について悩んだ経験のある方も多いのではないでしょうか。 本記事では、useEffectの目的を把握し、どのような場合にuseEffectの使用を検討すべきかについて考えていきたいと思います。 コンポーネントの純粋性と副作用 まずuseEffectについて考える前に、コンポーネントの純粋性について理解する必要があります。Reactにおいて純粋性は重要な概念の1つです。 前提として、Reactではすべてのコンポーネントが純関数あることを仮定しています。 Reactは、あなたが書くすべてのコンポーネントが純関数であると仮定しています。 参照:https://ja.react.dev/learn/keeping-components-pure#

                                        結局 useEffect はいつ使えばいいのか
                                      • チュートリアル: Yjs, valtio, React で実現する共同編集アプリケーション - ROUTE06 Tech Blog

                                        Yjsは、リアルタイム共同編集を実現するためのアルゴリズムとデータ構造を提供するフレームワークです。Notion や Figma のように、1 つのコンテンツを複数人で同時に更新する体験を提供することができます。 Y.Map, Y.Array, Y.Text といった共有データ型を提供し、それらは JavaScript の Map や Array のように利用できます。さらにそのデータに対する変更は他のクライアントに自動的に配布・同期されます。 Yjs は Conflict-free Replicated Data Types (CRDT) と呼ばれるアルゴリズムの実装であり、複数人が同時にデータを操作してもコンフリクトが発生せず、最終的に全てのクライアントが同じ状態に到達するように設計されています。 クイックスタート Y.Map がクライアント間で自動的に同期されるコード例を見てみましょ

                                          チュートリアル: Yjs, valtio, React で実現する共同編集アプリケーション - ROUTE06 Tech Blog
                                        • Google広告費の影響を受けない新たなWebブラウザが必要だと、スクラッチからWebブラウザを開発する「Ladybird Browser Initiative」、元GitHub創業者らが立ち上げ

                                          Google広告費の影響を受けない新たなWebブラウザが必要だと、スクラッチからWebブラウザを開発する「Ladybird Browser Initiative」、元GitHub創業者らが立ち上げ スクラッチから新たにWebブラウザの開発をオープンソースとして行う非営利団体「Ladybird Browser Initiative」の設立が発表されました。 Ladybird Browser Initiativeは、Webブラウザ「Ladybird」およびそのためのレンダリングエンジン「LibWeb」、JavaScriptエンジン「LibJS」などの開発を行います。 Web開発の資金源が広告であるべきではない Ladybird Browser Initiativeを設立したのは、元GitHub創業者兼CEOのChris Wanstrath氏と、NokiaおよびAppleでWebKit開発チーム

                                            Google広告費の影響を受けない新たなWebブラウザが必要だと、スクラッチからWebブラウザを開発する「Ladybird Browser Initiative」、元GitHub創業者らが立ち上げ
                                          • 『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream

                                            Rustで作るプログラミング言語という書籍が先日発売されました。簡単なプログラミング言語を作ってバイトコードに変換して実行したりネイティブコードに変換して実行してみよう、という本で、大変面白く読みました。最終的にまあまあ本格的な言語になるので、これを元にするとわりとちゃんとした言語を作れそうです。 この書籍で最終的に作られる言語はこちら: GitHub - msakuta/ruscal: Programming language implementation learning project ちょうど私も、以前から構想していた言語があったので、ちょっと作ってみました。というのも、TypeScriptを設定記述言語としてさまざまなプログラミング言語から使えると便利ではないかとずっと思っていたのです。 この設定言語で複雑なことができる必要はなく、最終的にはJSONに準ずるデータ構造になればよい

                                              『Rustで作るプログラミング言語』を読んで、かねてから構想していた自作言語を形にした - Islands in the byte stream
                                            • 【T3 Stack】フロントエンド・バックエンドTypescript開発入門

                                              はじめに フロントエンドもバックエンドもTypescriptで書きたい!ということで、T3 Stack(T3スタック)について調べてみました。 T3 Stackを利用したプロジェクトを作成するためのCLIツールcreate-t3-appが用意されており、簡単に雛形プロジェクトが作れるため、実際に使ってみました。 この記事は以下の内容をメインに紹介します。 create-t3-appの環境構築手順 雛形プロジェクトの解説(特にtRPCを用いたAPIの呼び出し方法について) T3 Stackとは T3 Stackとはsimplicity(簡潔さ)、modularity(モジュール性)、full-stack type safety(フルスタックの型安全)を追求した思想に焦点を当てています。 そしてそれらを実現するために以下6つの技術スタックが採用されています。 ✅ Next.js ✅ tRPC

                                                【T3 Stack】フロントエンド・バックエンドTypescript開発入門
                                              • MySQL 9.0登場。 JavaScriptストアドプログラムが利用可能に、ベクトル型もサポート

                                                オラクルはリレーショナルデータベース「MySQL」の新バージョンとなる「MySQL 9.0」をリリースしました。 MySQLは現在、数カ月ごとにリリースされ積極的に新機能が追加されるイノベーションリリース(Innovation Release)と、長期で安定して利用されることを想定して2年ごとにリリースされる長期サポート(LTS:Long Term Support)版の2つに分かれてリリースされています。 現在のLTS版は今年(2024年)4月に登場したMySQL 8.4です。 そして今回リリースされたMySQL 9.0はイノベーションリリースに該当します。最新機能をいちはやく試したい開発者やユーザーのためのリリースです。 MySQL 9.0の主な新機能 MySQL 9.0のドキュメント「What Is New in MySQL 9.0」から、新機能「JavaScriptストアドプログラム

                                                  MySQL 9.0登場。 JavaScriptストアドプログラムが利用可能に、ベクトル型もサポート
                                                • Tailwind CSS初心者が絶対ハマる落とし穴

                                                  ムーザルちゃんねるのzaruです。今回はムーさんと、Tailwind CSS初心者が絶対ハマる落とし穴について話しました。Tailwind CSSを使い始めた人、あるいはまだ使ったことがない人には是非見てほしいです。すでにこの落とし穴から抜け出している人はあるよねーって感じで眺めてください。 すごいサムネイル… ハマるポイント クラス名の動的指定 クラス名のコンフリクト クラス名の動的指定 例えば、通常は背景を青だけど、エラーの時は赤くしたい。そんなときにJavaScriptでクラス名を組み立てると以下のように書きがちです。bg- と -500 は固定なので変化する red blue だけ変数で組み立てるやり方です。 const color = error ? 'red' : 'blue'; <div class={`bg-${color}-500`}></div>

                                                    Tailwind CSS初心者が絶対ハマる落とし穴
                                                  • Node.jsでTypeScriptのコードを実行できるようになるかも - hiroppy's site

                                                    module: add --experimental-strip-types by marco-ippolito · Pull Request #53725 · nodejs/node It is possible to execute TypeScript files by setting the experimental flag --experimental-strip-typ... 💁‍♀️ まだマージされてない点に注意してください --experimental-strip-typesというフラグを実行時に付けることにより、Node.jsでTypeScriptのコードを実行できるようになるPRが出てきました。 背景 TC39でも型注釈の話題(議事録を読むとブラウザとの兼ね合いもあり道のりは長そう)が存在するほどJSのコードにおいて、型は当たり前となっています。 Node.jsと同

                                                      Node.jsでTypeScriptのコードを実行できるようになるかも - hiroppy's site
                                                    • HTMX入門【はじめからそうやって教えてくれればいいのに!】

                                                      はじめに この記事の内容は、以下の動画でも解説しています。アニメーションでわかりやすくなっているので、ぜひ見てみてください。他にもWebに関する解説動画を投稿しているので、気になる人はチャンネル登録よろしくお願いします! HTMXとは? HTMX とは、一言で言うと、JavaScriptを書かずに動的なページを簡単に作成できるライブラリのことです。 htmx is a library that allows you to access modern browser features directly from HTML, rather than using javascript. (訳)htmx は、JavaScript を使用するのではなく、HTML から最新のブラウザー機能に直接アクセスできるようにするライブラリです。 </> htmx ~ Documentation ...と言っても

                                                        HTMX入門【はじめからそうやって教えてくれればいいのに!】
                                                      • 知らないとあぶない、Next.js セキュリティばなし

                                                        ムーザルちゃんねるのムーです。今回は zaru さんと、Next.js のセキュリティについて話しました。 セキュリティについては様々あると思いますが、今回は以下の3点をピックアップして話しました。 Client Components の Props から露出する Server Actions の引数に注意 認証チェックをやってはいけない場所、やって良い場所 これらは、Next.js 入門者がうっかりとやってしまうリスクがあるものです。 このような罠は、アプリケーション自体は正常に動くので、知らないうちにはまってしまいますし、自力で気づくのも難しいものです。もしも知らないものがあれば、ぜひご確認ください。 楽しくて、安全な Next.js 生活をお送りください! Client Components の Props から露出する これは、シンプルで当たり前といえば当たり前ですが、Client

                                                          知らないとあぶない、Next.js セキュリティばなし
                                                        • 【JavaScript】ネイティブで集合演算できるようになった - Qiita

                                                          JavaScriptにはだいぶ前からSetオブジェクトがありましたが、何故か集合演算は全く定義されておらず自力で実装しなければなりませんでした。 その後、まあ不便だねってことでSet Methods for JavaScriptというproposalが提出されました。 実装は珍しくSafariが最も早く、2023/09/18のSafari17から対応しました。 その後2024/02/21にChrome122、そして2024/06/11にFirefox127で実装されたことにより、主要全ブラウザで集合演算が使用可能になりました。 複数環境で実装されたことから、無事ES2025としてStage4、つまり上がりになりました。 ということで使い方を紹介するよ。 Set.prototype.intersection() 要素と引数の、両方に含まれる値を返します。 new Set([1, 2, 3,

                                                            【JavaScript】ネイティブで集合演算できるようになった - Qiita
                                                          • Polyfill supply chain attack hits 100K+ sites

                                                            by Sansec Forensics Team Published in Threat Research − June 25, 2024 The new Chinese owner of the popular Polyfill JS project injects malware into more than 100 thousand sites. Update June 28th: We are flagging more domains that have been used by the same actor to spread malware since at least June 2023: bootcdn.net, bootcss.com, staticfile.net, staticfile.org, unionadjs.com, xhsbpza.com, union.m

                                                              Polyfill supply chain attack hits 100K+ sites
                                                            • 国産ヘッドレスCMSとして注目されているmicroCMSとNext.jsを使用したWebサイトのモダンな制作方法を学べる解説書 -モダンWebサイト制作入門

                                                              ※本ページは、アフィリエイト広告を利用しています。 国産ヘッドレスCMSとして注目されている「microCMS」とJavaScriptフレームワーク「Next.js」を使ったモダンWebサイトの制作について初心者でも分かりやすく解説した入門書を紹介します。 当ブログはWordPressですが、ここ数年ヘッドレスCMSに注目が集まってきています。ヘッドレスCMSって何?という人からNext.jsは使ったことがないという人でも本書でしっかりと学ぶことができます。 著者陣は非常に豪華で、microCMSの開発陣です。開発者と聞くと開発側の目線なのでは?と心配になるかもしれませんが、実装者目線のステップバイステップで架空のコーポーレートサイトを実装しながらmicroCMSとNext.jsを用いたWebサイトのモダンな制作方法を学べます。 WordPressは使ったことがあるけどヘッドレスCMSは初

                                                                国産ヘッドレスCMSとして注目されているmicroCMSとNext.jsを使用したWebサイトのモダンな制作方法を学べる解説書 -モダンWebサイト制作入門
                                                              • Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表

                                                                Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表 GoogleはWebブラウザ上でスプレッドシート機能を提供する「Google Sheets」の計算エンジンの性能をWebAssembyで実装し、従来のJavaScriptによる実装と比較して性能を2倍に向上させたことを明らかにしました。 これにより単純なSUM計算から複雑なクエリまで、シート上でのあらゆる計算を始め、ピボットテーブルの作成、条件付きフォーマットなどさまざまな処理が高速になるとのことです。 この性能向上は、JavaScriptで構築されていた計算エンジンをWebAssemblyに最適化したことで実現していると説明されており、そのためにWebAssemby GC(ガベージコレクション)機能を用いたとのことです。 そのため現時点ではChromeとMicrosoft

                                                                  Google、Google Sheetsの計算エンジンをWebAssemblyに最適化し、2倍の性能を実現したと発表
                                                                • JavaScriptで100行で作る!数式言語のインタプリタ

                                                                  皆さんはプログラミング言語を作ったことがあるでしょうか? おそらく大抵の方は「ない」というのが正直なところなのではないかと思います。背景には、おそらく「プログラミング言語を作るって難しそう」という先入観があるのではと筆者は踏んでいます。 プログラミング言語とは、コンピューターに指示を与えるための特別な言語です。私たちが日常で使う言語と同じように、プログラミング言語にも文法やルールがあります。そして、この言語を理解し実行するのが「処理系」と呼ばれるプログラムです。 しかし、実はプログラミング言語の処理系(インタプリタ)を作ることは非常に簡単なことです。小さなOSを作ることに比べても、ちゃんと動くWebサービスを作ることに比べても本当に簡単です。 というわけで、この記事では「プログラミング言語」を作るための導入として「数式言語」のインタプリタを作ってみます。数式言語とは、数学の式を扱う非常にシ

                                                                    JavaScriptで100行で作る!数式言語のインタプリタ
                                                                  • [K, U] extends [U, K] ← ナニコレ

                                                                    タイトルは初見時の自分の気持ちでした。内容は結構あっさりしたもので、5分あれば読めると思います。 「あーなるほどね」となった方はわざわざ読む必要がない記事っぽいです。 型の互換性チェック 一言で言ってしまえばそういうことです。KとUが互いに置き換え可能かどうかを確認しています。 これがKとUのままだと分かりづらいのですが、適当な型に置き換えてみると分かりやすいです。 type Test1 = [1, 1] extends [1, 1] ? true : false; // true type Test2 = [number, number] extends [number, number] ? true : false; // true type Test3 = [string, string] extends [string, string] ? true : false; // tru

                                                                      [K, U] extends [U, K] ← ナニコレ
                                                                    • Python製静的サイトジェネレーターSphinxでWebサイトを構築して公開 | gihyo.jp

                                                                      鈴木たかのり(@takanory)です。今月の「Python Monthly Topics」では、Python製の静的サイトジェネレーターSphinxを使用してWebサイトを構築し、テーマを適用、外部へ公開する流れについて紹介します。後半ではSphinxの便利な拡張機能を紹介し、Webサイトをより便利にしていきます。 Markdownでドキュメントを書くだけで、きれいなWebサイトが簡単に公開できるので、ライブラリのドキュメントなどでもよく使われています。 Sphinxとは SphinxはPython製の静的サイトジェネレーターです。静的サイトジェネレーターとは、Markdown等の軽量マークアップのテキストファイルから、静的なWebサイトを生成するアプリケーションのことを言います。Python製の静的サイトジェネレーターにはSphinxを含め以下のツールなどがあります。 Sphinx:h

                                                                        Python製静的サイトジェネレーターSphinxでWebサイトを構築して公開 | gihyo.jp
                                                                      • Phoenix | Phoenix

                                                                        A lightweight macOS window and app manager scriptable with JavaScript. You can also easily use languages which compile to JavaScript such as TypeScript. Phoenix aims for efficiency and a very small footprint. If you like the idea of scripting your own window or app management toolkit with JavaScript, Phoenix is probably going to give you the things you want. With Phoenix you can bind keyboard shor

                                                                        • ミニマムな React Web アプリケーションの技術スタックを大公開! - inSmartBank

                                                                          はじめに こんにちは。サーバーサイドエンジニアの mokuo です。 最近、ミニマムな React アプリを実装する機会がありました。 社内のメンバーにアドバイスをもらいながら、今(2024年前半) React アプリをミニマムに作るならこんな感じかな、という構成になった気がするので、ご紹介したいと思います。 実例の1つとして参考にしていただけますと、幸いです。 はじめに 本文 📝 機能要件 ⚒️ 採用したツール (npm モジュール) 📁 ディレクトリ構成 👨‍💻 プロトタイピングの実施 🍩 おまけ コンポーネント設計について フロントエンドに DDD のエッセンスを取り入れてみたい おわりに 本文 📝 機能要件 社内の限られた CS メンバーのみが利用する、管理画面を開発しました。 バックエンドは Golang で実装される API サーバーで、認証機能以外だと、2つの機能

                                                                            ミニマムな React Web アプリケーションの技術スタックを大公開! - inSmartBank
                                                                          • トロイの木馬化したjQueryがGitHubやCDN経由で拡散 米セキュリティ企業が警告

                                                                            米セキュリティ企業のPhylumは7月3日(現地時間)、JavasScriptライブラリ「jQuery」の特定バージョンがトロイの木馬化され、GitHubなどで拡散していると警告した。 同社は5月26日、パッケージ管理システム「npm」でトロイの木馬化されたjQueryを確認。少なくとも1カ月にわたって、数十のパッケージで“汚染”されたバージョンが公開されているのを確かめた。さらに、GitHubやCDNサービス「jsDelivr」でも拡散していることが分かったとしている。 対象のパッケージには、悪意あるコードが追加されたjQueryのコピーが含まれていた。汚染されたバージョンはWebサイトのフォームデータを抽出し、外部に送信するという。 Phylumは「マルウェアを作動させるために必要な条件は限られているが、パッケージが広く配布されていることから、潜在的な影響は広く、多くの開発者に影響を与

                                                                              トロイの木馬化したjQueryがGitHubやCDN経由で拡散 米セキュリティ企業が警告
                                                                            • GPT-3.5ベースのChatGPTのコーディング能力は「古い問題には有効も新しい問題では困難に直面する」ことが明らかに

                                                                              GoogleやMistral AIなどからプログラミングに特化したAIツールが登場しており、大手テクノロジー企業のCEOが「AIがコードを書くのでもうプログラミングを学ぶ必要はない」と発言するなど、AIによるプログラミングは注目を集めています。そんなAIによるプログラミング能力を分析した研究が公開されており、AIモデルがトレーニングされたタイミングによっては困難に直面することがあることが判明しました。 No Need to Lift a Finger Anymore? Assessing the Quality of Code Generation by ChatGPT | IEEE Journals & Magazine | IEEE Xplore https://ieeexplore.ieee.org/document/10507163 ChatGPT Code: Is the AI

                                                                                GPT-3.5ベースのChatGPTのコーディング能力は「古い問題には有効も新しい問題では困難に直面する」ことが明らかに
                                                                              • 拡張機能で Chrome DevTools に独自パネルを追加してトラブルシュートに役立てよう - Techtouch Developers Blog

                                                                                こんにちは、カスタマーサクセスエンジニア(CSE)の komo です。 この記事では CSE の主業務の1つにテクニカルサポートがありまして、それを効率化するために作ったツールの話をします。 具体的には Google Chrome 拡張機能で DevTools に独自パネルを追加して、トラブルシュートに有用な情報を表示させるツールです。実物をそのまま紹介はできないため、ひな形を別途作りました。作り方を書くので、同じようなカスタマー系エンジニアの方々に真似してもらって、役立ててもらえると嬉しいです。 ツールの説明 ひな形からの発展形 作り方 ステップ1:最小の拡張機能を作る ステップ2:パネルを追加する ステップ3:パネルに機能を追加する おまけ:動作確認・キャプチャ取得用に作ったHTMLとJSON おわりに 参考資料 ツールの説明 別途作ったひな形はこんなものです。 通信を監視して、特定の

                                                                                  拡張機能で Chrome DevTools に独自パネルを追加してトラブルシュートに役立てよう - Techtouch Developers Blog
                                                                                • polyfill.ioを使うのは危険かもしれない(危険だった) - Qiita

                                                                                  TL;DR 2024/06/26 実害が出ているようです、polyfill.ioを利用している場合は直ちに利用を止めましょう。 GIGAZINE: JavaScriptライブラリ「Polyfill.io」にマルウェアが混入され10万以上のサイトに影響 Codebook: Polyfill.io使ったサプライチェーン攻撃でサイト10万件以上に影響 polyfill.ioから配信されるスクリプトが汚染される環境下にあり、危険な可能性があります。利用している方がいらっしゃいましたら外しておくことをおすすめします。または安全なバージョンのものがCloudflareとFastlyから利用できるので、ドメインをpolyfill-fastly.netやpolyfill-fastly.ioに変更して利用しましょう。 背景 自社で使用しているマーケティングプラットフォームサービスで作成したWebページをGo

                                                                                    polyfill.ioを使うのは危険かもしれない(危険だった) - Qiita