並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 16032件

新着順 人気順

nodeの検索結果321 - 360 件 / 16032件

  • サーバサイドレンダリングの導入から生じるSSRF | セキュリティブログ | 脆弱性診断(セキュリティ診断)のGMOサイバーセキュリティ byイエラエ

    オフェンシブセキュリティ部の山崎です。サーバサイドレンダリング(SSR)の導入によってSSRFが発生する問題を見つける機会があったため、本記事では実例を交えながら紹介したいと思います。 サーバサイドレンダリング(SSR)とは? 本記事で扱うSSRとは「サーバ上でHTMLを出力すること」を指しています。ただしerbやjspのようなテンプレートからHTMLを出力するのとは異なり、一般的には以下のようにクライアントサイドレンダリング(CSR)の文脈で使われることが主です。 近年のVue.jsやReactを代表するようなWebフロントエンドフレームワークはブラウザ上で動的にDOMツリーを構築して画面を描画(CSR)するのが主流となっています。これによってページ遷移を挟まずユーザ体験のよいシングルページアプリケーション(SPA)が作ることができるというメリットがあります。 ただ、単純なSPAにはデメ

      サーバサイドレンダリングの導入から生じるSSRF | セキュリティブログ | 脆弱性診断(セキュリティ診断)のGMOサイバーセキュリティ byイエラエ
    • WebAssemblyの歴史について

      はじめに 最近、Node.jsとDenoの開発者であるRyan DahlさんがJavaScript Containersという記事を書いていることを知った。 Webとの親和性の高さがサーバーサイドで求められる中、JavaScriptがユニバーサルスクリプトとして活躍するだろう。そして、コンテナランタイムがLinuxコンテナの抽象レイヤーとしてあるように、JavaScript界隈では既存のWebAPIそのものが抽象化の手助けとなるであろう、みたいな趣旨の内容だった。 彼がChromeのV8 JavaScript Engineを使ってNode.jsを誕生させた同じ頃、JavaScriptの可能性を信じて方法を模索した人がいる。Alon Zakaiさんだ。 Alon(以降、敬称略)はWebAssemblyやその考えの元になった asm.js 、 JavaScriptコンパイラ Emscripte

        WebAssemblyの歴史について
      • Linux procfs 徹底入門

        これは Linux Advent Calendar 2019の 15 日目の記事です。procfs について勉強したことをまとめます。 検証環境CentOS 8 を利用する。 ]# cat /etc/redhat-release CentOS Linux release 8.0.1905 (Core) ]# uname -a Linux localhost.localdomain 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux procfs とは疑似ファイルシステムのひとつ。 ディスク上に実体は存在せず、メモリから情報を取得する。 カーネルだけが知っている情報 (例えばシステム全体のロードアベレージ/CPU負荷/メモリ利用状況や、プロセスごとの情報)が取得できる。

          Linux procfs 徹底入門
        • TypeScript 本体のコードを読んでみよう

          みんなお世話になっている TypeScript のコードを読みたいと思ったことはないだろうか。読んだ。 一週間ぐらいかかった。完全に読み切ったとは言えないが、概要は掴んだ。 なかなかに複雑でドメイン知識を得るのが難しかったので、これから読む人向けに、登場人物や概念を整理して紹介したい。 読んだのは 2023/6/8 時点で git clone したコード。 最初に: 自分のゴール設定 複数ファイルにまたがった参照を、 TypeScript の Language Service が提供する findReferences() や findRenameLocations(), goToDefinitions() を使って、インクリメンタルに書き換えたかった。 Terser を使うと、今触ってるオブジェクトが何で、何のメンバを書き換えたかの情報が残らない。これを TypeScript のレイヤーで

            TypeScript 本体のコードを読んでみよう
          • 今Partytownがヤバい。JavaScript Sandboxの未来はどっちだ?

            概要 Partytownというプロジェクトが先月発表された。このプロジェクト自体はWebのパフォーマンス向上(3rd Party Scriptによるブロッキングの低減)を主目的としているが、実質ブラウザにおけるJavaScript Sandboxの方向性に一石を投じるものであるとして自分は理解した。本稿ではこちらについて背景とともに解説を試みる。 WebブラウザにおけるJavaScript Sandbox JavaScriptで記述されたWebアプリケーションにおいて、たとえばプラグイン機構を実現したいなど、他Partyが提供あるいはユーザ自身が記述したスクリプトを、ホストとなるアプリケーションに影響を与えることなく実行することを許可したい、というケースはままある。2000年代に跋扈したブログパーツの類はWebコンテンツに対するプラグインの代表例とも言えるが、埋め込み先ページに対しての全権

              今Partytownがヤバい。JavaScript Sandboxの未来はどっちだ?
            • AWS、コンテナにWebアプリを置くと簡単にデプロイが完了する「App Runner」リリース。オートスケール、ロードバランス、証明書の管理などすべておまかせ

              AWS、コンテナにWebアプリを置くと簡単にデプロイが完了する「App Runner」リリース。オートスケール、ロードバランス、証明書の管理などすべておまかせ AWSは、コンテナに特化したWebアプリケーション実行環境のマネージドサービス「AWS App Runner」をリリースしました。 #AWS App Runner is a fully managed container application service that makes it easy for customers to build, deploy, and run containerized web applications and APIs without container or infrastructure experience.#Developer #CloudComputing https://t.co/eMw

                AWS、コンテナにWebアプリを置くと簡単にデプロイが完了する「App Runner」リリース。オートスケール、ロードバランス、証明書の管理などすべておまかせ
              • オーストラリアの狂犬病対策 ‐ 日本との違い - とある獣医の豪州生活Ⅱ

                度々SNS上で散見されるのが「日本は60年以上も狂犬病が発生していないのに何故イヌの狂犬病ワクチン接種が義務付けられているんだ」という議題です。中には「獣医師の利権だ」「百害あって一利なし」「海外では打ってないところもある」という論法を展開する連中も多く存在します。 特にこの『海外では打っていない』論法ですよ。 つまるところオーストラリアやニュージーランドなんですが。 もうね、日本とオーストラリアの防疫体制ってのは元々違うのだから、アホみたいなアンチワクチンの謎理論展開で毎回オーストラリアの名前を出さないで! ということを声を大きくして言いたいので、ここにブログを書きなぐり始めました。中には獣医師でも勘違いしていることが多い分野なので、長いことつらつら書きます。このブログ記事の主な使い方としては「豪州における狂犬病の歴史や対策の学習」「豪州と日本という狂犬病清浄国の大きな違い」そして「謎理

                  オーストラリアの狂犬病対策 ‐ 日本との違い - とある獣医の豪州生活Ⅱ
                • Webpack チャンク最適 テクニック - Qiita

                  ターゲット 巨大なSPAを作ってしまった人へ 巨大なSPAを作らないように気をつけたい人へ 今回はJSだけにフォーカスするが、もっというと、 超速本 を読んでください。 注意:本資料は、webpack チャンクの挙動を概念的に説明することを重視しているので、 webpack の詳細な設定や、出力ファイル名などは実際の処理と一致しない。適宜自分の手元にある設定とすり合わせるように。 昨今のJSビルド問題と、その解決のためのゴール設定 巨大なJS(+最近は in JS された各種SVGやCSS)はダウンロードだけではなく、UIスレッドのCPUをブロックする。 これはとくにCPUが貧弱な端末で体験が悪化する。そしてビルド時間で開発者体験を阻害する。 できれば webpack 推奨の 144kb 以内にしたい…が現実的に難しいので、 せめて 350kb ぐらいに抑えたい。 SPAなら (ローディン

                    Webpack チャンク最適 テクニック - Qiita
                  • めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita

                    EDIT^7: blink と box86、FEX。 EDIT^6: Unikraft 。 EDIT^5: Tilck 。 EDIT^4: コメント。gVisor はすっかり忘れていました!Linuxを拡張するためにLinuxを実装した良い例だと思います。LINE有りましたね。。 SF.netのCVSはもう死んでしまったので除外にしました。。 OSvのバイナリ互換 はPIEであることが要求なので。。といっても世間的にはもうLinux = Debian/Ubuntu で良いですかね。。表現を調整しました。 EDIT^3: Noah忘れてた! EDIT^2: Cygwinは 下書き段階で削ってしまった 。。 qemuを移植したとき に互換性がイマイチだったので。。特殊fdやprocfsの充実ぶりとかを考えると "かなりLinux" と言って良いとは思うけど、 mmap 等でLinuxとWind

                      めくるめくLinuxカーネルじゃないLinux実装の世界 - Qiita
                    • すぐにAPIを体験!public-apis 100以上のJavaScript axiosサンプル集

                      はじめに このページは、プロトアウトスタジオのAPIにつなげる授業に関連して、よりAPIの多様さ、広がりを深掘りします。 まだ、JavaScriptに慣れていなくても「なるべくシンプルにAPIを体験する」ことを目指して、 public-apis というフリーで使えるAPIを集めてリストにしているサイトから、手順が少なくAPIにつなげられるシンプルに取得できるものを中心に、直接取得できるURL・Node.js axios await/async ソースコードを一つ一つトライしています。 慣れてきたら、自分で public-apis のサイトを直接読んでみて、巡ってみましょう! APIピックアップ数 最終更新日 2020/6/8 104 個のAPIをピックアップ中! 参考資料 public-apis の豊富なAPIリストをベースにAPIつなげていきます。 ピックアップルール 手順が少なくAPI

                        すぐにAPIを体験!public-apis 100以上のJavaScript axiosサンプル集
                      • また make の話してる(2020年9月14日) - なにもわからない

                        私の大好きな Makefile の話が盛り上がっていたのでまとめました。 「やめてね。」って方はお声がけください。 同じ会社にいるけど、真逆の感想を持っている。Makefile読まないと副作用が分からないし、Rakefile/package.jsonだけで済むのに無駄に1つレイヤ増えていて、Makefileできたときからいる人は楽だけど、途中から入った人にとっては学習コストが高い。 https://t.co/EXtmI3xl72— 神速 (@sinsoku_listy) 2020年9月13日 golangでMakefileを使うのは分かる。 ただ、RubyやNode.jsのリポジトリなら $ git clone xxx $ cd xxx $ bundle install && rake もしくは npm install && npm test で環境構築ができることを期待する。— 神速 (

                          また make の話してる(2020年9月14日) - なにもわからない
                        • mouseover 中に表示される DOM のデバッグ | blog.jxck.io

                          Update 2024-03-30: Chrome 123 から "Emulate a focused page" が追加された。 これを用いれば良いため、以降の全ての方式は古くなった。 Apply other effects: enable automatic dark theme, emulate focus, and more https://developer.chrome.com/docs/devtools/rendering/apply-effects#emulate_a_focused_page マウスが乗ってないと出ない UI も、そこに Tab などでフォーカスを移し、その状態で Dev Tools の "Emulate a focused page" を有効にすれば良い。 Intro 先日、後輩が「mouseover 中にしか表示されない DOM のデバッグ」に手こずっ

                            mouseover 中に表示される DOM のデバッグ | blog.jxck.io
                          • モノレポにすべきか、レポジトリを分割すべきか

                            先日 フロントエンドの Monorepo をやめてリポジトリ分割したワケ というブログがバズっていた。そのおかげか、Twitter でもモノレポに関する言及がちょこちょこあった。一家言あるドメインなので書きたい。ただの一家言(a.k.a お気持ち)なのでぜひ皆さんの意見も聞いてみたい。 tl;dr 別に自分はどっち派とかではなく、どっちも選ぶ。強いて言うならリポジトリ分割派で、依存更新がしんどくなったら monorepo 派。 免責 モノレポに対する一家言を書きたいだけであって、内容自体はフロントエンドの Monorepo をやめてリポジトリ分割したワケ と全く関係なく、そのブログで述べられている施策については何も言及しません。ただ一つ言及するとしたら肉の部位がコードネームに採用されているのは良いと思いました。🍖🍖🍖 モノレポにしたくなる状態の前提にあるもの 前提は元記事と同じように

                              モノレポにすべきか、レポジトリを分割すべきか
                            • n8n.io 入門 : IFTTT のようなワークフローを構築しよう - kakakakakku blog

                              「n8n.io」を使うと GitHub / Slack / Google Sheets など多くのサービス(ドキュメントを見ると 240 以上もインテグレーションできる!)を組み合わせて自由に「ワークフロー」を構築できる.関連サービスで言えば IFTTT のような感じ!例えば IFTTT Pro に課金せずにセルフホスティングできたりする.今回は「n8n.io 入門」を目的として Mac で Docker を使って「n8n.io」を試す.現状だと Docker と npm (npx) で試せる.なお,SaaS として使える「n8n.cloud」もある(最近まで coming soon になっていた). n8n.io n8n.io 入門 : 完成形 今回は「GitHub リポジトリに対する Star⭐/ Unstar⭐をトリガーに Slack 通知とコマンド実行に条件分岐をするワークフロー」

                                n8n.io 入門 : IFTTT のようなワークフローを構築しよう - kakakakakku blog
                              • 分散データシステム入門の決定版『データ指向アプリケーションデザイン』をたった30分で学んでみた #DataEngineeringStudy | DevelopersIO

                                基調講演「30分でわかるデータ指向アプリケーションデザイン」 ・ スピーカー 斉藤 太郎氏  Twitter:@taroleo / Github:@xerial Principal Software Engineer , Treasure Data 東京大学理学部情報科学科卒。情報理工学 Ph.D。データベース、大規模ゲノムデータ処理の研究に従事。その後、スタートアップであるTreasure Dataに加わり、アメリカ、シリコンバレーを拠点に活動中。日本データベース学会上林奨励賞受賞。OSSを中心にプログラミングやデータ処理を簡単にするためのプロダクトを作成している。 「30分でわかるデータ指向アプリケーションデザイン」最新の論文にも触れながら、分散データシステムの世界の魅力を伝えていきます。後半、@tagomoris https://t.co/TQ2TnsFIOT… — Taro L.

                                  分散データシステム入門の決定版『データ指向アプリケーションデザイン』をたった30分で学んでみた #DataEngineeringStudy | DevelopersIO
                                • 個人開発のサービスをVPSからVercelとCloud Runに移行した話

                                  最近以下のような記事で個人開発のコストの話をよく見かけて、ちょうど自分も個人サービスをコストカットのためにVPSからほぼ無料なスタックに移行していたので構成とかを書いてみる。 前提としてはこんな感じ。 仲間内で使ってるだけのWebアプリケーション。月イチくらいしか使わない 技術スタックは技術的な実験とか学習を兼ねているので多少オーバースペックになるのはいい お金はなるべくかけたくない 移行前のスタック フロントエンドはNuxt.js、Netlify バックエンドはRailsでgRPC、envoyを噛ませてフロントエンドからはgRPC-Webで呼んでる VPS上にバックエンドのアプリケーションとDB(postgres)を動かしてる バックエンドは普通のRailsアプリにしてHerokuにするのが一番楽でお金もかからないんだけど、gRPC-Webを試してみたくて、そうするとproxyが必要にな

                                    個人開発のサービスをVPSからVercelとCloud Runに移行した話
                                  • 【2021年版】国内外Tech系YouTubeチャンネル10選 - 登録者数順まとめ! - - RAKUS Developers Blog | ラクス エンジニアブログ

                                    技術広報のyayawowoです。 エンジニアの皆さん、プログラミングの勉強は捗っていますか? 効率的な学習ができていますか? 本記事では、昨今盛り上がり続けているYouTube市場で、 プログラミング学習をメインで配信している国内・国外のチャンネルをご紹介します。 動画を見ながらコーディング学習もできるので、一石二鳥?いや、三鳥なレベルで効率的な学習ができますよ。 また、YouTubeの高度な検索方法にも触れていますので是非最後までお読みいただけますと幸いです! では、スタート! 国内チャンネル プログラミング全般を学習するなら? たにぐち まことのともすたチャンネル フロントエンドを学習するなら? しまぶーのIT大学 【とらゼミ】トラハックのエンジニア学習講座 バックエンドを学習するなら? キノコード / プログラミング学習チャンネル プログラミングアカデミー 渋谷で働くエンジニア福の「

                                      【2021年版】国内外Tech系YouTubeチャンネル10選 - 登録者数順まとめ! - - RAKUS Developers Blog | ラクス エンジニアブログ
                                    • サーバーレスのセキュリティリスク - AWS Lambdaにおける脆弱性攻撃と対策 - Flatt Security Blog

                                      はじめに こんにちは、株式会社Flatt Security セキュリティエンジニアの森岡(@scgajge12)です。 本稿では、AWS Lambda で起こりうる脆弱性攻撃やリスク、セキュリティ対策を解説し、サーバーレスにおけるセキュリティリスクについて紹介します。 はじめに AWS Lambda について サーバーレスにおけるセキュリティリスク AWS Lambda で起こりうる脆弱性攻撃 Lambda での脆弱性攻撃によるリスク 脆弱性攻撃による更なるリスク OS Command Injection XML External Entity (XXE) Insecure Deserialization Server Side Request Forgery (SSRF) Remote Code Execution (RCE) AWS Lambda におけるセキュリティ対策 セキュリティ

                                        サーバーレスのセキュリティリスク - AWS Lambdaにおける脆弱性攻撃と対策 - Flatt Security Blog
                                      • ローカルマシンでDocker を動かさないためにBlimp を採用する - y-ohgi's blog

                                        https://blimpup.io TL;DR docker-compose をリモートで実行するための開発フェーズ向けのサービス ローカルマシンへ負荷をかけずに開発できる URL を発行してくれるため第三者への公開も可能 概要 blimpup はざっくりいうと「docker-compose をリモートで実行する」ためのサービスです。 用途としては本番環境としてではなく開発フェーズでの利用を想定されており、docker-compose を使用した開発の効率化を行ってくれます(k8s のtelepresence に近いイメージです)。 従来開発フェーズで使用していたdocker-compose をローカルで直接コンテナを動かすのではなく、blimp の提供するインフラ上で動かし、ローカルマシンに負荷をかけることなく開発が可能になります。ローカルのファイルと同期を行ってくれるためファイルの更

                                          ローカルマシンでDocker を動かさないためにBlimp を採用する - y-ohgi's blog
                                        • 僕のフロントエンド技術に対するスタンス|erukiti

                                          僕は日頃からReact Hooks + TypeScript 最高だの言ってますけど、実のところ、それらを超えるモノが登場したら一瞬で「React Hooksなんて過去の技術だよねー、#にゃーん(社会性フィルター)」とか「TypeScript?へなにそれ?過去の言語ですよね」とかボロクソに言ってる自信があります。 補足: ボロクソにいうとは限りません。その頃に、単に手のひらクルーって返してるだけで、新しい技術を「〇〇+□□最高!」って言ってるだけになるように、人格的に成長してるかもしれませんw 僕にとっては技術はただの道具にすぎません。 道具に対して必要以上の思い入れもしなければ、信仰する気持ちもありません。というより今あるクソなモノよりマシなものを求める渇望がここ数十年ずっと続いてる感じです。 そんな僕が判定するフロントエンド技術の数々を書いてみます。ブログなんでぶっちゃけテキトウで率直

                                            僕のフロントエンド技術に対するスタンス|erukiti
                                          • 企業に仕掛けられた謎のRaspberry Piを追跡して実行犯を突き止めるまで

                                            2005年に設立されたセキュリティ企業Haschek Solutionsの創設者であるオーストラリア人プログラマーのクリスティアン・ハスチェク氏が、仕事中に発見した謎のRaspberry Piについて、自身のブログにまとめています。 The curious case of the Raspberry Pi in the network closet https://blog.haschek.at/2019/the-curious-case-of-the-RasPi-in-our-network.html クリスティアン氏は父親と共にセキュリティサービスを提供するHaschek Solutionsという企業を運営しています。ある日、クライアントのオフィスで働いている父親から、「これは何?」というメッセージと共に、1枚の写真が送られてきます。 この謎のRaspberry Piは、クライアントの

                                              企業に仕掛けられた謎のRaspberry Piを追跡して実行犯を突き止めるまで
                                            • Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド

                                              Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド Googleは、アプリケーションのコードから最適なコンテナイメージを生成するツール群「buildpacks」(ビルドパック)をオープンソースで公開すると同時に、Google CloudのCloud Run、Anthos、Google Kubernetes Engine (GKE)がこのbuildpakcsに対応したことを発表しました。 We’re launching broad support across @googlecloud for buildpacks, an open-source technology that makes it fast & easy to create secure, product

                                                Google、最適化されたコンテナイメージを生成する「buildpacks」をオープンソースで公開。Dockerfile不要でJavaやGo、Node.jsをコンテナへビルド
                                              • React ユーザー向けの Next.js ガイド

                                                最近会社で Next.js のチュートリアルを担当することがあったり、これからもあるので資料として記事をしたためておこうと思う。 対象は、React は知っているけどこれから Next を学ぼうとする人が想定。 つまり React 単体と Next の差分をまとめる。 React そのものから学びたい人は別の資料にアクセスした方が良いだろう。 Next の学習教材 とりあえず公式だけ読めば良い。(これでいまブラウザバックされたら面白いな・・・) 主に二つあり、 ドキュメントや API: https://nextjs.org/docs/getting-started チュートリアル: https://nextjs.org/learn/foundations/about-nextjs を読むと良い。 Next は何を解決しているか、何が嬉しいか 元々は SSR のための煩雑な手続きをしなくてい

                                                  React ユーザー向けの Next.js ガイド
                                                • VS Codeをなぜ、使い続けているのか?

                                                  前書き この記事を読んでいるエンジニアの皆さんは、それぞれ異なるエディタを使用しているかと思います。読者自身が使用しているエディタの良し悪しについては詳しいと考えているため、私がVS Codeと他のエディタを比較をすることは、限界があります。また、VS Code と他のエディタの機能や快適さを比較できません。 そこで、私が毎日使用している VS Code の良さをアピールすることで、VS Code を使ってもらう機会を作りたいと思っています。 ここで説明しないこと カスタマイズしたキーコンフィグの紹介 ただし、これから紹介する VS Code の機能に好みのキーコンフィグを割り当てることは可能です。 他のエディタとの比較(Vim系 JetBrain系 Helix等の新興エディタ系) 目次 VS Codeとは 毎月のアップデート VS Codeのデフォルト機能 拡張機能(エクステンション)が

                                                    VS Codeをなぜ、使い続けているのか?
                                                  • 新しいNext.jsの入門 ─ App DirectoryによるWeb開発をハンズオンで理解しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                    使用するライブラリ このアプリで、Next.js以外に使用するライブラリは以下の4つです。インストール方法等は必要な箇所で説明します。 Prisma TypeScriptのORマッパーです。アプリでのノートの保存等に使用します。 ▶ Prisma | Next-generation ORM for Node.js & TypeScript Tailwind CSS CSSフレームワークです。アプリのUIデザインに使用します。 ▶ Tailwind CSS - Rapidly build modern websites without ever leaving your HTML. Zod バリデーションライブラリです。APIレスポンスの型定義とバリデーションに使用します。 ▶ Zod | Documentation SWR データフェッチ用のライブラリです。ノート一覧のクライアントサイドで

                                                      新しいNext.jsの入門 ─ App DirectoryによるWeb開発をハンズオンで理解しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                    • Python 3.15からデフォルトのエンコーディングがUTF-8になります - methaneのブログ

                                                      Pythonがファイルを開くときなどに使われるエンコーディングはロケール(WindowsではANSIコードページ)依存でした。 Unixの世界ではどんどんUTF-8ロケールが一般的になっている一方、WindowsのANSIコードページはなかなかUTF-8になりません。 そのために、Unixユーザーが open(filepath) のようにエンコーディングを指定しないままUTF-8を仮定するコードを気軽に書いてしまって、Windowsユーザーがエラーで困るといった問題が発生します。 また、Windowsでもメモ帳(Notepad.exe)やVSCodeはすでにUTF-8をデフォルトのエンコーディングで使用しています。ANSIコードページがUTF-8になるのを待っていたらどんどん周りの環境から置いていかれ、レガシー化してしまいます。 Pythonがデフォルトで利用するエンコーディングをWind

                                                        Python 3.15からデフォルトのエンコーディングがUTF-8になります - methaneのブログ
                                                      • Chrome の console.log でハマらないために

                                                        JavaScript を書いたことがある人ならば一度は使うであろう console.log ですが、この関数は思ったよりも厄介な性質を持っています。その性質を知らずに console.log を使うと、デバッグ時に大ハマリしてしまうことがあります。この記事では console.log の落とし穴についてお話します。 今回は Chrome に特化して解説しますが、Firefox や Safari でも同じ落とし穴があります。 console.log とは まずはさらっと基本をおさらいしましょう。 大前提なのですが、console.log は JavaScript の言語仕様(ECMAScript)で定義されていません。ブラウザ向けには whatwg の仕様がありますが、あくまでもそれはブラウザ向けの仕様であり、Node.js を含むほぼ全ての JavaScript 環境で使えるのは cons

                                                        • 2020年でJavaScript学ぶならきっとブラウザ向けJSガン無視していきなり初手node.js(ただし暫く何も足さない)がいいんじゃないかというメモ

                                                          ※ @mizchi さんのアンサー記事「プログラミング初心者のための JavaScript と Node.js の歴史、それを踏まえた勉強方法」 もこの後にあわせてどうぞ。 https://zenn.dev/mizchi/articles/3789a101dae388d98159 Python3とPHP7をちょぼちょぼとやっている個人がJavaScript(2016年以降)/node.js/JS系ライブラリ/JS系Webフレームワーク/TypeScript等を攫っている中で一つ思ったことをメモった。JavaScriptやるなら絶対node.jsの実行環境揃えてからがいい、そうしないでJSやるくらいなら汎用性信じてPython3一択に絞った方がいい、と思ったという件です。 具体的には、以下の構成のみでJavaScriptの開発演習をすればいいんじゃないか、という話です。 続きを読む

                                                            2020年でJavaScript学ぶならきっとブラウザ向けJSガン無視していきなり初手node.js(ただし暫く何も足さない)がいいんじゃないかというメモ
                                                          • n8n(IFTTT,Zappierの代替)をセルフホストして自動化を快適にする - Qiita

                                                            はじめに こんにちは。 みなさんZappierやIFTTTを使ったノーコード自動化は好きですか? 僕は業務の効率化や自動化が好きなので、こういったツールは今まで興味を持っていましたが、料金的なところで二の足を踏んでいました。。。 最近のSaasサービスの値上げラッシュ。特に海外のツールはどんどん月額設定が高くなりますし、為替の影響で高くなります。 ですので、結局、自動化したいことはコードを書いたりエンジニアの知識をフル活用して自動化しちゃいます。笑 今回は、そんなエンジニアのみなさんに向けて、n8nというローコード自動化ツールをご紹介しようと思います。 n8nとは 技術者向けのワークフローの自動化 API と戦うことなく、複雑な自動化を 10 倍速く構築 スクリプトのスパゲッティを苦労して過ごした日々は終わりました。その他すべてに柔軟性と UI が必要な場合は、JavaScript を使用

                                                              n8n(IFTTT,Zappierの代替)をセルフホストして自動化を快適にする - Qiita
                                                            • NginxとApacheって何が違うの?? - Qiita

                                                              はじめに Webサーバーを使うときに、NginxとApacheって言葉よく耳にしますよね。 ただその違いっていまいち良くわからなくないですか??(僕だけだったらすみません笑) ちなみに僕は「Nginxの方がなんか人気だし良さそうな気がする。。。」という何の根拠もないイメージしか持っていませんでした。 さすがにもう少しちゃんと理解したいと思い、今回はこの違いを記事にしてみました。 ぜひぜひ最後まで読んでみてください〜! ※ちなみにNginxとApacheはそれぞれ、「エンジンエックス」「アパッチ」と読みます。 そもそもNginxとApacheとは? NginxとApacheはWebサーバーのソフトです。 サーバーにこれらのソフトをインストールすると、Webサーバーとしての機能をもちます。 Webサーバーソフトにおいて、2021年12月時点でNginxとApacheが圧倒的シェアを誇っています

                                                                NginxとApacheって何が違うの?? - Qiita
                                                              • Laravel + Vue.jsでGoogleカレンダーのクローンを作ろう!!【Laravel8対応】準備編|Yuu's Memo

                                                                皆さんこんにちは!! 今日から何回かに分けて、Laravel8とVue.jsを使用して「スケジュール管理アプリ」を作成したいと思います。 簡単に言えば、「Googleカレンダーのクローン」を作成していくチュートリアルです。 WEBアプリケーションにスケジュール管理機能を組み込む場合、「FullCalendar」を利用することが多いと思いますが、今回はFullCalendarなどは使用しません。 LaravelとVue.jsは非常に人気が高いので、多くの解説記事やチュートリアルが出ています。 ただ、どれも小さなサンプルを作ったり、解説が断片的で、実際の開発に活かせないものが多いです。 今回から皆さんと作る「Google Calendar Clone」は、LaravelやVueを触ったことがない方には少し難しいかも知れませんが、中規模のアプリケーションを開発することで、LaravelやVue.

                                                                  Laravel + Vue.jsでGoogleカレンダーのクローンを作ろう!!【Laravel8対応】準備編|Yuu's Memo
                                                                • Nuxt.js+Firebase+GAEで作った個人サービスが半月で2万PV超えたので実績値を全て公開する - Qiita

                                                                  こんなサービス作りました 【#拡散希望】 🙌🎉🎊サービス開始🎊🎉🙌 ボケをツイートして 「いいね❤️」「リツイート🔁」 の数でランキング! Twitter連動型 大喜利サイト 「ついぎり」 サービス開始しました‼️#ついぎりhttps://t.co/bkXfzHyVSs — ついぎり@公式アカウント (@twigiri_app) August 14, 2019 Twitterで大喜利するサービスです。 8月中頃にローンチしたのですが、有難いことに半月で約2.5万PVいきました。 開発に至ったポエム記事はCrieitに投稿しています。 なぜ大喜利サービスを作ったのか この記事について やっぱり公開直後は怖かったです。 そう、クラウド破産。 Firebaseの設定を間違えて72時間で300万円以上請求されてしまったウェブサービス BigQueryで150万円溶かした人の顔 上記以

                                                                    Nuxt.js+Firebase+GAEで作った個人サービスが半月で2万PV超えたので実績値を全て公開する - Qiita
                                                                  • JavaScriptの歴史については「JavaScript: The First 20 Years」を読む

                                                                    JavaScript/ECMAScriptというプログラミング言語の歴史について書いた文章はWikipediaなどいろいろなものがあります。 その中でも、ECMAScript 2015のSpec EditorであるAllen Wirfs-Brockによって書かれた”JavaScript: The First 20 Years”が特におすすめです。 JavaScript: The First 20 Years JavaScript: The First 20 Years | Zenodo “JavaScript: The First 20 Years”はHOPL IV - History of Programming Languages向けに書かれたPaperです。 JavaScriptの誕生からECMAScriptの策定、ECMAScript/JavaScript各バージョンでの違い、ブラ

                                                                      JavaScriptの歴史については「JavaScript: The First 20 Years」を読む
                                                                    • 私が愛するフロントエンドのツールたち2023

                                                                      自分がチームでフロントエンドの開発をするときの技術選定について書きます。 ログインしてユーザーごとに個別の情報を扱うことがメインのサービスを前提に書きます。 考え方 メンテナンス性の優れたものを選ぶ 制限が少ないものを選ぶ 余計なことに気を使わない 一気にいろんなことに挑戦しすぎない フレームワーク 正直に書くと最近は問答無用でNext.jsを選択しています。 慎重な性格なので、自分が責任を持って開発、運用するプロダクトであれば自分の経験値が高く、多くの課題をクリアできるNext.jsを選びます。 一部インフラの制約があるものの、ページごとにSSGやSSR、On-demand ISRなどができること、Reactの大きなエコシステムの恩恵を受けられることは非常に大きいです。 採用面でも現状Reactを扱える人は他のフレームワークを扱える人より多く感じます。 次点でCloudflare Wor

                                                                        私が愛するフロントエンドのツールたち2023
                                                                      • 認知負荷および認知負荷理論 (Cognitive Load Theory) をもう少し正確に理解するための心理学研究・知見の紹介

                                                                        認知負荷および認知負荷理論 (Cognitive Load Theory) をもう少し正確に理解するための心理学研究・知見の紹介 この記事の目的 ここ数年で、ソフトウェア開発やプログラミングの文脈で、「認知負荷」 および 「認知負荷理論」 という用語をよく見聞きするようになりました。私が今思い出せるだけでも、以下のような書籍や Podcast で重要なキーワードとして取り上げられています。 A Philosophy of Software Design, 2nd Edition チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計 プログラマー脳 ~優れたプログラマーになるための認知科学に基づくアプローチ fukabori.fm 102. A Philosophy of Software Design (3/3) w/ twada この「認知負荷」ですが、少なくとも近年見聞

                                                                          認知負荷および認知負荷理論 (Cognitive Load Theory) をもう少し正確に理解するための心理学研究・知見の紹介
                                                                        • 2022年秋版 最新React/Typescript開発環境の作成 - Qiita

                                                                          vite4がリリースされましたが、プロジェクト作成時に「vite@latest」を指定しているため問題ありません。 vite4は、以下を参照してください。 https://vitejs.dev/blog/announcing-vite4.html はじめに Reactの開発環境は、CRA(Create React APP)がよく使われますが、CRAは沢山のモジュールの整合性の確認などのため、アップデートがリリースされるまでの間隔が結構あります。 また、使われているモジュールをアップデートするとエラーに悩まされたりします。 ゼロからReactの開発環境を作成していたのですが、いろいろとトライを繰り返すうちに以下の方法に落ち着きました。 比較的短時間で環境が作成できますし、全て最新のモジュールが使えます。 Vite nodejsを用いたJavaSriptプロジェクトは、、Webpackなどでプ

                                                                            2022年秋版 最新React/Typescript開発環境の作成 - Qiita
                                                                          • フロントエンド界隈で新しく提唱されているT3 Stackについて調べてみた

                                                                            T3 Stackとは 昨今のWeb開発ではTypescriptによる型安全なWebアプリケーションの開発を求められている。またバックエンドとフロントエンド、さらにBFFによる構成においていかに型安全で効率よく開発するかはWebアプリ開発において非常に重要な課題となっている。 そこでTheo氏によって「T3 Stack」という技術スタックが提唱された。 これは最近注目のWeb開発の技術スタックとなっている T3 Stackにおいては以下3つの思想に焦点が当てられている。 simplicity(簡潔さ) modularity(モジュール性) full-stack typesafety(フルスタックの型安全) そしてこれらの思想を実現するためにT3 Stackでは以下6つの技術を採用する Next.js tRPC Tailwind CSS Typescript Prisma NextAuth.j

                                                                              フロントエンド界隈で新しく提唱されているT3 Stackについて調べてみた
                                                                            • あなたのGoアプリ/ライブラリのパッケージ構成もっとシンプルでよくない? | フューチャー技術ブログ

                                                                              2023.10.5追記: Goチームからプロジェクトの目的に応じたディレクトリ構造についてのドキュメントが公式に公開されています。 https://go.dev/doc/modules/layout Goでプロジェクトのフォルダ構成どうしよう、とググると見つかるStandard Go Project Layout。とはいえ、これはかなりコード量を増やしてしまう恐れがありますので、導入する場合のデメリットも考えておく方が良いです。 特に、プログラマーは、最初にみたプログラミング言語のフォルダ構成を親だと思う特性があり、Javaや.NETに影響されるとかなり細かくフォルダを切りたくなったり、package privateなど細かく可視性を制御しようとしたりして、なおかつ「privateのテストってどうすべきなんですか?」とか議論を始めたりもしますが、Go先生によればこれぐらいは1パッケージにフ

                                                                                あなたのGoアプリ/ライブラリのパッケージ構成もっとシンプルでよくない? | フューチャー技術ブログ
                                                                              • Reactを使ったモダンなフロントエンド開発の環境構築 - Qiita

                                                                                はじめに Reactを中心としたフロントエンド開発において、以下のような構成を見かけることが多いと思います。 UIライブラリとしてReact 型のある言語としてTypeScript スタイル定義としてstyled-components コンポーネントの開発環境としてStorybook LinterとしてESLint FormatterとしてPrettier この記事では、各種ライブラリについて紹介したのち、それらを使う場合の環境構築についてハンズオン形式で説明します。 ※ アプリケーションを開発する際に必要になる設定が抜けていたので、追記しました。 各種ライブラリの紹介 まず、各ライブラリがどのようなものなのかを簡単に紹介します。 ライブラリの使い方などは公式ドキュメントなどを参照するようにしてください。 ドキュメント ReactはUI(ボタンやフォームなど)コンポーネントを作成するための

                                                                                  Reactを使ったモダンなフロントエンド開発の環境構築 - Qiita
                                                                                • Node-Based UIs in React – React Flow

                                                                                  React Flow is a MIT-licensed open source library. You can help us to ensure the further development and maintenance by subscribing to React Flow Pro. React Flow Pro Getting Started with React Flow Make sure you’ve installed npm, pnpm or yarn. Then you can install React Flow via:

                                                                                    Node-Based UIs in React – React Flow